mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-12-29 00:31:52 +00:00
225 lines
3.5 KiB
PHP
225 lines
3.5 KiB
PHP
;; Zero Page
|
|
|
|
;; ZX02 addresses
|
|
|
|
ZP=$00
|
|
|
|
offset = ZP+0
|
|
ZX0_src = ZP+2
|
|
ZX0_dst = ZP+4
|
|
bitr = ZP+6
|
|
pntr = ZP+7
|
|
|
|
WHICH_LOAD = $09
|
|
|
|
;; Zero page monitor routines addresses
|
|
|
|
WNDLFT = $20
|
|
WNDWDTH = $21
|
|
WNDTOP = $22
|
|
WNDBTM = $23
|
|
CH = $24
|
|
CV = $25
|
|
GBASL = $26
|
|
GBASH = $27
|
|
BASL = $28
|
|
BASH = $29
|
|
H2 = $2C
|
|
V2 = $2D
|
|
MASK = $2E
|
|
COLOR = $30
|
|
|
|
|
|
; Electric Duet ZP usage
|
|
FREQ1 = $06
|
|
FREQ2 = $07
|
|
DURATION = $08
|
|
INSTRUMENT1 = $09
|
|
INSTRUMENT2 = $1D
|
|
MADDRL = $1E
|
|
MADDRH = $1F
|
|
LOC4E = $4E
|
|
COUNT256 = $4F
|
|
WHICH_PAGE = $50
|
|
|
|
|
|
|
|
; dos33 zero page = 26-2f, 35-38, 3e 3f 40-4d
|
|
; overlap applesoft 67-6a,6f,70,af,b0,ca-cd,d8
|
|
|
|
|
|
FRAME = $60
|
|
FRAMEH = $61
|
|
SCROLL = $62
|
|
XSAVE = $63
|
|
SCROLL_OFFSET = $64
|
|
BTC_L = $65
|
|
BTC_H = $66
|
|
SOUND_STATUS = $67
|
|
SOUND_DISABLED = $80
|
|
SOUND_IN_LC = $01 ; $01 sound effects in language card
|
|
SOUND_MOCKINGBOARD = $02 ; mockingboard detected
|
|
MENU_ITEM = $68
|
|
OLD_MENU_ITEM = $69
|
|
NOT_FIRST_TIME = $6A
|
|
STRONGBAD_X = $6B
|
|
PLAYER_X = $6C
|
|
STRONGBAD_DIR = $6D
|
|
SHIELD_POSITION = $6E
|
|
SHIELD_DOWN = 0
|
|
SHIELD_UP_LEFT = 1
|
|
SHIELD_UP_CENTER = 2
|
|
SHIELD_UP_RIGHT = 3
|
|
SHIELD_COUNT = $6F
|
|
BULLET_X = $70
|
|
BULLET_X_L = $71
|
|
BULLET_Y = $72
|
|
HEAD_DAMAGE = $73
|
|
BULLET_X_VEL = $74
|
|
BULLET_X_VEL_L = $75
|
|
BULLET_YDIR = $76
|
|
|
|
.if 0
|
|
REGISTER_DUMP = $70
|
|
A_FINE_TONE = $70
|
|
A_COARSE_TONE = $71
|
|
B_FINE_TONE = $72
|
|
B_COARSE_TONE = $73
|
|
C_FINE_TONE = $74
|
|
C_COARSE_TONE = $75
|
|
NOISE = $76
|
|
ENABLE = $77
|
|
A_VOLUME = $78
|
|
B_VOLUME = $79
|
|
C_VOLUME = $7A
|
|
ENVELOPE_FINE = $7B
|
|
ENVELOPE_COARSE = $7C
|
|
ENVELOPE_SHAPE = $7D
|
|
|
|
|
|
COPY_OFFSET = $7E
|
|
DECODER_STATE = $7F
|
|
|
|
|
|
REGISTER_DUMP2 = $80
|
|
A_FINE_TONE2 = $80
|
|
A_COARSE_TONE2 = $81
|
|
B_FINE_TONE2 = $82
|
|
B_COARSE_TONE2 = $83
|
|
C_FINE_TONE2 = $84
|
|
C_COARSE_TONE2 = $85
|
|
NOISE2 = $86
|
|
ENABLE2 = $87
|
|
A_VOLUME2 = $88
|
|
B_VOLUME2 = $89
|
|
C_VOLUME2 = $8A
|
|
ENVELOPE_FINE2 = $8B
|
|
ENVELOPE_COARS2 = $8C
|
|
ENVELOPE_SHAPE2 = $8D
|
|
LYRICSL = $8E
|
|
LYRICSH = $8F
|
|
.endif
|
|
|
|
FRAME_COUNT = $90
|
|
MB_VALUE = $91
|
|
MB_ADDRL = $91
|
|
MB_ADDRH = $92
|
|
DONE_PLAYING = $93
|
|
MB_CHUNK_OFFSET = $94
|
|
MB_FRAME = $94
|
|
MB_PATTERN = $95
|
|
CHUNKSIZE = $95
|
|
LZ4_DONE = $96
|
|
DECODE_ERROR = $97
|
|
COPY_TIME = $98
|
|
DECOMPRESS_TIME = $99
|
|
TIME_TAKEN = $9A
|
|
LYRICS_ACTIVE = $9B
|
|
;FORTYCOL = $9C
|
|
CURSOR = $9D
|
|
|
|
CURRENT_DISK = $DC
|
|
|
|
; More zero-page addresses
|
|
; we try not to conflict with anything DOS, MONITOR or BASIC related
|
|
|
|
|
|
D1_SCORE = $E0
|
|
D1_SCORE_H = $E1
|
|
D2_SCORE = $E2
|
|
D2_SCORE_H = $E3
|
|
|
|
D1_STATE = $E4
|
|
DUCK_MISSING = $00
|
|
DUCK_LEFT = $00
|
|
DUCK_RIGHT = $80
|
|
DUCK_NORMAL = $01
|
|
DUCK_MOVE = $02
|
|
DUCK_FEEDING = $03
|
|
D2_STATE = $E5
|
|
|
|
D1_XPOS = $E6
|
|
D2_XPOS = $E7
|
|
|
|
D1_YPOS = $E8
|
|
D2_YPOS = $E9
|
|
|
|
D1_XSPEED = $EA
|
|
D2_XSPEED = $EB
|
|
|
|
D1_YSPEED = $EC
|
|
D2_YSPEED = $ED
|
|
|
|
OLD_X = $EC
|
|
OLDER_X = $ED
|
|
|
|
DISP_PAGE = $EE
|
|
DRAW_PAGE = $EF
|
|
|
|
|
|
XPOS = $F0
|
|
YPOS = $F1
|
|
XMAX = $F2
|
|
SPRITE_X = $F3
|
|
SPRITE_Y = $F4
|
|
HGR_PAGE = $F5
|
|
CURRENT_ROW = $F6
|
|
|
|
TEMP = $F8
|
|
TEMPY = $F9
|
|
MASKL = $FA
|
|
MASKH = $FB
|
|
INL = $FC
|
|
INH = $FD
|
|
OUTL = $FE
|
|
OUTH = $FF
|
|
|
|
|
|
|
|
|
|
|
|
|
|
; read any file slot 6 version
|
|
; based on FASTLD6 and RTS copyright (c) Peter Ferrie 2011-2013,2018
|
|
|
|
; modified to assembled with ca64 -- vmw
|
|
; added code to patch it to run from current disk slot -- vmw
|
|
|
|
|
|
adrlo = $26 ; constant from boot prom
|
|
adrhi = $27 ; constant from boot prom
|
|
tmpsec = $3c ; constant from boot prom
|
|
reqsec = $3d ; constant from boot prom
|
|
sizelo = $44
|
|
sizehi = $45
|
|
secsize = $46
|
|
|
|
ldsizel = $f0
|
|
ldsizeh = $f1
|
|
namlo = $fb
|
|
namhi = $fc
|
|
step = $fd ; state for stepper motor
|
|
tmptrk = $fe ; temporary copy of current track
|
|
phase = $ff ; current phase for /seek
|
|
|