revolution-x/GXWAVE.ASM

1846 lines
48 KiB
NASM
Raw Permalink Blame History

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

.MLIB "GXMACS.LIB"
.FILE "GXWAVE.ASM"
.TITLE " <<< GENERATION X -- WAVE TABLES >>>"
.WIDTH 132
.OPTION B,D,L,T
.MNOLIST
**************************************************************************
* *
* COPYRIGHT (C) 1992 MIDWAY MANUFACTURING COMPANY. *
* ALL RIGHTS RESERVED. *
* *
**************************************************************************
.INCLUDE "GX.INC" ;Game equates
.INCLUDE "GXSTRING.H" ;String processor
.INCLUDE "GXNONBOY.H"
.INCLUDE "GXAUDN.H"
.INCLUDE "IMGTBL.GLO"
.INCLUDE "UNIVTBL.GLO"
* SYMBOLS IN HERE
.DEF WAVE_DIFF_TAB, GAME_DIFF_TAB, WAVE_TABLE
.DEF DSP_LA_COGBUST, DSP_LA_STREET1, DSP_LA_STREET2, DSP_LA_STREET3
.DEF DSP_LA_CLUBTOP, DSP_LA_SCAFFOLD2, DSP_LA_SCAFFOLD3
.DEF DSP_LA_DRESS1, DSP_LA_DRESS2
.DEF DSP_JUNG_TREE1, DSP_JUNG_TREE2, DSP_JUNG_ELEV
.DEF DSP_JUNG_ENDHALL ;,DSP_JUNG_BIGWALL
.DEF DSP_FACT_TOP, DSP_FINALE_1
.DEF DSP_JUNG_3DOORS
.DEF WAVE1SUB1B,WAVE1SUB1C,WAVE1SUB1D
.DEF WAVE1SUB1E,WAVE1SUB1F,WAVE1SUB1H
.DEF WAVE1SUB1I,WAVE1SUB1J,WAVE1SUB1K,WAVE1SUB1L
.DEF WAVE1SUB1M
.DEF WAVE1END
.DEF ONSTAGE_DISPATCH
.DEF SND_EAT_THE_RICH2
*SYMBOLS IN GX.ASM
.REF DUXNOFADE, SLEEP_SWITCHX
*SYMBOLS IN GXMISC.ASM
.REF SKYUP
**** From GXDESK.ASM
.REF DESK_PROC
**** From GXBGDATA.ASM
.REF STAR_BGND, DESERT_BGND
.REF JFACTR_BGND
**** From GXUNIJAP.ASM
.REF JAP_OFFICE_SCROLL, JAP_BOXA_SCROLL, JAP_OFFICE_VECT_TABLE
.REF JAP_FACTORY_SCROLL, JAP_WARE_VECT_TABLE, JAP_BOXB_SCROLL
.REF JAP_OUTSIDE_SCROLL, JAP_OUTSIDE_VECT_TABLE, JAP_FACTORY_VECT_TABLE
.REF JAP_RnD_TEST_SCROLL
**** FROM GXHELI.ASM
.REF MAKE_FRONT_COPTER_PROC, MAKE_SIDE_COPTER_PROC
**** FROM GXJUNGLE.ASM
.REF JUNGLE_VECT_TABLE, PROC_RELEASE_NATIVE,PROC_DROP_BEEM
.REF CHEM_VECT_TABLE
.REF BILL_SCROLL
**** FROM GXSCROL3.ASM
.ref JUNGLE_SCROLL
.REF BOYS_ROOM, GIRLS_ROOM, PORTAL_BOYS_ROOM, PORTAL_GIRLS_ROOM
.REF BAR_SECRET, LA_SCROLL, FleaBagRm, OOLALA_ROOM
.REF SCROLL_FLITE
.REF ATTRACT1,ATTRACT2,ATTRACT3,ATTRACT4
.if WARREN
.ref GET_DRESSED,LA_STAGE_VECT_TABLE
.endif
.if BILL|GEORGE
.REF LA_SCROLL_TEST
.endif
**** SYMBOLS FROM GXLA1.ASM
.REF LA_OUTSIDE1_VECT_TABLE, LA_OUTSIDE2_VECT_TABLE
***** From GXLA2.ASM
.REF LA_STAGE_VECT_TABLE, LA_LOBBY_BAR_VECT_TABLE
***** From GXCOG.ASM
.REF COG_PROC, PROC_COG_NO_STOP, COG_PROC_UNIV
***** From GXBZERK.ASM
.REF PROC_BZERK_JUMPIN, PROC_BZERK_STAND
.REF PROC_BZERK_JMP_WRLD, PROC_BZERK_JUMP_ZW
***** From GXENEMY.ASM
.REF PROC_SBOMB, PROC_SUPERGUN
* SYMBOLS FROM GXNONBOY.ASM
.REF CREATE_JUMPON_NONBOY, BIGBOY_WATCH_PROC, CREATE_SIDERUN_NONBOYF
* SYMBOLS FROM GXAERO.ASM
.REF CREATE_STAGE_PRODBOY
***** From GXNINJA.ASM
.REF PROC_NINJA_JUMPIN
*** FROM GXBUS.asm
.REF DESERT_SCROLL,DESERT_VECT_TABLE
* SYMBOLS FROM GXFSTAGE.ASM
.REF FINAL_STAGE_SCROLL,FINAL_VECT_TABLE
.DATA
**************************************************************************
* *
* WAVE MUSIC SOUND CALLS *
* *
**************************************************************************
WAVE1_SND:
.WORD 0F0FDH,1,08002H,0
WAVE2a_SND:
.WORD 0F0FDH,1,08015H,0
WAVE2b_SND:
.WORD 0F0FDH,1,0800EH,0 ;Japanese main factory
WAVE2d1_SND:
.WORD 0F0FDH,1,08004H,0 ;Enter Japanese manager's office
WAVE2d3_SND:
.WORD 0F0FDH,1,08005H,0 ;Battle Mondor
SND_FLITE:
.WORD 0F0FDH,1,08009H,0
SND_JUNGLE
.WORD 0F0FDH,1,08014H,0
SND_DES_STRT
.WORD 0F0FDH,1,0800dH,0
SND_EAT_THE_RICH2
.WORD 0F0FDH,1,0800BH,0
SND_WEMBLEY
.WORD 0F0FDH,1,08004H,0
**************************************************************************
* *
* WAVE_DIFF_TAB - TABLE OF DIFFICULTY PARAMETERS FOR EACH WAVE. *
* TABLE ENTRY: *
* .WORD DIFFICULTY DELTA, MIN, MAX, SINGLE PLAYER ADD *
* .WORD WAVE 1,WAVE 2...WAVE n *
* DIFFICULTY: *
* 0=EASIEST (-5*DIFFICULTY DELTA) *
* . *
* . *
* 5=DEFAULT (0*DIFFICULTY DELTA) *
* . *
* . *
* 10=HARDEST (5*DIFFICULTY DELTA) *
* *
* NOTE: THE TOTAL NUMBER OF WORDS PER TABLE ENTRY MUST = NWAVES +4 *
* *
**************************************************************************
WAVE_DIFF_TAB:
*
*POWERUP_DURATION - TIME(IN TICKS) THAT A POWER_UP WILL STAY ON THE SCREEN
* LOWER IS HARDER.
.WORD -80H, 3EH, 3F0H, 300H
.WORD 138H, 138H, 138H, 138H, 138H, 138H, 138H, 138H, 138H, 138H
.WORD 138H, 138H, 138H, 138H, 138H, 138H, 138H, 138H, 138H, 138H
.WORD 138H, 138H, 138H, 138H, 138H, 138H, 138H, 138H, 138H, 138H
.WORD 138H, 138H, 138H, 138H, 138H, 138H, 138H, 138H, 138H, 138H
.WORD 138H, 138H, 138H, 138H, 138H, 138H, 138H, 138H, 138H, 138H
**************************************************************************
* *
* GAME_DIFF_TAB - TABLE OF DIFFICULTY PARAMETERS FOR THE GAME. *
* TABLE ENTRY: *
* .WORD DIFFICULTY DELTA,MIN,MAX,VALUE *
* DIFFICULTY: *
* 0=EASIEST (-1*DIFFICULTY DELTA) *
* . *
* . *
* 5=DEFAULT (0*DIFFICULTY DELTA) *
* . *
* . *
* 10=HARDEST (1*DIFFICULTY DELTA) *
* *
**************************************************************************
GAME_DIFF_TAB:
*
* Extra energy on first Credit shift divide
*
.WORD 1, 17, 19, 18
*
* Base hit value taken away by enemy bullets
*
.WORD 800H, 1000H, 2000H, 1800H
*
* BOSS_PUNISH load flag
*
.WORD 1, -1, 1, 0
**************************************************************************
* *
* WAVE INDEX TABLE *
* *
**************************************************************************
WAVE_TABLE:
.IF DEBUG
.LONG WAVE2c
.ENDIF
.if NOBODY
.LONG WAVE1 ,WAVE_FLITE ,WAVE_JUNGLE , WAVE_JAPAN , WAVE_BUS
.else
.LONG WAVE1 ,WAVE2a , WAVE1 , WAVE1 , WAVE1
.endif
.LONG WAVE_WEMBLEY , WAVE7 , WAVE8 , WAVE9 , WAVE10
.LONG WAVE1 , WAVE1 , WAVE1 , WAVE1 , WAVE1
.LONG WAVE1 , WAVE1 , WAVE1 , WAVE1 , WAVE1
*TWENTY STARTS THE WAVE RESET POINTS
.LONG WAVE1 , WAVE1 , WAVE1 , WAVE1 , WAVE1
.LONG WAVE1 , WAVE1 , WAVE1 , WAVE1 , WAVE1
.LONG WAVE1 , WAVE1 , WAVE1 , WAVE1 , WAVE1
.LONG WAVE1 , WAVE1 , WAVE1 , WAVE1 , WAVE1
.LONG WAVE1 , WAVE1 , WAVE1 , WAVE1 , WAVE1
.LONG WAVE1 , WAVE1 , WAVE1 , WAVE1 , WAVE1
.LONG WAVE1 , WAVE1 , WAVE1 , WAVE1 , WAVE1
**************************************************************************
* *
* WAVE TABLES *
* ----------- *
* *
* A WAVE TABLE WILL DEFINE THE PARAMETERS FOR A GIVEN *
* WAVE. EACH WAVE IS ALLOWED TO HAVE SUB-WAVES. A SUB-WAVE IS *
* ALLOWED TO CHANGE EVERYTHING EXCEPT THE BACKGROUND. *
* IT SHOULD BE USED TO SPLIT A HUGE WAVE INTO SMALLER PARTS. *
* TO TERMINATE A WAVE, SET SUB_SECTION = 0. *
* *
* *
* .LONG DISPATCH_TABLE, WAVE_MUSIC, WORLDX, WAVE_IPLANE *
* .LONG SCROLLER, PORTAL_TABLE, INITIAL_UNIV_VECTOR_TABLE *
**************************************************************************
* *
* FOR DEBUG ONLY: *
* .LONG YWORLD, YHALF, UNIVERSE Z OFFSET, UNIVERSE Y OFFSET *
* *
**************************************************************************
* .LONG WAVE_UNIV, UNIVERSEX, UNIVERSEY, UNIVERSEZ *
* .LONG SUB_SECTION, INTRO SEQUENCE, EXIT SEQUENCE *
* .WORD ENEMY 1 QUOTA, ... , ENEMY n QUOTA *
* *
* WAVE SUB TABLES *
* --------------- *
* *
* .LONG DISPATCH_TABLE, Sub Section *
* .WORD ENEMY 1 QUOTA, ... , ENEMY n QUOTA *
* *
* VARIABLE EXPLANATIONS *
* --------------------- *
* *
* DISPATCH_TABLE -- DISPATCH TABLE TO USE THIS WAVE *
* WAVE_MUSIC -- MUSIC SCRIPT TO CALL AT WAVE START *
* WORLDX -- VALUE TO PLUG INTO WORLDX AT WAVE START *
* WAVE_UNIV -- UNIVERSE TO USE THIS WAVE *
* WAVE_IPLANE -- BACKGROUND INFINITY PLANE FOR THIS WAVE *
* SCROLLER -- SCROLL TABLE TO USE THIS WAVE *
* Sub_Section -- SUB-WAVE TO START WHEN CURRENT IS *
* COMPLETE. BACKGROUND IS LEFT UNCHANGED. *
* 0 = END (GOTO WAVE_END) *
* ENEMY n QUOTA -- NUMBER OF ENEMIES OF n TYPE THAT MUST BE *
* KILLED BEFORE WAVE WILL END. *
* *
**************************************************************************
;DIS IS WHAT IT IS SO FAR, DUDE!
; .WORD 0, 0, 0, NON, AIR, POP, BUS, COG
; .WORD 0, 0, 0, 0, 0, 0, 0, 0
*LA
WAVE1
.if BILL
.if 0
.LONG WAVE1DSP,WAVE1_SND,[0,0],STAR_BGND
.long LA_SCROLL,WAVE1_PORTALS,LA_OUTSIDE1_VECT_TABLE
.if DEBUG
.long 0138000H,0CBH,0,0
.endif
.LONG GXCX3,013B19800H,02120000H,-018000H
.LONG 0,0,0
.else
.LONG WAVE1DSP,0,[0,0],STAR_BGND
; .LONG WAVE1DSP,0,[0,0],0
; .long LA_SCROLL_TEST,WAVE1_PORTALS,LA_OUTSIDE2_VECT_TABLE
; .long LA_SCROLL,WAVE1_PORTALS,LA_OUTSIDE1_VECT_TABLE
; .long DSS_TEST,WAVE1_PORTALS,LA_OUTSIDE1_VECT_TABLE
; .long LA_SCROLL_TEST,WAVE1_PORTALS,LA_OUTSIDE1_VECT_TABLE
; .long SECRET_TEST,WAVE1_PORTALS,LA_OUTSIDE1_VECT_TABLE
; .long DSS_TEST,WAVE1_PORTALS,LA_LOBBY_BAR_VECT_TABLE
; .long LA_SCROLL_TEST,WAVE1_PORTALS,LA_LOBBY_BAR_VECT_TABLE
; .long SECRET_TEST,WAVE1_PORTALS,LA_LOBBY_BAR_VECT_TABLE
; .long DSS_TEST,WAVE1_PORTALS,LA_BATHROOM_VECT_TABLE
; .long BOYS_TEST,WAVE1_PORTALS,LA_BATHROOM_VECT_TABLE
; .long GIRLS_TEST,WAVE1_PORTALS,LA_BATHROOM_VECT_TABLE
; .long DSS_TEST,WAVE1_PORTALS,LA_STAGE_VECT_TABLE
; .long LA_SCROLL_TEST,WAVE1_PORTALS,LA_STAGE_VECT_TABLE
.long LA_SCROLL_TEST,WAVE1_PORTALS,LA_OUTSIDE2_VECT_TABLE
.if DEBUG
;FOR DEBUG ONLY: YWORLD, YHALF, UNIV_ZOFF, UNIV_YOFF
; .long 0138000H,0CBH,0,0 ;GXCX3
; .long 0138000H,0CBH,07B127H,0 ;new DRESSING ROOM
; .long 0138000H,0CBH,05DE86H,-014000H ;STAGE
.long 01AC000H,0B7H,0,0 ;GXROOF2, GXFLITE4
; .LONG 0138000H,0CBH,0226CH,0 ;LOBBY/BAR
; .LONG 0138000H,0CBH,0BE62H,0168000H ;BOYS ROOM
; .LONG 0138000H,0CBH,0BE02H,0168000H ;GIRLS ROOM
.endif
; .LONG GXCX3,013B19800H,02120000H,-018000H ;OUTSIDE STARTING POINT
; .LONG GXCX3,013479800H,02120000H,-018000H ;TEST AREA ABOVE TREES
; .LONG GXCX3,03DC0000H,02120000H,-018000H
; .LONG GXCX3,03DC0000H,01300000H,-018000H
; .LONG GXCX3,02CA0000H,0,-0EF00H
; .LONG GXCX3,03DC0000H,0,-0F700H ;IN FRONT OF DOORS
; .LONG GXCX3,0446E584H,0EC0672H,-03E07H ;OUTSIDE PORTAL
; .LONG GXOBOY2,031D0000H,0,01EEC4H ;LEFT EXIT OF BAR
; .LONG GXOBOY2,04896F34H,0,027E45H ;RIGHT OF BAR
; .LONG GXOBOY2,03DF6F34H,0,027E45H ;BEHIND BAR
; .LONG GXOBOY2,03DF6F34H,0,01FE45H ;FRONT CENTER OF BAR
; .LONG GXOBOY2,031D0000H,0,0106C4H ;INSIDE LEFT enTRANCE
; .LONG GXOBOY2,031D0000H,0,06AC4H ;LEFT enTRANCE
; .LONG GXOBOY2,03DEF100H,0,0106C4H ;IN FRONT OF WALL
; .LONG GXOBOY2,03DB0000H,0,039C4H
; .LONG GXOBOY2,03DB0000H,043600H,079C4H
; .LONG GXOBOY2,02D20000H,0,079C4H
; .LONG GXOBOY2,03600000H,0,0106BFH
; .LONG GXBATHRM,-05FCC68H,0,011333H
; .LONG GXBATHRM,-0CACC68H,0,011333H
; .LONG GXBATHRM,-0103CC68H,0,011333H
; .LONG GXBATHRM,-014ACC68H,0,011333H
; .LONG GXBATHGI,-02C81800H,0,010C63H
; .LONG GXBATHGI,-01590000H,0,010C63H
; .LONG GXSTG3BT,-0220000H,011C0000H,0710ADH ;IN FRONT OF DOOR
; .LONG GXSTG3BT,-0220000H,011C0000H,05AC1BH ;TOP OF STAGE LADDER
; .LONG GXSTG3BT,-0220000H,011CE4FEH,02B5A9H
; .LONG GXSTG3BT,-0220000H,0,-03645CH+05CC82H
; .LONG GXSTG3BT,-0ED9B00H,05B2800H,-02691FH+05CC82H ;LEFT enTRANCE
; .LONG GXSTG3BT,-0289B00H,076B800H,-02691FH+05CC82H
; .LONG GXSTG3BT,-0289B00H,0,04FE63H
; .LONG GXSTG3BT,-0220000H,05B0000H,062468H ;ON STAGE
; .LONG GXDRESS3,0580000H,0,07609DH
; .LONG GXROOF2,03600000H,024A0000H,-0115F6H ;TOP OF ROOF
; .LONG GXROOF2,03600000H,078E0000H,-0115F6H
; .LONG GXFLITE4,-028650000H,019B0000H,-037F40H
; .LONG GXFLITE4,023820000H,01470000H,0103800H
; .LONG GXFLITE4,026BA0000H,081A0000H,010C800H
; .LONG GXFLITE4,0,02D00000H,08780H
; .LONG GXFLITE4,0560000H,02D00000H,-01CE80H
; .LONG GXFLITE4,0560000H,02882000H,-07800H
; .LONG GXFLITE4,0C048000H,02140000H,0B1796H
; .LONG GXFLITE4,0C048000H,02123451H,0B26C0H
; .LONG GXFLITE4,-01300FCFAH,011298C3H,0B259DH ;SIDE BATTLE
.LONG GXFLITE4,028947847H,0742F4C8H,010BDC8H ;TOP OF BUILDING
; .LONG GXFLITE4,-014C24282H,022408AAH,06B43AH ;TUNNEL VISION
.LONG 0,0,0
.endif
.elseif GEORGE
.LONG WS_DSP,SND_JUNGLE,[0,0],0
.long JUNGLE_SCROLL,JUNGLE_PORTALS,JUNGLE_VECT_TABLE
.long 02A0000H,0a9H,0,0
.LONG GXJGATE,-3e80000H,0H,-03f800H
.LONG 0,0,0
.IF 0
.LONG WAVE1DSP,WAVE1_SND,[0,0],STAR_BGND
; .long LA_SCROLL,WAVE1_PORTALS,LA_OUTSIDE1_VECT_TABLE
; .long LA_SCROLL_TEST,WAVE1_PORTALS,LA_STAGE_VECT_TABLE
.long LA_SCROLL_TEST,WAVE1_PORTALS,LA_LOBBY_BAR_VECT_TABLE
.if DEBUG
; .long 0138000H,0CBH,0,0
; ZREL for auditorium
; .LONG 0138000H,0CBH,177A180H >> ZFRAC,0
; ZREL for the club
.LONG 0138000H,0CBH,89B00H >> ZFRAC,0
.endif
; In front of the wall
; .LONG GXCX3,03DD0000H,161A7H,-018000H
; Street, battle BTR
; .LONG GXCX3,03DC0000H,0H,-0F700H
; The bar secret
; .LONG GXSTG3TP,-0220000H,0000H,027A86H
; The inside the club
.LONG GXOBOY2,31d0000H,0000H,090D2H
; In theater, right in front of Aerosmith
; .LONG GXSTG3BT,-0220000H,5B0000H,6276CH
; Just before the Cog head parking garage
; .LONG GXFLITE4,13FA0000H,018A0000H,0E060FH
; Just before the Kerri portal
; .LONG GXFLITE4,-0C3F0000H,02020000H,04F656H
.LONG 0,WAVE1_INTRO,0
.ENDIF
.elseif WARREN
******* dance
; .LONG WAVE1DSP,0,[0,0],0
; .long 0,NO_PORTALS,LA_LOBBY_BAR_VECT_TABLE
; .if DEBUG
; .LONG 0138000H,0CBH,0226CH,0 ;LOBBY/BAR
; .endif
; .LONG GXOBOY2,03500000H,0,0FEC4H ;LEFT EXIT OF BAR
; .LONG 0,0,0
******* dance
******* jungle
.LONG WS_DSP,SND_JUNGLE,[0,0],0
.long JUNGLE_SCROLL,JUNGLE_PORTALS,JUNGLE_VECT_TABLE
.long 02A0000H,0a9H,0,0
.LONG GXJGATE,-3e80000H,0H,-03f800H
*** .LONG GXARCH2,01000000H,0H,-021250H
*** .LONG GXEVLOB2,0188000H,0H,-020000H
.LONG 0,0,0
******* jungle
******* dress
; .LONG WAVE1DSP,0,[0,0],0
; .long GET_DRESSED,NO_PORTALS,LA_STAGE_VECT_TABLE
; .if DEBUG
; .long 0138000H,0CBH,05DE86H,-014000H ;STAGE
; .endif
; .LONG GXSTG3BT,-0220000H,011C0000H,0710ADH ;IN FRONT OF DOOR
; .LONG 0,0,0
******* dress
.else
; start after club entrance
; .LONG WAVE1DSP,WAVE1_SND,[0,0],STAR_BGND
; .long LA_SCROLL_TEST,WAVE1_PORTALS,LA_LOBBY_BATH_VECT_TABLE
; .LONG 0138000H,0CBH,0316CH,0 ;LOBBY
; .LONG GXOBOY2,03DB0000H,0,039C4H
; .LONG 0,WAVE1_INTRO,0
; .if BILL
;
; .LONG WS_DSP,0,[0,0],0
; .long BILL_SCROLL,WAVE1_PORTALS,CHEM_VECT_TABLE
; .if DEBUG
; .long 02A0000H,0A9H,02F64080H >> ZFRAC,0
; .endif
; .LONG GXINNM,0318689EH,0,0BC513H
; .LONG 0,0,0
;
; .endif
.LONG WAVE1DSP,WAVE1_SND,[0,0],STAR_BGND
.long LA_SCROLL,WAVE1_PORTALS,LA_OUTSIDE1_VECT_TABLE
.if DEBUG
.long 0138000H,0CBH,0,0
.endif
.LONG GXCX3,013B19800H,02120000H,-018000H
.LONG 0,WAVE1_INTRO,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
*
* Fly through city wave
*
WAVE_FLITE
.LONG DSPTAB_FLITE,0,[0,0],STAR_BGND
.long SCROLL_FLITE,WAVE1_PORTALS,LA_OUTSIDE2_VECT_TABLE
.if DEBUG
.long 01AC000H,0B7H,0,0
.endif
.LONG GXROOF2,03600000H,078E0000H,-0115F6H
.LONG 0,INTRO_FLITE,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
;WAVE3
WAVE_JUNGLE
.LONG WS_DSP,0,[0,0],0
.long JUNGLE_SCROLL,JUNGLE_PORTALS,JUNGLE_VECT_TABLE
.if DEBUG
.long 02A0000H,0a9H,0,0
.endif
.LONG GXJGATE,-3e80000H,0H,-03f800H
.LONG 0,INTRO_JUNGLE,0
.endif
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
*
* WAVE 5, Mid east
*
WAVE_BUS
.LONG WS_DSP,SND_JUNGLE,[0,0],DESERT_BGND
.long DESERT_SCROLL,0,DESERT_VECT_TABLE
.IF DEBUG
;FOR DEBUG ONLY: YWORLD, YHALF, UNIV_ZOFF, UNIV_YOFF
.long 118000h,0d8H,0,0
.ENDIF
.LONG GXDSRT2,-221d0000H,0H,-17ffh
.LONG 0,INTRO_DESERT,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
*
* Dispatch for top rim of Club X
*
DSP_LA_CLUBTOP
.LONG WAVE1ENDDSP,0
.WORD 0, 0, 0, 5, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
DSP_LA_COGBUST
.LONG DSPTAB_LA_COGBUST,0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
.WORD 0, 0, 0, 0, 0, 0, 0, 0
*
* Initial dispatch after coming through the wall
*
DSP_LA_STREET1
.LONG DSPTAB_LA_STREET1,0
.WORD 0, 0, 0, 0, 0, 0, 0, 5
.WORD 0, 0, 0, 0, 0, 0, 0, 0
*
* Second dispatch after coming through the wall
*
DSP_LA_STREET2
.LONG DSPTAB_LA_STREET2,0
.WORD 0, 0, 0, 20, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
*
* Third dispatch, just before BTR shows up
*
DSP_LA_STREET3
.LONG DSPTAB_LA_STREET3,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
*
* On scaffold above Aerosmith backstage
*
DSP_LA_SCAFFOLD2
.LONG DSPTAB_LA_SCAFFOLD2,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
*
* On scaffold just in front of Dressing room door.
*
DSP_LA_SCAFFOLD3
.LONG DSPTAB_LA_SCAFFOLD3,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
*
* First dispatch in dressing room
*
DSP_LA_DRESS1
.LONG DSPTAB_LA_DRESS1,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
*
* Second dispatch in dressing room
*
DSP_LA_DRESS2
.LONG DSPTAB_LA_DRESS2,0
.WORD 0, 0, 0, 15, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
WAVE1SUB1B
.LONG WAVE1SUB1BDSP,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
WAVE1SUB1C
.LONG WAVE1SUB1CDSP,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
WAVE1SUB1D
.LONG WAVE1SUB1DDSP,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
WAVE1SUB1E
.LONG WAVE1SUB1EDSP,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
WAVE1SUB1F
.LONG WAVE1SUB1FDSP,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
WAVE1SUB1H
.LONG WAVE1SUB1HDSP,0
.WORD 0, 0, 0, 15, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
WAVE1SUB1I
.LONG WAVE1SUB1IDSP,0
.WORD 0, 0, 0, 2, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
WAVE1SUB1J
.LONG WAVE1SUB1JDSP,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
WAVE1SUB1K
.LONG WAVE1SUB1KDSP,0
.WORD 0, 0, 0, 3, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
WAVE1SUB1L
.LONG WAVE1SUB1LDSP,0
.WORD 0, 0, 0, 5, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
WAVE1SUB1M
.LONG WAVE1SUB1MDSP,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 1, 0, 0, 0, 0
ONSTAGE_DISPATCH
.LONG ONSTAGE_DSP,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
WAVE1END
.LONG WAVE1ENDDSP,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
*
* Jungle dispatch tables
*
*
* First lockdown in trees
*
DSP_JUNG_TREE1
.LONG DSPTAB_JUNG_TREE1,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 5, 0, 0, 0
*
* Trip through trees
*
DSP_JUNG_TREE2
.LONG DSPTAB_JUNG_TREE2,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 18, 0, 0, 0
*
* In front of the three doors outside
*
DSP_JUNG_3DOORS
.LONG DSPTAB_JUNG_3DOORS,0
.WORD 0, 0, 0, 0, 10, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
* Elevator
*
DSP_JUNG_ELEV
.LONG DSPTAB_JUNG_ELEV,0
.WORD 0, 0, 0, 0, 3, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
* Last Hallway
*
DSP_JUNG_ENDHALL
.LONG DSPTAB_JUNG_ENDHALL,0
.WORD 0, 0, 0, 0, 12, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
*
*JAPAN BACKGROUND
*
*Kemmi-tech entrance
WAVE_JAPAN
.LONG DSPTAB_JAPAN_DOCK,WAVE2a_SND,[0,0],0
.long JAP_OUTSIDE_SCROLL,NO_PORTALS,JAP_OUTSIDE_VECT_TABLE
.IF DEBUG
;FOR DEBUG ONLY: YWORLD, YHALF, UNIV_ZOFF, UNIV_YOFF
;This is some Bogus Bill Bullshit that complicates my life! Why the FUCK?!?!?
.long 0017c000h,192,0,0
.ENDIF
.LONG GXKTOUT,-10000H,360000H,-374H
.LONG 0,INTRO_JAPAN,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
*Crate and Barrel section
WAVE2a
.LONG WAVE2aDSP,WAVE2a_SND,[0,0],0
.long JAP_BOXA_SCROLL,NO_PORTALS,JAP_WARE_VECT_TABLE
; .long JAP_BOXB_SCROLL,0,JAP_WARE_VECT_TABLE
.IF DEBUG
;FOR DEBUG ONLY: YWORLD, YHALF, UNIV_ZOFF, UNIV_YOFF
;This is some Bogus Bill Bullshit that complicates my life! Why the FUCK?!?!?
.long 0017c000h,192,0,0
.ENDIF
.LONG GXJAPFUN,0A61000H,00000H,-41F0H
; .LONG GXJAPFUN,1460000H,00000H,4C090H
.LONG 0,0,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
*Vogel factory section
WAVE2b
.LONG WAVE2bDSP,WAVE2b_SND,[0,0],JFACTR_BGND
; .LONG WAVE2bDSP,WAVE2b_SND,[0,0],0
.LONG JAP_FACTORY_SCROLL,NO_PORTALS,JAP_FACTORY_VECT_TABLE
.IF DEBUG
;FOR DEBUG ONLY: YWORLD, YHALF, UNIV_ZOFF, UNIV_YOFF
.long 0002a0000h,8FH,0,0
.ENDIF
.LONG GXTOWER1,280000H,0D80000H,-0CC83H
.LONG 0,0,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
*Top of factory, entrance to R&D
WAVE2c
.LONG WAVE2bDSP,WAVE2b_SND,[0,0],JFACTR_BGND
.LONG JAP_RnD_TEST_SCROLL,NO_PORTALS,JAP_FACTORY_VECT_TABLE
.IF DEBUG
;FOR DEBUG ONLY: YWORLD, YHALF, UNIV_ZOFF, UNIV_YOFF
.long 0002a0000h,8FH,0,0
.ENDIF
.LONG GXTOWER1,160000H,0AAC0000H,-0CC83H
.LONG 0,0,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
* Yellow jacket's office
WAVE2d
.LONG WAVE2dDSP,WAVE2d1_SND,[0,0],0 ;Use this for desk
.LONG JAP_OFFICE_SCROLL,NO_PORTALS,JAP_OFFICE_VECT_TABLE ;Use this for desk
.IF DEBUG
;FOR DEBUG ONLY: YWORLD, YHALF, UNIV_ZOFF, UNIV_YOFF
.long 0002a0000h,8FH,0,0
.ENDIF
.LONG GX_JAPB5,3875000H,00000H,-18470H ;Use this for desk
.LONG 0,0,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
*
* Factory top
*
DSP_FACT_TOP
.LONG DSPTAB_FACT_TOP,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 12, 0, 0
*
* Wembley arena
*
*
* Wembley arena
*
WAVE_WEMBLEY
.LONG DSPTAB_WEMBLEY,0,[0,0],0
.long FINAL_STAGE_SCROLL,NO_PORTALS,FINAL_VECT_TABLE
.IF DEBUG
.long 0002c4000H,137,0,0
.ENDIF
.LONG GXNSTAG,019A0000H,0890000H,-050000H
.LONG 0,INTRO_WEMBLEY,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
**************************************************************
* JAKES ATTRACT MODE STUFF
* I'M NOT SURE IF THIS IS THE PLACE FOR IT, IF NOT, PLEASE MOVE IT
WAVE7
.LONG WAVE1DSP,0,[0,0],0
.long ATTRACT1,NO_PORTALS,LA_LOBBY_BAR_VECT_TABLE
.if DEBUG
.LONG 0138000H,0CBH,0226CH,0 ;LOBBY/BAR
.endif
.LONG GXOBOY2,03500000H,0,0FEC4H ;LEFT EXIT OF BAR
.LONG 0,0,0
WAVE8
.LONG WS_DSP,SND_JUNGLE,[0,0],0
.long ATTRACT2,JUNGLE_PORTALS,JUNGLE_VECT_TABLE
.if DEBUG
.long 02A0000H,0a9H,0,0
.endif
.LONG GXJUNG3,-3e80000H,0H,-1e000h
.LONG 0,0,0
WAVE9
.LONG DSPTAB_JAPAN_DOCK,WAVE2a_SND,[0,0],0
.long ATTRACT3,NO_PORTALS,JAP_OUTSIDE_VECT_TABLE
.IF DEBUG
.long 0017c000h,192,0,0
.ENDIF
.LONG GXKTOUT,-10000H,360000H,-374H
.LONG 0,0,0
WAVE10
.LONG 0,0,[0,0],0
.long ATTRACT4,WAVE1_PORTALS,LA_STAGE_VECT_TABLE
.if DEBUG
.long 0138000H,0CBH,0,-014000H ;STAGE
.endif
.LONG GXSTG3BT,-0220000H,05B0000H,045E2H ;ON STAGE
.LONG 0,0,0
**************************************************************************
* *
* WAVE INTRO SEQUENCES *
* *
* THE BACKGROUND(S) ARE ALREADY ALLOCATED AT THIS POINT, HOWEVER *
* THEIR PALETTES ARE FADED TO BLACK. *
* *
* IT IS THE ROUTINES RESPONSIBILITY TO RETURN WITH THE PALETTES *
* FADED UP AND THE SKY ALSO FADED UP. *
* *
* NOTE: CALL WITH JSRP *
* *
**************************************************************************
WAVE1_INTRO
SOUND1 SND_WAVE1_INTRO1
MOVI WAVE1_INTRO_MESS,A8
MOVI 80,A9
*
* Intro entrypoint
* A8 = Ptr to string
* A9 = Sleep time after string
*
INTRO_GEN
PUSHP A9
CALLA FADEBLAK_TEXT
SLEEP 1
JSRP LM_PRINTF
CALLA FADEIN_TEXT ;"Los Angeles ..."
PULLP A0
SLEEPR A0
W1_FU_GO
CALLA FADEOUT_TEXT
SLEEP 15
CALLA CLRTEXT
SLEEP 1
MOVI PID_PFADE,A0
CALLA KILLPROC_ALL
MOVI PID_SKY,A0
CALLA KILLPROC_ALL
CALLA CLRTEXT
MOVI 800H,A9
CREATE PID_SKY,SKYUP
MOVI DUXNOFADE,A0
CALLA FADEIN
CALLA FADEFULL_TEXT
RETP
WAVE1_INTRO_MESS
MESS_MAC RD15FONT,2,197,83+SKYTOPOF,COLOR_PWHITE,STRCNRMO,OID_TEXT
.STRING "LOS ANGELES, November 11, 1996",0
.EVEN
SND_WAVE1_INTRO1
.word 0F2F0H,300,820DH,77,820EH,0 ;"New order 12 this is ..."
*
* Introduction to the L.A. flight
*
INTRO_FLITE
SOUND1 SND_FLITE
MOVI MESS_FLITE_INTRO,A8
MOVI 120,A9
JRUC INTRO_GEN
MESS_FLITE_INTRO
MESS_MAC RD15FONT,2,197,80+SKYTOPOF,COLOR_PWHITE,STRCNRMO,OID_TEXT
.STRING "Commandeer the New Order chopper\n"
.STRING "and find Aerosmith's car!",0
.EVEN
*
*JAPAN INTRO SEQUENCE
*
INTRO_JAPAN
SOUND1 SND_WAVE2_INTRO1
MOVI MESS_JAPAN_INTRO,A8
MOVI 100,A9
JRUC INTRO_GEN
MESS_JAPAN_INTRO
MESS_MAC RD15FONT,2,197,63+SKYTOPOF,COLOR_PWHITE,STRCNRMO,OID_TEXT
.STRING "PACIFIC RIM\n\nMass Production\nMass Destruction!",0
.EVEN
SND_WAVE2_INTRO1
.word 0F1F0H,308,0A17DH,0 ;Bang a gong
*
*EVERGREEN CHEMICAL SEQUENCE
*
INTRO_JUNGLE
SOUND1 SND_JUNGLE
MOVI MESS_JUNGLE_INTRO,A8
MOVI 100,A9
JRUC INTRO_GEN
MESS_JUNGLE_INTRO
MESS_MAC RD15FONT,2,197,63+SKYTOPOF,COLOR_PWHITE,STRCNRMO,OID_TEXT
.STRING "THE AMAZON\n\nEvergreen Chemical is hiding\nsomething.\n"
; .STRING "AMAZON\n\nEvergreen chemical has a secret.\n"
; .STRING "Find out what it is.",0
.STRING "You've got to find out what.",0
.EVEN
*
* MIDEAST
*
INTRO_DESERT
AUDIT AUDMIDEAST
SOUND1 SND_DES_STRT
MOVI MESS_DESERT_INTRO,A8
MOVI 180,A9
JRUC INTRO_GEN
MESS_DESERT_INTRO
MESS_MAC RD15FONT,2,197,63+SKYTOPOF,COLOR_PWHITE,STRCNRMO,OID_TEXT
.STRING "THE MIDDLE EAST\n\nThey're going to pick up a busload\n"
.STRING "of kids for re-programming!\n"
.STRING "Don't let them! DESTROY THE BUS!",0
.EVEN
*
* Wembley Stadium
*
INTRO_WEMBLEY
SOUND1 SND_WEMBLEY
MOVI MESS_WEMBLEY_INTRO,A8
MOVI 130,A9
JRUC INTRO_GEN
MESS_WEMBLEY_INTRO
MESS_MAC RD15FONT,2,197,63+SKYTOPOF,COLOR_PWHITE,STRCNRMO,OID_TEXT
.STRING "WEMBLEY STADIUM\n\nEverybody's gathered for the big\n"
.STRING "Aerosmith concert!",0
.EVEN
**************************************************************************
* *
* PORTAL TABLES *
* *
**************************************************************************
NO_PORTALS:
.long 0,0,0,0 ; could be up to 32 based on
.long 0,0,0,0 ; portal OIDs in univ.
.long 0,0,0,0
.long 0,0,0,0
.long 0,0,0,0
.long 0,0,0,0
.long 0,0,0,0
.long 0,0,0,0
.if BILL == 1
WAVE1_PORTALS:
.long 0,0,BAR_SECRET,0
.long 0,BOYS_ROOM,GIRLS_ROOM,0
.long 0,OOLALA_ROOM,0,0
.long 0,0,FleaBagRm,0
.long 0,0,0,PORTAL_BOYS_ROOM
.long PORTAL_GIRLS_ROOM,0,0,0
.long 0,0,0,0
.long 0,0,0,0
.elseif GEORGE == 1
WAVE1_PORTALS:
.long 0,0,BAR_SECRET,0
.long 0,BOYS_ROOM,GIRLS_ROOM,0
.long 0,OOLALA_ROOM,0,0
.long 0,0,FleaBagRm,0
.long 0,0,0,PORTAL_BOYS_ROOM
.long PORTAL_GIRLS_ROOM,0,0,0
.long 0,0,0,0
.long 0,0,0,0
.else
WAVE1_PORTALS:
.long 0,0,BAR_SECRET,0
.long 0,BOYS_ROOM,GIRLS_ROOM,0
.long 0,OOLALA_ROOM,0,0
.long 0,0,FleaBagRm,0
.long 0,0,0,PORTAL_BOYS_ROOM
.long PORTAL_GIRLS_ROOM,0,0,0
.long 0,0,0,0
.long 0,0,0,0
.endif
JUNGLE_PORTALS:
.long 0,0,0,0,0,0,0,0 ; could be up to 32 based on
.long 0,0,0,0,0,0,0,0 ; portal OIDs in univ.
.long 0,0,0,0,0,0,0,0 ;
.long 0,0,0,0,0,0,0,0 ;
**************************************************************************
* *
* ENEMY DISPATCH TABLES *
* *
**************************************************************************
**************************************************************************
* *
* *
* INITIAL DISPATCH TABLE *
* ---------------------- *
* *
* .WORD Initial Dispatch 1 Process I.D. *
* .LONG A11, A10, A9, A8, Process Address *
* . *
* . *
* . *
* .WORD Initial Dispatch n Process I.D. *
* .LONG A11, A10, A9, A8, Process Address *
* *
* .WORD 0 ;This terminates the initial dispatches *
* *
* .WORD Dispatch 1 Time, Process I.D. *
* .LONG A11, A10, A9, A8, Process Address *
* . *
* . *
* . *
* .WORD Dispatch n Time, Process I.D. *
* .LONG A11, A10, A9, A8, Process Address *
* *
* .WORD Time table terminator *
* *
* *
* Time table terminator values: *
* *
* 0 = Loop back to beginning of timed dispatches *
* 0FFFFH = Terminate the dispatch *
* 0FFFEH = Jump to new dispatch table, resetting timer *
* Followed by .LONG Table to jump to *
* 0FFFDH = Jump to new dispatch table, current timer *
* Followed by .LONG Table to jump to *
* *
**************************************************************************
; .if WARREN
WS_DSP
.WORD PID_IND
.LONG 3,44,P1_ROCK_SIGHT,BLUPLAYR,CYCLE1 ;P1 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P2_ROCK_SIGHT,REDPLAYR,CYCLE1 ;P2 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P3_ROCK_SIGHT,YELPLAYR,CYCLE1 ;P3 ROCKET SIGHT
.WORD PID_IND
.LONG LA_COLL,0,0,0,PROC_CALL
.WORD PID_COLOR
.LONG 4,15,13,SCREAM,CYCLE16 ;SMART BOMB
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD -1
; .endif
*
*WAVE 1
*
WAVE1DSP
.WORD PID_IND
.LONG 3,44,P1_ROCK_SIGHT,BLUPLAYR,CYCLE1 ;P1 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P2_ROCK_SIGHT,REDPLAYR,CYCLE1 ;P2 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P3_ROCK_SIGHT,YELPLAYR,CYCLE1 ;P3 ROCKET SIGHT
.WORD PID_IND
.LONG LA_COLL,0,0,0,PROC_CALL
.WORD PID_IND
.LONG 4,15,13,SCREAM,CYCLE16 ;SMART BOMB
; .WORD PID_DAMCC
; .LONG 20,31,30,yGRAD2Yp,CYCLE16 ;COPTER LIGHTS
; .WORD PID_DAMCC
; .LONG 20,31,30,gGRAD2Gp,CYCLE16
.if DEBUG
; .WORD PID_IND
; .LONG 0,0,0,0,DOZER_SCROLL_CONTROL
.endif
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD -1
DSPTAB_LA_COGBUST
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.if GEORGE
.WORD -1
.else
; .WORD 240,PID_NONBOY
; .LONG -0D400H,-0D400H,[M_HOLE_CHECK|M_DONT_SHOOT|M_NON_LEFT,-100]
; .LONG 0138000H,CREATE_SIDERUN_NONBOY0
;
; .WORD 240,PID_NONBOY
; .LONG -0D400H,-0D400H,[M_HOLE_CHECK|M_DONT_SHOOT|M_NON_RIGHT,-100]
; .LONG 0138000H,CREATE_SIDERUN_NONBOY0
; .WORD 0
.WORD -1
.endif
DSPTAB_LA_STREET1
.WORD PID_POWERUPD2
.LONG 0A000H,06000H,1,1,PROC_SUPERGUN
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.if GEORGE
; .WORD 120,PID_MONDOR
; .LONG 0,0,0,0,MONDOR_PROC
; .WORD 30,PID_NONBOY
; .LONG 0200H,-02F00H,[0,45],0138000H,CREATE_SIDERUN_NONBOY0
; .WORD 30,PID_NONBOY
; .LONG -03C00H,-07700H,[0,45],0138000H,CREATE_SIDERUN_NONBOY0
.WORD 80,PID_COG
.LONG 0,[880H,780H],500,0,PROC_COG_NO_STOP
.WORD 80,PID_COG
.LONG 0,[0A80H,980H],650,0,PROC_COG_NO_STOP
.WORD 140,PID_COG
.LONG 0,[880H,780H],-100,0,PROC_COG_NO_STOP
.WORD 140,PID_COG
.LONG 0,[0A80H,980H],-250,0,PROC_COG_NO_STOP
.WORD -2
.LONG DSPTAB_LA_STREET1_PT2 ;This will make it loop here
DSPTAB_LA_STREET1_PT2
.WORD 80,PID_COG
.LONG 0,[880H,780H],500,0,COG_PROC
.WORD 80,PID_COG
.LONG 0,[0A80H,980H],650,0,COG_PROC
.WORD 80,PID_COG
.LONG 0,[0C80H,0B80H],800,0,COG_PROC
.WORD 160,PID_COG
.LONG 0,[940H,900H],-100,0,COG_PROC
.WORD 160,PID_COG
.LONG 0,[0B40H,0B00H],-250,0,COG_PROC
.WORD 160,PID_COG
.LONG 0,[0C80H,0B80H],-400,0,COG_PROC
; .WORD -1 ;Cut the table off
.WORD 0 ;Loop the table
.else
; .WORD 30,PID_NONBOY
; .LONG 0200H,-02F00H,[0,45],0138000H,CREATE_SIDERUN_NONBOY0
; .WORD 30,PID_NONBOY
; .LONG -03C00H,-07700H,[0,45],0138000H,CREATE_SIDERUN_NONBOY0
; .WORD 0
.WORD 80,PID_COG
.LONG 0,[880H,780H],500,0,COG_PROC
.WORD 80,PID_COG
.LONG 0,[0A80H,980H],650,0,COG_PROC
.WORD 80,PID_COG
.LONG 0,[0C80H,0B80H],800,0,COG_PROC
.WORD 160,PID_COG
.LONG 0,[940H,900H],-100,0,COG_PROC
.WORD 160,PID_COG
.LONG 0,[0B40H,0B00H],-250,0,COG_PROC
.WORD 160,PID_COG
.LONG 0,[0C80H,0B80H],-400,0,COG_PROC
.WORD 0 ;Loop the table
.endif
*
* Second dispatch after getting through the wall onto the street
*
DSPTAB_LA_STREET2
.WORD PID_POWERUPD0
.LONG 0A000H,06000H,60*5,60*5,PROC_DROP_PACK
.WORD PID_NONBOY
.LONG 0,0,0,0,BIGBOY_WATCH_PROC
.WORD 0 ;End of initial dispatch
.WORD 600,PID_POWERUPD1
.LONG 0A000H,06000H,1,1,PROC_SBOMB
.WORD -1
*
* Dispatch just before BTR comes out
*
DSPTAB_LA_STREET3
.WORD 0 ;End of initial dispatch
.WORD 30,PID_NONBOY
.LONG -3F00H,-6F00H,[M_NON_RIGHT,45],0138000H,CREATE_SIDERUN_NONBOY0
.WORD 30,PID_NONBOY
.LONG -3F00H,-6F00H,[M_NON_RIGHT,45],0138000H,CREATE_SIDERUN_NONBOY0
.WORD 30,PID_NONBOY
.LONG -3F00H,-6F00H,[M_NON_RIGHT,45],0138000H,CREATE_SIDERUN_NONBOY0
.WORD 30,PID_NONBOY
.LONG -3F00H,-6F00H,[M_NON_RIGHT,45],0138000H,CREATE_SIDERUN_NONBOY0
.WORD 30,PID_NONBOY
.LONG -3F00H,-6F00H,[M_NON_RIGHT,45],0138000H,CREATE_SIDERUN_NONBOY0
.WORD 30,PID_NONBOY
.LONG -3F00H,-6F00H,[M_NON_RIGHT,45],0138000H,CREATE_SIDERUN_NONBOY0
.WORD 30,PID_NONBOY
.LONG -3F00H,-6F00H,[M_NON_RIGHT,45],0138000H,CREATE_SIDERUN_NONBOY0
.WORD -1
*
* Just as curtains open to scaffold above backstage
*
DSPTAB_LA_SCAFFOLD2
.WORD PID_NONBOY
; .LONG 06C85FH,-010C4000H,-0228000H,0,CREATE_SHOOTING_NONBOY
.LONG 06E85FH,-010C4000H,0,-0228000H,CREATE_DROP_SHOOTING_NONBOY
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD 30,PID_NONBOY
.LONG 07285FH,-010C4000H,-018C4000H,-0228000H,CREATE_DROP_SHOOTING_NONBOY
.WORD 90,PID_NONBOY
.LONG 07785FH,-010C4000H,-018C4000H,-0228000H,CREATE_DROP_SHOOTING_NONBOY
.WORD -1
*
* Right in front of dressing room, door is exposed
*
DSPTAB_LA_SCAFFOLD3
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD 10,PID_NONBOY
.LONG 077B5BH,077B5BH,[M_SCAFFOLD_CHECK|M_DONT_SHOOT|M_NON_LEFT,45]
.LONG -010C4000H,CREATE_SIDERUN_NONBOY0
.WORD 20,PID_NONBOY
.LONG 077B5BH,077B5BH,[M_SCAFFOLD_CHECK|M_DONT_SHOOT|M_NON_RIGHT,45]
.LONG -010C4000H,CREATE_SIDERUN_NONBOY0
.WORD 0
*
* First dispatch for the dressing room
*
DSPTAB_LA_DRESS1
.WORD PID_NONBOY
.LONG 0,0,0,0,BIGBOY_WATCH_PROC
DSPTAB_LA_DRESS2
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD 60,PID_NONBOY
.LONG [0400H,0100H],[-04H,-04H],0,[4,1],CREATE_JUMPON_NONBOY
.WORD 120,PID_NONBOY
.LONG [0400H,0100H],[-04H,-04H],0,[4,1],CREATE_JUMPON_NONBOY
.WORD 180,PID_NONBOY
.LONG [0400H,0100H],[-04H,-04H],0,[4,1],CREATE_JUMPON_NONBOY
.WORD 240,PID_NONBOY
.LONG [0400H,0100H],[-04H,-04H],0,[4,1],CREATE_JUMPON_NONBOY
.WORD 240,PID_NONBOY
.LONG [0400H,0100H],[-04H,-04H],0,[4,1],CREATE_JUMPON_NONBOY
.WORD 300,PID_NONBOY
.LONG [0400H,0100H],[-04H,-04H],0,[4,1],CREATE_JUMPON_NONBOY
.WORD 300,PID_NONBOY
.LONG [0400H,0100H],[-04H,-04H],0,[4,1],CREATE_JUMPON_NONBOY
.WORD 360,PID_NONBOY
.LONG [0400H,0100H],[-04H,-04H],0,[4,1],CREATE_JUMPON_NONBOY
.WORD 360,PID_NONBOY
.LONG [0400H,0100H],[-04H,-04H],0,[4,1],CREATE_JUMPON_NONBOY
.WORD 360,PID_NONBOY
.LONG [0400H,0100H],[-04H,-04H],0,[4,1],CREATE_JUMPON_NONBOY
.WORD 0
WAVE1SUB1BDSP
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD 30,PID_NONBOY
.LONG 0CD50H,0CD50H,[0,45],0148000H,CREATE_SIDERUN_NONBOY0
.WORD 0
WAVE1SUB1CDSP
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD 10,PID_NONBOY
.LONG 0D4BFH,0C4BFH,[0,45],0138000H,CREATE_SIDERUN_NONBOY0
.WORD 0
WAVE1SUB1DDSP
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD 45,PID_NONBOY
.LONG 0CF00H+2e00h,0D000H+2e00h,[0,45]
.LONG 0138000H,CREATE_SIDERUN_NONBOY0
.WORD 0
WAVE1SUB1EDSP
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD 45,PID_NONBOY
.LONG 0D4BFH,0C4BFH,[0,45],0138000H,CREATE_SIDERUN_NONBOY0
; .WORD 45,PID_NONBOY
; .LONG 0F27DH,0F27DH,[0,45],0138000H,CREATE_SIDERUN_NONBOY0
.WORD 0
WAVE1SUB1FDSP
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD 60,PID_NONBOY
.LONG 0553F0H,0553F0H,[M_CONCERT_CHECK|M_DONT_SHOOT|M_NON_LEFT,45]
.LONG 0138000H,CREATE_SIDERUN_NONBOY0
.WORD 60,PID_NONBOY
.LONG 0553F0H,0553F0H,[M_CONCERT_CHECK|M_DONT_SHOOT|M_NON_RIGHT,45]
.LONG 0138000H,CREATE_SIDERUN_NONBOY0
.WORD 0
WAVE1SUB1HDSP
.WORD PID_NONBOY
.LONG 0,0,0,0,BIGBOY_WATCH_PROC
.WORD 0 ;END OF INITIAL DISPATCH TABLE
; .WORD 1,PID_NONBOY
; .LONG 0704C3H,0704C3H,[0,0],-0480000H,CREATE_SIDERUN_NONBOY0
.WORD 20,PID_NONBOY
.LONG 06925DH,060000H,[0,45],018C000H,CREATE_SIDERUN_NONBOY0
.WORD 20,PID_NONBOY
.LONG 06925DH,060000H,[0,45],018C000H,CREATE_SIDERUN_NONBOY0
.WORD 40,PID_NONBOY
.LONG 06925DH,060000H,[0,45],018C000H,CREATE_SIDERUN_NONBOY0
.WORD 40,PID_NONBOY
.LONG 06925DH,060000H,[0,45],018C000H,CREATE_SIDERUN_NONBOY0
.WORD 60,PID_NONBOY
.LONG 06925DH,060000H,[0,45],018C000H,CREATE_SIDERUN_NONBOY0
.WORD 60,PID_NONBOY
.LONG 06925DH,060000H,[0,45],018C000H,CREATE_SIDERUN_NONBOY0
; .WORD 120,PID_NONBOY
; .LONG 06B000H,06A800H,[0,45],-0480000H,CREATE_SIDERUN_NONBOY0
; .WORD 121,PID_NONBOY
; .LONG 06B000H,06A800H,[0,45],-0480000H,CREATE_SIDERUN_NONBOY0
; .WORD 122,PID_NONBOY
; .LONG 06B000H,06A800H,[0,45],-0480000H,CREATE_SIDERUN_NONBOY0
; .WORD 123,PID_NONBOY
; .LONG 06B000H,06A800H,[0,45],-0480000H,CREATE_SIDERUN_NONBOY0
.WORD 0
WAVE1SUB1IDSP
.WORD PID_NONBOY
.LONG 0,0,0,0,MAKE_SECRET_BAR_NONBOYS
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD -1
WAVE1SUB1JDSP
; .WORD PID_NONBOY
; .LONG 03185FH,-010C4000H,-0228000H,0,CREATE_SHOOTING_NONBOY
; .WORD PID_NONBOY
; .LONG 03F85FH,-010C4000H,-0228000H,0,CREATE_SHOOTING_NONBOY
; .WORD PID_NONBOY
; .LONG 04F85FH,-010C4000H,-0228000H,0,CREATE_SHOOTING_NONBOY
; .WORD PID_NONBOY
; .LONG 05F85FH,-010C4000H,-0228000H,0,CREATE_SHOOTING_NONBOY
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD 1,PID_NONBOY
.LONG 03185FH,-010C4000H,0,-0228000H,CREATE_DROP_SHOOTING_NONBOY
.WORD 100,PID_NONBOY
.LONG 03F85FH,-010C4000H,0,-0228000H,CREATE_DROP_SHOOTING_NONBOY
.WORD 200,PID_NONBOY
.LONG 04F85FH,-010C4000H,0,-0228000H,CREATE_DROP_SHOOTING_NONBOY
.WORD 300,PID_NONBOY
.LONG 05F85FH,-010C4000H,0,-0228000H,CREATE_DROP_SHOOTING_NONBOY
.WORD -1
WAVE1SUB1KDSP
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD 1,PID_NONBOY
.LONG 07C770H,0138000H,-06A0000H,0580000H,CREATE_DROP_SHOOTING_NONBOY
.WORD 30,PID_NONBOY
.LONG 07C770H,0138000H,-06A0000H,0280000H,CREATE_DROP_SHOOTING_NONBOY
.WORD 30,PID_NONBOY
.LONG 07C770H,0138000H,-06A0000H,0880000H,CREATE_DROP_SHOOTING_NONBOY
.WORD -1
WAVE1SUB1LDSP
.WORD PID_NONBOY
.LONG 077BDCH,-010C4000H,-018C4000H,-0528000H,CREATE_DROP_SHOOTING_NONBOY
; .WORD PID_NONBOY
; .LONG 077BDCH,-010C4000H,-018C4000H,-0228000H,CREATE_DROP_SHOOTING_NONBOY
.WORD PID_NONBOY
.LONG 077BDCH,-010C4000H,-018C4000H,0D8000H,CREATE_DROP_SHOOTING_NONBOY
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD 30,PID_NONBOY
.LONG 077B5BH,077B5BH,[M_SCAFFOLD_CHECK|M_DONT_SHOOT|M_NON_LEFT,45]
.LONG -010C4000H,CREATE_SIDERUN_NONBOY0
.WORD 30,PID_NONBOY
.LONG 077B5BH,077B5BH,[M_SCAFFOLD_CHECK|M_DONT_SHOOT|M_NON_RIGHT,45]
.LONG -010C4000H,CREATE_SIDERUN_NONBOY0
.WORD 0
WAVE1SUB1MDSP
.WORD PID_COPTER
.LONG 0,0,0,0,MAKE_FRONT_COPTER_PROC
.WORD PID_COPTER
.LONG 0,0,0,0,MAKE_SIDE_COPTER_PROC
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD -1
ONSTAGE_DSP
.WORD PID_IND
.LONG SND_JUNGLE,60,0,0,PROC_SND ;Make the tune stop
.WORD 0
.WORD 1,PID_IND ;PROD STEVE
.LONG 21, 0600000H, 06A466H,0, CREATE_STAGE_PRODBOY
.WORD 120,PID_IND ;PROD JOE
.LONG 22, 0800000H, 06A468H,0, CREATE_STAGE_PRODBOY
.WORD 160,PID_IND ;PROD JOEY
.LONG 25, 0500000H, 06AD71H,0, CREATE_STAGE_PRODBOY
.WORD 180,PID_IND ;PROD BRAD
.LONG 24, 0400000H, 06A46AH,0, CREATE_STAGE_PRODBOY
.WORD 240,PID_IND ;PROD TOM
.LONG 23, 0500000H, 06A46CH,0, CREATE_STAGE_PRODBOY
; .WORD 320,PID_IND ;PROD JOEY
; .LONG 25, 0500000H, 06AD71H,0, CREATE_STAGE_PRODBOY
.WORD -1
WAVE1ENDDSP
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD 0
*
* Trip through trees pt.1
*
DSPTAB_JUNG_TREE1
.WORD PID_POWERUPD2
.LONG 0A000H,06000H,60*5,60*5,PROC_DROP_PACK
.WORD 0 ;End of initial dispatch
.WORD -1
*
* Trip through trees
*
DSPTAB_JUNG_TREE2
.WORD PID_POWERUPD0
.LONG 0A000H,06000H,60*5,60*5,PROC_DROP_PACK
.WORD 0 ;End of initial dispatch
.WORD 2000,PID_POWERUPD1
.LONG 0A000H,06000H,1,1,PROC_SBOMB
.WORD -1
DSPTAB_JUNG_ELEV
.WORD 0 ;End of initial dispatch
.WORD 30,PID_BZERK
.LONG 1,[0d00h,0c80H],[-18h,-48h],0,PROC_BZERK_JMP_WRLD
.WORD 45,PID_BZERK
.LONG 1,[0d00h,0c80H],[18h,-18h],0,PROC_BZERK_JMP_WRLD
.WORD 60,PID_BZERK
.LONG 1,[0d00h,0c80H],[48h,18h],0,PROC_BZERK_JMP_WRLD
.WORD -1
DSPTAB_JUNG_ENDHALL
.WORD PID_POWERUPD0
.LONG 10000H,07000H,60,60*2,PROC_DROP_PACK
.WORD PID_BZERK
.LONG 0,[880h,1800h],[368H,2d0H],0,PROC_BZERK_JUMP_ZW
.WORD 0 ;End of initial dispatch
.WORD 60,PID_BZERK
.LONG 0,[880h,1800h],[368H,2d0H],0,PROC_BZERK_JUMP_ZW
.WORD 120,PID_BZERK
.LONG 0,[880h,1800h],[368H,2d0H],0,PROC_BZERK_JUMP_ZW
.WORD 240,PID_BZERK
.LONG 0,[880h,1800h],[368H,2d0H],0,PROC_BZERK_JUMP_ZW
.WORD 30,PID_BZERK
.LONG 0,[880h,1800h],[368H,2d0H],0,PROC_BZERK_JUMP_ZW
.WORD -2
.LONG DSPTAB_JUNG_EHALL_PT2
DSPTAB_JUNG_EHALL_PT2
.WORD 50,PID_BZERK
.LONG 0,[880h,1800h],[368H,2d0H],0,PROC_BZERK_JUMP_ZW
.WORD 0
*
* In front of the 3 doors outside
*
DSPTAB_JUNG_3DOORS
; .WORD PID_BZERK
; .LONG 6800H,298000H,4800000H,[200,0],PROC_BZERK_STAND
; .WORD PID_BZERK
; .LONG 0,0,0,0,PROC_BZERK_ROPE
.WORD 0 ;End of initial dispatch
.WORD 240,PID_BZERK
.LONG 0,[0,-20H],[510H,448H],0,PROC_BZERK_JUMPIN
.WORD 480,PID_BZERK
.LONG 0,[0,-20H],[510H,448H],0,PROC_BZERK_JUMPIN
.WORD 720,PID_BZERK
.LONG 0,[0,-20H],[510H,448H],0,PROC_BZERK_JUMPIN
.WORD 960,PID_BZERK
.LONG 0,[0,-20H],[510H,448H],0,PROC_BZERK_JUMPIN
.WORD 1200,PID_POWERUPD1
.LONG 0A000H,06000H,1,1,PROC_SBOMB
.WORD -2
.LONG DSPTAB_JUNG_3DOORS_PT2
DSPTAB_JUNG_3DOORS_PT2
.WORD 120,PID_BZERK
.LONG 0,[0,-20H],[510H,448H],0,PROC_BZERK_JUMPIN
.WORD 0
*
* Kemmi-tech dock
*
DSPTAB_JAPAN_DOCK
.WORD PID_IND
.LONG 3,44,P1_ROCK_SIGHT,BLUPLAYR,CYCLE1 ;P1 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P2_ROCK_SIGHT,REDPLAYR,CYCLE1 ;P2 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P3_ROCK_SIGHT,YELPLAYR,CYCLE1 ;P3 ROCKET SIGHT
.WORD PID_IND
.LONG 4,15,13,SCREAM,CYCLE16 ;SMART BOMB
.WORD PID_IND
.LONG LA_COLL,0,0,0,PROC_CALL
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD -1
*
* Factory top
*
DSPTAB_FACT_TOP
.WORD PID_NINJA
.LONG -0A800000H,[10h,20h],[-28H,78H],0,PROC_NINJA_JUMPIN
.WORD 0 ;End of initial dispatch
.WORD 60,PID_NINJA
.LONG -0A800000H,[10h,20h],[78H,-28H],0,PROC_NINJA_JUMPIN
.WORD 120,PID_NINJA
.LONG -0A800000H,[10h,20h],[78H,-28H],0,PROC_NINJA_JUMPIN
.WORD 240,PID_NINJA
.LONG -0A800000H,[10h,20h],[78H,-28H],0,PROC_NINJA_JUMPIN
.WORD 30,PID_NINJA
.LONG -0A800000H,[10h,20h],[78H,-28H],0,PROC_NINJA_JUMPIN
.WORD -2
.LONG DSPTAB_FACT_TOP_PT2
DSPTAB_FACT_TOP_PT2
.WORD 50,PID_NINJA
.LONG -0A800000H,[10h,20h],[78H,-28H],0,PROC_NINJA_JUMPIN
.WORD 50,PID_NINJA
.LONG -0A800000H,[10h,20h],[78H,-28H],0,PROC_NINJA_JUMPIN
.WORD 50,PID_NINJA
.LONG -0A800000H,[10h,20h],[78H,-28H],0,PROC_NINJA_JUMPIN
.WORD 0
*Crate section
WAVE2aDSP
.WORD PID_IND
.LONG 3,44,P1_ROCK_SIGHT,BLUPLAYR,CYCLE1 ;P1 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P2_ROCK_SIGHT,REDPLAYR,CYCLE1 ;P2 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P3_ROCK_SIGHT,YELPLAYR,CYCLE1 ;P3 ROCKET SIGHT
.WORD PID_IND
.LONG LA_COLL,0,0,0,PROC_CALL
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD -1
*Vogel factory section
WAVE2bDSP
.WORD PID_IND
.LONG 3,44,P1_ROCK_SIGHT,BLUPLAYR,CYCLE1 ;P1 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P2_ROCK_SIGHT,REDPLAYR,CYCLE1 ;P2 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P3_ROCK_SIGHT,YELPLAYR,CYCLE1 ;P3 ROCKET SIGHT
.WORD PID_IND
.LONG LA_COLL,0,0,0,PROC_CALL
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD -1
*Mondor section
WAVE2dDSP
.WORD PID_IND
.LONG 3,44,P1_ROCK_SIGHT,BLUPLAYR,CYCLE1 ;P1 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P2_ROCK_SIGHT,REDPLAYR,CYCLE1 ;P2 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P3_ROCK_SIGHT,YELPLAYR,CYCLE1 ;P3 ROCKET SIGHT
.WORD PID_IND
.LONG LA_COLL,0,0,0,PROC_CALL
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD 1,PID_DESK
.LONG 0,0,0,0,DESK_PROC
.WORD -1
*
* Initial dispatch for flite wave
*
DSPTAB_FLITE
.WORD PID_IND
.LONG 3,44,P1_ROCK_SIGHT,BLUPLAYR,CYCLE1 ;P1 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P2_ROCK_SIGHT,REDPLAYR,CYCLE1 ;P2 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P3_ROCK_SIGHT,YELPLAYR,CYCLE1 ;P3 ROCKET SIGHT
.WORD PID_IND
.LONG LA_COLL,0,0,0,PROC_CALL
.WORD PID_IND
.LONG 4,15,13,SCREAM,CYCLE16 ;SMART BOMB
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD -1
*
* Wembley dispatch
*
DSPTAB_WEMBLEY
.WORD PID_IND
.LONG 3,44,P1_ROCK_SIGHT,BLUPLAYR,CYCLE1 ;P1 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P2_ROCK_SIGHT,REDPLAYR,CYCLE1 ;P2 ROCKET SIGHT
.WORD PID_IND
.LONG 3,44,P3_ROCK_SIGHT,YELPLAYR,CYCLE1 ;P3 ROCKET SIGHT
.WORD PID_IND
.LONG LA_COLL,0,0,0,PROC_CALL
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD -1
*
* The Parade of Enemies!
* Nonboy (ID=3), Berzerker (ID=4), Cog (ID=7)
* Beekeeper (ID=10), Native (ID=12), Ninja (ID=13)
*
DSP_FINALE_1
.LONG DSPTAB_FINALE_1,0
.WORD 0, 0, 0, 0, 0, 0, 0, 0
.WORD 0, 0, 0, 0, 0, 0, 0, 1
DSPTAB_FINALE_1
.WORD 0 ;END OF INITIAL DISPATCH TABLE
.WORD 1,PID_NONBOY
.LONG -014800H,-012800H,[0,45],-02BC000H,CREATE_SIDERUN_NONBOYF
.WORD 30,PID_BEEKPR
.LONG 2aah,092h,-13c00h,0,PROC_DROP_BEEM
.WORD 60,PID_NATIVE
.LONG 36dh,-40h,-13200h,0,PROC_RELEASE_NATIVE
.WORD 90,PID_BZERK
.LONG 0,[-128h,-148h],[2aaH,92H],0,PROC_BZERK_JUMPIN
.WORD 120,PID_COG
.LONG 0,[-14c0h,-1500h],0,0,COG_PROC_UNIV
.WORD 150,PID_NINJA
.LONG -1100000H,[-128h,-148h],[2aaH,92H],0,PROC_NINJA_JUMPIN
.WORD 0 ;Loop
**************************************************************************
* *
* SINGLE COLOR CYCLE TABLES *
* *
**************************************************************************
P1_ROCK_SIGHT
.word ( 0*32*32)+(0 *32)+( 31 ) ;BRIGHT BLUE
.word ( 0*32*32)+(0 *32)+( 31 ) ;BRIGHT BLUE
.word (31*32*32)+(31*32)+( 31 ) ;BRIGHT WHITE
.WORD 0FFFFH
P2_ROCK_SIGHT
.word (31*32*32)+(0 *32)+( 0 ) ;BRIGHT RED
.word (31*32*32)+(0 *32)+( 0 ) ;BRIGHT RED
.word (31*32*32)+(31*32)+( 31 ) ;BRIGHT WHITE
.WORD 0FFFFH
P3_ROCK_SIGHT
.word (31*32*32)+(20 *32)+( 0 ) ;BRIGHT RED
.word (31*32*32)+(20 *32)+( 0 ) ;BRIGHT RED
.word (31*32*32)+(31*32)+( 31 ) ;BRIGHT WHITE
.WORD 0FFFFH
.END