Apple //e emulator
Go to file
2013-12-21 15:25:02 -08:00
disks incredibly ugly hack, we need a new build system 2013-06-24 23:01:51 -07:00
docs Screenshots 2013-12-14 11:10:45 -08:00
src Remove unneeded joystick parameters & preferences 2013-12-21 15:25:02 -08:00
.apple2 initial source drop, apple2-emul-0.7.4.tar.gz 2013-06-11 00:08:15 -07:00
.gitignore ignore vim swapfiles 2013-11-16 12:42:17 -08:00
ASM initial source drop, apple2-emul-0.7.4.tar.gz 2013-06-11 00:08:15 -07:00
AUTHORS initial source drop, apple2-emul-0.7.4.tar.gz 2013-06-11 00:08:15 -07:00
ChangeLog initial source drop, apple2-emul-0.7.4.tar.gz 2013-06-11 00:08:15 -07:00
COPYING initial source drop, apple2-emul-0.7.4.tar.gz 2013-06-11 00:08:15 -07:00
INSTALL initial source drop, apple2-emul-0.7.4.tar.gz 2013-06-11 00:08:15 -07:00
NEWS initial source drop, apple2-emul-0.7.4.tar.gz 2013-06-11 00:08:15 -07:00
PROBLEMS initial source drop, apple2-emul-0.7.4.tar.gz 2013-06-11 00:08:15 -07:00
README initial source drop, apple2-emul-0.7.4.tar.gz 2013-06-11 00:08:15 -07:00
README.debugger initial source drop, apple2-emul-0.7.4.tar.gz 2013-06-11 00:08:15 -07:00
README.md Show screenshots 2013-12-14 11:15:27 -08:00
TODO initial source drop, apple2-emul-0.7.4.tar.gz 2013-06-11 00:08:15 -07:00

Apple //ix

A salvaged Apple //e emulator, originally written in the mid-90's in C and x86 assembly and currently suffering from quite a bit of rot...

Project Goals

  • Approach 100% emulation fidelity with Apple //e machine
  • POSIX portability
  • A tech playground for me :-) ... This is actually an important point... I'm doing this because it's fun and allows me to play with a wide swath of fundamental tech : virtual CPU, virtual machines, assembly language programming, video and audio programming to name a few... So you might say that the process and practice is as important as the goals.

Apple //ix

Status Update

20131214 ...

  • It builds and works for me :-) as a 32bit binary on GNU/Linux with X11 and OpenAL
  • Ideally I'd like to maintain the CPU thread tightloop in assembly, and so will need to write new x86-64, ARM, (and also a generic C target) in addition to maintaining existing x86 assembly routines
  • Before any significant platform/architecture porting is started, need to develop unit tests!!! :-)

Public Domain Mystery House Disk Image

Semi-Ordered TODO

  • GNU/Linux x86 alpha-test binaries
  • Unit tests
  • POSIX x64 target (Linux, *BSD, ...)
  • MacOS port
  • ARM tablets (iOS, Android, ...)
  • General refactoring for modularity, clarity, and portability as I go (and have tests to double-check stuff :-)

DOS 3.3