CHARCOLOR = $36
RVS = $37
BGCOLOR = $38
-_tickcount = $39 ;4
+tickcount = $39 ;4
screenrows = (224/8)
-charsperline = (512/8)
-xsize = charsperline
+charsperline = 61
-CH_HLINE = 7
-CH_VLINE = 7
+CH_HLINE = 1
+CH_VLINE = 2
; huc6270 - Video Display Controller (vdc)
VDC_LENR =17 ; (DMA) Length Register
VDC_SATB =18 ; Sprite Attribute Table
+; VDC port
+; Note: absolute addressing mode must be used when writing to this port
+
VDC_CTRL = $0000
VDC_DATA_LO = $0002
VDC_DATA_HI = $0003
; bitmap of the palette data is this: 0000000gggrrrbbb.
; You can read and write the DAC-registers.
-VCE_CTRL = $0400 ; write$00 to reset
+VCE = $0400 ; base
+
+VCE_CTRL = $0400 ; write$00 to reset
VCE_ADDR_LO = $0402 ; LSB of byte offset into palette
VCE_ADDR_HI = $0403 ; MSB of byte offset into palette
VCE_DATA_LO = $0404 ; LSB of 16-bit palette data
VCE_DATA_HI = $0405 ; MSB of 16-bit palette data
+; programmable sound generator (PSG)
+
+PSG = $0800 ; base
+
+; timer
+
+TIMER = $0c00 ; base
+
TIMER_COUNT = $0c00
TIMER_CTRL = $0c01
CDR_MEM_DISABLE = $1803
CDR_MEM_ENABLE = $1807
-;; lda abs
-.macro ldaio arg1
- .byte $ad
- .word arg1
-.endmacro
-
-;; sta abs
-.macro staio arg1
- .byte $8d
- .word arg1
-.endmacro
-
-;; stz abs
-.macro stzio arg1
- .byte $9c
- .word arg1
-.endmacro
-
; Write VDC register
.macro VREG arg1,arg2
st0 #arg1