TomHarte / CLK

A latency-hating emulator of: the Acorn Electron and Archimedes, Amstrad CPC, Apple II/II+/IIe and early Macintosh, Atari 2600 and ST, ColecoVision, Enterprise 64/128, Commodore Vic-20 and Amiga, MSX 1/2, Oric 1/Atmos, early PC compatibles, Sega Master System, Sinclair ZX80/81 and ZX Spectrum.
MIT License
930 stars 52 forks source link

Implement the Apple II floating bus #425

Closed TomHarte closed 6 years ago

TomHarte commented 6 years ago

Cf. http://rich12345.tripod.com/aiivideo/softalk.html

... a complete sixty-five-cycle scan line consists of sixty-five consecutive bytes of display buffer memory that starts twenty-five bytes prior to the actual data to be displayed.

During VBL the data acts just as if it were starting a whole new frame from the beginning, but it never finishes this pseudo-frame. After getting one third of the way through the frame (to scan line $3F), it suddenly repeats the previous six scan lines ($3A through $3F) before aborting to begin the next true frame

TomHarte commented 6 years ago

Also, if implementing the IIe ever becomes a priority, per Understanding the Apple IIE, page I-4:

HBL scanned addresses in TEXT/LORES scanning in the Apple II are $1000 higher than HBL' scanned addresses.

TomHarte commented 6 years ago

https://groups.google.com/forum/#!topic/comp.sys.apple2.programmer/1G4Fs91g_w0 also seems to suggest some good test material.