.define EQU = LZ4_SRC EQU $00 LZ4_DST EQU $02 LZ4_END EQU $04 COUNT EQU $06 DELTA EQU $08 ;; Zero page monitor routines addresses WNDLFT EQU $20 WNDWDTH EQU $21 WNDTOP EQU $22 WNDBTM EQU $23 CH EQU $24 CV EQU $25 GBASL EQU $26 GBASH EQU $27 BASL EQU $28 BASH EQU $29 H2 EQU $2C V2 EQU $2D MASK EQU $2E COLOR EQU $30 ;INVFLG EQU $32 ; dos33 zero page = 26-2f, 35-38, 3e 3f 40-4d ; overlap applesoft 67-6a,6f,70,af,b0,ca-cd,d8 ; DOS33: Confirmed kills $68 RWTSL EQU $60 RWTSH EQU $61 DOSBUFL EQU $62 DOSBUFH EQU $63 FILEML EQU $64 FILEMH EQU $65 ;TURNING EQU $60 ;SCREEN_X EQU $61 ; not used? ;SCREEN_Y EQU $62 ;ANGLE EQU $63 ;HORIZ_SCALE_I EQU $64 ;HORIZ_SCALE_F EQU $65 ;FACTOR_I EQU $66 ;FACTOR_F EQU $67 ;DX_I EQU $68 ;DX_F EQU $69 ;SPACEX_I EQU $6A ;SPACEX_F EQU $6B ;CX_I EQU $6C ;CX_F EQU $6D ;DY_I EQU $6E ;DY_F EQU $6F REGISTER_DUMP EQU $70 A_FINE_TONE EQU $70 A_COARSE_TONE EQU $71 B_FINE_TONE EQU $72 B_COARSE_TONE EQU $73 C_FINE_TONE EQU $74 C_COARSE_TONE EQU $75 NOISE EQU $76 ENABLE EQU $77 A_VOLUME EQU $78 B_VOLUME EQU $79 C_VOLUME EQU $7A ENVELOPE_FINE EQU $7B ENVELOPE_COARSE EQU $7C ENVELOPE_SHAPE EQU $7D COPY_OFFSET EQU $7E DECODER_STATE EQU $7F ;SPACEY_I EQU $70 ;SPACEY_F EQU $71 ;CY_I EQU $72 ;CY_F EQU $73 ;TEMP_I EQU $74 ;TEMP_F EQU $75 ;DISTANCE_I EQU $76 ;DISTANCE_F EQU $77 ;SPACEZ_I EQU $78 ;SPACEZ_F EQU $79 ;DRAW_SPLASH EQU $7A ;SPEED EQU $7B ;SPLASH_COUNT EQU $7C ;OVER_LAND EQU $7D ;NUM1L EQU $7E ;NUM1H EQU $7F CHUNKSIZE EQU $80 LZ4_DONE EQU $81 DECODE_ERROR EQU $82 A_COLOR EQU $83 B_COLOR EQU $84 C_COLOR EQU $85 COPY_TIME EQU $86 DECOMPRESS_TIME EQU $87 TIME_TAKEN EQU $88 SCREEN_Y EQU $89 WHICH_FILE EQU $8A ;NUM2L EQU $80 ;NUM2H EQU $81 ;RESULT EQU $82 ; 83,84,85 ;NEGATE EQU $86 ; UNUSED? ;LAST_SPACEX_I EQU $87 ;LAST_SPACEY_I EQU $88 ;LAST_MAP_COLOR EQU $89 ;DRAW_SKY EQU $8A COLOR_MASK EQU $8B ;KEY_COUNT EQU $8C ;KEY_OFFSET EQU $8D ;DRAW_BLUE_SKY EQU $8E RANDOM_POINTER EQU $8F FRAME_COUNT EQU $90 MB_VALUE EQU $91 ;MB_CHUNK EQU $92 MB_ADDRL EQU $91 MB_ADDRH EQU $92 DONE_PLAYING EQU $93 ;MB_FRAME_DIFF EQU $94 MB_CHUNK_OFFSET EQU $94 ;LZSS_RL EQU $95 ;LZSS_RH EQU $96 ;LZSS_COUNT EQU $97 ;LZSS_MASK EQU $98 ;LZSS_ENDL EQU $99 ;LZSS_ENDH EQU $9A ;MB_FRAME_DIFF2 EQU $9F ; More zero-page addresses ; we try not to conflict with anything DOS, MONITOR or BASIC related ;COLOR1 EQU $E0 COLOR2 EQU $E1 ;MATCH EQU $E2 XX EQU $E3 ;YY EQU $E4 ;SHIPY EQU $E4 ;YADD EQU $E5 ;LOOP EQU $E6 ;MEMPTRL EQU $E7 ;MEMPTRH EQU $E8 ;NAMEL EQU $E9 ;NAMEH EQU $EA ;NAMEX EQU $EB ;CHAR EQU $EC DISP_PAGE EQU $ED DRAW_PAGE EQU $EE ;FIRST EQU $F0 ;LASTKEY EQU $F1 ;PADDLE_STATUS EQU $F2 XPOS EQU $F3 YPOS EQU $F4 TEMP EQU $FA ;RUN EQU $FA ;TEMP2 EQU $FB TEMPY EQU $FB INL EQU $FC INH EQU $FD OUTL EQU $FE OUTH EQU $FF KEYPRESS EQU $C000 KEYRESET EQU $C010 ;; SOFT SWITCHES CLR80COL EQU $C000 ; PAGE0/PAGE1 normal SET80COL EQU $C001 ; PAGE0/PAGE1 switches PAGE0 in Aux instead EIGHTYCOL EQU $C00D SPEAKER EQU $C030 SET_GR EQU $C050 SET_TEXT EQU $C051 FULLGR EQU $C052 TEXTGR EQU $C053 PAGE0 EQU $C054 PAGE1 EQU $C055 LORES EQU $C056 ; Enable LORES graphics HIRES EQU $C057 ; Enable HIRES graphics AN3 EQU $C05E ; Annunciator 3 PADDLE_BUTTON0 EQU $C061 PADDL0 EQU $C064 PTRIG EQU $C070 ;; BASIC ROUTINES NORMAL EQU $F273 ;; MONITOR ROUTINES HLINE EQU $F819 ;; HLINE Y,$2C at A VLINE EQU $F828 ;; VLINE A,$2D at Y CLRSCR EQU $F832 ;; Clear low-res screen CLRTOP EQU $F836 ;; clear only top of low-res screen SETCOL EQU $F864 ;; COLOR=A TEXT EQU $FB36 TABV EQU $FB5B ;; VTAB to A BASCALC EQU $FBC1 ;; VTAB EQU $FC22 ;; VTAB to CV HOME EQU $FC58 ;; Clear the text screen WAIT EQU $FCA8 ;; delay 1/2(26+27A+5A^2) us SETINV EQU $FE80 ;; INVERSE SETNORM EQU $FE84 ;; NORMAL COUT EQU $FDED ;; output A to screen COUT1 EQU $FDF0 ;; output A to screen COLOR_BLACK EQU 0 COLOR_RED EQU 1 COLOR_DARKBLUE EQU 2 COLOR_PURPLE EQU 3 COLOR_DARKGREEN EQU 4 COLOR_GREY EQU 5 COLOR_MEDIUMBLUE EQU 6 COLOR_LIGHTBLUE EQU 7 COLOR_BROWN EQU 8 COLOR_ORANGE EQU 9 COLOR_GREY2 EQU 10 COLOR_PINK EQU 11 COLOR_LIGHTGREEN EQU 12 COLOR_YELLOW EQU 13 COLOR_AQUA EQU 14 COLOR_WHITE EQU 15 COLOR_BOTH_BLACK EQU $00 COLOR_BOTH_RED EQU $11 COLOR_BOTH_DARKBLUE EQU $22 COLOR_BOTH_DARKGREEN EQU $44 COLOR_BOTH_GREY EQU $55 COLOR_BOTH_MEDIUMBLUE EQU $66 COLOR_BOTH_LIGHTBLUE EQU $77 COLOR_BOTH_BROWN EQU $88 COLOR_BOTH_ORANGE EQU $99 COLOR_BOTH_PINK EQU $BB COLOR_BOTH_LIGHTGREEN EQU $CC COLOR_BOTH_YELLOW EQU $DD COLOR_BOTH_AQUA EQU $EE COLOR_BOTH_WHITE EQU $FF AUX_BOTH_MEDIUMBLUE EQU $33 ; 0011 0011 AUX_BOTH_GREY EQU $AA ; 1010 1010