See also: Java Applet Apple 2 Emulator. (By the way, on these pages 'Apple 2' should probably be 'Apple II', but since I support the Web Accessibility Initiative I decided to use the former instead of the latter.)
I've made my emulator available primarily to allow folks to have a look at the source code, as frequently emulators do not include their source. If you're wanting an emulator that's actually useful, especially under Windows, I'd recommend downloading AppleWin (see the links below, you want the "applewin95complete.zip" file). AppleWin spends several minutes performing a calibration when first run. Let it do that, then read its included help file for instructions.
My very first computer was an Apple 2e. From 1984 to 1990 I learnt to program in Applesoft BASIC and 6502 machine code. (I played lots of games too ).
In 1989 at university, I started using IBM PCs. The programming was much easier and friendlier on the PCs, first with Turbo Pascal, then with Turbo C. Turbo C converted me to the PC and I was using my old Apple less and less.
This emulator was mostly written between 1993 and 1995. Since then, little has been done apart from minor tweaks. It is still not complete. Although it does quite a bit, I would still like it to do the 80-column card and extended 64K properly, plus emulate the IOU and MMU chips (so it passes the Enhanced IIe self-test).
/RAM
volume and
ProDOS will
crash.PRODOS1.DSK
)Download appleemu.zip (651K) and un-zip using
folder/directory names. This is a raw directory dump from my hard drive. It
includes a working emulator and a
ProDOS
mass-storage disk image (PRODOS1.DSK
). Full source code is
included, plus project files for Borland C++ 3. I am releasing all my source
code into the public domain.
Archive directory structure:
APPLEEMU
- Main source code and executable directory. Required
files:
APPLE.EXE
- EmulatorAPPLE.ROM
- A ROM
image from a real AppleCHARSET.BIN
- Authentic text character setCENTRONI.ROM
- Parallel Interface Controller
ROM (for printer port)MASSSTOR.ROM
-
ProDOS
mass-storage (32MB) device
ROMDISK.ROM
- Disk 2 floppy controller
ROMCLOCK.ROM
- Clock card
ROMAPPLEEMU\A2I
- Some Apple <-->
IBM
communications code.APPLEEMU\DOC
- Miscellaneous documentation.APPLEEMU\ROMS
- Miscellaneous
ROM images.APPLEEMU\TASM280
- 6502 cross-assembler. This directory has the
source code for the ROM firmware
for my home-made mass-storage and clock card devices.APPLEEMU\TMP
- Old video code? I don't really know what this
is!APPLEEMU\UTIL
- The startings of a utility to manage files
inside disk images.Ignore references to my home address of "14 Whittington Avenue..." - I haven't lived there for years! Email me instead.
Start the emulator by running APPLE.EXE
. Since there are no
DISK6A.DSK
or DISK6B.DSK
disk images (for slot 6,
drives 1 and 2 respectively), the emulator will just hang there. Press
Ctrl-F12 to reset it (same as pressing Reset or
Ctrl-Reset on a real Apple). The emulator will stop. Enter
PR#5 to start up the mass-storage device.
ProDOS will load.
Check out the slot allocations and date/time settings. When you're done, press
F1 or Alt-SysRq to quit.
Copy your own disk images to DISK6A.DSK
and
DISK6B.DSK
.