git @ Cat's Eye Technologies linapple / 6532e6d
Merge pull request #17 from maxolasersquad/readme Unify and clean up README files. Joseph Carter authored 7 years ago GitHub committed 7 years ago
2 changed file(s) with 92 addition(s) and 188 deletion(s). Raw diff Collapse all Expand all
+0
-173
README less more
0 A modified build system was contributed by Greg Hedger along with other
1 changes and fixes:
2
3 [INSTALL]
4
5 To build a package on Debian-style systems, do this:
6
7 make
8 fakeroot make package
9 sudo dpkg -i linapple-2.1.deb
10
11 [PREREQUISITES]
12
13 Again on Debian-style systems, you can install all prerequisites using
14 this command:
15
16 sudo apt-get install libsdl1.2-dev libsdl-mixer1.2-dev libzip4 libcurl3 libcurl4-gnutls-dev fakeroot
17
18 You only need fakeroot for building the Debian package.
19
20 Thanks Greg!
21
22 =====================================================================
23
24 The following changes were made by Cat's Eye Technologies' version of
25 linapple to make it more "properly unixy":
26
27 - autobooting from a disk image name on the command line. This
28 work comes from a branch by @arloduff and is documented in another
29 file in this directory: Command-line.md
30 - recording location of resource files at build time instead of
31 assuming they always reside in the current directory. This permits
32 the executable to be started from any directory.
33 - treating the configuration file as read-only.
34
35 It also contains changes for building and running under OSX, taken from
36 @jvernet, however maintaining that wasn't a priority for him.
37
38 Thanks Chris!
39
40 =====================================================================
41
42 *** LINAPPLE 2b***
43
44 Copyright (C) 1994-1996, Michael O'Brien
45 Copyright (C) 1999-2001, Oliver Schmidt
46 Copyright (C) 2002-2005, Tom Charlesworth
47 Copyright (C) 2006-2007, Tom Charlesworth, Michael Pohoreski
48 Copyright (C) 2015,2017, Greg Hedger
49
50 [INTRO]
51 What is linapple?
52 It is an emulator of Apple2 (Apple][, Apple 2, Apple 2e etc.) computer series for Linux or other OSes with SDL support.
53 (SDL means Simple Direct Media Layer written by Sam Lantinga and others).
54
55 Linapple works out of the box, just make it once and run whenever you wish.
56
57 Why not AppleLin? Yes, at first I think to call it such, but later linapple seemed better to me. And one point!
58 This is my work for making it possible to have comprehensive emulator of Apple][ computer series in Linux.
59 The original source is from AppleWin (http://applewin.berlios.de) by Tom Charlesworth and others.
60 I just adapted it for: video+audio for SDL, other functions for POSIX compliant OS, which Linux is in particularly.
61 Later some sort of Windows support had been added, so you may try to compile it under Windows.
62
63 [INSTALL]
64
65 make
66 cd bin
67 ./linapple
68
69
70 I will show brief instructions for compiling and installing linapple here.
71 Please, see INSTALL file for comprehensive installing tips.
72 After SDL1.2, zlib, libcurl and libzip (development versions with -dev or -devel suffixes) are installed in your system, you can build sources.
73
74 If all files are on their places, you should see an X-Window with splash screen.
75
76 Press F2 (or F3 or Alt+F3) before to choose some disk image in drive 1), and go to work.
77
78 splash.bmp - splash screen
79 charset40.bmp - charset for Apple][ (Apple 2e, etc.) text modes.
80 font.bmp - font for Help screen and Disk Select screens.
81 icon.bmp - nice icon, logo of Apple][ computer.
82 linapple.conf - configuration file.
83 Master.dsk - disk image with Applesoft(tm) DOS 3.3 inside. See Apple license (on apple.com) for details.
84
85 [USING LINAPPLE]
86
87 At first start you should see some nice splashscreen. Press F2 to start emualtion. Master.dsk should load, and you will see an DOS3.3(tm) prompt. By pressing F3 you may select an image file name (usually having extensions .dsk, .do, .po) into Slot 6 Drive 1. After selecting it, you either can reboot anew (by pressing F2 key) and try to boot from the inserted disk, or type any DOS3.3(tm) commands to view disk contents and to run any program located in it. Common DOS commands are `CATALOG' (like `ls' in Linux), `BRUN FILENAME' - running any binary (B) program, or `RUN FILENAME' - running any Basic program (A or I). Usually, most game images have alternative way to run programs in them.
88
89 You may find a lot of disk images on may be the largest and the oldest ftp archive for various Apple ][ stuff - ftp.apple.asimov.net
90
91 From version 2 of linapple you are able to download such images directly from FTP! Use Alt+F3 or Alt+F4 for charging drive 1 and drive 2 for slot 6 (if you know what I am about :) ) - they are just common disk sources of Apple 2 computer for reading/writing its files, such as system, games, utilities and so on. Change `FTP Local Dir` parameter in linnaple. conf file to point to some writable directory and make directory named `cache` inside it (install routine does it for you).
92
93 To quit emualtor peacefully, press F10. F6 toggles fullscreen mode, Scroll Lock toggles fullspeed mode.
94
95 Other possible key commands of linapple are the following:
96
97 F1 - Show help screen
98 F2 - Cold reset
99 Shift+F2 - Reload conf file and restart
100 F3, F4 - Choose an image file name for floppy disk in Slot 6 drive 1 or 2 respectively
101 Shift+F3, Shift+F4 - The same thing for Apple hard disks (in Slot 7)
102 Alt+F3,Alt+F4 - same as F3,F4 using FTP (see linapple.conf about configuring FTP accounts)
103 Alt+Shift+F3, Alt+Shift+F4 - same as Shift+F3, Shift+F4 but using FTP account (see above)
104
105 F5 - Swap drives for Slot 6
106 F6 - Toggle fullscreen mode
107 F7 - Reserved for Debugger!
108 F8 - Save current screen as a .bmp file
109 Shift+F8 - Save settings changable in runtime in conf file
110
111 F9 - Cycle through various video modes
112 F10 - Quit emulator
113
114 F11 - Save current state to file, Alt+F11 - quick save
115 F12 - Reload it from file, Alt+F12 - quick load
116
117 Ctrl+0..9 - fast load state snapshot with corresponding number, saved previously by
118 Ctrl+Shift+0..9 - fast save snapshot to current snapshot directory with corresponding number 0..9
119
120 Ctrl+F12 - Hot reset
121
122 Pause - Pause emulator
123 Scroll Lock - Toggle full speed
124 Num pad keys:
125 Grey + - Speed up emulator
126 Grey - - Speed it down
127 Grey * - Normal speed
128
129 Other powerful way to control behaviour of linapple is to change different settings in linapple.conf file, which should be located in the same directory where linapple is. Please, see linapple.conf contents to know what each setting means.
130
131 Note one point, too. When mouse works as a joystick, or Mouse Interface is on, when you first left-click on the window of emulator, mouse cursor is grabbed for using inside it. To release cursor, you should click left-mouse button again with SHIFT or CTRL key pressed. In fullscreen mode mouse cursor is always grabbed, to release it you may want to switch to windowed mode by pressing F6 key.
132
133 In version 1.1 appeared VideoBenchmark: start linapple with -b command-line key to see its results, like this:
134
135 $ ./linapple -b - run VideoBenchmark and exit emulator. Note: if fullscreen mode is on in linapple.conf, then
136 VideoBenchmark will be runned in fullscreen mode.
137
138 In version 2 besides FTP support there is also support for changable Window sizes (see at the end of linapple.conf file for details).
139 Just be aware when you are not running emulator on its native mode (560x384) you can suffer slowdown if you are using old box.
140
141 [SUPPORT]
142 Wanted:
143
144 -- We need to get rid of some SOUND glitches. HELP!
145
146 --DEBUGGER
147 I just owe at 9300 lines of code of AppleWin debugger. Michael Pohoreski, you are he-man, I tell you.
148 Besides Debugger.cpp alone, there are some helper files such as Debugger_Assembler.cpp,
149 Debugger_Console.cpp, Debugger_Display.cpp and so on. Who is able to port it to linapple?
150
151 --PHASOR
152 Who knows how does that great thing work? Please, help adopting it to lianpple.
153 All sources for sound support are in Mockingboard.cpp and SoundCore.cpp.
154 SDL Audio used. Speakers are working out in Speaker.cpp. Who may think, heh?
155 From version 1.1 Mockingboard support are done.
156
157 More testing and debugging needed, of course. I would be grateful for any comment or suggestion regarding linapple, and using it on OSes other than Linux.
158
159 [CONTACTS]
160 I am beotiger, you may contact me at your will by my email beotiger@gmail.com
161
162 Web-sites:
163 http://beotiger.com
164 http://linapple.sourceforge.net
165
166 Thank you very much.
167 Long Live Linux!
168 And Apple][!
169
170 --
171 24 March 2012 AD
172 26 June 2015 AD
0 # LinApple #
1 ## Command-line fork ##
0 # LinApple
21
3 This is a fork of the LinApple Apple ][e emulator for Linux. This fork allows certain options to be specified from the command line when running LinApple.
2 LinApple is an Apple ][, Apple ][+, Apple //e, and Enhanced Apple //e computers.
43
5 Currently, the following command line options are available:
4 ## History
5
6 LinApple started as a fork of [AppleWin](https://github.com/AppleWin/AppleWin), ported to run on Linux. The source code
7 was downloaded from [SourceForge](http://linapple.sourceforge.net/) and uploaded to Github by
8 [maxolasersquad](https://github.com/maxolasersquad). As the SourceForge version lay abandoned several users forked the
9 maxolasersquad repository and added several features. Work was done to bring these back into maxolasersquad repository.
10 This repository was eventually moved under the [linappleii](https://github.com/linappleii) namespace where development
11 currently resides.
12
13 ## Command Line Switches
614
715 * -d1: Specifies a disk image to load into FDD1 (drive 0)
816 * -d2: Specifies a disk image to load into FDD1 (drive 1)
1220 * -m: Disables direct sound
1321 * -autoboot: Boots the system automatically, rather than displaying the splash screen
1422
15 When specifying disk images, the full path should be used (e.g. `linapple -d1 /home/myname/disks/MYSTHOUS.DSK`
23 When specifying disk images, the full path should be used. e.g. `linapple -d1 /home/myname/disks/MYSTHOUS.DSK`
1624
1725 Currently, only the options to specify disks start in fullscreen, and auto boot have been tested.
1826
19 This fork is far from perfect, and has not been tested extensively. The main purpose is to allow users to set up custom shell scripts which they may use to automatically load
20 certain Apple ][ games or programs with the click of a button. While this need is met by this fork, extensive testing has not been performed to ensure new bugs were not
21 introduced by these changes.
27 ## Using LinApple
28
29 | Key | Function |
30 | -------------- | ------------------------------------------------------------------------------ |
31 | F1 | Show help screen. |
32 | Ctrl+F2 | Cold reboot. i.e. Power off and back on. |
33 | Shift+F2 | Reload configuration file and cold reboot. |
34 | F3 | Load disk image for drive 1. |
35 | F4 | Load disk image for drive 2. |
36 | Shift+F3 | Attach hard disk image to slot 7. |
37 | Shift+F4 | Attach hard disk image to slot 7. |
38 | F5 | Swap drives for slot 6. |
39 | F6 | Toggle fullscreen mode. Warning: Does not safely exit in multi-monitor setups. |
40 | F7 | Reserved for debugger. |
41 | F8 | Save screenshot as a bitmap. |
42 | Shift+F8 | Save runtime changes to configuration to the configuration file. |
43 | F9 | Cycle through video modes. |
44 | F10 | Load snapshot file. |
45 | F11 | Save snapshot file. |
46 | F12 | Quit. |
47 | Ctrl+0-9 | Load snapshot `n`. |
48 | Ctrl+Shift+0-9 | Save snapshot `n`. |
49 | Pause | Pause/resume emulation. |
50 | Scroll Lock | Toggle fulls peed emulation. |
51 | Numpad + | Increase emulation speed. |
52 | Numpad - | Decrease emulation speed. |
53 | Numpad * | Reset emulation speed. |
54
55 When you first start the emulator, press the F3 key and select a disk image file. Press Ctrl+F2 to restart the emulator
56 with the disk "inserted" if the application doesn't automatically load.
57
58 Many disk images will boot straight into the application. Some disk images only have files and you must find the correct
59 application to run. In this case you will need to execute BASIC commands to list the files on the disk and run programs.
60
61 ### Commands
62
63 #### CATALOG
64
65 This command lists the files on a disk.
66
67 The first column in the list identifies the file type. A for Applesoft BASIC. B for binary. I for Integer BASIC. T for
68 ASCII text.
69
70 The third column lists the name of the file.
71
72 #### RUN file
73
74 Execute the Applesoft BASIC or Integer BASIC file.
75
76 #### BRUN file
77
78 Execute the binary file.
79
80 #### EXEC file
81
82 Execute a text file as though it was typed from the keyboard.
83
84 #### LOAD file
85
86 Load a file, usually a text file, into memory.
87
88 #### LIST
89
90 List the current program in memory.
91
92 ## Other
93 This fork is far from perfect, and has not been tested extensively. The main purpose is to allow users to set up custom
94 shell scripts which they may use to automatically load certain Apple ][ games or programs with the click of a button.
95 While this need is met by this fork, extensive testing has not been performed to ensure new bugs were not introduced by
96 these changes.
2297
2398 A simple script can be set up to run an Apple ][ game or program by combining the -d1, -f, and -autoboot options, for example:
2499
25 linapple -d1 /path/to/disk/image -f -autoboot
100 ```bash
101 linapple -d1 /path/to/disk/image -f -autoboot
102 ```
26103
27 ### TODO ###
104 ## Todo
28105
29 1. Testing is needed to make sure the other command line options are working correctly. Currently, only the -d1, -d2, and -f options have been tested.
30 2. Extensive testing is needed to ensure that these changes have not inadvertently broken other features of the program. Unfortunately, a test suite did not come with the
31 original code, so I have not been able to test this.
32 3. Add a command line switch which allows the user to specify different configuration files.
33
106 * Testing is needed to make sure the other command line options are working correctly. Currently, only the -d1, -d2, and
107 -f options have been tested.
108 * Extensive testing is needed to ensure that these changes have not inadvertently broken other features of the program.
109 Unfortunately, a test suite did not come with the original code, so we have not been able to test this.
110 * Add a command line switch which allows the user to specify different configuration files.