Apple //e emulator
Go to file
2014-06-14 12:13:49 -07:00
disks slightly improved display tests 2014-05-28 22:16:11 -07:00
docs Refactor to use GNU build tools 2014-01-22 20:51:50 -08:00
src Remove compiler pragmas and silence a spurious assert 2014-06-14 12:13:49 -07:00
.apple2 Interface menu changes 2014-03-25 23:42:05 -07:00
.gitignore .gitignore 2014-06-14 10:31:04 -07:00
ASM Refactor to use GNU build tools 2014-01-22 20:51:50 -08:00
AUTHORS Refactor to use GNU build tools 2014-01-22 20:51:50 -08:00
ChangeLog Refactor to use GNU build tools 2014-01-22 20:51:50 -08:00
configure.ac x86_64 target builds 2014-06-08 11:01:38 -07:00
COPYING initial source drop, apple2-emul-0.7.4.tar.gz 2013-06-11 00:08:15 -07:00
Makefile.am Better target arch checks, beginnings of x64 2014-06-07 11:24:53 -07:00
NEWS Refactor to use GNU build tools 2014-01-22 20:51:50 -08:00
PROBLEMS Refactor to use GNU build tools 2014-01-22 20:51:50 -08: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
reconf.sh Refactor to use GNU build tools 2014-01-22 20:51:50 -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