mirror of
https://github.com/cc65/cc65.git
synced 2024-12-25 02:29:52 +00:00
5c5d01d84a
in the distribution. Added --forget-inc-paths to the command line of the assembler in the Makefiles, because the assembler does now have builtin paths and will find include files from an installation first. Hopefully fixed any problems that arose from the two changes. git-svn-id: svn://svn.cc65.org/cc65/trunk@4223 b7a2c559-68d2-44c3-8de9-860c34a00d81
183 lines
3.5 KiB
PHP
183 lines
3.5 KiB
PHP
;
|
|
; Zero page variables and I/O definitions for the CBM 510
|
|
;
|
|
; Taken from a kernal disassembly done by myself in 2000/2001.
|
|
;
|
|
; Ullrich von Bassewitz, 13.09.2001
|
|
|
|
|
|
;-----------------------------------------------------------------------------
|
|
; Zeropage stuff
|
|
|
|
ExecReg = $0000
|
|
IndReg = $0001
|
|
|
|
; ---------------------------------------------------------------------------
|
|
; Screen size
|
|
|
|
XSIZE = 40
|
|
YSIZE = 25
|
|
|
|
;-----------------------------------------------------------------------------
|
|
; I/O Definitions
|
|
|
|
; I/O $d800: VIC
|
|
|
|
VIC_SPR0_X = $00
|
|
VIC_SPR0_Y = $01
|
|
VIC_SPR1_X = $02
|
|
VIC_SPR1_Y = $03
|
|
VIC_SPR2_X = $04
|
|
VIC_SPR2_Y = $05
|
|
VIC_SPR3_X = $06
|
|
VIC_SPR3_Y = $07
|
|
VIC_SPR4_X = $08
|
|
VIC_SPR4_Y = $09
|
|
VIC_SPR5_X = $0A
|
|
VIC_SPR5_Y = $0B
|
|
VIC_SPR6_X = $0C
|
|
VIC_SPR6_Y = $0D
|
|
VIC_SPR7_X = $0E
|
|
VIC_SPR7_Y = $0F
|
|
VIC_SPR_HI_X = $10
|
|
VIC_SPR_ENA = $15
|
|
VIC_SPR_EXP_Y = $17
|
|
VIC_SPR_EXP_X = $1D
|
|
VIC_SPR_MCOLOR = $1C
|
|
VIC_SPR_BG_PRIO = $1B
|
|
|
|
VIC_SPR_MCOLOR0 = $25
|
|
VIC_SPR_MCOLOR1 = $26
|
|
|
|
VIC_SPR0_COLOR = $27
|
|
VIC_SPR1_COLOR = $28
|
|
VIC_SPR2_COLOR = $29
|
|
VIC_SPR3_COLOR = $2A
|
|
VIC_SPR4_COLOR = $2B
|
|
VIC_SPR5_COLOR = $2C
|
|
VIC_SPR6_COLOR = $2D
|
|
VIC_SPR7_COLOR = $2E
|
|
|
|
VIC_CTRL1 = $11
|
|
VIC_CTRL2 = $16
|
|
|
|
VIC_HLINE = $12
|
|
|
|
VIC_VIDEO_ADR = $18
|
|
|
|
VIC_IRR = $19 ; Interrupt request register
|
|
VIC_IMR = $1A ; Interrupt mask register
|
|
|
|
VIC_BORDERCOLOR = $20
|
|
VIC_BG_COLOR0 = $21
|
|
VIC_BG_COLOR1 = $22
|
|
VIC_BG_COLOR2 = $23
|
|
VIC_BG_COLOR3 = $24
|
|
|
|
|
|
|
|
; I/O $da00: SID 6581
|
|
|
|
SID_S1Lo = $00
|
|
SID_S1Hi = $01
|
|
SID_PB1Lo = $02
|
|
SID_PB1Hi = $03
|
|
SID_Ctl1 = $04
|
|
SID_AD1 = $05
|
|
SID_SUR1 = $06
|
|
|
|
SID_S2Lo = $07
|
|
SID_S2Hi = $08
|
|
SID_PB2Lo = $09
|
|
SID_PB2Hi = $0A
|
|
SID_Ctl2 = $0B
|
|
SID_AD2 = $0C
|
|
SID_SUR2 = $0D
|
|
|
|
SID_S3Lo = $0E
|
|
SID_S3Hi = $0F
|
|
SID_PB3Lo = $10
|
|
SID_PB3Hi = $11
|
|
SID_Ctl3 = $12
|
|
SID_AD3 = $13
|
|
SID_SUR3 = $14
|
|
|
|
SID_FltLo = $15
|
|
SID_FltHi = $16
|
|
SID_FltCtl = $17
|
|
SID_Amp = $18
|
|
SID_ADConv1 = $19
|
|
SID_ADConv2 = $1A
|
|
SID_Noise = $1B
|
|
SID_Read3 = $1C
|
|
|
|
|
|
; I/O $db00: CIA 6526 Inter Process Communication
|
|
; I/O $dc00: CIA 6526
|
|
|
|
.struct CIA
|
|
PRA .byte
|
|
PRB .byte
|
|
DDRA .byte
|
|
DDRB .byte
|
|
.union
|
|
.struct
|
|
TALO .byte
|
|
TAHI .byte
|
|
.endstruct
|
|
TA .word
|
|
.endunion
|
|
.union
|
|
.struct
|
|
TBLO .byte
|
|
TBHI .byte
|
|
.endstruct
|
|
TB .word
|
|
.endunion
|
|
TOD10 .byte
|
|
TODSEC .byte
|
|
TODMIN .byte
|
|
TODHR .byte
|
|
SDR .byte
|
|
ICR .byte
|
|
CRA .byte
|
|
CRB .byte
|
|
.endstruct
|
|
|
|
|
|
; I/O $dd00: ACIA 6551
|
|
|
|
.struct ACIA
|
|
DATA .byte
|
|
STATUS .byte
|
|
CMD .byte
|
|
CTRL .BYTE
|
|
.endstruct
|
|
|
|
|
|
; I/O $de00: Triport #1 6525
|
|
; I/O $df00: Triport #2 6525
|
|
|
|
.struct TPI
|
|
PRA .byte
|
|
PRB .byte
|
|
.union
|
|
PRC .byte
|
|
INT .byte
|
|
.endunion
|
|
DDRA .byte
|
|
DDRB .byte
|
|
.union
|
|
DDRC .byte
|
|
IMR .byte
|
|
.endunion
|
|
CR .byte
|
|
AIR .byte
|
|
.endstruct
|
|
|
|
|
|
; Out video memory address
|
|
|
|
COLOR_RAM = $D400 ; System bank
|
|
|