Update various copy

This commit is contained in:
Aaron Culliney 2016-06-26 09:55:13 -07:00
parent 19d427ac6e
commit d3b87e5c05

View File

@ -3,6 +3,23 @@ Apple //ix
Apple2ix is an Apple //e (8bit 65c02 CPU) emulator designed to work on varios POSIX platforms. Apple2ix is an Apple //e (8bit 65c02 CPU) emulator designed to work on varios POSIX platforms.
Lineage
-------
Apple2ix derives from the apple2-emul-linux project originally coded by various developers in the mid 1990's and FTP-uploaded as source tarballs to the original `tsx-11.mit.edu` Linux archive.
The original software was designed to work from the Linux console rendering via SVGAlib. It ran on par to the 1MHz Apple //e on an i386 (Pentium 100 class) or better machine. Later ports added X11 graphics support based on the original X11 DOOM source code drop, ty JC!
As of June 2016, the resurrected Apple2ix runs on x64 MacOSX 10.9+, x64 Debian GNU/Linux, and x86 and ARM Android devices
Project Goals
-------------
* Portability and code resilience across a wide range of modern POSIXy systems including MacOSX, desktop Linux/BSD, iOS, Android. *If you are on Windows, just use the excellent [AppleWin](https://github.com/AppleWin/AppleWin) emulator!*
* Language/platform/API minimalism for core emulation modules (prefer coding to POSIX APIs and using C99 over all other choices)
* Reasonable emulation fidelity to the original Apple //e machine (timing, video, audio, etc...)
* Good platform citizenship for each port (prefer coding in language-of-choice promoted by platform--e.g.: Objective-C/Swift on Darwin, Java on Android, ...)
Project Tech Project Tech
------------ ------------
@ -14,23 +31,6 @@ Project Tech
* Objective-C and Cocoa APIs (Mac/iOS variant) * Objective-C and Cocoa APIs (Mac/iOS variant)
* Java and Android APIs (Android app) * Java and Android APIs (Android app)
Lineage
-------
Apple2ix derives from the apple2-emul-linux project originally coded by various developers in the mid 1990's and FTP-uploaded as source tarballs to the original `tsx-11.mit.edu` Linux archive.
The original software was designed to work from the Linux console rendering via SVGAlib. It ran on par to the 1MHz Apple //e on an i386 (Pentium 100 class) or better machine. Later ports added X11 graphics support based on the original X11 DOOM source code drop, ty JC!
As of November 2015, the resurrected Apple2ix runs on x64 MacOSX 10.9+, x64 Debian GNU/Linux, and ARM Android
Project Goals
-------------
* Portability and code resilience across a wide range of modern platforms including MacOSX, desktop Linux/BSD, iOS, Android -- *But not Windows, just use the excellent [AppleWin](https://github.com/AppleWin/AppleWin) emulator if you're on Windows!*
* Reasonable emulation fidelity to the original Apple //e machine (timing, video, audio, etc...)
* Language/platform/API minimalism for core emulation modules (prefer coding to POSIX APIs and using C99 over all other choices), except for CPU module which should be in custom assembly or IR ;-)
* Good platform citizenship for menu system (prefer coding in language-of-choice promoted by platform--e.g.: Objective-C/Swift on Darwin, Java on Android, ...)
Android Android
------- -------
@ -58,8 +58,8 @@ Due to Apple's policy about emulators we are unlikely to ship this in the App St
iOS port in progress 2016, check this repo and fork(s) too! iOS port in progress 2016, check this repo and fork(s) too!
Linux+ Package Linux/POSIX
-------------- -----------
For Linux and *BSD, I do not personally relish being a package/port maintainer, so you should `./configure --prefix=...`, `make`, `make install` like it's 1999 ;-) For Linux and *BSD, I do not personally relish being a package/port maintainer, so you should `./configure --prefix=...`, `make`, `make install` like it's 1999 ;-)
@ -70,15 +70,17 @@ You will need GCC or Clang compiler and other tools as determined by the `config
Semi-Ordered TODO Semi-Ordered TODO
----------------- -----------------
* Mockingboard is buggy. Need to research/check upstream (AppleWin and beyond) for bugfixes and refactor.
* Double-LORES graphics (used in Dagen Brock's Flappy Bird clone) are ugly/incorrect ... fix 'em * Double-LORES graphics (used in Dagen Brock's Flappy Bird clone) are ugly/incorrect ... fix 'em
* Mockingboard is seriously buggy. Need to research/check upstream for bugfixes and refactor. * Double-HIRES graphics are also ugly/icorrect ... fix 'em
* CPU module ports: aarch64, x86 without textreloc's, Clang IR * Improved VBL timing and vSync matching to the device/system refresh rate
* iOS/iWatch ports. iOS in progress early 2016. * CPU module ports: aarch64, Clang IR (bitcode)
* Proper VBL timing and vSync matching to the device (if available) * iOS/iWatch/TVos ports. (iOS in progress 2016)
* OpenGL shaders/tricks for style (various screen artifacts) and functionality (Disk ][ status overlays, etc) * Android TV and Android wear
* OpenGL shaders/tricks for style (emulating of various NTSC screen artifacts)
* Emulator save/restore image compatibility with AppleWin * Emulator save/restore image compatibility with AppleWin
* Emulation features ... (3.5" disk, AppleHD, Phasor, printer, ethernet, ...) * Emulation features ... (3.5" disk, AppleHD, Phasor, printer, ethernet, ...)
* Debugger rewrite with tests ... improved debugger routines (CLI/curses debugger? GDB/LLDB module?) * Debugger rewrite with tests ... improved debugger routines (CLI/curses debugger? GDB/LLDB module?)
* Emscripten/web frontend? * Port to web ... emscripten/asmjs/web assembly
![DOS 3.3](https://raw.github.com/mauiaaron/apple2/master/docs/DOS33.png "DOS 3.3 Applesoft BASIC and //e monitor") ![DOS 3.3](https://raw.github.com/mauiaaron/apple2/master/docs/DOS33.png "DOS 3.3 Applesoft BASIC and //e monitor")