Page 2

From C64-Wiki
Jump to navigationJump to search

Page 2 covers the memory locations 512-767 ($0200-02FF). This page area, like Page 3, stores information for use by the Operating System and BASIC; including pointers for BASIC and KERNAL routines. There is also buffer space in this page for the tape I/O, BASIC text input, the keyboard queue, and a small space for user-defined data.

Addresses[edit | edit source]

RAM

Hex Address Dec Address Type Contents
$0200-$0258 512-600 BASIC Input cache
$0259-$0276 601-630
$0277-$0280 631-640 Keyboard cache. See also 198
$0281-$0285 641-645
$0286 646 Value Text colour (values 0-15)
$0287 647 Colour under position of cursor
$0288 648 Top of screen page memory
$0289 649 Value Length of keyboard cache
$028A 650 Key-repeat for CRSR ,INST/DEL  and SPACE : default (CRSR  only)= 0; no keys pressed = 6, all three keys pressed = 128
$028B 651 Speed of key-repeat
$028C 652 Delay time of first key-repeat
$028D 653 Keycodes of CTRL  (added together) with:
Bit 0 - SHIFT 
Bit 1 - COMMODORE 
Bit 2 - CTRL 
$028E 654 Last pattern of SHIFT /CTRL /COMMODORE  Keypress
$028F 655 Pointer Low Byte keyboard decoding
$0290 656 Pointer High byte keyboard decoding
$0291 657 Character set case change with SHIFT +COMMODORE : enabled = 0 ($00), disabled = 128 ($80)
$0292 658 Screen scrolling: enabled = 0, disabled <> 0
$0293-$02A1 659-673 RS-232 Pseudo 6551 Registers
$02A2 674 Indicator of CIA #1 Control Register B Activity During Cassette I/O
$02A3 675 Save Area for CIA #1 Interrupt Control Register During Cassette Read
$02A4 676 Save Area for CIA #1 Control Register A During Cassette Read
$02A5 677 Temporary Index to the Next 40-Column Line for Screen Scrolling
$02A6 678 Flag For PAL/NTSC startup test
$02A7-$02FF 679-767 Unused