2014-05-13 15:10:55 +00:00
|
|
|
* Sources from
|
|
|
|
- http://www.easy68k.com/paulrsm/6502/
|
|
|
|
- http://www.classiccmp.org/cini/pdf/Apple/
|
|
|
|
|
|
|
|
* Memory map of the Apple II ROMs
|
|
|
|
http://www.easy68k.com/paulrsm/6502/MEMMAP.HTM
|
|
|
|
|
2014-06-10 00:39:29 +00:00
|
|
|
| | $D000-D7FF | Programmer's Aid #1--missing from the original Apple II, this is a ROM |
|
|
|
|
| | | add-on Apple sold that contains Integer BASIC utilities such as |
|
|
|
|
| | | high-resolution graphics support, renumber, append, tape verify, |
|
|
|
|
| | | music, and a RAM test. Complete source code is in the manual. |
|
2014-06-05 15:08:38 +00:00
|
|
|
| | | |
|
2014-06-10 00:39:29 +00:00
|
|
|
| | $D800-DFFF | Empty ROM socket. There was at least one third party ROM add-on. |
|
2014-06-05 15:08:38 +00:00
|
|
|
| | | |
|
2014-06-10 00:39:29 +00:00
|
|
|
| | $E000-F424 | Integer BASIC by Woz (Steve Wozniak, creator of the Apple II). "That |
|
|
|
|
| | intbasic.asm | BASIC, which we shipped with the first Apple II's, was never |
|
|
|
|
| | | assembled--ever. There was one handwritten copy, all handwritten, all |
|
|
|
|
| | | hand assembled." Woz, October 1984. |
|
2014-06-05 15:08:38 +00:00
|
|
|
| | | |
|
|
|
|
| + | $F425-F4FB | Floating point routines. Woz's first plans for his 6502 BASIC included |
|
|
|
|
| | $F63D-F65D | floating point, but he abandoned them when he realized he could finish |
|
|
|
|
| | fp.asm | faster by going integer only. He put these routines in the ROMs but |
|
|
|
|
| | | they are not called from anywhere. Complete source code is in the |
|
|
|
|
| | | manual. |
|
|
|
|
| | | |
|
2014-06-10 00:39:29 +00:00
|
|
|
| + | $F500-F63C | Mini-assembler. This lets you type in assembly code, one line at a |
|
|
|
|
| | $F666-F668 | time, and it will assemble the proper bytes. No labels or equates are |
|
|
|
|
| | miniasm.asm | supported--it is a MINI assembler. Complete source code is in the |
|
|
|
|
| | | manual. |
|
2014-06-05 15:08:38 +00:00
|
|
|
| | | |
|
2014-06-10 00:39:29 +00:00
|
|
|
| + | $F689-F7FC | Sweet-16 interpreter. Sweet-16 code has been benchmarked to be about |
|
|
|
|
| | sweet16.asm | half the size of pure 6502 code but 5-8 times slower. The renumber |
|
|
|
|
| | | routine in the Programmer's Aid #1 is written in Sweet-16, where small |
|
|
|
|
| | | size was much more important than speed. Complete source code is in |
|
|
|
|
| | | the manual. |
|
2014-06-05 15:08:38 +00:00
|
|
|
| | | |
|
2014-06-10 00:39:29 +00:00
|
|
|
| + | $F800-$FFFF | Monitor. Handles screen I/O and keyboard input. Also has a |
|
|
|
|
| | monitor.asm | disassembler, memory dump, memory move, memory compare, step and trace |
|
|
|
|
| | | functions, lo-res graphics routines, multiply and divide routines, and |
|
|
|
|
| | | more. This monitor has the cleanest code of all the Apple II |
|
|
|
|
| | | monitors. Every one after this had to patch the monitor to add |
|
|
|
|
| | | functions while still remaining (mostly) compatible. Complete source |
|
|
|
|
| | | code is in the manual. |
|
|
|
|
|
|
|
|
| E000-F424 | | intbasic |
|
|
|
|
| F425-F4FB | | fp (1) |
|
|
|
|
| F4FC-F4FF | 4 | ? - FF FF FF FF |
|
|
|
|
| F500-F63C | | miniasm (1) |
|
|
|
|
| F63D-F65D | | fp (2) |
|
|
|
|
| F65E-F665 | 8 | ? - FF FF FF FF FF FF FF FF |
|
|
|
|
| F666-F668 | | miniasm (2) |
|
|
|
|
| F669-F688 | 32 | ? - see below |
|
|
|
|
| F689-F7FC | | sweet16 |
|
|
|
|
| F7FD-F7FF | 3 | ? F6 FF FF |
|
|
|
|
| F800-FFFF | | monitor |
|
|
|
|
|
|
|
|
** F669-F688
|
|
|
|
|
|
|
|
F669- 84 58 STY $58
|
|
|
|
F66B- 86 57 STX $57
|
|
|
|
F66D- 85 56 STA $56
|
|
|
|
F66F- 08 PHP
|
|
|
|
F670- 68 PLA
|
|
|
|
F671- 85 59 STA $59
|
|
|
|
F673- BA TSX
|
|
|
|
F674- E8 INX
|
|
|
|
F675- E8 INX
|
|
|
|
F676- BD 00 01 LDA $0100,X
|
|
|
|
F679- 0A ASL
|
|
|
|
F67A- 0A ASL
|
|
|
|
F67B- 0A ASL
|
|
|
|
F67C- 0A ASL
|
|
|
|
F67D- 60 RTS
|
|
|
|
F67E- A4 58 LDY $58
|
|
|
|
F680- A6 57 LDX $57
|
|
|
|
F682- A5 59 LDA $59
|
|
|
|
F684- 48 PHA
|
|
|
|
F685- A5 56 LDA $56
|
|
|
|
F687- 28 PLP
|
|
|
|
F688- 60 RTS
|
|
|
|
|
|
|
|
|
|
|
|
|
2014-05-21 00:20:24 +00:00
|
|
|
|
|
|
|
* Misc
|
|
|
|
|
|
|
|
DOS listing info:
|
|
|
|
http://www.digibarn.com/collections/business-docs/apple-II-DOS/index.html
|
|
|
|
|
|
|
|
Edasm docs
|
|
|
|
ftp://ftp.apple.asimov.net/pub/apple_II/documentation/programming/6502assembly/Apple%206502%20Assembler-Editor.pdf
|
|
|
|
|
|
|
|
Apple II Original ROM Information
|
|
|
|
http://www.downloads.reactivemicro.com/Public/Users/David_Craig/Apple2OriginalROMInfo.TXT
|
2014-06-03 15:50:41 +00:00
|
|
|
|
2014-06-10 00:39:29 +00:00
|
|
|
Complete sources:
|
|
|
|
http://mosher.mine.nu/apple2/site/
|
|
|
|
|
|
|
|
|
2014-06-03 15:50:41 +00:00
|
|
|
* Differences found
|
|
|
|
The autostart ROM listing has $FFFE:FFFF pointing to IRQ ($FA40).
|
|
|
|
The apple2+.rom file I have points to $FF59 (OLDRST).
|
|
|
|
|