]> git.sur5r.net Git - cc65/blob - asminc/pce.inc
style fixes
[cc65] / asminc / pce.inc
1 ;
2 ; PCE definitions. By Groepaz/Hitmem.
3 ;
4
5 ; FIXME: optimize zeropage usage
6 CURS_X          = $30
7 CURS_Y          = $31
8 SCREEN_PTR      = $32           ;2
9 CRAM_PTR        = $34           ;2
10 CHARCOLOR       = $36
11 RVS             = $37
12 BGCOLOR         = $38
13 tickcount       = $39           ;4
14
15 ; FIXME: screen dimensions my change according to selected video mode
16 screenrows      = (224/8)
17 charsperline    = 61
18
19 CH_HLINE        = 1
20 CH_VLINE        = 2
21
22 ; huc6270 - Video Display Controller (vdc)
23
24 VDC_MAWR        = 0             ; Memory Address Write Register
25 VDC_MARR        = 1             ; Memory Address Read Register
26 VDC_VWR         = 2             ; VRAM Write Register
27 VDC_VRR         = 3             ; VRAM Read Register
28 VDC_CR          = 4             ; Control Register
29 VDC_RCR         = 5             ; Raster Counter Register
30 VDC_BXR         = 6             ; Background X-Scroll Register
31 VDC_BYR         = 7             ; Background Y-Scroll Register
32 VDC_MWR         = 8             ; Memory-access Width Register
33 VDC_HSR         = 9             ; Horizontal Sync Register (?)
34 VDC_HDR         = 10            ; Horizontal Display Register (?)
35 VDC_VPR         = 11            ; (unknown)
36 VDC_VDW         = 12            ; (unknown use)
37 VDC_VCR         = 13            ; (unknown use)
38 VDC_DCR         = 14            ; (DMA) Control Register
39 VDC_SOUR        = 15            ; (DMA) Source Register
40 VDC_DESR        = 16            ; (DMA) Destination Register
41 VDC_LENR        = 17            ; (DMA) Length Register
42 VDC_SATB        = 18            ; Sprite Attribute Table
43
44 ; VDC port
45 ; Note: absolute addressing mode must be used when writing to this port
46
47 VDC_CTRL        = $0000
48 VDC_DATA_LO     = $0002
49 VDC_DATA_HI     = $0003
50
51 ; huc6260 - Video Color Encoder (vce)
52
53 ; The DAC has a palette of 512 colours.
54 ; bitmap of the palette data is this: 0000000gggrrrbbb.
55 ; You can read and write the DAC-registers.
56
57 VCE             = $0400         ; base
58
59 VCE_CTRL        = $0400         ; write$00 to reset
60 VCE_ADDR_LO     = $0402         ; LSB of byte offset into palette
61 VCE_ADDR_HI     = $0403         ; MSB of byte offset into palette
62 VCE_DATA_LO     = $0404         ; LSB of 16-bit palette data
63 VCE_DATA_HI     = $0405         ; MSB of 16-bit palette data
64
65 ; programmable sound generator (PSG)
66
67 PSG             = $0800         ; base
68
69 ; timer
70
71 TIMER           = $0c00         ; base
72
73 TIMER_COUNT     = $0c00
74 TIMER_CTRL      = $0c01
75
76 JOY_CTRL        = $1000
77
78 IRQ_MASK        = $1402
79 IRQ_STATUS      = $1403
80
81 CDR_MEM_DISABLE = $1803
82 CDR_MEM_ENABLE  = $1807
83
84 ; Write VDC register
85 .macro VREG arg1,arg2
86         st0     #arg1
87         st1     #<(arg2)
88         st2     #>(arg2)
89 .endmacro