;; Zero Page

;; LZ4 addresses

;LZ4_SRC		= $00
;LZ4_DST		= $02
;LZ4_END		= $04
;WHICH_LOAD	= $05
;COUNT		= $06
;DELTA		= $08

;; 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_MASK	= $2F
COLOR		= $30


;SEEDL		= $4e
;SEEDH		= $4f
XMAX		= $50

; escape
FRAME		= $51
ASTEROID_SPEED	= $52
ASTEROID_X	= $53
ASTEROID_Y	= $54
RANDOM_PTR	= $55
FRAME_PLAY_OFFSET=$56
FRAME_PLAY_PAGE = $57

FIRE_Y		= $5B
SPRITE_XPOS	= $5C
SPRITE_YPOS	= $5D
BLAST1		= $5E
BLAST2		= $5F

FRAMEL		= $60
FRAMEH		= $61

FIRE		= $6A
ASTEROID_EXPLODE = $6B
ASTEROID_SUBX	= $6C
FIRE_X		= $6D
LEVEL_DONE	= $6E
YADD		= $6F

AY_REGISTERS	= $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
PT3_MIXER_VAL	= $77
A_VOLUME	= $78
B_VOLUME	= $79
C_VOLUME	= $7A
ENVELOPE_FINE	= $7B
ENVELOPE_COARSE	= $7C
ENVELOPE_SHAPE  = $7D

PATTERN_L       = $7E
PATTERN_H       = $7F
ORNAMENT_L      = $80
ORNAMENT_H      = $81
SAMPLE_L        = $82
SAMPLE_H        = $83

LOOP            = $84
MB_VALUE        = $85
MB_ADDRL        = $86
MB_ADDRH        = $87
DONE_PLAYING    = $88
DONE_SONG       = $89
PT3_TEMP	= $8A
ENV_SHAPE_TEMP	= $8B
C_COARSE_TEMP	= $8C
A_VOL_TEMP	= $8D

KEYPTRL		= $90
KEYPTRH		= $91
KEY_COUNTDOWN	= $92
KEYPTR		= $93
FORCE_MUSIC	= $94

; have to be consecutive
DOOR_STATUS	= $B0
DOOR_STATUS_H	= $B1
DOOR_X		= $B2
DOOR_X_H	= $B3
DOOR_Y		= $B4
DOOR_Y_H	= $B5
DOOR_XMIN	= $B6
DOOR_XMIN_H	= $B7
DOOR_XMAX	= $B8
DOOR_XMAX_H	= $B9

HAVE_GUN	= $BC		; C2 jail+
COLLISION_X	= $BE
COLLISION_Y	= $BF

GREEN0		= $C0
GREEN1		= $C1
GREEN2		= $C2
GREEN3		= $C3
GREEN4		= $C4
ZERO		= $C5
WASTE_CYCLES	= $C6
FOREVER_OFFSET	= $C7
FRAME_OFFSET	= $C8
FRAME_PAGE	= $C9
AY_WRITE_TEMP	= $CA
AY_WRITE_TEMP2	= $CB
ASTRONAUT_X	= $CC
ASTRONAUT_Y	= $CD
LASER_TEMP	= $CE		; 2+
LEFT_SHOOT_TARGET = $CF		; ALL

RIGHT_SHOOT_TARGET = $D0	; ALL
LEFT_WALK_LIMIT	= $D1		; ALL
RIGHT_WALK_LIMIT= $D2		; ALL
LEFT_SHOOT_LIMIT= $D3		; ALL
RIGHT_SHOOT_LIMIT=$D4		; ALL
NUM_DOORS	= $D5		; 2+
GUN_FIRE	= $D6		; 2+
GUN_STATE	= $D7		; 2+
BLAST_OUT	= $D8		; 2+
SHIELD_OUT	= $D9		; 2+

ALIEN_OUT	= $DA		; 2+
RASTER_PAGE	= $DA		; rasters

LASER_OUT	= $DB		; 2+
RASTER_X	= $DB		; rasters

GUN_CHARGE	= $DC		; 2+
CREDITS_POINTERL= $DC		; credits

CREDITS_POINTERH= $DD		; credits
CREDITS_X	= $DE		; credits

ON_ELEVATOR	= $DF		; ALL
CREDITS_Y	= $DF		; credits

LEFT_LIMIT	= $E0		; ALL
RIGHT_LIMIT	= $E1		; ALL

WHICH_ROOM	= $E3		; C4

GAME_OVER	= $E5		; ALL
CHARGER_COUNT	= $E6		; C4

LITTLEGUY_OUT	= $E8		; C2 cage
CART_X		= $E8		; C2 jail

SHOOTING_TOP	= $E9		; C1 cage
DUDE_X		= $E9		; C2 jail

	STATE_NO_KEYPRESS		= $80
	STATE_CROUCHING			= $40
	STATE_RUNNING			= $20

ASTRONAUT_STATE	= $EA
	P_STANDING		= $00
	P_WALKING		= $01
	P_RUNNING		= $02 | STATE_RUNNING
	P_CROUCHING		= $03 | STATE_CROUCHING
	P_KICKING		= $04
	P_JUMPING		= $05 | STATE_NO_KEYPRESS
	P_COLLAPSING		= $06 | STATE_NO_KEYPRESS
	P_FALLING_SIDEWAYS	= $07 | STATE_NO_KEYPRESS
	P_SWINGING		= $08 | STATE_NO_KEYPRESS
	P_ELEVATING_UP		= $09
	P_ELEVATING_DOWN	= $0A
	P_SHOOTING		= $0B
	P_FALLING_DOWN		= $0C | STATE_NO_KEYPRESS
	P_IMPALED		= $0D | STATE_NO_KEYPRESS
	P_CROUCH_SHOOTING	= $0E | STATE_CROUCHING
	P_CROUCH_KICKING	= $0F | STATE_CROUCHING
	P_DISINTEGRATING	= $10 | STATE_NO_KEYPRESS

SHOOTING_BOTTOM	=	$EB	; C2 cage
CART_OUT	=	$EB	; C2 jail

DISP_PAGE	=	$ED	; ALL
DRAW_PAGE	=	$EE	; ALL

INTRO_LOOPL	=	$F0	; INTRO
INTRO_LOOPH	=	$F1	; INTRO

XPOS		=	$F3	; ALL
YPOS		=	$F4	; ALL
DIRECTION	=	$F5	; ALL
GAIT		=	$F6	; ALL
INTRO_LOOPER	=	$F7	; INTRO
SOUND_WHILE_DECODE =	$F8

TEMP		=	$FA
TEMPY		=	$FB
INL		=	$FC
INH		=	$FD
OUTL		=	$FE
OUTH		=	$FF
