;
; Taken from a kernal disassembly done by myself in 2000/2001.
;
-; Ullrich von Bassewitz, 13.09.2001
+; 2001-09-13, Ullrich von Bassewitz
+; 2014-04-02, Greg King
;-----------------------------------------------------------------------------
; Zeropage stuff
-ExecReg = $00
-IndReg = $01
+ExecReg := $00 ; Controls execution memory bank
+IndReg := $01 ; Controls indirect indexed load-store bank
+
+TXTPTR := $85 ; Far pointer into BASIC source code
+FNAM := $90 ; Far pointer to LOAD/SAVE file-name
+FNAM_LEN := $9D ; Holds length of file-name
; ---------------------------------------------------------------------------
; Screen size
;-----------------------------------------------------------------------------
; I/O Definitions
+; Note: These numbers aren't addresses. They are offsets from the start of
+; each chip's register set. They are used in the indirect indexed addressing
+; mode.
-; I/O $d800: VIC
+; I/O $d800: VIC-II
VIC_SPR0_X = $00
VIC_SPR0_Y = $01
VIC_HLINE = $12
+VIC_LPEN_X = $13
+VIC_LPEN_Y = $14
+
VIC_VIDEO_ADR = $18
VIC_IRR = $19 ; Interrupt request register
VIC_BG_COLOR3 = $24
-
; I/O $da00: SID 6581
SID_S1Lo = $00
SID_Read3 = $1C
-; I/O $db00: CIA 6526 Inter Process Communication
+; I/O $db00: CIA 6526, Inter Process Communication
; I/O $dc00: CIA 6526
.struct CIA
.endstruct
-; Out video memory address
+;-----------------------------------------------------------------------------
+; Our video memory address
-COLOR_RAM = $D400 ; System bank
+COLOR_RAM := $D400 ; System bank
+
+
+;-----------------------------------------------------------------------------
+BASIC_BUF := $FB5E ; Bank 0 location of command-line
+BASIC_BUF_LEN = 162 ; Maximum length of command-line