mirror of
https://github.com/billbudge/PCS_AppleII.git
synced 2024-10-31 09:06:39 +00:00
2753 lines
31 KiB
ArmAsm
2753 lines
31 KiB
ArmAsm
LST OFF
|
|
*
|
|
ORG $7700
|
|
OBJ $8380
|
|
*
|
|
* CONSTANTS
|
|
*
|
|
LIBOBJ EQU 3
|
|
*
|
|
T EQU $07
|
|
XT EQU T+1
|
|
YT EQU XT+1
|
|
T2 EQU YT+1
|
|
*
|
|
B1 EQU $10
|
|
B2 EQU B1+2
|
|
B3 EQU B2+2
|
|
*
|
|
THETA EQU B2+2
|
|
BCODE EQU THETA+1
|
|
KICK EQU BCODE+1
|
|
*
|
|
FLIPR EQU KICK+1
|
|
FRAME EQU FLIPR+1
|
|
LEFTX EQU FRAME+1
|
|
FDIR EQU LEFTX+1
|
|
FX1 EQU FDIR+1
|
|
FX2 EQU FX1+1
|
|
FWIDTH EQU FX2+1
|
|
*
|
|
OBJ EQU $91
|
|
NOBJ EQU OBJ+2
|
|
OBJCOUNT EQU NOBJ+1
|
|
OBJID EQU OBJCOUNT+5
|
|
LB EQU OBJID+3
|
|
MIDTOP EQU LB+7
|
|
*
|
|
RUNLEN EQU $C0
|
|
PDL0 EQU RUNLEN+1
|
|
PDL1 EQU PDL0+1
|
|
BTN0 EQU PDL1+1
|
|
BTN1 EQU BTN0+1
|
|
PTM1 EQU BTN1+1
|
|
PTM2 EQU PTM1+1
|
|
KBD EQU PTM2+1
|
|
*
|
|
SERIES EQU KBD+1
|
|
SLICE EQU SERIES+1
|
|
ST EQU SLICE+1
|
|
DSCORE EQU ST+1
|
|
DBONUS EQU DSCORE+1
|
|
BMULT EQU DBONUS+1
|
|
INITMODE EQU BMULT+1
|
|
SCB EQU INITMODE+1
|
|
*
|
|
BST EQU SCB+2
|
|
X1 EQU BST+1
|
|
Y1 EQU X1+1
|
|
X2 EQU Y1+1
|
|
Y2 EQU X2+1
|
|
BDX EQU Y2+1
|
|
BDY EQU BDX+1
|
|
BXACC EQU BDY+1
|
|
BYACC EQU BXACC+1
|
|
BMOVE EQU BYACC+1
|
|
MIDX EQU BMOVE+1
|
|
*
|
|
HCNT EQU MIDX+1
|
|
HT EQU HCNT+1
|
|
HVAL EQU HT+1
|
|
P1 EQU HVAL+1
|
|
P2 EQU P1+1
|
|
RTT EQU P2+1
|
|
LFT EQU RTT+1
|
|
HTCNT EQU LFT+1
|
|
LASTY EQU HTCNT+1
|
|
*
|
|
STGL EQU $3E
|
|
*
|
|
PBTBLO EQU $400
|
|
PBTBHI EQU $4C0
|
|
VLO EQU $580
|
|
VHI EQU $600
|
|
RCN EQU $680
|
|
TIME EQU $700
|
|
*
|
|
LOGIC EQU $4000
|
|
WSET EQU $4018
|
|
PBDATA EQU $401C
|
|
PBDX EQU $6F40
|
|
*
|
|
DIV7 EQU $1400
|
|
MOD7 EQU DIV7+$100
|
|
SETMODE EQU MOD7+$2CF
|
|
XOFFDRAW EQU SETMODE+$62
|
|
CHARTO EQU XOFFDRAW+$435
|
|
PRCHAR EQU CHARTO+$A
|
|
PRINT EQU PRCHAR+$38
|
|
CHAR EQU PRINT+$19
|
|
*
|
|
GETOBJ EQU $8E5E
|
|
GETNOBJ EQU GETOBJ+$C
|
|
MAKEHOLE EQU GETNOBJ+$526
|
|
*
|
|
BITMAPS EQU $7000
|
|
LAUNCHERB EQU BITMAPS
|
|
LFLIPB EQU LAUNCHERB+$48
|
|
RFLIPB EQU LFLIPB+$CF
|
|
BMP1B EQU RFLIPB+$CF
|
|
BMP2B EQU BMP1B+$54
|
|
BMP3B EQU BMP2B+$2C
|
|
BMP4B EQU BMP3B+$20
|
|
BMP5B EQU BMP4B+$2A
|
|
BMP6B EQU BMP5B+$34
|
|
LKICKB EQU BMP6B+$34
|
|
RKICKB EQU LKICKB+$A2
|
|
KNOCK1B EQU RKICKB+$A2
|
|
KNOCK2B EQU KNOCK1B+$30
|
|
ROLLB EQU KNOCK2B+$36
|
|
LFLIP2B EQU ROLLB+$5A
|
|
RFLIP2B EQU LFLIP2B+$5C
|
|
LANEB EQU RFLIP2B+$5C
|
|
DROP1B EQU LANEB+$3B
|
|
DROP2B EQU DROP1B+$23
|
|
CATCH1B EQU DROP2B+$20
|
|
CATCH2B EQU CATCH1B+$26
|
|
SPINB EQU CATCH2B+$5A
|
|
MAGB EQU SPINB+$F
|
|
BALLB EQU MAGB+$E
|
|
*
|
|
C05625 HEX 0004080C1014181C
|
|
HEX 2024282C3034383C
|
|
HEX 4044484C5054585C
|
|
HEX 6064676B6F73777B
|
|
HEX 7F83878B8F93979B
|
|
HEX 9FA3A7ABAFB3B7BB
|
|
HEX BFC3C7CBCFD3D7DB
|
|
HEX DFE3E7EBEFF3F7FB
|
|
*
|
|
C1125 HEX 0004080C1014181B
|
|
HEX 1F23272B2F33373B
|
|
HEX 3F43474B4E52565A
|
|
HEX 5E62666A6E72767A
|
|
HEX 7E8185898D919599
|
|
HEX 9DA1A5A9ADB1B4B8
|
|
HEX BCC0C4C8CCD0D4D8
|
|
HEX DCE0E4E7EBEFF3F7
|
|
*
|
|
C225 HEX 0004070B0F12161A
|
|
HEX 1E2125292C303437
|
|
HEX 3B3F43464A4E5155
|
|
HEX 595C6064676B6F73
|
|
HEX 767A7E8185898C90
|
|
HEX 94989B9FA3A6AAAE
|
|
HEX B1B5B9BCC0C4C8CB
|
|
HEX CFD3D6DADEE1E5E9
|
|
*
|
|
C45 HEX 000306080B0E1114
|
|
HEX 17191C1F2225282A
|
|
HEX 2D303336393B3E41
|
|
HEX 44474A4C4F525558
|
|
HEX 5B5D606366696B6E
|
|
HEX 7174777A7C7F8285
|
|
HEX 888B8D909396999C
|
|
HEX 9EA1A4A7AAADAFB2
|
|
*
|
|
C675 HEX 000203050608090B
|
|
HEX 0C0E0F1112141517
|
|
HEX 181A1C1D1F202223
|
|
HEX 252628292B2C2E2F
|
|
HEX 3133343637393A3C
|
|
HEX 3D3F404243454648
|
|
HEX 494B4D4E50515354
|
|
HEX 5657595A5C5D5F60
|
|
*
|
|
C7875 HEX 0001020203040505
|
|
HEX 06070809090A0B0C
|
|
HEX 0C0D0E0F10101112
|
|
HEX 1314141516171718
|
|
HEX 191A1B1B1C1D1E1E
|
|
HEX 1F20212222232425
|
|
HEX 2526272829292A2B
|
|
HEX 2C2C2D2E2F303031
|
|
*
|
|
C84375 HEX 0000010102020203
|
|
HEX 0304040405050506
|
|
HEX 0607070708080909
|
|
HEX 090A0A0B0B0B0C0C
|
|
HEX 0D0D0D0E0E0F0F0F
|
|
HEX 1010101111121212
|
|
HEX 1313141414151516
|
|
HEX 1616171718181819
|
|
*
|
|
LAUNCHRUN BIT BTN0
|
|
BMI LNCHRUN4
|
|
*
|
|
LDA PDL1
|
|
LSR
|
|
LSR
|
|
LSR
|
|
LSR
|
|
LSR
|
|
LDY #8
|
|
CMP (LB),Y
|
|
BCC LNCHRUN2
|
|
BEQ LNCHRUN3
|
|
LDA (LB),Y
|
|
CMP #5
|
|
BCS LNCHRUN3
|
|
JMP ADVANCE
|
|
LNCHRUN2 JMP RETREAT
|
|
LNCHRUN3 RTS
|
|
*
|
|
LNCHRUN4 LDY #8
|
|
LDA (LB),Y
|
|
BEQ LNCHRUN3
|
|
JMP RETREAT
|
|
*
|
|
LAUNCHHIT LDA BTN0
|
|
BPL LNCHHIT2
|
|
LDA Y2
|
|
LDY #2
|
|
CMP (B2),Y
|
|
BCS LNCHHIT2
|
|
LDA PDL1
|
|
LSR
|
|
LSR
|
|
STA BDY ;0-3F
|
|
NULLBOUNCE CLC
|
|
NULL RTS
|
|
LNCHHIT2 JMP PBOUNCE
|
|
*
|
|
* RUN THE FLIPPERS
|
|
*
|
|
LFLIP2RUN LDA #8
|
|
BNE LFLIPRUN2
|
|
RFLIP2RUN LDA #8
|
|
BNE RFLIPRUN2
|
|
LFLIPRUN LDA #0
|
|
LFLIPRUN2 LDX #0
|
|
BEQ FLIPRUN
|
|
RFLIPRUN LDA #0
|
|
RFLIPRUN2 LDX #1
|
|
*
|
|
FLIPRUN STA T
|
|
*
|
|
LDY #8
|
|
LDA (LB),Y
|
|
*
|
|
LDY BTN0,X
|
|
BPL FLPRUN3
|
|
CMP #7
|
|
BCS FLPRUN2
|
|
*
|
|
ADC T
|
|
STA XT
|
|
TAX
|
|
LDY #2
|
|
LDA (LB),Y
|
|
CLC
|
|
ADC FXDVERT+1,X
|
|
STA (LB),Y
|
|
LDY #5
|
|
LDA FXHEIGHT+1,X
|
|
STA (LB),Y
|
|
JSR ADVANCE
|
|
LDX XT
|
|
LDY #7
|
|
LDA FXLEN+1,X
|
|
STA (LB),Y
|
|
RTS
|
|
*
|
|
FLPRUN2 RTS
|
|
*
|
|
FLPRUN3 CMP #0
|
|
BEQ FLPRUN2
|
|
LDY BTN0,X
|
|
BMI FLPRUN2
|
|
*
|
|
FLPRUN4 CLC
|
|
ADC T
|
|
STA XT
|
|
TAX
|
|
LDY #7
|
|
LDA FXLEN-1,X
|
|
STA (LB),Y
|
|
JSR RETREAT
|
|
LDX XT
|
|
LDY #2
|
|
LDA (LB),Y
|
|
SEC
|
|
SBC FXDVERT,X ;WEIRD
|
|
STA (LB),Y
|
|
LDY #5
|
|
LDA FXHEIGHT-1,X
|
|
STA (LB),Y
|
|
RTS
|
|
*
|
|
FLIP2INIT LDA #8
|
|
BNE FLIPINIT2
|
|
FLIPINIT LDA #0
|
|
FLIPINIT2 STA T
|
|
FLIPINIT3 LDY #8
|
|
LDA (LB),Y
|
|
BEQ FLPRUN2
|
|
JSR FLPRUN4
|
|
JMP FLIPINIT3
|
|
*
|
|
FXDVERT HEX 000002FFFF00FEFE
|
|
HEX 0002FFFF0000FFFF
|
|
FXHEIGHT HEX 0C0C080807060808
|
|
HEX 0806060605040506
|
|
FXLEN HEX 2424181815121818
|
|
HEX 100C0C0C0A080A0C
|
|
FDDVERT HEX 0000FEFF00000000
|
|
HEX 000000000000FFFF
|
|
FHEIGHT HEX 0B09080605040608
|
|
HEX 0706050403030405
|
|
FTHETA HEX 04030201001F1E1D
|
|
HEX 04030201001F1E1D
|
|
*
|
|
FTBLO DA <FFRAME1
|
|
DA <FFRAME2
|
|
DA <FFRAME3
|
|
DA <FFRAME4
|
|
DA <FFRAME5
|
|
DA <FFRAME6
|
|
DA <FFRAME7
|
|
DA <FFRAME8
|
|
*
|
|
DA <SFRAME1
|
|
DA <SFRAME2
|
|
DA <SFRAME3
|
|
DA <SFRAME4
|
|
DA <SFRAME5
|
|
DA <SFRAME6
|
|
DA <SFRAME7
|
|
DA <SFRAME8
|
|
*
|
|
FTBHI DA >FFRAME1
|
|
DA >FFRAME2
|
|
DA >FFRAME3
|
|
DA >FFRAME4
|
|
DA >FFRAME5
|
|
DA >FFRAME6
|
|
DA >FFRAME7
|
|
DA >FFRAME8
|
|
*
|
|
DA >SFRAME1
|
|
DA >SFRAME2
|
|
DA >SFRAME3
|
|
DA >SFRAME4
|
|
DA >SFRAME5
|
|
DA >SFRAME6
|
|
DA >SFRAME7
|
|
DA >SFRAME8
|
|
*
|
|
LFLIP2HIT LDA #8
|
|
BNE LFLIPHIT2
|
|
LFLIPHIT LDA #0
|
|
LFLIPHIT2 STA T
|
|
LDX BTN0
|
|
LDA #0
|
|
BEQ FLIPHIT
|
|
RFLIP2HIT LDX #13
|
|
LDA #8
|
|
BNE RFLIPHIT2
|
|
RFLIPHIT LDX #19
|
|
LDA #0
|
|
RFLIPHIT2 STX FWIDTH
|
|
STA T
|
|
LDX BTN1
|
|
LDA #$80
|
|
FLIPHIT STX FDIR
|
|
STA FLIPR
|
|
*
|
|
BIT BMOVE
|
|
BMI FLIPH4
|
|
BVS FLIPH2
|
|
LDY Y1
|
|
DEY
|
|
BVC FLIPH3
|
|
FLIPH2 LDY Y2
|
|
INY
|
|
FLIPH3 LDA X1
|
|
STA FX1
|
|
LDA X2
|
|
STA FX2
|
|
BNE FLIPH8
|
|
*
|
|
FLIPH4 BVS FLIPH5
|
|
LDY X1
|
|
DEY
|
|
LDX X2
|
|
DEX
|
|
BVC FLIPH6
|
|
FLIPH5 LDY X1
|
|
INY
|
|
LDX X2
|
|
INX
|
|
FLIPH6 STY FX1
|
|
STX FX2
|
|
BIT BDY
|
|
BMI FLIPH7
|
|
LDY Y2
|
|
INY
|
|
BNE FLIPH8
|
|
FLIPH7 LDY Y1
|
|
DEY
|
|
FLIPH8 STY YT
|
|
*
|
|
LDY #8
|
|
LDA (B2),Y
|
|
STA FRAME
|
|
CLC
|
|
ADC T
|
|
TAX
|
|
LDY #2
|
|
LDA (B2),Y
|
|
CLC
|
|
ADC FDDVERT,X
|
|
STA T
|
|
CMP YT
|
|
BCC *+4
|
|
BNE FLIPHOUT
|
|
CLC
|
|
ADC FHEIGHT,X
|
|
CMP YT
|
|
BCC FLIPHOUT
|
|
*
|
|
DEC B2+1
|
|
LDY #$FB
|
|
LDA (B2),Y
|
|
STA LEFTX
|
|
INC B2+1
|
|
*
|
|
LDA FTBLO,X
|
|
STA B3
|
|
LDA FTBHI,X
|
|
STA B3+1
|
|
LDA YT
|
|
SBC T ;C=1
|
|
ASL
|
|
TAY
|
|
*
|
|
BIT FLIPR
|
|
BMI RFLIPH9
|
|
*
|
|
LDA (B3),Y
|
|
ADC LEFTX ;C=0
|
|
CMP FX2
|
|
BCC *+4
|
|
BNE FLIPHOUT
|
|
INY
|
|
LDA (B3),Y
|
|
CLC
|
|
ADC LEFTX
|
|
CMP FX1
|
|
BCC FLIPHOUT
|
|
*
|
|
STA T
|
|
LDA FX2
|
|
SBC LEFTX
|
|
STA YT
|
|
LDA FTHETA,X
|
|
STA THETA
|
|
*
|
|
BIT BMOVE
|
|
BMI LFLIPH10
|
|
BVS FLIPH10
|
|
BVC FLIPH12
|
|
LFLIPH10 LDA T
|
|
CMP FX2
|
|
BCC FLIPH10
|
|
BCS FLIPH12
|
|
*
|
|
FLIPHOUT CLC
|
|
RTS
|
|
*
|
|
RFLIPH9 LDA FWIDTH
|
|
SEC
|
|
INY
|
|
SBC (B3),Y
|
|
ADC LEFTX ;C=0
|
|
CMP FX2
|
|
BCC *+4
|
|
BNE FLIPHOUT
|
|
DEY
|
|
LDA FWIDTH
|
|
SEC
|
|
SBC (B3),Y
|
|
CLC
|
|
ADC LEFTX
|
|
CMP FX1
|
|
BCC FLIPHOUT
|
|
*
|
|
STA T
|
|
LDA FWIDTH
|
|
SBC FX1 ;C=1
|
|
CLC
|
|
ADC LEFTX
|
|
STA YT
|
|
LDA #32
|
|
SEC
|
|
SBC FTHETA,X
|
|
STA THETA
|
|
*
|
|
BIT BMOVE
|
|
BMI RFLIPH10
|
|
BVS FLIPH10
|
|
BVC FLIPH12
|
|
RFLIPH10 LDA T
|
|
CMP FX2
|
|
BCC FLIPH12
|
|
BCS FLIPH10
|
|
*
|
|
FLIPH9 LDA FRAME
|
|
CMP #5
|
|
BCS FLIPH12
|
|
FLIPH10 LDX #$00
|
|
LDA THETA
|
|
BPL FLIPH13
|
|
FLIPH11 LDA FRAME
|
|
CMP #5
|
|
BCS FLIPH10
|
|
FLIPH12 LDX #$80
|
|
LDA #16
|
|
CLC
|
|
ADC THETA
|
|
CMP #32
|
|
BCC *+4
|
|
SBC #32
|
|
STA THETA
|
|
*
|
|
FLIPH13 LDY YT
|
|
LDA FLPVCTR,Y
|
|
LDY FRAME
|
|
BEQ FLIPH16
|
|
CPY #7
|
|
BEQ FLIPH16
|
|
BIT FDIR
|
|
BMI FLIPH15
|
|
CPX #$80
|
|
BNE FLIPH16
|
|
EOR #$FF
|
|
CLC
|
|
ADC #1
|
|
JMP FLIPH17
|
|
FLIPH15 CPX #$80
|
|
BNE FLIPH17
|
|
FLIPH16 LDA #0
|
|
FLIPH17 STA KICK
|
|
*
|
|
LDA #0
|
|
STA BCODE
|
|
JSR BOUNCE
|
|
JMP PUTSP
|
|
*
|
|
FLPVCTR HEX 0101010104080C101418
|
|
HEX 2024282C3034383C3F3F
|
|
*
|
|
FFRAME1 HEX 0206010701080109020A030B
|
|
HEX 050C070D090E0B0F0D100F10
|
|
*
|
|
FFRAME2 HEX 020501070108010A020B040D
|
|
HEX 060E09100C110F11
|
|
*
|
|
FFRAME3 HEX 020501070109010B020D040F
|
|
HEX 07110A120E12
|
|
*
|
|
FFRAME4 HEX 02050108010B010E02110513
|
|
HEX 0A13
|
|
*
|
|
FFRAME5 HEX 0207010B010F011202130413
|
|
*
|
|
FFRAME6 HEX 041302130112010F010B0207
|
|
*
|
|
FFRAME7 HEX 0B1305130211010E010B0108
|
|
HEX 0205
|
|
*
|
|
FFRAME8 HEX 0E120A120711040F020D010B
|
|
HEX 010901070205
|
|
*
|
|
SFRAME1 HEX 02050106010702080309050A
|
|
HEX 070B090B
|
|
*
|
|
SFRAME2 HEX 0205010601080209040B060C
|
|
HEX 090C
|
|
*
|
|
SFRAME3 HEX 020501070109020B040C070C
|
|
*
|
|
SFRAME4 HEX 02060109010C020D060D
|
|
*
|
|
SFRAME5 HEX 0208010B010D020D
|
|
*
|
|
SFRAME6 HEX 020D010D010B0208
|
|
*
|
|
SFRAME7 HEX 060D020D010C01090206
|
|
*
|
|
SFRAME8 HEX 070C040C020B010901070205
|
|
*
|
|
INITBALL BIT INITMODE
|
|
BPL INITB2
|
|
LDA LB
|
|
LDX LB+1
|
|
JSR XOFFDRAW
|
|
LDY #16
|
|
LDA (LB),Y
|
|
BMI INITB3
|
|
DRAWBALL LDY #18
|
|
LDA (LB),Y
|
|
STA IBALL+2
|
|
DEY
|
|
LDA (LB),Y
|
|
TAX
|
|
LDA DIV7,X
|
|
STA IBALL+3
|
|
LDA MOD7,X
|
|
STA IBALL+4
|
|
LDA #<IBALL
|
|
LDX #>IBALL
|
|
JMP XOFFDRAW
|
|
*
|
|
IBALL DA *+7
|
|
HEX 00,00,00,05,01
|
|
HEX 0E,1F,1F,1F,0E
|
|
*
|
|
INITB2 LDY #2
|
|
LDA (LB),Y
|
|
LDY #18
|
|
STA (LB),Y
|
|
DEC LB+1
|
|
LDY #$FB
|
|
LDA (LB),Y
|
|
INC LB+1
|
|
LDY #17
|
|
STA (LB),Y
|
|
LDA #0
|
|
LDY #7
|
|
STA (LB),Y
|
|
LDY #16
|
|
STA (LB),Y
|
|
LDY #19
|
|
STA (LB),Y
|
|
INY
|
|
LDA #$FF
|
|
STA (LB),Y
|
|
INITB3 RTS
|
|
*
|
|
BUMPRUN LDY #8
|
|
LDA (LB),Y
|
|
BPL BMPRUN2
|
|
LDA #0
|
|
STA (LB),Y
|
|
JMP ADVANCE
|
|
BMPRUN2 BEQ BMPRUN3
|
|
JMP RETREAT
|
|
BMPRUN3 RTS
|
|
*
|
|
TSET LDY #8
|
|
LDA (B2),Y
|
|
BNE TSET2
|
|
LDA #$80
|
|
STA (B2),Y
|
|
TSET2 RTS
|
|
*
|
|
WMOD3 EQU *
|
|
WKICK HEX 10
|
|
*
|
|
BUMPHIT JSR TSET
|
|
LDA WKICK
|
|
STA KICK
|
|
LDA #$80
|
|
STA BCODE
|
|
JSR BOUNCE
|
|
JMP PUTSP
|
|
*
|
|
BUMPINIT LDY #8
|
|
LDA (LB),Y
|
|
BMI BUMPINT2
|
|
JMP INITB
|
|
BUMPINT2 AND #$7F
|
|
STA (LB),Y
|
|
JMP INITB
|
|
*
|
|
KICKHIT LDA THETA
|
|
CMP #4
|
|
BEQ BUMPHIT
|
|
CMP #28
|
|
BEQ BUMPHIT
|
|
JMP PBOUNCE
|
|
*
|
|
KNOCKRUN LDY #8
|
|
LDA (LB),Y
|
|
BPL KNKRUN3
|
|
CMP #$82
|
|
BEQ KNKRUN2
|
|
JMP ADVANCE
|
|
KNKRUN2 LDA #2
|
|
STA (LB),Y
|
|
RTS
|
|
KNKRUN3 BEQ KNKRUN4
|
|
JMP RETREAT
|
|
KNKRUN4 RTS
|
|
*
|
|
KNOCK1HIT BIT BMOVE
|
|
BMI KNK1HIT5
|
|
BVC KNK1HIT2
|
|
LDA WKICK
|
|
BNE KNK1HIT3
|
|
KNK1HIT2 LDA WKICK
|
|
EOR #$FF
|
|
KNK1HIT3 STA BDY
|
|
KNK1HIT4 JSR TSET
|
|
SEC
|
|
JMP PUTSP
|
|
KNK1HIT5 JMP PBOUNCE
|
|
*
|
|
KNOCK2HIT BIT BMOVE
|
|
BPL KNK1HIT5
|
|
BVS KNK2HIT2
|
|
LDA WKICK
|
|
BNE KNK2HIT3
|
|
KNK2HIT2 LDA WKICK
|
|
EOR #$FF
|
|
KNK2HIT3 STA BDX
|
|
BNE KNK1HIT4
|
|
*
|
|
FLASHRUN LDY #8
|
|
LDA (LB),Y
|
|
BPL FLSHRUN2
|
|
CMP #$80
|
|
BNE FLSHRUN3
|
|
JMP ADVANCE
|
|
FLSHRUN2 BEQ FLSHRUN4
|
|
FLSHRUN3 JMP RETREAT
|
|
FLSHRUN4 RTS
|
|
*
|
|
FLASHHIT JSR TSET
|
|
JSR PBOUNCE
|
|
JMP PUTSP
|
|
*
|
|
ROLLHIT JSR TSET
|
|
CLC
|
|
JMP PUTSP2
|
|
*
|
|
GATEHIT BIT BMOVE
|
|
BMI GATEH2
|
|
BVC GATEH3
|
|
GATEH2 JSR PBOUNCE
|
|
JMP PUTSP
|
|
GATEH3 CLC
|
|
RTS
|
|
GATE2HIT BIT BDX
|
|
BMI GATEH2
|
|
CLC
|
|
RTS
|
|
GATE3HIT BIT BDX
|
|
BPL GATEH2
|
|
CLC
|
|
RTS
|
|
*
|
|
DROP1RUN LDX #$00
|
|
BEQ DROPRUN
|
|
DROP2RUN LDX #$80
|
|
DROPRUN STX T2
|
|
LDY #8
|
|
LDA (LB),Y
|
|
AND #$0F
|
|
CMP #$0F
|
|
BEQ DROPRUN4
|
|
EOR #$0F
|
|
LDY #16
|
|
AND (LB),Y
|
|
TAX
|
|
LDY #8
|
|
ORA (LB),Y
|
|
STA (LB),Y
|
|
TXA
|
|
*
|
|
LDX #3
|
|
DROPRUN2 LSR
|
|
BCC DROPRUN3
|
|
JSR DRAWTARG
|
|
DROPRUN3 DEX
|
|
BPL DROPRUN2
|
|
RTS
|
|
*
|
|
DROPRUN4 LDX #3
|
|
DROPRUN5 JSR DRAWTARG
|
|
DEX
|
|
BPL DROPRUN5
|
|
LDA #$80
|
|
DROPRUN6 LDY #8
|
|
STA (LB),Y
|
|
LDA #0
|
|
LDY #16
|
|
STA (LB),Y
|
|
RTS
|
|
*
|
|
DRAWTARG STA T
|
|
STX XT
|
|
TXA
|
|
ASL
|
|
ASL
|
|
ASL
|
|
BIT T2
|
|
BMI DRAWTRG2
|
|
*
|
|
DEC LB+1
|
|
LDY #$FB
|
|
CLC
|
|
ADC (LB),Y
|
|
TAX
|
|
LDA DIV7,X
|
|
STA DROPTXB+3
|
|
LDA MOD7,X
|
|
STA DROPTXB+4
|
|
INC LB+1
|
|
LDY #2
|
|
LDA (LB),Y
|
|
STA DROPTXB+2
|
|
LDA #<DROPTXB
|
|
LDX #>DROPTXB
|
|
BNE DRAWTRG3
|
|
*
|
|
DRAWTRG2 LDY #2
|
|
CLC
|
|
ADC (LB),Y
|
|
STA DROPTYB+2
|
|
DEC LB+1
|
|
LDY #$FB
|
|
LDA (LB),Y
|
|
TAX
|
|
INC LB+1
|
|
LDA DIV7,X
|
|
STA DROPTYB+3
|
|
LDA MOD7,X
|
|
STA DROPTYB+4
|
|
LDA #<DROPTYB
|
|
LDX #>DROPTYB
|
|
*
|
|
DRAWTRG3 JSR XOFFDRAW
|
|
LDA T
|
|
LDX XT
|
|
RTS
|
|
*
|
|
DROPTXB DA *+7
|
|
HEX 00,00,00,03,01
|
|
HEX 00,2A,2A
|
|
*
|
|
DROPTYB DA *+7
|
|
HEX 00,00,00,07,01
|
|
HEX 00,05,05,05,05,05,05
|
|
*
|
|
DROP1HIT DEC B2+1
|
|
LDY #$FB
|
|
LDA X2
|
|
SEC
|
|
SBC (B2),Y
|
|
INC B2+1
|
|
*
|
|
LDX #3
|
|
LDY #1
|
|
STY T
|
|
DROP1HIT2 CMP DHITTBL,X
|
|
BCS DROP1HIT4
|
|
ASL T
|
|
DROP1HIT3 DEX
|
|
BPL DROP1HIT2
|
|
RTS
|
|
*
|
|
DROP1HIT4 LDY #16
|
|
LDA (B2),Y
|
|
ORA T
|
|
STA (B2),Y
|
|
DROP1HIT5 JSR PBOUNCE
|
|
JMP PUTSP
|
|
*
|
|
DHITTBL HEX 02,0A,12,1A
|
|
*
|
|
DROP2HIT LDY #2
|
|
LDA Y2
|
|
SEC
|
|
SBC (B2),Y
|
|
*
|
|
LDX #3
|
|
LDY #1
|
|
STY T
|
|
DROP2HIT2 CMP DHITTBL,X
|
|
BCS DROP2HIT4
|
|
ASL T
|
|
DROP2HIT3 DEX
|
|
BPL DROP2HIT2
|
|
RTS
|
|
*
|
|
DROP2HIT4 LDY #16
|
|
LDA (B2),Y
|
|
ORA T
|
|
STA (B2),Y
|
|
BPL DROP1HIT5
|
|
*
|
|
DROP1INIT LDX #$00
|
|
BEQ DROPINIT
|
|
DROP2INIT LDX #$80
|
|
DROPINIT STX T2
|
|
LDY #8
|
|
LDA (LB),Y
|
|
AND #$0F
|
|
LDX #3
|
|
DROPINIT2 LSR
|
|
BCC DROPINIT3
|
|
JSR DRAWTARG
|
|
DROPINIT3 DEX
|
|
BPL DROPINIT2
|
|
LDA #0
|
|
JMP DROPRUN6
|
|
*
|
|
CATCH1HIT BIT BMOVE
|
|
BMI CTCH1HIT3
|
|
BVC CTCH1HIT3
|
|
*
|
|
DEC B2+1
|
|
LDY #$F9
|
|
LDA (B2),Y
|
|
INC B2+1
|
|
CLC
|
|
ADC #3
|
|
CMP X1
|
|
BNE CTCH1HIT3
|
|
*
|
|
LDY #2
|
|
LDA (B2),Y
|
|
STA YT
|
|
LDY #16
|
|
LDA (B2),Y
|
|
STA T
|
|
BMI CTCH1HIT4
|
|
*
|
|
BIT BST
|
|
BVS CTCH1HIT5
|
|
*
|
|
ORA #$80
|
|
STA (B2),Y
|
|
LDA #0
|
|
STA BDX
|
|
LDA #$20
|
|
STA BST
|
|
JSR PUTSP2
|
|
CTCH1HIT2 CLC
|
|
RTS
|
|
*
|
|
CTCH1HIT3 LDA THETA
|
|
BNE *+12
|
|
LDA #1
|
|
BCS *+4
|
|
LDA #$FF
|
|
STA BDX
|
|
SEC
|
|
RTS
|
|
JMP PBOUNCE
|
|
*
|
|
CTCH1HIT4 ROL
|
|
BMI CTCH1HIT6
|
|
*
|
|
LDA BST
|
|
AND #$20
|
|
BEQ CTCH1HIT5
|
|
*
|
|
LDA T
|
|
AND #$7F
|
|
TAX
|
|
LDA YT
|
|
ADC CATCHSTOP,X ;C=1
|
|
CMP Y2
|
|
BNE CTCH1HIT2
|
|
INC T
|
|
LDA T
|
|
AND #$7F
|
|
LDX #$40
|
|
CMP #3
|
|
BNE *+6
|
|
LDX #0
|
|
LDA #$C2
|
|
LDY #16
|
|
STA (B2),Y
|
|
STX BST
|
|
CTCH1HIT5 SEC
|
|
RTS
|
|
*
|
|
CTCH1HIT6 LDA YT
|
|
CLC
|
|
ADC #16
|
|
CMP Y2
|
|
BNE CTCH1HIT2
|
|
BIT BST
|
|
BVC CTCH1HIT2
|
|
DEC T
|
|
LDA T
|
|
CMP #$C0
|
|
BNE *+12
|
|
LDA #$00
|
|
LDY #8
|
|
STA (B2),Y
|
|
LDY #16
|
|
LDA #0
|
|
*
|
|
STA (B2),Y
|
|
LDA #0
|
|
STA BST
|
|
CLC
|
|
RTS
|
|
*
|
|
CATCHSTOP HEX 03,09,0F
|
|
*
|
|
CATCH1INIT LDA #0
|
|
LDY #8
|
|
STA (LB),Y
|
|
LDY #16
|
|
STA (LB),Y
|
|
RTS
|
|
*
|
|
CATCH2RUN LDY #8
|
|
LDA (LB),Y
|
|
BPL CTCH2RUN3
|
|
CMP #$84
|
|
BEQ CTCH2RUN2
|
|
JMP ADVANCE
|
|
CTCH2RUN2 LDA #0
|
|
STA (LB),Y
|
|
LDY #0
|
|
LDA #<CATCH2B
|
|
STA (LB),Y
|
|
LDA #>CATCH2B
|
|
INY
|
|
STA (LB),Y
|
|
CTCH2RUN3 RTS
|
|
*
|
|
CATCH2HIT JSR TSET
|
|
LDA #$80
|
|
STA BST
|
|
SEC
|
|
JMP PUTSP
|
|
*
|
|
SPINRUN JSR KNOCKRUN
|
|
LDY #8
|
|
LDA (LB),Y
|
|
BNE SPINRUN4
|
|
LDY #16
|
|
LDA (LB),Y
|
|
BEQ SPINRUN4
|
|
SEC
|
|
SBC #1
|
|
STA (LB),Y
|
|
LDA #$80
|
|
LDY #8
|
|
STA (LB),Y
|
|
INC DSCORE
|
|
BNE *+6
|
|
LDA #255
|
|
STA DSCORE
|
|
SPINRUN4 RTS
|
|
*
|
|
SPININIT LDA #0
|
|
LDY #16
|
|
STA (LB),Y
|
|
JMP BUMPINIT
|
|
*
|
|
SPINHIT LDA BDY
|
|
BPL *+4
|
|
EOR #$FF
|
|
LSR
|
|
LDY #16
|
|
STA (B2),Y
|
|
JSR TSET
|
|
CLC
|
|
JMP PUTSP2
|
|
*
|
|
MAGHIT BIT BMOVE
|
|
BMI MAGHIT2
|
|
BVS MAGHIT2
|
|
SEC
|
|
RTS
|
|
MAGHIT2 JSR PBOUNCE
|
|
JMP PUTSP
|
|
*
|
|
CTBL1LO DA <C05625
|
|
DA <C1125
|
|
DA <C225
|
|
DA <C45
|
|
DA <C675
|
|
DA <C7875
|
|
DA <C84375
|
|
*
|
|
CTBL1HI DA >C05625
|
|
DA >C1125
|
|
DA >C225
|
|
DA >C45
|
|
DA >C675
|
|
DA >C7875
|
|
DA >C84375
|
|
*
|
|
CTBL2LO DA <C84375
|
|
DA <C7875
|
|
DA <C675
|
|
DA <C45
|
|
DA <C225
|
|
DA <C1125
|
|
DA <C05625
|
|
*
|
|
CTBL2HI DA >C84375
|
|
DA >C7875
|
|
DA >C675
|
|
DA >C45
|
|
DA >C225
|
|
DA >C1125
|
|
DA >C05625
|
|
*
|
|
ROTATE STA T
|
|
LSR
|
|
LSR
|
|
LSR
|
|
STA XT
|
|
*
|
|
TXA
|
|
BPL ROT3
|
|
TYA
|
|
BPL ROT2
|
|
JSR QUAD2
|
|
LDA #2
|
|
BNE ROT5
|
|
ROT2 JSR QUAD3
|
|
LDA #1
|
|
BNE ROT5
|
|
ROT3 TYA
|
|
BPL ROT4
|
|
JSR QUAD1
|
|
LDA #3
|
|
BPL ROT5
|
|
ROT4 LDA #0
|
|
ROT5 CLC
|
|
ADC XT
|
|
CMP #4
|
|
BCC *+4
|
|
SBC #4
|
|
PHA
|
|
*
|
|
ROT6 CPY #$40
|
|
BCC *+4
|
|
LDY #$3F
|
|
CPX #$40
|
|
BCC *+4
|
|
LDX #$3F
|
|
*
|
|
LDA T
|
|
AND #$07
|
|
BEQ ROT7
|
|
STX XT
|
|
TAX
|
|
LDA CTBL1LO-1,X
|
|
STA RMOD1
|
|
STA RMOD2
|
|
LDA CTBL1HI-1,X
|
|
STA RMOD1+1
|
|
STA RMOD2+1
|
|
LDA CTBL2LO-1,X
|
|
STA RMOD3
|
|
STA RMOD4
|
|
LDA CTBL2HI-1,X
|
|
STA RMOD3+1
|
|
STA RMOD4+1
|
|
*
|
|
LDX XT
|
|
RMOD1 EQU *+1
|
|
LDA C225,X
|
|
SEC
|
|
RMOD3 EQU *+1
|
|
SBC C225,Y
|
|
PHP
|
|
ROR
|
|
PLP
|
|
ROR
|
|
EOR #$C0
|
|
STA T
|
|
*
|
|
RMOD4 EQU *+1
|
|
LDA C225,X
|
|
CLC
|
|
RMOD2 EQU *+1
|
|
ADC C225,Y
|
|
ROR
|
|
BPL *+4
|
|
LDA #$7F
|
|
LSR
|
|
TAY
|
|
LDX T
|
|
*
|
|
ROT7 PLA
|
|
*
|
|
FIXQUAD ROR
|
|
ROR
|
|
BCS FIXQ3
|
|
BMI FIXQ2
|
|
QUAD0 RTS
|
|
QUAD1 EQU *
|
|
FIXQ2 STX YT
|
|
TYA
|
|
EOR #$FF
|
|
CLC
|
|
ADC #1
|
|
TAX
|
|
LDY YT
|
|
RTS
|
|
*
|
|
FIXQ3 BMI FIXQ4
|
|
QUAD2 TXA
|
|
EOR #$FF
|
|
CLC
|
|
ADC #1
|
|
TAX
|
|
TYA
|
|
JMP FIXQ5
|
|
*
|
|
QUAD3 EQU *
|
|
FIXQ4 STY YT
|
|
TXA
|
|
LDX YT
|
|
FIXQ5 EOR #$FF
|
|
CLC
|
|
ADC #1
|
|
TAY
|
|
RTS
|
|
*
|
|
PBOUNCE LDA #0
|
|
STA KICK
|
|
STA BCODE
|
|
BOUNCE LDY BDY
|
|
LDX BDX
|
|
LDA THETA
|
|
JSR ROTATE
|
|
*
|
|
TYA
|
|
BPL BOUNCE3
|
|
EOR #$FF
|
|
CLC
|
|
ADC #1
|
|
TAY
|
|
*
|
|
BIT BCODE
|
|
BMI BOUNCE2
|
|
WMOD2 EQU *+1
|
|
LDA C675,Y
|
|
LSR
|
|
LSR
|
|
BNE *+4
|
|
LDA #1
|
|
BOUNCE2 CLC
|
|
ADC KICK
|
|
BMI *+8
|
|
CMP #$40
|
|
BCC *+4
|
|
LDA #$3F
|
|
TAY
|
|
*
|
|
LDA #32
|
|
SEC
|
|
SBC THETA
|
|
JSR ROTATE
|
|
STX BDX
|
|
STY BDY
|
|
BOUNCE3 SEC
|
|
RTS
|
|
*
|
|
ADVANCE LDY #7
|
|
LDA (LB),Y
|
|
CLC
|
|
LDY #0
|
|
ADC (LB),Y
|
|
STA (LB),Y
|
|
INY
|
|
LDA (LB),Y
|
|
ADC #0
|
|
STA (LB),Y
|
|
LDY #8
|
|
LDA (LB),Y
|
|
ADC #1
|
|
STA (LB),Y
|
|
LDA LB
|
|
LDX LB+1
|
|
JMP XOFFDRAW
|
|
*
|
|
RETREAT LDA LB
|
|
LDX LB+1
|
|
JSR XOFFDRAW
|
|
LDY #0
|
|
LDA (LB),Y
|
|
SEC
|
|
LDY #7
|
|
SBC (LB),Y
|
|
LDY #0
|
|
STA (LB),Y
|
|
INY
|
|
LDA (LB),Y
|
|
SBC #0
|
|
STA (LB),Y
|
|
LDY #8
|
|
LDA (LB),Y
|
|
SBC #1
|
|
STA (LB),Y
|
|
RTS
|
|
*
|
|
INITB LDY #8
|
|
LDA (LB),Y
|
|
BEQ INITQUIT
|
|
JSR RETREAT
|
|
BCS INITB
|
|
INITQUIT RTS
|
|
*
|
|
PUTSP BCC PUTSP4
|
|
PUTSP2 PHP
|
|
LDY #9
|
|
LDA (B2),Y
|
|
AND #$0F
|
|
TAX
|
|
LDA SCORETBL,X
|
|
CLC
|
|
ADC DSCORE
|
|
BCC *+4
|
|
LDA #255
|
|
STA DSCORE
|
|
*
|
|
LDA (B2),Y
|
|
LSR
|
|
LSR
|
|
LSR
|
|
LSR
|
|
BEQ PUTSP3
|
|
TAX
|
|
LDA SNDTBL-1,X
|
|
JSR DOSND
|
|
PUTSP3 PLP
|
|
PUTSP4 RTS
|
|
*
|
|
DOSND CMP SERIES
|
|
BMI DOS2
|
|
STA SERIES
|
|
LDA #0
|
|
STA SLICE
|
|
DOS2 RTS
|
|
*
|
|
SCORETBL HEX 0001020304050A0F14191E28324B6496
|
|
SNDTBL HEX 00040C1424384C
|
|
*
|
|
MOVEBALL LDY #16
|
|
LDA (LB),Y
|
|
BMI INITQUIT
|
|
STA BST
|
|
INY
|
|
LDA (LB),Y
|
|
TAX
|
|
STA X1
|
|
CLC
|
|
ADC #4
|
|
STA X2
|
|
SBC #1 ;-2, C=0
|
|
STA MIDX
|
|
LDA DIV7,X
|
|
STA HBALL+3
|
|
STA VBALL+3
|
|
LDA MOD7,X
|
|
STA HBALL+4
|
|
STA VBALL+4
|
|
*
|
|
INY
|
|
LDA (LB),Y
|
|
STA HBALL+2
|
|
STA VBALL+2
|
|
STA Y1
|
|
CLC
|
|
ADC #4
|
|
STA Y2
|
|
*
|
|
INY
|
|
LDA (LB),Y
|
|
STA BDX
|
|
INY
|
|
LDA (LB),Y
|
|
STA BDY
|
|
INY
|
|
LDA (LB),Y
|
|
STA BXACC
|
|
INY
|
|
LDA (LB),Y
|
|
STA BYACC
|
|
*
|
|
LDA BXACC
|
|
CLC
|
|
ADC BDX
|
|
STA BXACC
|
|
LDA BYACC
|
|
CLC
|
|
ADC BDY
|
|
STA BYACC
|
|
*
|
|
LDA #0
|
|
STA HTCNT
|
|
*
|
|
LDA PTM1
|
|
WMOD4 EQU *+1
|
|
AND #$07
|
|
BNE MOVEB2
|
|
LDY BDY
|
|
DEY
|
|
BPL GRAV2
|
|
CPY #$D1
|
|
BCS GRAV2
|
|
LDY #$D1
|
|
GRAV2 STY BDY
|
|
*
|
|
MOVEB2 BIT BST
|
|
BPL *+5
|
|
JMP MOVEB9
|
|
LDA BYACC
|
|
BMI MOVEB3
|
|
CMP #$20
|
|
BCS MOVEB4
|
|
LDA BXACC
|
|
BMI MOVEB7
|
|
CMP #$20
|
|
BCS MOVEB6
|
|
JMP MOVEB9
|
|
*
|
|
MOVEB3 CLC
|
|
ADC #$20
|
|
STA BYACC
|
|
LDY Y2
|
|
INY
|
|
LDA #$40
|
|
STA BMOVE
|
|
JSR CHECKVERT
|
|
BCS MOVEB5
|
|
*
|
|
JSR BALLDOWN
|
|
JMP MOVEB5
|
|
*
|
|
MOVEB4 SBC #$20
|
|
STA BYACC
|
|
LDY Y1
|
|
DEY
|
|
LDA #$00
|
|
STA BMOVE
|
|
JSR CHECKVERT
|
|
BCS MOVEB5
|
|
*
|
|
JSR BALLUP
|
|
*
|
|
MOVEB5 BIT BST
|
|
BMI MOVEB9
|
|
LDA BXACC
|
|
BMI MOVEB7
|
|
CMP #$20
|
|
BCC MOVEB2
|
|
*
|
|
MOVEB6 SBC #$20
|
|
STA BXACC
|
|
LDA #$C0
|
|
STA BMOVE
|
|
LDY Y1
|
|
LDA X2
|
|
ADC #0 ;C=1
|
|
JSR CHECKHORIZ
|
|
BCS MOVEB8
|
|
*
|
|
LDY Y2
|
|
LDA X2
|
|
ADC #1 ;C=0
|
|
JSR CHECKHORIZ
|
|
BCS MOVEB8
|
|
*
|
|
JSR BALLRIGHT
|
|
JMP MOVEB2
|
|
*
|
|
MOVEB7 CLC
|
|
ADC #$20
|
|
STA BXACC
|
|
LDA #$80
|
|
STA BMOVE
|
|
LDY Y1
|
|
LDA X1
|
|
SEC
|
|
SBC #1
|
|
JSR CHECKHORIZ
|
|
BCS MOVEB8
|
|
*
|
|
LDY Y2
|
|
LDA X1
|
|
SBC #0 ;C=0!
|
|
JSR CHECKHORIZ
|
|
BCS MOVEB8
|
|
*
|
|
JSR BALLLEFT
|
|
*
|
|
MOVEB8 JMP MOVEB2
|
|
*
|
|
MOVEB9 LDY #7
|
|
LDA (LB),Y
|
|
CLC
|
|
ADC #1
|
|
LDX HTCNT
|
|
BNE MOVEB10
|
|
CMP #3
|
|
BCC MOVEB11
|
|
*
|
|
LDY Y2
|
|
INY
|
|
LDA #$40
|
|
STA BMOVE
|
|
JSR CHECKVERT
|
|
MOVEB10 LDA #0
|
|
MOVEB11 LDY #7
|
|
STA (LB),Y
|
|
*
|
|
LDY #16
|
|
LDA BST
|
|
STA (LB),Y
|
|
INY
|
|
LDA X1
|
|
STA (LB),Y
|
|
INY
|
|
LDA Y1
|
|
STA (LB),Y
|
|
INY
|
|
LDA BDX
|
|
STA (LB),Y
|
|
INY
|
|
LDA BDY
|
|
STA (LB),Y
|
|
INY
|
|
LDA BXACC
|
|
STA (LB),Y
|
|
INY
|
|
LDA BYACC
|
|
STA (LB),Y
|
|
BIT BST
|
|
BPL *+5
|
|
JMP DRAWBALL
|
|
RTS
|
|
*
|
|
DOHIT INC HTCNT
|
|
STY HT
|
|
LDY OBJID
|
|
LDA VHI,Y
|
|
BNE DOHIT2
|
|
JSR PBOUNCE
|
|
JMP DOHIT3
|
|
*
|
|
DOHIT2 STA B2+1
|
|
LDA VLO,Y
|
|
STA B2
|
|
LDY #14
|
|
LDA (B2),Y
|
|
STA BMOD1
|
|
INY
|
|
LDA (B2),Y
|
|
STA BMOD1+1
|
|
BMOD1 EQU *+1
|
|
JSR $FFFF
|
|
DOHIT3 LDA HVAL
|
|
LDY HT
|
|
RTS
|
|
*
|
|
CHECKHORIZ STA HVAL
|
|
LDA PBTBLO,Y
|
|
STA B1
|
|
LDA PBTBHI,Y
|
|
STA B1+1
|
|
LDA PBDX,Y
|
|
STA HCNT
|
|
LDA HVAL
|
|
*
|
|
LDY #0
|
|
CHECKHZ2 CMP (B1),Y
|
|
BNE CHECKHZ3
|
|
JSR HITLEFT
|
|
BCC CHECKHZ7
|
|
BCS FIXLEFT
|
|
CHECKHZ3 INY
|
|
INY
|
|
BCC CHECKHZ6
|
|
CMP (B1),Y
|
|
BCC CHECKHZ5
|
|
BNE CHECKHZ6
|
|
CHECKHZ4 JSR HITRIGHT
|
|
BCC CHECKHZ7
|
|
BCS FIXRIGHT
|
|
CHECKHZ5 DEY
|
|
LDA (B1),Y
|
|
INY
|
|
TAX
|
|
BNE CHECKHZ4
|
|
LDA HVAL
|
|
*
|
|
CHECKHZ6 INY
|
|
CHECKHZ7 INY
|
|
CPY HCNT
|
|
BNE CHECKHZ2
|
|
CLC
|
|
RTS
|
|
*
|
|
HITLEFT INY
|
|
LDA (B1),Y
|
|
STA OBJID
|
|
INY
|
|
INY
|
|
LDA (B1),Y
|
|
AND #$0F
|
|
STA THETA
|
|
*
|
|
LDA OBJID
|
|
BNE HIT3
|
|
HIT2 LDA #16
|
|
BNE HIT4
|
|
HIT3 LDA #32
|
|
HIT4 SEC
|
|
SBC THETA
|
|
STA THETA
|
|
JMP DOHIT
|
|
*
|
|
HITRIGHT DEY
|
|
LDA (B1),Y
|
|
STA OBJID
|
|
INY
|
|
INY
|
|
LDA (B1),Y
|
|
LSR
|
|
LSR
|
|
LSR
|
|
LSR
|
|
STA THETA
|
|
*
|
|
LDA OBJID
|
|
BNE HIT2
|
|
BEQ HIT3
|
|
*
|
|
FIXLEFT LDA BDX
|
|
BNE FIX4
|
|
LDA OBJID
|
|
BNE FIX3
|
|
FIX2 INC BDX
|
|
BNE FIX4
|
|
FIX3 DEC BDX
|
|
FIX4 LDA BXACC
|
|
AND #$1F
|
|
STA BXACC
|
|
RTS
|
|
*
|
|
FIXRIGHT LDA BDX
|
|
BNE FIX4
|
|
LDA OBJID
|
|
BNE FIX2
|
|
BEQ FIX3
|
|
*
|
|
OFFBOARD LDA #0
|
|
BIT BMOVE
|
|
BVS *+4
|
|
LDA #16
|
|
STA THETA
|
|
JMP PBOUNCE
|
|
*
|
|
CHECKVERT LDA PBTBLO,Y
|
|
STA B1
|
|
LDA PBTBHI,Y
|
|
STA B1+1
|
|
LDA PBDX,Y
|
|
BEQ OFFBOARD
|
|
STA HCNT
|
|
LDY #1
|
|
*
|
|
PCHECKV2 DEY
|
|
PCHECKV LDA (B1),Y
|
|
TAX
|
|
INY
|
|
LDA (B1),Y
|
|
STA OBJID
|
|
BEQ BCHECKV2
|
|
*
|
|
CPX X2
|
|
BCC *+4
|
|
BNE PCHKV2
|
|
STX P1
|
|
INY
|
|
LDA (B1),Y
|
|
CMP X1
|
|
BCC PCHKV3
|
|
*
|
|
STA P2
|
|
INY
|
|
LDA (B1),Y
|
|
STA LFT
|
|
LSR
|
|
LSR
|
|
LSR
|
|
LSR
|
|
STA RTT
|
|
JSR DOVHIT
|
|
BCC PCHKV4
|
|
CHKVRT2 LDA BYACC
|
|
AND #$1F
|
|
STA BYACC
|
|
RTS
|
|
*
|
|
PCHKV2 INY
|
|
PCHKV3 INY
|
|
PCHKV4 INY
|
|
CPY HCNT
|
|
BNE PCHECKV
|
|
CLC
|
|
RTS
|
|
*
|
|
BCHECKV2 LDA #0
|
|
STA P1
|
|
LDA #8
|
|
STA LFT
|
|
BNE BCHKV2
|
|
*
|
|
BCHECKV LDA (B1),Y
|
|
TAX
|
|
INY
|
|
LDA (B1),Y
|
|
BNE BCHKV4
|
|
STA OBJID
|
|
*
|
|
BCHKV2 LDA X2
|
|
CMP P1
|
|
BCC BCHKV3
|
|
CPX X1
|
|
BCC BCHKV3
|
|
*
|
|
STX P2
|
|
INY
|
|
INY
|
|
LDA (B1),Y
|
|
AND #$0F
|
|
STA RTT
|
|
DEY
|
|
DEY
|
|
JSR DOVHIT
|
|
BCS CHKVRT2
|
|
*
|
|
BCHKV3 INY
|
|
LDA (B1),Y
|
|
STA P1
|
|
INY
|
|
LDA (B1),Y
|
|
LSR
|
|
LSR
|
|
LSR
|
|
LSR
|
|
STA LFT
|
|
INY
|
|
CPY HCNT
|
|
BNE BCHECKV
|
|
*
|
|
BCHKV4 LDA X2
|
|
CMP P1
|
|
BCC BCHKV5
|
|
*
|
|
LDA #153
|
|
STA P2
|
|
LDA #8
|
|
STA RTT
|
|
JSR DOVHIT
|
|
BCS CHKVRT2
|
|
BCHKV5 CPY HCNT
|
|
BEQ *+5
|
|
JMP PCHECKV2
|
|
CLC
|
|
RTS
|
|
*
|
|
DOVHIT LDA P2
|
|
CMP X1
|
|
BEQ VRIGHT2
|
|
CLC
|
|
ADC P1
|
|
ROR
|
|
CLC
|
|
ADC #2
|
|
CMP X2
|
|
BCC VRIGHT
|
|
*
|
|
LDA LFT
|
|
AND #$0F
|
|
STA LFT
|
|
LDA P1
|
|
CMP X2
|
|
BEQ VLEFT2
|
|
*
|
|
VLEFT LDA LFT
|
|
JSR VLFIX
|
|
STA LFT
|
|
BEQ VLEFT3
|
|
VLEFT2 LDA #32
|
|
SEC
|
|
SBC LFT
|
|
VLEFT3 STA THETA
|
|
JSR DOHIT
|
|
BCC VLEFT4
|
|
LDA BDX
|
|
BNE VLEFT4
|
|
DEC BDX
|
|
VLEFT4 RTS
|
|
*
|
|
VRIGHT LDA RTT
|
|
JSR VRFIX
|
|
STA RTT
|
|
BEQ VRIGHT3
|
|
VRIGHT2 LDA #16
|
|
SEC
|
|
SBC RTT
|
|
VRIGHT3 STA THETA
|
|
JSR DOHIT
|
|
BCC VRIGHT4
|
|
LDA BDX
|
|
BNE VRIGHT4
|
|
INC BDX
|
|
VRIGHT4 RTS
|
|
*
|
|
VLFIX BIT BMOVE
|
|
BVC VLFIX3
|
|
VLFIX2 CMP #6
|
|
BCC VFIX3
|
|
BCS VFIX2
|
|
VLFIX3 CMP #11
|
|
BCS VFIX3
|
|
BCC VFIX2
|
|
VRFIX BIT BMOVE
|
|
BVC VLFIX2
|
|
BVS VLFIX3
|
|
*
|
|
VFIX2 LDA #16
|
|
BIT BMOVE ;Z=1
|
|
BVC *+4
|
|
LDA #0 ;Z=1
|
|
VFIX3 RTS
|
|
*
|
|
BALLDOWN LDA #<VBALL
|
|
LDX #>VBALL
|
|
JSR XOFFDRAW
|
|
INC Y1
|
|
INC Y2
|
|
LDA Y1
|
|
STA HBALL+2
|
|
STA VBALL+2
|
|
RTS
|
|
*
|
|
BALLUP DEC Y1
|
|
DEC Y2
|
|
LDA Y1
|
|
STA HBALL+2
|
|
STA VBALL+2
|
|
LDA #<VBALL
|
|
LDX #>VBALL
|
|
JMP XOFFDRAW
|
|
*
|
|
BALLRIGHT LDA X2
|
|
CMP #153
|
|
BCS BALLR2
|
|
LDA #<HBALL
|
|
LDX #>HBALL
|
|
JSR XOFFDRAW
|
|
INC X1
|
|
INC X2
|
|
LDY X1
|
|
LDA DIV7,Y
|
|
STA HBALL+3
|
|
STA VBALL+3
|
|
LDA MOD7,Y
|
|
STA HBALL+4
|
|
STA VBALL+4
|
|
BALLR2 RTS
|
|
*
|
|
BALLLEFT LDA X1
|
|
BEQ BALLR2
|
|
DEC X1
|
|
DEC X2
|
|
LDY X1
|
|
LDA DIV7,Y
|
|
STA HBALL+3
|
|
STA VBALL+3
|
|
LDA MOD7,Y
|
|
STA HBALL+4
|
|
STA VBALL+4
|
|
LDA #<HBALL
|
|
LDX #>HBALL
|
|
JMP XOFFDRAW
|
|
*
|
|
HBALL DA *+7
|
|
HEX 00,00,00,05,01
|
|
HEX 12,21,21,21,12
|
|
*
|
|
VBALL DA *+7
|
|
HEX 00,00,00,06,01
|
|
HEX 0E,11,00,00,11,0E
|
|
*
|
|
SCORE LDA #$B0
|
|
STA CHAR+2
|
|
LDY #<SCORE1
|
|
LDX #>SCORE1
|
|
LDA DSCORE
|
|
JSR DOSCORE
|
|
*
|
|
LDA #$98
|
|
STA CHAR+2
|
|
LDA #<BONUS
|
|
STA SCB
|
|
LDA #>BONUS
|
|
STA SCB+1
|
|
LDA DBONUS
|
|
LDY #5
|
|
JSR DOSCORE2
|
|
LDA #0
|
|
STA DSCORE
|
|
STA DBONUS
|
|
RTS
|
|
*
|
|
DOSCORE STY SCB
|
|
STX SCB+1
|
|
LDY #7
|
|
DOSCORE2 CLC
|
|
ADC (SCB),Y
|
|
BCC *+4
|
|
LDA #255
|
|
STA (SCB),Y
|
|
DOSCOR2 LDX #0
|
|
LDA (SCB),Y
|
|
DOSCOR3 CMP #10
|
|
BCC DOSCOR4
|
|
SBC #10
|
|
INX
|
|
BCS DOSCOR3
|
|
DOSCOR4 STA (SCB),Y
|
|
TXA
|
|
DEY
|
|
ADC (SCB),Y
|
|
STA (SCB),Y
|
|
TYA
|
|
BNE DOSCOR2
|
|
JMP PRSCORE2
|
|
*
|
|
INITSCORE LDY #17
|
|
LDA #0
|
|
STA DSCORE
|
|
STA DBONUS
|
|
STA BMULT
|
|
INITSCR2 STA SCORE1,Y
|
|
DEY
|
|
BPL INITSCR2
|
|
*
|
|
LDY #$80
|
|
LDX #$18
|
|
LDA #0
|
|
JSR CHARTO
|
|
LDA #<BMMSG
|
|
LDX #>BMMSG
|
|
JSR PRINT
|
|
JSR PRBMULT
|
|
LDY #$B0
|
|
LDX #$18
|
|
LDA #0
|
|
JSR CHARTO
|
|
LDA #<P1MSG
|
|
LDX #>P1MSG
|
|
JSR PRINT
|
|
LDY #<SCORE1
|
|
LDX #>SCORE1
|
|
JSR PRSCORE
|
|
LDY #$98
|
|
LDX #$18
|
|
LDA #0
|
|
JSR CHARTO
|
|
LDA #<BMSG
|
|
LDX #>BMSG
|
|
JSR PRINT
|
|
LDY #<BONUS
|
|
LDX #>BONUS
|
|
*
|
|
PRSCORE STY SCB
|
|
STX SCB+1
|
|
*
|
|
PRSCORE2 LDY #0
|
|
JSR SETMODE
|
|
*
|
|
LDY CHAR+2
|
|
LDX #$27
|
|
LDA #0
|
|
JSR CHARTO
|
|
*
|
|
LDY #8
|
|
PRSCR2 STY YT
|
|
LDA (SCB),Y
|
|
JSR PRCHAR
|
|
DEC CHAR+3
|
|
LDA #0
|
|
STA CHAR+4
|
|
LDY YT
|
|
DEY
|
|
BNE PRSCR2
|
|
*
|
|
LDY #2
|
|
JMP SETMODE
|
|
*
|
|
PRBMULT LDY #0
|
|
JSR SETMODE
|
|
LDY #$80
|
|
LDX #$20
|
|
LDA #0
|
|
JSR CHARTO
|
|
LDX BMULT
|
|
INX
|
|
CPX #6
|
|
BCS PRBMUL2
|
|
STX BMULT
|
|
TXA
|
|
JSR PRCHAR
|
|
PRBMUL2 LDY #2
|
|
JMP SETMODE
|
|
*
|
|
P1MSG HEX 19150A220E1B81
|
|
BMSG HEX 0B18171E9C
|
|
BMMSG HEX 0B18171E1CA1
|
|
*
|
|
SCORE1 HEX 000000000000000000
|
|
BONUS HEX 000000000000000000
|
|
*
|
|
SND BIT STGL
|
|
BMI SND5
|
|
LDA SERIES
|
|
BMI SND5
|
|
SND1 CLC
|
|
ADC SLICE
|
|
TAX
|
|
STX ST
|
|
LDY EFFECTS,X
|
|
SND2 LDX NOTES-12,Y
|
|
BEQ SND4
|
|
SND3 PHA
|
|
PLA
|
|
DEX
|
|
BNE SND3
|
|
LDA $C030
|
|
INY
|
|
BNE SND2
|
|
SND4 INC SLICE
|
|
LDX ST
|
|
LDA EFFECTS+1,X
|
|
BNE SND5
|
|
*
|
|
INITSND LDY #$FF
|
|
STY SERIES
|
|
INY
|
|
STY SLICE
|
|
SND5 RTS
|
|
*
|
|
EFFECTS HEX 540C5400 ;0
|
|
HEX 0C1824303C485400 ;4
|
|
HEX 54483C3024180C00 ;12
|
|
HEX 540C540C540C540C0C243C54543C2400 ;20
|
|
HEX 0C1824303C4854483C303C483C303C483C303C00 ;36
|
|
HEX 0C1824303C485454483C3024180C1824303C4800 ;56
|
|
HEX 0C1824300C1824300C1824300C1824300C182400 ;76
|
|
*
|
|
NOTES HEX 103010301030103010301000 ;$0
|
|
HEX 183818381838183818381800 ;$0C
|
|
HEX 204020402040204020402000 ;$18
|
|
HEX 284828482848284828482800 ;$24
|
|
HEX 305030503050305030503000 ;$30
|
|
HEX 385838583858385838583800 ;$3C
|
|
HEX 406040604060406040604000 ;$48
|
|
HEX 486848684868486848684800 ;$54
|
|
*
|
|
WIRING LDX #0
|
|
WIR2 LDA #0
|
|
STA T
|
|
STX XT
|
|
JSR GETST
|
|
BPL WIR4
|
|
INX
|
|
JSR GETST
|
|
BPL WIR4
|
|
INX
|
|
JSR GETST
|
|
BPL WIR4
|
|
*
|
|
INX
|
|
STX XT
|
|
LDA T
|
|
BEQ WIR4
|
|
LDA LOGIC,X
|
|
STA YT
|
|
AND #$0F
|
|
TAY
|
|
LDA BONUSTBL,Y
|
|
CLC
|
|
ADC DBONUS
|
|
BCC *+4
|
|
LDA #255
|
|
STA DBONUS
|
|
LDA YT
|
|
BPL WIR3
|
|
*
|
|
JSR PRBMULT
|
|
*
|
|
WIR3 LDA YT
|
|
AND #$70
|
|
LSR
|
|
LSR
|
|
LSR
|
|
LSR
|
|
BEQ *+9
|
|
TAX
|
|
LDA SNDTBL-1,X
|
|
JSR DOSND
|
|
*
|
|
DEC XT
|
|
JSR TURNOFF
|
|
DEC XT
|
|
JSR TURNOFF
|
|
DEC XT
|
|
JSR TURNOFF
|
|
*
|
|
WIR4 LDA XT
|
|
AND #$FC
|
|
CLC
|
|
ADC #4
|
|
TAX
|
|
CPX #24
|
|
BCC WIR2
|
|
RTS
|
|
*
|
|
BONUSTBL HEX 000102030405060708090A141E283264
|
|
*
|
|
GETST LDA LOGIC,X
|
|
BEQ GETS2
|
|
INC T
|
|
TAY
|
|
LDA VLO,Y
|
|
STA B1
|
|
LDA VHI,Y
|
|
STA B1+1
|
|
LDY #8
|
|
LDA (B1),Y
|
|
RTS
|
|
GETS2 LDA #$80
|
|
GETS3 RTS
|
|
*
|
|
TURNOFF LDX XT
|
|
LDA LOGIC,X
|
|
BEQ GETS3
|
|
TAY
|
|
LDA VLO,Y
|
|
STA LB
|
|
LDA VHI,Y
|
|
STA LB+1
|
|
LDY #12
|
|
LDA (LB),Y
|
|
STA TMOD1
|
|
INY
|
|
LDA (LB),Y
|
|
STA TMOD1+1
|
|
TMOD1 EQU *+1
|
|
JMP $FFFF
|
|
*
|
|
INITWORLD LDX WSET
|
|
LDA GRAVTBL,X
|
|
STA WMOD4
|
|
LDX WSET+1
|
|
LDA TIMETBL,X
|
|
STA WMOD1
|
|
LDX WSET+2
|
|
LDA KICKTBL,X
|
|
STA WMOD3
|
|
LDX WSET+3
|
|
LDA ELASTLO,X
|
|
STA WMOD2
|
|
LDA ELASTHI,X
|
|
STA WMOD2+1
|
|
RTS
|
|
*
|
|
GRAVTBL HEX FF7F3F1F0F070301
|
|
TIMETBL HEX 302018100C080401
|
|
KICKTBL HEX 04080C1018202838
|
|
ELASTLO HEX 80400000C0804000
|
|
ELASTHI HEX 7878787877777777
|
|
*
|
|
* PLAY THE GAME IN THE BUFFER
|
|
*
|
|
PLAY LDY #0
|
|
STY RUNLEN
|
|
JSR GETOBJ
|
|
PLAY2 LDA OBJID
|
|
CMP #<LIBOBJ
|
|
BNE PLAY4
|
|
*
|
|
LDX NOBJ
|
|
LDA LB
|
|
STA VLO,X
|
|
LDA LB+1
|
|
STA VHI,X
|
|
LDY #8
|
|
LDA (LB),Y
|
|
STA TIME,X
|
|
LDA #0
|
|
STA (LB),Y
|
|
TXA
|
|
LDX RUNLEN
|
|
STA RCN,X
|
|
INC RUNLEN
|
|
JMP PLAY5
|
|
*
|
|
PLAY4 LDX NOBJ
|
|
LDA #0
|
|
STA VLO,X
|
|
STA VHI,X
|
|
*
|
|
PLAY5 INC NOBJ
|
|
LDY NOBJ
|
|
JSR GETNOBJ
|
|
LDY NOBJ
|
|
CPY OBJCOUNT
|
|
BNE PLAY2
|
|
*
|
|
STY INITMODE
|
|
JSR INITOBJS
|
|
JSR INITSCORE
|
|
JSR INITSND
|
|
JSR INITWORLD
|
|
*
|
|
LDY #1
|
|
JSR MAKEHOLE
|
|
*
|
|
LDY #1
|
|
LDA MIDTOP
|
|
LDX MIDTOP+1
|
|
PLAY6 CLC
|
|
ADC PBDX-1,Y
|
|
STA PBTBLO,Y
|
|
BCC *+3
|
|
INX
|
|
TXA
|
|
STA PBTBHI,Y
|
|
LDA PBTBLO,Y
|
|
INY
|
|
CPY #192
|
|
BCC PLAY6
|
|
*
|
|
GLSTY DEY
|
|
LDA PBDX,Y
|
|
BEQ GLSTY
|
|
STY LASTY
|
|
*
|
|
PLAY7 INC PTM1
|
|
BNE *+4
|
|
INC PTM2
|
|
LDA PTM1
|
|
AND #$1F
|
|
BNE PLAY8
|
|
LDX #0
|
|
JSR $FB1E
|
|
TYA
|
|
STA PDL0
|
|
PLAY8 LDA PTM1
|
|
CLC
|
|
ADC #$10
|
|
AND #$1F
|
|
BNE PLAY9
|
|
LDX #1
|
|
JSR $FB1E
|
|
TYA
|
|
STA PDL1
|
|
PLAY9 LDA $C061
|
|
STA BTN0
|
|
LDA $C062
|
|
STA BTN1
|
|
*
|
|
WMOD1 EQU *+1
|
|
LDA #24
|
|
JSR $FCA8
|
|
*
|
|
LDY #0
|
|
PLAY10 CPY RUNLEN ;127 LIBOBJS
|
|
BCS PLAY12
|
|
STY NOBJ
|
|
*
|
|
LDX RCN,Y
|
|
LDA TIME,X
|
|
AND PTM1
|
|
BNE PLAY11
|
|
*
|
|
LDA VLO,X
|
|
STA LB
|
|
LDA VHI,X
|
|
STA LB+1
|
|
LDY #10
|
|
LDA (LB),Y
|
|
STA PMOD1
|
|
INY
|
|
LDA (LB),Y
|
|
STA PMOD1+1
|
|
PMOD1 EQU *+1
|
|
JSR $FFFF
|
|
*
|
|
LDY NOBJ
|
|
LDX RCN,Y
|
|
LDA TIME,X
|
|
BNE PLAY11
|
|
LDY #16
|
|
LDA (LB),Y
|
|
ROL
|
|
BCS PLAY11
|
|
BMI PLAY11
|
|
LDA Y2
|
|
CMP LASTY
|
|
BNE PLAY11
|
|
*
|
|
LDA #$80
|
|
STA (LB),Y
|
|
JSR DRAWBALL
|
|
*
|
|
PLAY11 LDY NOBJ
|
|
INY
|
|
BNE PLAY10
|
|
*
|
|
PLAY12 LDA PTM1
|
|
AND #$1F
|
|
BNE *+5
|
|
JSR SCORE
|
|
LDA PTM1
|
|
AND #$03
|
|
BNE *+8
|
|
JSR SND
|
|
JSR WIRING
|
|
*
|
|
LDA $C000
|
|
BMI *+5
|
|
JMP PLAY7
|
|
STA $C010
|
|
CMP #$9B
|
|
BEQ QUIT
|
|
CMP #$93
|
|
BNE *+6
|
|
EOR STGL
|
|
STA STGL
|
|
JMP PLAY7
|
|
*
|
|
QUIT STA INITMODE
|
|
*
|
|
INITOBJS LDY #0
|
|
INITOBJ2 CPY RUNLEN
|
|
BEQ INITOBJ4
|
|
STY NOBJ
|
|
*
|
|
LDX RCN,Y
|
|
LDA VLO,X
|
|
STA LB
|
|
LDA VHI,X
|
|
STA LB+1
|
|
LDY #12
|
|
LDA (LB),Y
|
|
STA IMOD2
|
|
INY
|
|
LDA (LB),Y
|
|
STA IMOD2+1
|
|
IMOD2 EQU *+1
|
|
JSR $FFFF
|
|
*
|
|
BIT INITMODE
|
|
BPL INITOBJ3
|
|
LDY NOBJ
|
|
LDX RCN,Y
|
|
LDA TIME,X
|
|
LDY #8
|
|
STA (LB),Y
|
|
INITOBJ3 LDY NOBJ
|
|
INY
|
|
BNE INITOBJ2
|
|
INITOBJ4 RTS
|
|
*
|
|
* PINBALL PARTS LIBRARY
|
|
*
|
|
POLY HEX 010004
|
|
HEX B5B5A6A6
|
|
HEX 1B2A2A1B
|
|
*
|
|
LAUNCHER HEX 031004
|
|
HEX F6F6F0F0
|
|
HEX 49545449
|
|
DA LAUNCHERB
|
|
HEX 4922020C010C0780
|
|
DA LAUNCHRUN
|
|
DA INITB
|
|
DA LAUNCHHIT
|
|
*
|
|
LEFTFLIPPER HEX 031004
|
|
HEX DCDCCACA
|
|
HEX 02111102
|
|
DA LFLIPB
|
|
HEX 051C060C03240380
|
|
DA LFLIPRUN
|
|
DA FLIPINIT
|
|
DA LFLIPHIT
|
|
*
|
|
RIGHTFLIPPER HEX 031004
|
|
HEX ECECDADA
|
|
HEX 02111102
|
|
DA RFLIPB
|
|
HEX 051F010C03240380
|
|
DA RFLIPRUN
|
|
DA FLIPINIT
|
|
DA RFLIPHIT
|
|
*
|
|
BALL HEX 031004
|
|
HEX F9F9F5F5
|
|
HEX 05090905
|
|
DA BALLB
|
|
HEX 0523000501050080
|
|
DA MOVEBALL
|
|
DA INITBALL
|
|
DA NULLBOUNCE
|
|
*
|
|
BMP1 HEX 031008
|
|
HEX B2B7B7B2ABA6A6AB
|
|
HEX 3034393D3D393430
|
|
DA BMP1B
|
|
HEX 3017050E032A0F11
|
|
DA BUMPRUN
|
|
DA BUMPINIT
|
|
DA BUMPHIT
|
|
*
|
|
BMP2 HEX 031008
|
|
HEX C1C5C5C1BCB8B8BC
|
|
HEX 3134383B3B383431
|
|
DA BMP2B
|
|
HEX 311A020B02160F11
|
|
DA BUMPRUN
|
|
DA BUMPINIT
|
|
DA BUMPHIT
|
|
*
|
|
BMP3 HEX 031004
|
|
HEX CCCCC8C8
|
|
HEX 303F3F30
|
|
DA BMP3B
|
|
HEX 2F1C031001100F11
|
|
DA BUMPRUN
|
|
DA BUMPINIT
|
|
DA BUMPHIT
|
|
*
|
|
BMP4 HEX 031004
|
|
HEX E1E1CFCF
|
|
HEX 35393935
|
|
DA BMP4B
|
|
HEX 341D020703150F11
|
|
DA BUMPRUN
|
|
DA BUMPINIT
|
|
DA BUMPHIT
|
|
*
|
|
BMP5 HEX 031004
|
|
HEX E6EFECE3
|
|
HEX 30393C33
|
|
DA BMP5B
|
|
HEX 2F20020D021A0F11
|
|
DA BUMPRUN
|
|
DA BUMPINIT
|
|
DA BUMPHIT
|
|
*
|
|
BMP6 HEX 031004
|
|
HEX FAFDF4F1
|
|
HEX 30333C39
|
|
DA BMP6B
|
|
HEX 2F22020D021A0F11
|
|
DA BUMPRUN
|
|
DA BUMPINIT
|
|
DA BUMPHIT
|
|
*
|
|
LKICK HEX 031005
|
|
HEX AAB8B8A6A6
|
|
HEX 445A5D5944
|
|
DA LKICKB
|
|
HEX 4317051B03510F22
|
|
DA BUMPRUN
|
|
DA BUMPINIT
|
|
DA KICKHIT
|
|
*
|
|
RKICK HEX 031005
|
|
HEX D1D1BEBECE
|
|
HEX 44595D5A44
|
|
DA RKICKB
|
|
HEX 431A061B03510F22
|
|
DA BUMPRUN
|
|
DA BUMPINIT
|
|
DA KICKHIT
|
|
*
|
|
KICK1 HEX 031004
|
|
HEX DADAD5D5
|
|
HEX 4A53534A
|
|
DA KNOCK1B
|
|
HEX 481E031001100F33
|
|
DA KNOCKRUN
|
|
DA BUMPINIT
|
|
DA KNOCK1HIT
|
|
*
|
|
KICK2 HEX 031004
|
|
HEX EBEBDFDF
|
|
HEX 4E53534E
|
|
DA KNOCK2B
|
|
HEX 4E1F050603120F33
|
|
DA KNOCKRUN
|
|
DA BUMPINIT
|
|
DA KNOCK2HIT
|
|
*
|
|
ROLL1 HEX 031004
|
|
HEX ADADA9A9
|
|
HEX A0A4A4A0
|
|
DA ROLLB
|
|
HEX A018010501053F44
|
|
DA FLASHRUN
|
|
DA BUMPINIT
|
|
DA ROLLHIT
|
|
*
|
|
ROLL2 HEX 031004
|
|
HEX B4B4B0B0
|
|
HEX A0A4A4A0
|
|
DA ROLLB+10
|
|
HEX A019010501053F44
|
|
DA FLASHRUN
|
|
DA BUMPINIT
|
|
DA ROLLHIT
|
|
*
|
|
ROLL3 HEX 031004
|
|
HEX BBBBB7B7
|
|
HEX A0A4A4A0
|
|
DA ROLLB+20
|
|
HEX A01A010501053F44
|
|
DA FLASHRUN
|
|
DA BUMPINIT
|
|
DA ROLLHIT
|
|
*
|
|
TARG1 HEX 031004
|
|
HEX C6C6C0C0
|
|
HEX A0A2A2A0
|
|
DA ROLLB+30
|
|
HEX A01B030301033F55
|
|
DA FLASHRUN
|
|
DA BUMPINIT
|
|
DA FLASHHIT
|
|
*
|
|
TARG2 HEX 031004
|
|
HEX D1D1CBCB
|
|
HEX A0A2A2A0
|
|
DA ROLLB+36
|
|
HEX A01D000301033F55
|
|
DA FLASHRUN
|
|
DA BUMPINIT
|
|
DA FLASHHIT
|
|
*
|
|
TARG3 HEX 031004
|
|
HEX DCDCD6D6
|
|
HEX A0A2A2A0
|
|
DA ROLLB+42
|
|
HEX A01E040301033F55
|
|
DA FLASHRUN
|
|
DA BUMPINIT
|
|
DA FLASHHIT
|
|
*
|
|
TARG4 HEX 031004
|
|
HEX E5E5E3E3
|
|
HEX A0A6A6A0
|
|
DA ROLLB+48
|
|
HEX A020030701073F55
|
|
DA FLASHRUN
|
|
DA BUMPINIT
|
|
DA FLASHHIT
|
|
*
|
|
TARG5 HEX 031004
|
|
HEX ECECEAEA
|
|
HEX A0A6A6A0
|
|
DA ROLLB+62
|
|
HEX A021030701073F55
|
|
DA FLASHRUN
|
|
DA BUMPINIT
|
|
DA FLASHHIT
|
|
*
|
|
TARG6 HEX 031004
|
|
HEX F3F3F1F1
|
|
HEX A0A6A6A0
|
|
DA ROLLB+76
|
|
HEX A022030701073F55
|
|
DA FLASHRUN
|
|
DA BUMPINIT
|
|
DA FLASHHIT
|
|
*
|
|
LFLIPPER2 HEX 031004
|
|
HEX B2B2A6A6
|
|
HEX 050E0E05
|
|
DA LFLIP2B
|
|
HEX 0717050802100380
|
|
DA LFLIP2RUN
|
|
DA FLIP2INIT
|
|
DA LFLIP2HIT
|
|
*
|
|
RFLIPPER2 HEX 031004
|
|
HEX BFBFB3B3
|
|
HEX 050E0E05
|
|
DA RFLIP2B
|
|
HEX 0719040802100380
|
|
DA RFLIP2RUN
|
|
DA FLIP2INIT
|
|
DA RFLIP2HIT
|
|
*
|
|
POLY1 HEX 010604
|
|
HEX C7C7C6C6
|
|
HEX 1B2C2C1B
|
|
*
|
|
POLY2 HEX 010604
|
|
HEX CDCDCCCC
|
|
HEX 202C2C20
|
|
*
|
|
POLY3 HEX 010604
|
|
HEX F3D2D2F3
|
|
HEX 252C2A23
|
|
*
|
|
POLY4 HEX 010604
|
|
HEX D2F3F3D2
|
|
HEX 161D1F18
|
|
*
|
|
LANE1 HEX 031004
|
|
HEX ADADA9A9
|
|
HEX 90999990
|
|
DA LANEB
|
|
HEX 9018010A010AFF80
|
|
DA NULL
|
|
DA NULL
|
|
DA PBOUNCE
|
|
*
|
|
LANE2 HEX 031004
|
|
HEX B7B7B3B3
|
|
HEX 90979790
|
|
DA LANEB+10
|
|
HEX 901904080108FF80
|
|
DA NULL
|
|
DA NULL
|
|
DA PBOUNCE
|
|
*
|
|
LANE3 HEX 031004
|
|
HEX C1C1BDBD
|
|
HEX 90949490
|
|
DA LANEB+18
|
|
HEX 901B00050105FF80
|
|
DA NULL
|
|
DA NULL
|
|
DA PBOUNCE
|
|
*
|
|
GATE1 HEX 031004
|
|
HEX CFCFC9C9
|
|
HEX 90989895
|
|
DA LANEB+23
|
|
HEX 901C05090109FF80
|
|
DA NULL
|
|
DA NULL
|
|
DA GATEHIT
|
|
*
|
|
GATE2 HEX 031004
|
|
HEX DDDDD7D7
|
|
HEX 95989890
|
|
DA LANEB+32
|
|
HEX 901E05090109FF80
|
|
DA NULL
|
|
DA NULL
|
|
DA GATEHIT
|
|
*
|
|
GATE3 HEX 031004
|
|
HEX EBEBE5E5
|
|
HEX 90989890
|
|
DA LANEB+41
|
|
HEX 902005090109FF80
|
|
DA NULL
|
|
DA NULL
|
|
DA GATE2HIT
|
|
*
|
|
GATE4 HEX 031004
|
|
HEX F9F9F3F3
|
|
HEX 90989890
|
|
DA LANEB+50
|
|
HEX 902205090109FF80
|
|
DA NULL
|
|
DA NULL
|
|
DA GATE3HIT
|
|
*
|
|
DROP1 HEX 031004
|
|
HEX D5D5B6B6
|
|
HEX 64676764
|
|
DA DROP1B
|
|
HEX 641A000405141F55
|
|
DA DROP1RUN
|
|
DA DROP1INIT
|
|
DA DROP1HIT
|
|
HEX 00
|
|
*
|
|
DROP2 HEX 031004
|
|
HEX ACACA9A9
|
|
HEX 64838364
|
|
DA DROP2B
|
|
HEX 6418002001201F55
|
|
DA DROP2RUN
|
|
DA DROP2INIT
|
|
DA DROP2HIT
|
|
HEX 00
|
|
*
|
|
CATCH1 HEX 031005
|
|
HEX C4C4BABABF
|
|
HEX 6C7E7E6C6E
|
|
DA CATCH1B
|
|
HEX 6C1A041302260F55
|
|
DA NULL
|
|
DA CATCH1INIT
|
|
DA CATCH1HIT
|
|
*
|
|
CATCH2 HEX 031004
|
|
HEX D5D5CBCB
|
|
HEX 70787870
|
|
DA CATCH2B
|
|
HEX 701D000902120F05
|
|
DA CATCH2RUN
|
|
DA BUMPINIT
|
|
DA CATCH2HIT
|
|
*
|
|
SPIN1 HEX 031004
|
|
HEX ECECE6E6
|
|
HEX 64686864
|
|
DA SPINB
|
|
HEX 6420060501050711
|
|
DA SPINRUN
|
|
DA SPININIT
|
|
DA SPINHIT
|
|
*
|
|
MAG1 HEX 031004
|
|
HEX EFEFE6E6
|
|
HEX 747A7A74
|
|
DA MAGB
|
|
HEX 74200407020E0FB3
|
|
DA NULL
|
|
DA NULL
|
|
DA MAGHIT
|