dos33fsprogs/games/sb/zp.inc

225 lines
3.5 KiB
PHP
Raw Permalink Normal View History

2023-03-06 01:54:41 +00:00
;; Zero Page
2023-03-10 05:28:36 +00:00
;; ZX02 addresses
2023-03-06 01:54:41 +00:00
2023-03-10 05:28:36 +00:00
ZP=$00
2023-03-06 01:54:41 +00:00
2023-03-10 05:28:36 +00:00
offset = ZP+0
ZX0_src = ZP+2
ZX0_dst = ZP+4
bitr = ZP+6
pntr = ZP+7
2023-03-06 01:54:41 +00:00
2023-05-26 04:18:33 +00:00
WHICH_LOAD = $09
2023-03-06 01:54:41 +00:00
;; 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
2023-06-01 20:50:41 +00:00
; 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
2023-03-06 01:54:41 +00:00
; 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
2023-05-30 04:36:16 +00:00
SCROLL = $62
XSAVE = $63
SCROLL_OFFSET = $64
2023-05-31 05:14:56 +00:00
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
2023-06-01 20:45:32 +00:00
MENU_ITEM = $68
OLD_MENU_ITEM = $69
NOT_FIRST_TIME = $6A
2023-06-02 20:37:01 +00:00
STRONGBAD_X = $6B
PLAYER_X = $6C
2023-06-03 16:48:37 +00:00
STRONGBAD_DIR = $6D
2023-06-04 04:46:01 +00:00
SHIELD_POSITION = $6E
SHIELD_DOWN = 0
SHIELD_UP_LEFT = 1
SHIELD_UP_CENTER = 2
SHIELD_UP_RIGHT = 3
2023-06-04 04:50:59 +00:00
SHIELD_COUNT = $6F
2023-06-05 05:48:45 +00:00
BULLET_X = $70
2023-06-06 19:34:11 +00:00
BULLET_X_L = $71
2023-06-11 02:20:30 +00:00
BULLET_Y = $72
HEAD_DAMAGE = $73
BULLET_X_VEL = $74
BULLET_X_VEL_L = $75
2023-06-11 03:44:58 +00:00
BULLET_YDIR = $76
2023-05-31 05:14:56 +00:00
.if 0
2023-03-06 01:54:41 +00:00
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
2023-03-06 01:54:41 +00:00
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
2023-05-26 04:18:33 +00:00
CURRENT_DISK = $DC
2023-03-06 01:54:41 +00:00
; More zero-page addresses
; we try not to conflict with anything DOS, MONITOR or BASIC related
2023-03-12 03:43:40 +00:00
D1_SCORE = $E0
D1_SCORE_H = $E1
D2_SCORE = $E2
D2_SCORE_H = $E3
2023-03-13 19:29:05 +00:00
D1_STATE = $E4
DUCK_MISSING = $00
DUCK_LEFT = $00
DUCK_RIGHT = $80
DUCK_NORMAL = $01
DUCK_MOVE = $02
DUCK_FEEDING = $03
D2_STATE = $E5
2023-03-12 03:43:40 +00:00
2023-03-13 19:29:05 +00:00
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
2023-03-13 19:29:05 +00:00
DISP_PAGE = $EE
DRAW_PAGE = $EF
2023-03-06 01:54:41 +00:00
2023-03-12 03:43:40 +00:00
XPOS = $F0
YPOS = $F1
XMAX = $F2
SPRITE_X = $F3
SPRITE_Y = $F4
2023-05-02 04:50:49 +00:00
HGR_PAGE = $F5
2023-05-03 01:18:43 +00:00
CURRENT_ROW = $F6
2023-03-06 01:54:41 +00:00
2023-03-14 03:55:12 +00:00
TEMP = $F8
TEMPY = $F9
MASKL = $FA
MASKH = $FB
2023-03-06 01:54:41 +00:00
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