diff --git a/README.md b/README.md index 1efed0e..dcc3992 100644 --- a/README.md +++ b/README.md @@ -4,8 +4,6 @@ Yet another Apple //e emulator. I wrote this not because the world needed another //e emulator, but because I wanted to have the fun of building a thing from scratch to run my old Apple //e software. -At the time of writing, the emulator handles only 40-column text mode and no floppy. - There are several AppleSoft files in this project (`*.A`) that can be copied into the clipboard and then pasted into the emulator window with CMD-V. Thanks to [Lawrence Kesteloot](http://github.com/lkesteloot) for the original keyboard code, and [Bart Grantham](http://github.com/bartgrantham) for extracting all our old floppy disk images! @@ -18,7 +16,7 @@ Requirements for building: * libao * OpenGL 3.2-compatible system * C++11 -* Currently the project only builds on MacOSX because of the linker line in `Makefile`. +* Builds on MacOS using "Makefile" and Linux (tested on Ubuntu only) using "Makefile.linux" On MacOSX with MacPorts, the GLFW and libao dependency can be satisfied with `glfw` and `libao` ports. According to https://support.apple.com/en-us/HT202823, all modern Macs have OpenGL 3.2 or later. On my machine, I've been compiling with a g++ that outputs `Apple LLVM version 8.0.0 (clang-800.0.42.1)` for `g++ -v`. @@ -30,23 +28,23 @@ Options: -debugger # start in the debugger -fast # start with CPU running as fast as it can run - -noaudio # stream no audio buffers + -backspace-is-delete # Backspace key (Delete on Macs) should send DELETE -diskII diskIIrom.bin {floppy1image.dsk|none} {floppy2image.dsk|none} Examples of operation: - # Use original Apple ][ ROM, no floppy controller, + # Use original Apple ][ Integer BASIC ROM, no floppy controller, # at maximum available clock rate. + apple2e -fast apple2_intbasic.rom + + # Use updated Apple ][ ROM, no floppy controller, and attempt to + # run at 1.023 MHz. apple2e -fast apple2o.rom # Use Apple //e ROM, add diskII controller with two floppies, # put LodeRunner.dsk in drive 1 and nothing in drive 2. Attempt # to run at 1.023 MHz. - apple2e -diskII diskII.c600.c67f.bin LodeRunner.dsk none apple2e.rom < /dev/null - - # Use updated Apple ][ ROM, attempt to run at 1.023 MHz, but - # don't output audio. - apple2e -noaudio apple2.rom + apple2e -diskII diskII.c600.c67f.bin LodeRunner.dsk none apple2e_a.rom Useful debugger commands: @@ -66,6 +64,7 @@ When the window opens, the emulator displays a user interface panel to the right * COLOR - switch between color hi-res graphics and monochrome. * PAUSE - pause or resume running the CPU. * Floppy drive icons: Drag and drop floppy `.dsk` files onto a drive to "insert" the flopy disk. Click the drive icon to "eject" the floppy disk. +* Drag a text file onto the text area to past the file as keyboard input. If no joystick or gamepad is configured, the Apple 2 screen acts as a joystick. To configure a joystick, store the GLFW numbers of the two axes and two buttons in "joystick.ini". A very skilled practitioner may be able to print the joysticks, axes, and buttons by modifying interface.cpp.