2256 lines
36 KiB
Plaintext
2256 lines
36 KiB
Plaintext
.FILE 'SHOTS.ASM'
|
||
.TITLE 'PROJECTILES FROM PLAYERS STUFF'
|
||
.WIDTH 132
|
||
.OPTION B,D,L,T
|
||
.MNOLIST
|
||
|
||
;
|
||
; INITIATED: AUG 30,1990
|
||
; MODIFIED: !
|
||
; SOFTWARE: MARK TURMELL
|
||
;
|
||
; COPYRIGHT (C) 1989 WILLIAMS ELECTRONICS GAMES, INC.
|
||
;
|
||
;
|
||
; GET THE SYSTEM STUFF
|
||
|
||
.INCLUDE "MPROC.EQU" ;MPROC EQUATES
|
||
.INCLUDE "DISP.EQU" ;DISPLAY PROC. EQUATES
|
||
.INCLUDE "\VIDEO\SYS\SYS.INC" ;Z UNIT SYSTEM EQUATES
|
||
.INCLUDE "\VIDEO\SYS\MACROS.HDR" ;MACROS DEFINITIONS
|
||
.INCLUDE "IMGTBL.GLO"
|
||
.INCLUDE "GAME.EQU"
|
||
;
|
||
;SOUNDS EXTERNAL
|
||
;
|
||
.REF SHOT,MISS2,RIFL,BINGO,FREESND,WOO2,MISS,ICSND,EXP3HIB,WOO1
|
||
.REF SCASH
|
||
;
|
||
;SYMBOLS EXTERNALLY DEFINED
|
||
;
|
||
.REF PCNT,OUT_FLG,FRANIM,BCURRENT,CLEANUP,SHAKER,INHERE,RINGS
|
||
.REF SCRADD2,P1DATA,P2DATA,DO_EXTRA,FREETOT,KILL_H1,ZEROCNTS
|
||
.REF KILL_F2,GETFPAL,BGDO,HALT,FIREEXP,KILL_LY,COMEOUT
|
||
;
|
||
;SYMBOLS DEFINED IN THIS FILE
|
||
;
|
||
.DEF B_DIR,STRT_WPN,FIRE_DIRECTION,KILL_BULL,SPRAYON,NSTPON
|
||
.DEF KEYON,RINGON,SMRTON,SHOEON,EXTRA,BMBON,DEL_BULL,TCSH
|
||
.DEF FIREON,GRENON,SPDGON,CLNICN,CHK_BULL,MAPON,SBOMB,KILL_BULL2
|
||
;
|
||
;UNINITIALIZED RAM DEFINITIONS
|
||
;
|
||
.BSS B_DIR,16 ;BULLET DIRECTION 1-9 BUT NOT 3!
|
||
.BSS MAPON,16 ;MAP PICKED UP, FLAG FOR MESSAGES
|
||
;
|
||
;EQUATES FIRST ORIGINATED IN THIS FILE
|
||
;
|
||
;PUT IN ANGLE VELOCITIES!
|
||
BLTYVEL .EQU 072000H ;>164000
|
||
BLTXVEL .EQU 072000H ;>164000
|
||
BL3YVEL .EQU 032000H ;>164000
|
||
BL3XVEL .EQU 039000H ;>164000
|
||
BLT5YVEL .EQU 038000H ;>164000
|
||
BLT5XVEL .EQU 040000H ;>164000
|
||
GRNYVEL .EQU 000H
|
||
GRNXVEL .EQU 2000H
|
||
;-18000 FOR FLATFACE
|
||
GRNYVEL2 .EQU -018000H
|
||
|
||
GRNXVEL2 .EQU -018000H
|
||
|
||
.TEXT
|
||
RINGON:
|
||
;TURN RING ON AROUND PLAYER ICON PICKUP
|
||
;REDUCE MMTM!!!
|
||
MMTM SP,A1,A7,A9
|
||
MOVE *A0(OPLINK),A0,L
|
||
MOVE *A0(PNUM),A9
|
||
; MOVE @RINGTIME,A10
|
||
;IF ALREADY A RING FOR THIS PLYR
|
||
;KILL OLD PROC AND RESTART ANEW
|
||
CMPI 1,A9
|
||
JRZ ONEP
|
||
MOVI RNG2PID,A0
|
||
CLR A1
|
||
NOT A1
|
||
CALLA EXISTP
|
||
JRZ STRT2
|
||
CALLA KILL
|
||
STRT2
|
||
MOVI 60,A10 ;TIME RINGS ARE ON
|
||
CREATE RNG2PID,RINGS ;PLACE RING AROUND PLAYER X
|
||
JRUC ROUT
|
||
ONEP
|
||
MOVI RNG1PID,A0
|
||
CLR A1
|
||
NOT A1
|
||
CALLA EXISTP
|
||
JRZ STRT1
|
||
CALLA KILL
|
||
STRT1
|
||
MOVI 60,A10 ;TIME RINGS ARE ON
|
||
CREATE RNG1PID,RINGS ;PLACE RING AROUND PLAYER X
|
||
ROUT CALLR CLNICN
|
||
MOVI ICSND,A0
|
||
CALLA ONESND
|
||
MMFM SP,A1,A7,A9
|
||
RETS
|
||
EXTRA:
|
||
;A0=PLYR
|
||
;A8=ICON
|
||
MMTM SP,A1,A2,A3,A4,A5,A6,A7
|
||
MOVE *A8(OIMG),A1,L
|
||
CMPI SPIN1,A1 ;WARP
|
||
JRZ AWARP
|
||
CMPI MAPBUTN,A1
|
||
JRNZ EX1
|
||
;THIS IS A MAPBUTN
|
||
MOVI BGDO,A7
|
||
MOVK 1,A0
|
||
MOVE A0,@HALT
|
||
EX2 MOVE *A8(OPLINK),A0,L
|
||
CALLA XFERPROC
|
||
MOVE *A8(OFLAGS),A0
|
||
ORI M_NOCOLL,A0
|
||
MOVE A0,*A8(OFLAGS)
|
||
MOVK 1,A0
|
||
MOVE A0,@OUT_FLG
|
||
NOPE MMFM SP,A1,A2,A3,A4,A5,A6,A7
|
||
RETS
|
||
AWARP MOVI COMEOUT,A7
|
||
MOVE A0,A9
|
||
JRUC EX2
|
||
|
||
EX1 CMPI PLAYER,A1
|
||
JRNZ NOPE
|
||
;FREE MAN ICON TOUCHED
|
||
MOVE *A0(OPLINK),A10,L
|
||
CREATE 0,FLASHME
|
||
MOVB *A10(PNUM),A10
|
||
MOVI P1DATA,A2
|
||
CMPI 1,A10
|
||
JRZ TAG1
|
||
MOVI P2DATA,A2
|
||
TAG1 CALLA DO_EXTRA
|
||
MOVE @FREETOT,A0
|
||
INC A0
|
||
MOVE A0,@FREETOT
|
||
JRUC FLYCONT
|
||
KEYON:
|
||
;PLAYER NOW CARRIES KEY
|
||
;A0=PLYR
|
||
;A8=ICON
|
||
MMTM SP,A1,A2,A3,A4,A5,A6,A7
|
||
MOVE *A0(OPLINK),A10,L
|
||
CREATE 0,FLASHME
|
||
MOVB *A10(PNUM),A10
|
||
MOVI P1DATA,A2
|
||
MOVE A2,@MAPON
|
||
MOVI KEYPT,A1
|
||
CMPI 1,A10
|
||
JRZ KEY1
|
||
MOVI P2DATA,A2
|
||
KEY1 CALLA SCRADD2
|
||
MOVI FREESND,A0 ;KEY VOICE CALL
|
||
CALLA ONESND
|
||
FLYCONT
|
||
MOVI CLSDEAD,A0
|
||
MOVE A0,*A8(OID)
|
||
MOVI DMAWNZ|M_NOCOLL,A0
|
||
MOVE A0,*A8(OFLAGS)
|
||
MOVI 300,A0
|
||
MOVE A0,*A8(OZPOS)
|
||
MOVE *A8(OPLINK),A0,L
|
||
DEC A10
|
||
MOVK 1,A11
|
||
FLYCONT2
|
||
MOVI ICONPID,A1
|
||
MOVI INHERE,A7 ;FLOAT TOWARD SCORE BOARD
|
||
CALLA XFERPROC
|
||
MOVK 1,A0
|
||
MOVE A0,@OUT_FLG
|
||
MMFM SP,A1,A2,A3,A4,A5,A6,A7
|
||
RETS
|
||
TCSH:
|
||
;TOUCH CASH ON FLOOR
|
||
;A0=PLYR
|
||
;A8=BMB IMG
|
||
MMTM SP,A1,A2,A3,A4,A5,A6,A7
|
||
MOVE *A0(OPLINK),A0,L
|
||
MOVE *A0(PNUM),A10
|
||
DEC A10
|
||
MOVI P1DATA,A1
|
||
JRZ X0
|
||
MOVI P2DATA,A1
|
||
X0 MOVE *A1(CASHCNT),A0
|
||
INC A0
|
||
MOVE A0,*A1(CASHCNT)
|
||
MOVI SCASH,A0 ;GET CASH PICKUP SND
|
||
CALLA ONESND
|
||
MOVI CLSDEAD,A0
|
||
MOVE A0,*A8(OID)
|
||
MOVI DMAWNZ|M_NOCOLL,A0
|
||
MOVE A0,*A8(OFLAGS)
|
||
MOVI 500,A0 ;300
|
||
MOVE A0,*A8(OZPOS)
|
||
;JEWEL ON GROUND JUMPS IN HERE
|
||
;A10=0 OR 1 FOR PLYR #
|
||
;A8=ICON IMG
|
||
;A11=1 IF FROM KEY FLOATING TO SCORE BOARD
|
||
CLR A11
|
||
CREATE 0,INHERE
|
||
MMFM SP,A1,A2,A3,A4,A5,A6,A7
|
||
RETS
|
||
|
||
BMBON:
|
||
;PLAYER PICKED UP EXTRA BOMB
|
||
;A0=PLYR
|
||
;A8=BMB IMG
|
||
MMTM SP,A1,A2,A3,A4,A5,A6,A7
|
||
MOVE *A0(OPLINK),A0,L
|
||
MOVB *A0(PNUM),A10
|
||
MOVI WOO1,A0
|
||
CALLA ONESND
|
||
CMPI 1,A10
|
||
JRNZ P2
|
||
MOVE @P1DATA+BMB_CNT,A2
|
||
INC A2
|
||
MOVE A2,@P1DATA+BMB_CNT
|
||
FLY
|
||
MOVI CLSDEAD,A0
|
||
MOVE A0,*A8(OID)
|
||
MOVI DMAWNZ|M_NOCOLL,A0
|
||
MOVE A0,*A8(OFLAGS)
|
||
MOVI 300,A0
|
||
MOVE A0,*A8(OZPOS)
|
||
MOVE *A8(OPLINK),A0,L
|
||
DEC A10
|
||
CLR A11
|
||
JRUC FLYCONT2
|
||
P2
|
||
MOVE @P2DATA+BMB_CNT,A2
|
||
INC A2
|
||
MOVE A2,@P2DATA+BMB_CNT
|
||
JRUC FLY
|
||
FLASHME
|
||
;A10=PROC OF PLYR TO FLASH (TORSO STRUCTURE)
|
||
MOVE *A10(TSO_PTR),A8,L
|
||
MOVE *A10(LEG_PTR),A11,L
|
||
; MOVE *A8(OPAL),A10,W
|
||
;GIVE THESE IMAGES OTHER PAL
|
||
MOVI nup2a,A0
|
||
CALLA GETFPAL ;GET A COLOR MAP ASSIGNMENT
|
||
MOVE A0,*A8(OPAL),W ;STORE THE NEW PALETTE
|
||
MOVE A0,*A11(OPAL),W ;STORE THE NEW PALETTE
|
||
SLEEP 8
|
||
;GIVE THESE IMAGES OTHER PAL
|
||
MOVI nup1,A0
|
||
MOVE *A10(PNUM),A1
|
||
CMPI 1,A1
|
||
JRZ XS
|
||
MOVI nup2,A0
|
||
XS CALLA GETFPAL ;GET A COLOR MAP ASSIGNMENT
|
||
MOVE A0,*A8(OPAL),W ;STORE THE NEW PALETTE
|
||
MOVE A0,*A11(OPAL),W
|
||
DIE
|
||
|
||
SHOEON:
|
||
;A8=SHOE ICON
|
||
;FAST SHOES
|
||
;REDUCE MMTM!!!
|
||
MMTM SP,A1,A7,A9,A10
|
||
MOVE *A0(OPLINK),A10,L
|
||
PUSH A0
|
||
CREATE 0,FLASHME
|
||
PULL A0
|
||
MOVE *A10(LEG_PRC),A9,L
|
||
|
||
MOVE *A8(OIMG),A10,L
|
||
CMPI SHOES,A10
|
||
JRZ BOOTS
|
||
;PICKED UP TENNIS SHOES!
|
||
MOVI 08280H,A1
|
||
JRUC SH3
|
||
BOOTS
|
||
MOVE *A9(SHOECNT),A1
|
||
JRZ SHOE2
|
||
BTST 15,A1
|
||
JRZ SH2
|
||
;HAVE TENNIS SHOES ON! TAKE'EM OFF
|
||
SHOE2 MOVE A0,A10
|
||
CREATE 0,FLOAT
|
||
SH2 MOVI 150H,A1 ;TIME SHOES ARE ON
|
||
SH3 MOVE A1,*A9(SHOECNT),W
|
||
CALLR CLNICN
|
||
MOVI WOO2,A0
|
||
CALLA ONESND
|
||
MMFM SP,A1,A7,A9,A10
|
||
RETS
|
||
FLOAT
|
||
;A10=LEG IMG
|
||
;A9=LEG PROCESS
|
||
MOVE *A9(TSO_PTR),A8,L
|
||
MOVK 15,A11
|
||
FLT2
|
||
SLEEP 8
|
||
MOVE *A9(SHOECNT),A0
|
||
JRZ DI
|
||
BTST 15,A0
|
||
JRNZ DI
|
||
MOVE *A10(OYPOS),A0
|
||
XORI 1,A0
|
||
MOVE A0,*A10(OYPOS)
|
||
DSJ A11,FLT2
|
||
MOVK 15,A11
|
||
MOVE A8,A0
|
||
MOVE A10,A8
|
||
CALLA GETANIXY
|
||
MOVE *A8(OFLAGS),A4,W
|
||
ORI M_NOCOLL,A4
|
||
CALLA GANISAG
|
||
MOVE A0,A8
|
||
;TURN BACK ON TORSO OBJECT
|
||
JRUC FLT2
|
||
DI DIE
|
||
|
||
SMRTON:
|
||
;SMART BOMB EVERYTHING ON SCREEN
|
||
MMTM SP,A1,A7,A10
|
||
MOVE *A0(OPLINK),A10,L
|
||
CREATE 0,FLASHME
|
||
MOVI 30,A10
|
||
CALLA SHAKER
|
||
CALLR CLNICN
|
||
CREATE 0,SBSND
|
||
CREATE 0,SBOMB
|
||
MMFM SP,A1,A7,A10
|
||
RETS
|
||
|
||
SBSND
|
||
; MOVI SMRTCYC,A0
|
||
; CLR A1
|
||
; NOT A1
|
||
; CALLA EXISTP
|
||
; CALLA KILL
|
||
MOVI EXP3HIB,A0
|
||
CALLA ONESND
|
||
SLEEP 5
|
||
MOVI EXP3HIB,A0
|
||
CALLA ONESND
|
||
SLEEP 5
|
||
MOVI EXP3HIB,A0
|
||
CALLA ONESND
|
||
SLEEP 5
|
||
MOVI EXP3HIB,A0
|
||
CALLA ONESND
|
||
SLEEP 17
|
||
MOVI BINGO,A0
|
||
CALLA ONESND
|
||
DIE
|
||
|
||
SBOMB
|
||
;SMART BOMB
|
||
;A9=PLYR IMG PTR WHO GOT ME
|
||
CALLA ZEROCNTS
|
||
MOVE *A9(OID),A0
|
||
MOVI P1DATA,A9
|
||
CMPI CLSPLYR|TYPPLYR|SUBPL_1,A0
|
||
JREQ BAD0
|
||
MOVI P2DATA,A9
|
||
;A9=P1 OR P2DATA FOR SCORING SMART BOMB POINTS
|
||
BAD0
|
||
MOVI CLSENMY|TYPHULK,A0
|
||
MOVI 0FFFFH,A1
|
||
CALLA EXISTOBJ
|
||
JRZ BAD1
|
||
;FOUND A HULK
|
||
MOVE A0,A8
|
||
CALLA KILL_H1 ;KILL_HULK
|
||
JRUC BAD0
|
||
BAD1
|
||
MOVI CLSENMY|TYPFND,A0
|
||
MOVI 0FFFFH,A1
|
||
CALLA EXISTOBJ
|
||
JRZ BAD2
|
||
;FOUND A FIEND
|
||
MOVE A0,A8
|
||
CALLA KILL_F2 ;KILL_FIEND
|
||
JRUC BAD1
|
||
BAD2
|
||
MOVI CLSENMY|TYPGOO,A0
|
||
MOVI 0FFFFH,A1
|
||
CALLA EXISTOBJ
|
||
JRZ BAD3
|
||
;FOUND A GOOB
|
||
MOVE A0,A8
|
||
MOVE *A8(OPLINK),A0,L
|
||
CALLA KILL
|
||
MOVE A8,A0
|
||
CALLA DELOBJ
|
||
JRUC BAD2
|
||
BAD3
|
||
MOVI CLSENMY|TYPGRW,A0
|
||
MOVI 0FFFFH,A1
|
||
CALLA EXISTOBJ
|
||
JRZ BAD4
|
||
;FOUND A HULK GROWING
|
||
MOVE A0,A8
|
||
CALLA KILL_H1 ;KILL_HULK
|
||
JRUC BAD3
|
||
BAD4
|
||
MOVI CLSENMY|TYPLAYR,A0
|
||
MOVI 0FFFFH,A1
|
||
CALLA EXISTOBJ
|
||
JRZ BAD5
|
||
;FOUND A MINE LAYER
|
||
MOVE A0,A8
|
||
CALLA KILL_LY ;KILL MINE LAYER TOO!
|
||
JRUC BAD4
|
||
BAD5
|
||
MOVI CLSPLYR|TYPHLPR|SUBLAY,A0
|
||
MOVI 0FFFFH,A1
|
||
CALLA EXISTOBJ
|
||
JRZ BAD6
|
||
MOVE *A0(OIMG),A8,L
|
||
CMPI T72TNK,A8
|
||
JRZ BAD6 ;BR=DON'T SMART BOMB T72 TANK!
|
||
CMPI BTR60,A8
|
||
JRZ BAD6 ;BR=DON'T SMART BOMB BTR60!
|
||
CMPI BTRECK,A8
|
||
JRZ BAD6 ;BR=DON'T SMART BOMB BTR60 WRECK!
|
||
;FOUND A MINE LAYER WITH CLSPLYR BIT SET FOR A MOMENT!
|
||
MOVE A0,A8
|
||
CALLA KILL_LY ;KILL MINE LAYER TOO!
|
||
JRUC BAD5
|
||
BAD6
|
||
MOVI CLSENMY|TYPAHMD,A0
|
||
MOVI 0FFFFH,A1
|
||
CALLA EXISTOBJ
|
||
JRZ BAD7
|
||
MOVE A0,A8
|
||
CALLA KILL_H1 ;KILL HULK AS WELL AS AHMED
|
||
JRUC BAD6
|
||
BAD7
|
||
MOVI CLSENMY|TYPLAYR|SUBFLM,A0
|
||
MOVI 0FFFFH,A1
|
||
CALLA EXISTOBJ
|
||
JRZ BAD8
|
||
;FOUND A FLAME
|
||
CALLA DELOBJ
|
||
JRUC BAD7
|
||
BAD8
|
||
;
|
||
;INSERT OTHERS HERE
|
||
;
|
||
BADCLN
|
||
MOVI CLSENMY|TYPSHOT,A0
|
||
MOVI 0FFFFH,A1
|
||
CALLA EXISTOBJ
|
||
JRZ BADO
|
||
;FOUND A CBALL/SHRAPNEL
|
||
;NO SCORE
|
||
MOVE A0,A8
|
||
;ALSO USED FOR SHRAPNEL FROM FAT MAN
|
||
MOVE *A8(OPLINK),A0,L
|
||
JREQ BADCLN
|
||
CLR A1
|
||
MOVE A1,*A8(OPLINK),L
|
||
CALLA KILL
|
||
MOVE A8,A0
|
||
CALLA DELOBJ
|
||
JRUC BADCLN
|
||
BADO
|
||
;RESET ALL CNTS!
|
||
DIE
|
||
|
||
NSTPON:
|
||
MMTM SP,A1,A7
|
||
MOVK SUBNOSTP,A1 ;BULLET SUBTYPE
|
||
CALLR DO_CNT
|
||
JRUC ICONIN
|
||
SPDGON:
|
||
MMTM SP,A1,A7
|
||
MOVK SUBSPDG1,A1 ;BULLET SUBTYPE
|
||
CALLR DO_CNT
|
||
JRUC ICONIN
|
||
GRENON:
|
||
FIREON:
|
||
MMTM SP,A1,A7
|
||
MOVK SUBFIRE1,A1 ;BULLET SUBTYPE
|
||
CALLR DO_CNT
|
||
JRUC ICONIN
|
||
SPRAYON:
|
||
MMTM SP,A1,A7
|
||
MOVK SUBSPRY,A1 ;BULLET SUBTYPE
|
||
CALLR DO_CNT
|
||
ICONIN
|
||
;A8=ICON IMAGE
|
||
;A0=PLAYER PROCESS WHO GOT ME
|
||
MOVE A1,*A10(WPN_TYP),W
|
||
CALLR CLNICN
|
||
MOVI WOO2,A0
|
||
CALLA ONESND
|
||
CREATE 0,FLASHME
|
||
MMFM SP,A1,A7
|
||
RETS
|
||
DO_CNT PUSH A1
|
||
SLL 4,A1
|
||
ADDI TIMERS,A1
|
||
MOVE *A1,A1
|
||
MOVE *A0(OPLINK),A10,L
|
||
MOVE A1,*A10(SHOTCNT),W
|
||
PULL A1
|
||
RETS
|
||
|
||
;STUFF SHOT CNT FOR THIS WEAPON
|
||
;SUBLZR .EQU 0001H ;REGULAR LAZER SHOTS
|
||
;SUBSPRY .EQU 0002H ;SPRAY SUB TYPE
|
||
;SUBFIRE1 .EQU 0003H ;FIRE BALL WPN
|
||
;SUBGRND .EQU 0004H ;GRENADE
|
||
;SUBNOSTP .EQU 0005H ;NON STOPPING BULLET
|
||
;SUBSPDG1 .EQU 0006H ;MACHINE GUN TYP WPN
|
||
|
||
TIMERS: .WORD 0,0,38,43,20,43,100
|
||
|
||
CLNICN MOVE *A8(OFLAGS),A1
|
||
ORI M_NOCOLL,A1
|
||
MOVE A1,*A8(OFLAGS)
|
||
MOVE *A8(OPLINK),A0,L
|
||
MOVE *A0(PTIME),A9 ;TIME IT STILL HAD LEFT TO SLEEP
|
||
MOVI CLEANUP,A7
|
||
MOVI ICONPID,A1
|
||
CALLA XFERPROC
|
||
MOVK 1,A0
|
||
MOVE A0,@OUT_FLG
|
||
RETS
|
||
DEL_BULL:
|
||
;DEL BULLET OBJ
|
||
;NOW DELETE OBJECT FROM OBJLST
|
||
MOVE *A8(OPLINK),A0,L
|
||
CALLA KILL
|
||
MOVE A8,A0
|
||
MOVE A8,@OUT_FLG ;TELL SCANNER TO STOP
|
||
CALLA DELOBJ
|
||
RETS
|
||
|
||
KILL_BULL:
|
||
; KILL BULLET WITH AN EXPLOSION
|
||
MOVI REGEXP,A7
|
||
KBL MOVE *A8(OPLINK),A0,L
|
||
MOVE A7,@OUT_FLG ;TELL SCANNER TO STOP
|
||
CALLA XFERPROC
|
||
MOVE *A8(OFLAGS),A0
|
||
ORI M_NOCOLL,A0
|
||
MOVE A0,*A8(OFLAGS)
|
||
RETS
|
||
KILL_BULL2:
|
||
; KILL BULLET WITH AN EXPLOSION
|
||
MOVI REGEXP2,A7
|
||
JRUC KBL
|
||
|
||
REGEXP2:
|
||
MOVI FIREEXP,A9 ;FRBALL
|
||
JRUC ONON
|
||
REGEXP:
|
||
;REGULAR EXPLOSION HERE
|
||
MOVI FRBALL,A9 ;FRBALL
|
||
MOVI 180,A4
|
||
MOVE A4,*A8(OZPOS)
|
||
ONON:
|
||
MOVE *A8(OXVEL),A4,L
|
||
JRNN RG1
|
||
NEG A4
|
||
SRL 2,A4
|
||
NEG A4
|
||
JRUC RG2
|
||
RG1 SRL 2,A4
|
||
RG2 MOVE A4,*A8(OXVEL),L
|
||
MOVE *A8(OYVEL),A4,L
|
||
JRNN RG3
|
||
NEG A4
|
||
SRL 2,A4
|
||
NEG A4
|
||
JRUC RG4
|
||
RG3 SRL 2,A4
|
||
RG4 MOVE A4,*A8(OYVEL),L
|
||
|
||
;EXPLODE BULLET NOW!
|
||
MOVK 1,A1 ;COMMAND PASSED TO FRANIM
|
||
JSRP FRANIM
|
||
;DELBL
|
||
;NOW DELETE OBJECT FROM OBJLST
|
||
MOVE A8,A0
|
||
CALLA DELOBJ
|
||
DIE
|
||
|
||
FRBALL .LONG FRBAL1 ;BULLET FIRE BALL EXPLOSION
|
||
.WORD 2
|
||
.LONG FRBAL2
|
||
.WORD 2
|
||
.LONG FRBAL3
|
||
.WORD 2
|
||
.LONG 0
|
||
FRBL .LONG EXPb1
|
||
.WORD 5
|
||
.LONG EXPb2
|
||
.WORD 5
|
||
.LONG EXPb3
|
||
.WORD 4
|
||
.LONG EXPb4
|
||
.WORD 4
|
||
.LONG EXPb5
|
||
.WORD 4
|
||
.LONG 0
|
||
|
||
FIRE_DIRECTION:
|
||
CLR A6 ;A6 IS A RUNNING CNT WHICH WILL END
|
||
;UP BEING A DIRECTION CNT (0-9)
|
||
;0 SHOULD NEVER BE RESULT!
|
||
MOVE *A13(STICK),A5,L ;JOYSTICK 2 CONTROL READ
|
||
MOVE *A5,A5,W ;GET ACTUAL VALUE OF STICK
|
||
BTST BMPFUP,A5
|
||
JRZ NXT1
|
||
ADDK 1,A6
|
||
NXT1:
|
||
BTST BMPFDOWN,A5
|
||
JRZ NXT2
|
||
ADDK 2,A6
|
||
NXT2:
|
||
BTST BMPFLEFT,A5
|
||
JRZ NXT3
|
||
ADDK 7,A6
|
||
NXT3:
|
||
BTST BMPFRYTE,A5
|
||
JRZ ALL_DIR
|
||
ADDK 4,A6
|
||
ALL_DIR:
|
||
CMPI 9,A6
|
||
JRLS RETSOUT
|
||
MOVK 9,A6
|
||
RETSOUT
|
||
MOVE A6,@B_DIR
|
||
RETS
|
||
|
||
BULYV: .LONG -BLTYVEL,-BLTYVEL,0,BLTYVEL,BLTYVEL,BLTYVEL,0,-BLTYVEL
|
||
BULXV: .LONG 0,BLTXVEL,BLTXVEL,BLTXVEL,0,-BLTXVEL,-BLTXVEL,-BLTXVEL
|
||
BUL3AYV: .LONG -BL3YVEL,-BL3YVEL,0,BL3YVEL,BL3YVEL,BL3YVEL,0,-BL3YVEL
|
||
BUL3AXV: .LONG 0,BL3XVEL,BL3XVEL,BL3XVEL,0,-BL3XVEL,-BL3XVEL,-BL3XVEL
|
||
BUL5YV: .LONG -BLT5YVEL,-BLT5YVEL,0,BLT5YVEL,BLT5YVEL,BLT5YVEL,0,-BLT5YVEL
|
||
BUL5XV: .LONG 0,BLT5XVEL,BLT5XVEL,BLT5XVEL,0,-BLT5XVEL,-BLT5XVEL,-BLT5XVEL
|
||
GRNYV: .LONG -GRNYVEL,-GRNYVEL,0,GRNYVEL,GRNYVEL,GRNYVEL,0,-GRNYVEL
|
||
GRNXV: .LONG 0,GRNXVEL,GRNXVEL,GRNXVEL,0,-GRNXVEL,-GRNXVEL,-GRNXVEL
|
||
GRNYV2: .LONG -GRNYVEL2,-GRNYVEL2,0,GRNYVEL2,GRNYVEL2,GRNYVEL2,0,-GRNYVEL2
|
||
GRNXV2: .LONG 0,GRNXVEL2,GRNXVEL2,GRNXVEL2,0,-GRNXVEL2,-GRNXVEL2,-GRNXVEL2
|
||
|
||
BUL2YV: .LONG -BLTYVEL,-BLTYVEL,-(BLTYVEL/2),BLTYVEL/2,BLTYVEL
|
||
.LONG BLTYVEL,BLTYVEL/2,-BLTYVEL
|
||
BUL2XV: .LONG -(BLTXVEL/2),BLTXVEL/2,BLTXVEL,BLTXVEL,BLTXVEL/2
|
||
.LONG -(BLTXVEL/2),-BLTXVEL,-(BLTXVEL/2)
|
||
|
||
BUL3YV: .LONG -BLTYVEL,-(BLTYVEL/2),BLTYVEL/2,BLTYVEL,BLTYVEL
|
||
.LONG BLTYVEL/2,-(BLTYVEL/2),-(BLTYVEL/2)
|
||
BUL3XV: .LONG BLTXVEL/2,BLTXVEL,BLTXVEL,BLTXVEL/2,-(BLTXVEL/2)
|
||
.LONG -BLTXVEL,-BLTXVEL,-BLTXVEL
|
||
|
||
BXL: .LONG -010000H,008000H,0018000H,08000H,-010000H,-28000H,-30000H,-28000H
|
||
BXH: .LONG 0010000H,028000H,030000H,28000H,010000H,-08000H,-018000H,-08000H
|
||
|
||
BYL: .LONG -028000H,-28000H,-010000H,08000H,018000H,008000H,-010000H,-28000H
|
||
BYH: .LONG -018000H,-08000H,0010000H,28000H,28000H,028000H,0010000H,-08000H
|
||
|
||
WHICHYV:
|
||
.LONG BULYV,BUL2YV,BUL3YV
|
||
WHICHXV:
|
||
.LONG BULXV,BUL2XV,BUL3XV
|
||
|
||
;SUBLZR .EQU 0001H ;REGULAR LAZER SHOTS
|
||
;SUBSPRY .EQU 0002H ;SPRAY SUB TYPE
|
||
;SUBFIRE1 .EQU 0003H ;FIRE BALL WPN
|
||
;SUBGRND .EQU 0004H ;GRENADE
|
||
;SUBNOSTP .EQU 0005H ;NON STOPPING BULLET
|
||
;SUBSPDG1 .EQU 0006H ;MACHINE GUN TYP WPN
|
||
WPLIST ;SUB BULLET TYPES
|
||
.LONG NORM,NORM,SPRY,FIREB,GREND,NSTP,MGUN
|
||
|
||
STRT_WPN:
|
||
;FROM TORSO PROCESS
|
||
MOVE *A13(PNUM),A11 ;PLAYER WHO FIRED ME PASSED IN A11
|
||
MOVE *A13(WPN_TYP),A1,W
|
||
JRZ CONTA
|
||
;ANY WEAPON BUT STANDARD WILL DEC SHOTCNT
|
||
MOVE *A13(SHOTCNT),A0
|
||
DEC A0
|
||
MOVE A0,*A13(SHOTCNT)
|
||
JRNZ CONTA
|
||
MOVE A0,*A13(WPN_TYP)
|
||
CONTA
|
||
SLL 5,A1
|
||
ADDI WPLIST,A1
|
||
MOVE *A1,A0,L
|
||
JUMP A0
|
||
|
||
*****************************************************************************
|
||
|
||
NORM:
|
||
;WEAPON 1 - NORMAL FIRE POWER
|
||
CREATE BULPID,WPN1 ;BULPID
|
||
; MOVE *A13(LSRPTR),A0,L ;HELPER ON FLAG 1=YES
|
||
; JRZ NOLASER
|
||
; CREATE BULPID,WPN1A
|
||
;NOLASER:
|
||
MOVI SHOT,A0 ;RIFLE SHOT
|
||
CALLA ONESND
|
||
RETS
|
||
NSTP:
|
||
CREATE BULPID,WPN5
|
||
MOVI MISS,A0
|
||
CALLA ONESND
|
||
RETS
|
||
|
||
MGUN:
|
||
;MACHINE GUN
|
||
CREATE BULPID,WPN4
|
||
MOVI MISS2,A0
|
||
CALLA ONESND
|
||
RETS
|
||
FIREB:
|
||
;FIRE BALL WEAPON
|
||
CREATE BULPID,WPN3
|
||
MOVI SHOT,A0 ;RIFLE SHOT
|
||
CALLA ONESND
|
||
RETS
|
||
GREND:
|
||
SPRY:
|
||
;SPRAY WEAPON
|
||
;WEAPON 2
|
||
CLR A10
|
||
CREATE BULPID,WPN2
|
||
MOVK 1,A10
|
||
CREATE BULPID,WPN2
|
||
MOVK 2,A10
|
||
CREATE BULPID,WPN2
|
||
MOVI RIFL,A0 ;SPRY
|
||
CALLA ONESND
|
||
RETS
|
||
|
||
CONVERT:
|
||
.WORD 1,5,6,3,2,4,7,8,6
|
||
GET_CNVRT:
|
||
;TAKE OUT AND MAKE MORE EFFICIENT!
|
||
MOVB A11,*A13(MYPLYR) ;A11=PLAYER 1 OR 2 WHO FIRED ME
|
||
MOVE @B_DIR,A3,W ;MOVE BULLET DIRECTION INTO A3
|
||
DEC A3
|
||
SLL 4,A3
|
||
ADDI CONVERT,A3
|
||
MOVE *A3,A0,W
|
||
MOVE A0,*A13(BLTDIR),W ;CONVERTED TO NORMAL!
|
||
|
||
DEC A0
|
||
SLL 5,A0
|
||
RETS
|
||
|
||
WPN5:
|
||
;WEAPON 5 - NON STOPPING BULLET
|
||
;MAKE MORE EFFICIENT!
|
||
;NOW STUFF CORRECT BULLET AND CORRECT FLIP INFO
|
||
CALLR GET_CNVRT
|
||
MOVI BUL5XV,A3
|
||
ADD A0,A3
|
||
MOVE *A3,A6,L
|
||
|
||
MOVI BUL5YV,A3
|
||
ADD A0,A3
|
||
MOVE *A3,A7,L ;YV
|
||
|
||
|
||
|
||
;ADD IN PLAYER VELOCITIES
|
||
MOVE *A8(OXVEL),A2,L
|
||
ADD A2,A6
|
||
MOVE *A8(OYVEL),A2,L
|
||
ADD A2,A7
|
||
|
||
|
||
|
||
|
||
; GET IMG INFO BASED ON B_DIR
|
||
MOVE @B_DIR,A3,W ;MOVE BULLET DIRECTION INTO A3
|
||
SLL 5,A3 ;BDIR*32 FOR LONG WORD LOOKUP TABLE
|
||
ADDI B5_TYP,A3
|
||
MOVE *A3,A2,L ;MOVE TABLE VALUE INTO A4
|
||
;IMG IN A2
|
||
|
||
MOVE @B_DIR,A3,W ;MOVE BULLET DIRECTION INTO A3
|
||
SLL 4,A3 ;(BDIR*32)/2 FOR WORD LOOKUP TABLE
|
||
ADDI B1_INFO,A3 ;CALCULATE OFFSET IN TABLE
|
||
MOVE *A3,A4,W ;MOVE TABLE VALUE INTO A4
|
||
;FLAGS IN A4
|
||
|
||
;THESE BULLETS ARE PIXEL SCANNED! CHECK FLAGS TABLE
|
||
;FLAGS IN A4
|
||
|
||
;A8=TORSO PTR FOR PLAYER THAT FIRED ME
|
||
MOVE *A8(OXVAL),A0,L
|
||
MOVE *A8(OYVAL),A1,L
|
||
MOVI X_OFFSET,A8
|
||
MOVE @B_DIR,A3,W ;MOVE BULLET DIRECTION INTO A3
|
||
SLL 5,A3 ;BDIR*32 FOR LONG WORD LOOKUP TABLE
|
||
ADD A3,A8
|
||
MOVE *A8,A8,L
|
||
ADD A8,A0
|
||
;XVAL IN A0
|
||
|
||
MOVI Y_OFFSET,A8
|
||
ADD A3,A8
|
||
MOVE *A8,A8,L
|
||
ADD A8,A1
|
||
;YVAL IN A1
|
||
MOVI CLSPLYR|TYPPLBL|SUBNOSTP,A5
|
||
JRUC DO_IT
|
||
|
||
WPN2:
|
||
;WEAPON 2 - 3 BULLETS SPRAYED OUT
|
||
;MAKE MORE EFFICIENT!
|
||
;NOW STUFF CORRECT BULLET AND CORRECT FLIP INFO
|
||
CALLR GET_CNVRT
|
||
;GET VELS FOR THIS PROJECTILE
|
||
SLL 5,A10
|
||
MOVI WHICHXV,A1
|
||
ADD A10,A1
|
||
MOVE *A1,A3,L
|
||
ADD A0,A3
|
||
MOVE *A3,A6,L ;XVEL
|
||
MOVI WHICHYV,A1
|
||
ADD A10,A1
|
||
MOVE *A1,A3,L
|
||
ADD A0,A3
|
||
MOVE *A3,A7,L ;YV
|
||
|
||
MOVI CNNBLL,A2
|
||
MOVI DMAWNZ,A4
|
||
; MOVI DMAWNZ+M_PIXSCAN,A4
|
||
;TAKE OUT PIXSCAN?
|
||
;
|
||
;THESE BULLETS ARE PIXEL SCANNED! CHECK FLAGS TABLE
|
||
MOVE *A8(OXVAL),A0,L
|
||
MOVE *A8(OYVAL),A1,L
|
||
MOVI X_OFFSET,A8
|
||
MOVE @B_DIR,A3,W ;MOVE BULLET DIRECTION INTO A3
|
||
SLL 5,A3 ;BDIR*32 FOR LONG WORD LOOKUP TABLE
|
||
ADD A3,A8
|
||
MOVE *A8,A8,L
|
||
ADD A8,A0
|
||
;XVAL IN A0
|
||
|
||
MOVI Y_OFFSET,A8
|
||
ADD A3,A8
|
||
MOVE *A8,A8,L
|
||
ADD A8,A1
|
||
;YVAL IN A1
|
||
MOVI CLSPLYR|TYPPLBL|SUBSPRY,A5
|
||
JRUC DO_IT
|
||
WPN3
|
||
;FIRE BALL
|
||
CALLR GET_CNVRT
|
||
MOVI BUL3AXV,A3
|
||
ADD A0,A3
|
||
MOVE *A3,A6,L
|
||
MOVI BUL3AYV,A3
|
||
ADD A0,A3
|
||
MOVE *A3,A7,L ;YV
|
||
; GET IMG INFO BASED ON B_DIR
|
||
; MOVE @B_DIR,A3,W ;MOVE BULLET DIRECTION INTO A3
|
||
; SLL 5,A3 ;BDIR*32 FOR LONG WORD LOOKUP TABLE
|
||
; ADDI B3_TYP,A3
|
||
; MOVE *A3,A2,L ;MOVE TABLE VALUE INTO A4
|
||
MOVI FIRE1,A2
|
||
;IMG IN A2
|
||
MOVI DMAWNZ,A4 ;NO PIXSCAN
|
||
;FLAGS IN A4
|
||
MOVE *A8(OXVAL),A0,L
|
||
MOVE *A8(OYVAL),A1,L
|
||
MOVI X_OFFSET,A8
|
||
MOVE @B_DIR,A3,W ;MOVE BULLET DIRECTION INTO A3
|
||
SLL 5,A3 ;BDIR*32 FOR LONG WORD LOOKUP TABLE
|
||
ADD A3,A8
|
||
MOVE *A8,A8,L
|
||
ADD A8,A0
|
||
;XVAL IN A0
|
||
MOVI Y_OFFSET,A8
|
||
ADD A3,A8
|
||
MOVE *A8,A8,L
|
||
ADD A8,A1
|
||
;YVAL IN A1
|
||
MOVI CLSPLYR|TYPPLBL|SUBNOSTP,A5
|
||
;ID IN A5
|
||
MOVI 158,A3
|
||
;ZPOS IN A3
|
||
;XVEL IN A6
|
||
;YVEL IN A7
|
||
CALLA BEGINOBJ2
|
||
MOVI FRBL,A9
|
||
W3_TP:
|
||
;CHECK RECTANGLES
|
||
CALLR CHK_BULL
|
||
JRNC NOH
|
||
;HIT
|
||
CLR A0
|
||
MOVE A0,*A8(OXVEL),L
|
||
MOVE A0,*A8(OYVEL),L
|
||
MOVK 1,A1
|
||
JSRP FRANIM
|
||
C32X MOVE A8,A0
|
||
CALLA DELOBJ
|
||
DIE
|
||
NOH CLR A1
|
||
JSRP FRANIM
|
||
JRC C32X
|
||
JRUC W3_TP
|
||
|
||
WPN4:
|
||
;WEAPON 4 - MACHINE GUN
|
||
CALLR GET_CNVRT
|
||
MOVI BULXV,A3
|
||
ADD A0,A3
|
||
MOVE *A3,A6,L
|
||
MOVI BULYV,A3
|
||
ADD A0,A3
|
||
MOVE *A3,A7,L ;YV
|
||
MOVE *A8(OXVEL),A2,L
|
||
ADD A2,A6
|
||
MOVE *A8(OYVEL),A2,L
|
||
ADD A2,A7
|
||
MOVI SPDBL,A2
|
||
;IMG IN A2
|
||
MOVI DMAWNZ+M_PIXSCAN,A4
|
||
;FLAGS IN A4
|
||
MOVE *A8(OXVAL),A0,L
|
||
MOVE *A8(OYVAL),A1,L
|
||
MOVI X_OFFSET,A8
|
||
MOVE @B_DIR,A3,W ;MOVE BULLET DIRECTION INTO A3
|
||
SLL 5,A3 ;BDIR*32 FOR LONG WORD LOOKUP TABLE
|
||
ADD A3,A8
|
||
MOVE *A8,A8,L
|
||
ADD A8,A0
|
||
;XVAL IN A0
|
||
MOVI Y_OFFSET,A8
|
||
ADD A3,A8
|
||
MOVE *A8,A8,L
|
||
ADD A8,A1
|
||
;YVAL IN A1
|
||
MOVI CLSPLYR|TYPPLBL|SUBSPDG1,A5
|
||
JRUC DO_IT
|
||
|
||
WPN1:
|
||
;WEAPON 1 - NORMAL BULLET
|
||
;MAKE MORE EFFICIENT!
|
||
;NOW STUFF CORRECT BULLET AND CORRECT FLIP INFO
|
||
CALLR GET_CNVRT
|
||
MOVI BULXV,A3
|
||
ADD A0,A3
|
||
MOVE *A3,A6,L
|
||
MOVI BULYV,A3
|
||
ADD A0,A3
|
||
MOVE *A3,A7,L ;YV
|
||
; GET IMG INFO BASED ON B_DIR
|
||
MOVE @B_DIR,A3,W ;MOVE BULLET DIRECTION INTO A3
|
||
SLL 5,A3 ;BDIR*32 FOR LONG WORD LOOKUP TABLE
|
||
ADDI B1_TYP,A3
|
||
MOVE *A3,A2,L ;MOVE TABLE VALUE INTO A4
|
||
;IMG IN A2
|
||
MOVE @B_DIR,A3,W ;MOVE BULLET DIRECTION INTO A3
|
||
SLL 4,A3 ;(BDIR*32)/2 FOR WORD LOOKUP TABLE
|
||
ADDI B1_INFO,A3 ;CALCULATE OFFSET IN TABLE
|
||
MOVE *A3,A4,W ;MOVE TABLE VALUE INTO A4
|
||
;FLAGS IN A4
|
||
MOVE *A8(OXVAL),A0,L
|
||
MOVE *A8(OYVAL),A1,L
|
||
MOVI X_OFFSET,A8
|
||
MOVE @B_DIR,A3,W ;MOVE BULLET DIRECTION INTO A3
|
||
SLL 5,A3 ;BDIR*32 FOR LONG WORD LOOKUP TABLE
|
||
ADD A3,A8
|
||
MOVE *A8,A8,L
|
||
ADD A8,A0
|
||
;XVAL IN A0
|
||
MOVI Y_OFFSET,A8
|
||
ADD A3,A8
|
||
MOVE *A8,A8,L
|
||
ADD A8,A1
|
||
;YVAL IN A1
|
||
MOVI CLSPLYR|TYPPLBL|SUBLZR,A5
|
||
DO_IT:
|
||
;ID IN A5
|
||
MOVI 158,A3
|
||
;ZPOS IN A3
|
||
;XVEL IN A6
|
||
;YVEL IN A7
|
||
CALLA BEGINOBJ2
|
||
LP_TP:
|
||
;REGULAR BULLETS
|
||
;COULD DO THIS SCRTST LESS FREQUENTLY!
|
||
MOVE *A13(AGE),A0
|
||
INC A0
|
||
MOVE A0,*A13(AGE)
|
||
ANDI 03,A0
|
||
JRNZ C1
|
||
MOVI [>0,>0],A2 ;21,20
|
||
MOVI [>FF,>1A3],A3 ;FC,173
|
||
CALLA SCRTSTG
|
||
JRZ C1
|
||
;
|
||
;A0=1,2,3 OR 4 WHICH IS RETURNED FROM SCRTSTG!
|
||
;
|
||
MOVE A8,A0
|
||
CALLA DELOBJ
|
||
DIE
|
||
C1:
|
||
CALLR CHK_BULL
|
||
JRNC NXT
|
||
CLR A4
|
||
MOVE A4,*A8(OXVEL),L
|
||
MOVI FRBALL,A9 ;FRBALL
|
||
JRUC RG4
|
||
NXT SLEEP 4 ;SLEEP 2 MAYBE?
|
||
JRUC LP_TP
|
||
CHK_BULL
|
||
|
||
;CHECK FOR RECTANGLE COLLISIONS!
|
||
MOVE *A8(OXVAL),A4,L
|
||
MOVE *A8(OYVAL),A6,L
|
||
SRL 16,A4 ;X
|
||
SRL 16,A6 ;Y
|
||
MOVE @BCURRENT,A0,L ;CURRENT RECT LIST
|
||
NEXT0 MOVE *A0+,A1,W
|
||
JRZ OUT
|
||
CMP A1,A4
|
||
JRLT NEXT ;IF BRNCH RECT LFT EDGE > PLYR X
|
||
MOVE *A0+,A1,W
|
||
CMP A1,A6
|
||
JRLT NEXTA ;IF BRNCH RECT TOP EDGE > PLYR Y
|
||
MOVE *A0+,A1,W
|
||
CMP A1,A4
|
||
JRGT NEXTB ;IF BRNCH RECT RGT EDGE < PLYR X
|
||
MOVE *A0+,A1,W
|
||
CMP A1,A6
|
||
JRGT NEXT0 ;IF BRNCH RECT BOT EDGE < PLYR Y
|
||
;HIT
|
||
SETC
|
||
RETS
|
||
|
||
NEXT ADDI 48,A0
|
||
JRUC NEXT0
|
||
NEXTA ADDK 32,A0
|
||
JRUC NEXT0
|
||
NEXTB ADDK 16,A0
|
||
JRUC NEXT0
|
||
OUT CLRC
|
||
RETS
|
||
|
||
|
||
B1_TYP: ;NORMAL WEAPON (1)
|
||
.LONG 0,BULUP,BULUP,0,BULLFT,BULUPLFT
|
||
.LONG BULUPLFT,BULLFT,BULUPLFT,BULUPLFT
|
||
B5_TYP: ;NON STOPPING BULLET
|
||
.LONG 0,B2UP,B2UP,0,B2SIDE,B245
|
||
.LONG B245,B2SIDE,B245,B245
|
||
|
||
B1_INFO: ;NORMAL WEAPON (1)
|
||
;THESE FLAGS INDICATE PIXEL SCAN IS ON!
|
||
.WORD 0,DMAWNZ+M_PIXSCAN,DMAWNZ+M_FLIPV+M_PIXSCAN,0
|
||
.WORD DMAWNZ+M_FLIPH+M_PIXSCAN,DMAWNZ+M_FLIPH+M_PIXSCAN
|
||
.WORD DMAWNZ+M_FLIPH+M_FLIPV+M_PIXSCAN,DMAWNZ+M_PIXSCAN
|
||
.WORD DMAWNZ+M_PIXSCAN,DMAWNZ+M_FLIPV+M_PIXSCAN
|
||
; .WORD 0,DMAWNZ,DMAWNZ+M_FLIPV,0
|
||
; .WORD DMAWNZ+M_FLIPH,DMAWNZ+M_FLIPH
|
||
; .WORD DMAWNZ+M_FLIPH+M_FLIPV,DMAWNZ
|
||
; .WORD DMAWNZ,DMAWNZ+M_FLIPV
|
||
|
||
X_OFFSET: ;NORMAL WEAPON (1)
|
||
.LONG 0,0F0000H,050000H,0,0190000H,0100000H,0170000H,010000H
|
||
.LONG 040000H,030000H
|
||
Y_OFFSET: ;NORMAL WEAPON
|
||
.LONG 0,000000H,0190000H,0,0A0000H,050000H,0160000H,0A0000H
|
||
.LONG 050000H,0160000H
|
||
;X2_OFFSET: ;SPRAY WEAPON (2)
|
||
; .LONG 0,0D0000H,030000H,0,0120000H,0E0000H,0100000H,050000H
|
||
; .LONG 060000H,060000H
|
||
;Y2_OFFSET: ;SPRAY
|
||
; .LONG 0,050000H,0F0000H,0,050000H,0050000H,0B0000H,050000H
|
||
; .LONG 060000H,0B0000H
|
||
;X3_OFFSET: ;POD WEAPON (3)
|
||
; .LONG 0,040000H,030000H,0,01C0000H,0E0000H,0160000H,-020000H
|
||
; .LONG 020000H,000000H
|
||
;Y3_OFFSET: ;
|
||
; .LONG 0,020000H,0110000H,0,060000H,010000H,0E0000H,060000H
|
||
; .LONG 020000H,0E0000H
|
||
;X4_OFFSET: ;GRENADE WEAPON (4)
|
||
; .LONG 0,0C0000H,030000H,0,0110000H,0C0000H,0190000H,020000H
|
||
; .LONG 0A0000H,020000H
|
||
;Y4_OFFSET:
|
||
; .LONG 0,020000H,0E0000H,0,040000H,030000H,040000H,030000H
|
||
; .LONG 090000H,040000H
|
||
;X5_OFFSET: ;NON STOPPING BULLET (5)
|
||
; .LONG 0,0E0000H,10000H,0,170000H,0A0000H,0130000H,0000H
|
||
; .LONG 070000H,040000H
|
||
;Y5_OFFSET:
|
||
; .LONG 0,0000H,0A0000H,0,020000H,20000H,090000H,020000H
|
||
; .LONG 10000H,090000H
|
||
|
||
; 1
|
||
; 8 5
|
||
;7 4
|
||
; 9 6
|
||
; 2
|
||
|
||
|
||
;BULL_EXP_LIST:
|
||
; .LONG EXPL,EXPR,EXPT,EXPD
|
||
|
||
;EXPL .LONG BULLDINGSIDE ;BULLET COLLIDE WITH LEFT WALL
|
||
; .WORD FLIPBITS|3,0
|
||
; .LONG BULLDINGSIDE2
|
||
; .WORD 3
|
||
; .LONG BULLDINGSIDE
|
||
; .WORD 3
|
||
; .LONG 0
|
||
;EXPR .LONG BULLDINGSIDE ;BULLET COLLIDE WITH LEFT WALL
|
||
; .WORD FLIPBITS|3,(M_FLIPH)
|
||
; .LONG BULLDINGSIDE2
|
||
; .WORD 3
|
||
; .LONG BULLDINGSIDE
|
||
; .WORD 3
|
||
; .LONG 0
|
||
;EXPT .LONG BULLDINGUP
|
||
; .WORD FLIPBITS|3,0
|
||
; .LONG BULLDINGUP2
|
||
; .WORD 3
|
||
; .LONG BULLDINGUP
|
||
; .WORD 3
|
||
; .LONG 0
|
||
|
||
;EXPD .LONG BULLDINGUP ;BULLET COLLIDE WITH BOTTOM WALL
|
||
; .WORD FLIPBITS|3,(M_FLIPV)
|
||
; .LONG BULLDINGUP2
|
||
; .WORD 3
|
||
; .LONG BULLDINGUP
|
||
; .WORD 3
|
||
; .LONG 0
|
||
;SMLEXP
|
||
; .LONG EXPb1
|
||
; .WORD NEWPALET|3
|
||
; .LONG BULLET ;NEW PAL NAME
|
||
; .LONG EXPb2
|
||
; .WORD 3
|
||
; .LONG EXPb1
|
||
; .WORD 3
|
||
; .LONG 0
|
||
|
||
;TOSSDIR .LONG 0,TSUP,TSDN,0,TSRT,TSUPRT,TSDNRT,TSLT,TSUPLT,TSDNLT
|
||
;TOSS2DIR:
|
||
; .LONG 0,TSUP2,TSDN2,0,TSRT2,TSUPRT2,TSDNRT2,TSLT2,TSUPLT2,TSDNLT2
|
||
;TOSSG: .LONG GRND1,GRND2,GRND3,GRND4,GRND8,GRND9,GRND10,GRND11
|
||
; .LONG GRND12,GRND13,GRND9,GRND10,GRND11,GRND12,GRND13,GRND9
|
||
; .LONG GRND8,GRND4,GRND3,GRND2,GRND1,GRND1,0
|
||
TSRT:
|
||
.BYTE 3 ;X
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE 5
|
||
.BYTE -3 ;Y ADJUST
|
||
|
||
.BYTE 5
|
||
.BYTE -3 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE -3 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 5
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE 2
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 2
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
TSLT:
|
||
.BYTE -3 ;X
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE -5
|
||
.BYTE -3 ;Y ADJUST
|
||
|
||
.BYTE -5
|
||
.BYTE -3 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE -3 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE -5
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE -2
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE -2
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
TSUPLT:
|
||
.BYTE 0
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE -1
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE -2
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE -2
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE -5
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE -5
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE -3 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE -3 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE -5
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE -5
|
||
.BYTE -1 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -1 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
TSUPRT:
|
||
.BYTE 0
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 1
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 2
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 2
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 5
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 5
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE -3 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE -3 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE 5
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE 5
|
||
.BYTE -1 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -1 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
TSDNLT:
|
||
.BYTE -1
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -2
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 1 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 1 ;Y ADJUST
|
||
|
||
.BYTE -5
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE -5
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE -5
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE -5
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE -2
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE -2
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE -1
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE -1
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE -1
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE 0
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
TSDNRT:
|
||
.BYTE 1
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 2
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 1 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 1 ;Y ADJUST
|
||
|
||
.BYTE 5
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 5
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE 5
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE 5
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE 2
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE 2
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE 1
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE 1
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE 1
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE 0
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
TSUP:
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -3 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -2 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -1 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
TSDN:
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 1 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
|
||
TSRT2:
|
||
.BYTE 3 ;X
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 5
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 5
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 5
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 2
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 2
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
TSLT2:
|
||
.BYTE -3 ;X
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -5
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -5
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -6
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -5
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -2
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE -2
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
TSUPLT2:
|
||
.BYTE -5+5
|
||
.BYTE -1-10 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE -3 ;Y ADJUST
|
||
|
||
.BYTE -4-5
|
||
.BYTE -4+10 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -4 ;Y ADJUST 35
|
||
|
||
.BYTE -4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -5 ;Y ADJUST ;22
|
||
|
||
.BYTE -4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE -2 ;78
|
||
.BYTE -4 ;Y ADJUST ;22 = 79
|
||
|
||
TSUPRT2:
|
||
.BYTE 5+5
|
||
.BYTE -1-10 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE -3 ;Y ADJUST
|
||
|
||
.BYTE 4-5
|
||
.BYTE -4+10 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -4 ;Y ADJUST 35
|
||
|
||
.BYTE 4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -5 ;Y ADJUST ;22
|
||
|
||
.BYTE 4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 2 ;78
|
||
.BYTE -4 ;Y ADJUST ;22 = 79
|
||
|
||
TSDNLT2:
|
||
.BYTE -3
|
||
.BYTE 11 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 3 ;Y ADJUST 35
|
||
|
||
.BYTE -3
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 3 ;Y ADJUST ;22
|
||
|
||
.BYTE -3
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE -4
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE -3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE -3 ;78
|
||
.BYTE 2 ;Y ADJUST ;22 = 79
|
||
|
||
TSDNRT2:
|
||
.BYTE 3
|
||
.BYTE 11 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 3 ;Y ADJUST 35
|
||
|
||
.BYTE 3
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 3 ;Y ADJUST ;22
|
||
|
||
.BYTE 3
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 4
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 3
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 3 ;78
|
||
.BYTE 2 ;Y ADJUST ;22 = 79
|
||
|
||
TSUP2:
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -6 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE -4 ;Y ADJUST
|
||
|
||
TSDN2:
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 0 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 1 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 5 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 4 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 3 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 2 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 1 ;Y ADJUST
|
||
|
||
.BYTE 0 ;X ADJUST
|
||
.BYTE 1 ;Y ADJUST
|
||
|
||
.EVEN
|
||
|
||
.END
|
||
|
||
|