APPENDIX H MEMORY MAP SYSTEM MEMORY MAP The Commodore 128 BASIC memory map is shown below: COMMODORE 128 MODE MEMORY MAP --------------------------------------- C128 RAM C128 ROM FFFF+-------------+ FFFF+-------------+ FFFA|NMI RST IRQ | | | |CP/M RAM Code| | | FFD0| | FF4D+-------------+- - Kernal Jump Table - - |krnl RAM Code| | | & Hardware Vectors | FF05+-------------+ FF05+-------------+- - Kernal interrupt |MMU | | | Dispatch Code | |Configuration| | | |Register | | | | FF00+-------------+ FF00|/////////////|- - MMU Configuration | | | | Registers |\ | | FC80| - - - - - - |- - ROM Reserved for |HIGH | | | | Foreign Lang. |/ ROM | | | | Versions | | FA00| - - - - - - |- - Editor Tables | | | | | | | E000| - - - - - - |- - Kernal ROM Code | | | |/////////////| | | D000|/////////////|- - I/O Space | | | | | | | C000| - - - - - - |- - Editor ROM Code - - -| | | | | | | B000| - - - - - - |- - Monitor ROM Code - -|\_MID | | | | / ROM | | 8000| |- - - - - - - - - - - - -| | | | | | | | | |\ LOW | | | | |ROM 4000+-------------+ 4000+-------------+- - Basic ROM Code - - -|/ COMMODORE 128 MODE MEMORY MAP --------------------------------------- C128 RAM 4000+---------------------------------+ | VIC BIT-MAP Screen | 2000| - - - - - - - - - - - - - - - - | | VIC BIT-MAP Color (VM #2) | 1C00+---------------------------------+ | Reserved for | | Function Key Software | 1800+---------------------------------+ | Reserved for | | Foreign Lang.Systems | 1400+---------------------------------+ | | 1300+---------------------------------+ | Basic Absolute Variables | 1200+---------------------------------+ | Basic DOS/VSP Variables | 1108+---------------------------------+ | CP/M Reset Code | 1100+---------------------------------+ | Function Key Buffer | 1000+---------------------------------+ | Sprite Definition Area | 0E00+---------------------------------+ | RS/232 Output Buffer | 0D00+---------------------------------+ | RS/232 Input Buffer | 0C00+---------------------------------+ | (Disk Boot Page) | 0BC0| - - - - - - - - - - - - - - - - | | Cassette Buffer | 0B00+---------------------------------+ |Monitor & Kernal Absolute Values | 0A00+---------------------------------+ | Basic Run-Time Stack | 0800+---------------------------------+ | VIC Text Screen (VM #1) | 0400+---------------------------------+ COMMODORE 128 MODE MEMORY MAP --------------------------------------- C128 RAM 0400+---------------------------------+ | Basic RAM Code | 0380+ - - - - - - - - - - - - - - - - + | Kernal Tables | 033C+ - - - - - - - - - - - - - - - - + | Indirects | 02FC+ - - - - - - - - - - - - - - - - + | Kernal RAM Code | 02A2+ - - - - - - - - - - - - - - - - + | Basic & Monitor Input Buffer | 0200+ - - - - - - - - - - - - - - - - + | System Stack | 0149+ - - - - - - - - - - - - - - - - + | Basic DOS Using | 0110+ - - - - - - - - - - - - - - - - + | F Buffer | 0100+ - - - - - - - - - - - - - - - - + | Kernal Z.P. | 0090+ - - - - - - - - - - - - - - - - + | Basic Z.P. | 0002+ - - - - - - - - - - - - - - - - + 0000+---------------------------------+