185 lines
3.5 KiB
NASM
Executable File
185 lines
3.5 KiB
NASM
Executable File
**************************************************************
|
||
*
|
||
* Software: Mike Lynch, Jason Skiles, Mark Turmell
|
||
* Initiated: 04/04/95
|
||
*
|
||
* Modified:
|
||
*
|
||
* COPYRIGHT (C) 1992 WILLIAMS ELECTRONICS GAMES, INC.
|
||
*
|
||
**************************************************************
|
||
|
||
.file "finish.asm"
|
||
.title "wrestling game program"
|
||
.width 132
|
||
.option b,d,l,t
|
||
.mnolist
|
||
|
||
|
||
.include "macros.h"
|
||
.include "mproc.equ" ;Mproc equates
|
||
.include "display.equ" ;Display proc equates
|
||
.include "gsp.equ" ;Gsp asm equates
|
||
.include "sys.equ"
|
||
.include "wwfsec.equ"
|
||
.include "game.equ"
|
||
.include "audit.equ"
|
||
.include "plyr.equ"
|
||
.include "anim.equ"
|
||
.include "sound.h"
|
||
.include "ring.equ"
|
||
.include "sound.equ"
|
||
.include "damage.equ"
|
||
.include "jjxm.h"
|
||
|
||
.include "imgtbl.glo"
|
||
.include "fontsimg.glo"
|
||
.include "bgndtbl.glo"
|
||
.include "miscimg.glo"
|
||
|
||
#****************************************************************
|
||
*
|
||
;a0 = number of lights
|
||
SUBR yok_falling_lights
|
||
PUSHP a9,a10
|
||
movi 100,a9
|
||
move a0,a10
|
||
#create_lts
|
||
CREATE0 yok_falling_light
|
||
SLEEPK 5
|
||
addk 20,a9
|
||
dsjs a10,#create_lts
|
||
|
||
SLEEP TSEC*20
|
||
|
||
PULLP a9,a10
|
||
RETP
|
||
|
||
#*****************************************************************
|
||
*
|
||
SUBRP lt_smk_tbl
|
||
.long YKLTSMK01
|
||
.long YKLTSMK02
|
||
.long YKLTSMK03
|
||
.long YKLTSMK04
|
||
.long YKLTSMK05
|
||
.long YKLTSMK06
|
||
.long YKLTSMK07
|
||
.long 0
|
||
|
||
#*****************************************************************
|
||
*
|
||
;a9 - starting x position
|
||
SUBRP yok_falling_light
|
||
|
||
move a9,a0 ; Set up horizontal position
|
||
clr a10 ; Save off current y
|
||
sll 16,a0 ; Set up vertical position
|
||
clr a1
|
||
movi YKLIGHT01,a2 ; This is a light
|
||
movi 1000h|RING_Z_CENTER,a3 ; Z position
|
||
movi DMAWNZ|M_3D|M_SCRNREL,a4 ; Control goop
|
||
cmpi 200,a9 ; light more'n half way?
|
||
jrlt #no_flip ; br = nope
|
||
ori M_FLIPH,a4 ; flip
|
||
#no_flip
|
||
movi CLSFINI,a5 ; Light object id
|
||
clr a6 ; velocity
|
||
clr a7 ; velocity
|
||
|
||
calla BEGINOBJ ; make it
|
||
|
||
#fall_loop ; Make the light fall
|
||
SLEEPK 1
|
||
cmpi (255-MAT_Y),a10
|
||
jrgt #fall_done
|
||
addk 15,a10
|
||
move a10,*a8(OYPOS)
|
||
jruc #fall_loop
|
||
|
||
#fall_done ; Embed it in the mat
|
||
move a8,a0
|
||
calla DELOBJ
|
||
|
||
move a9,a0
|
||
sll 16,a0
|
||
move a10,a1
|
||
sll 16,a1
|
||
movi YKLIGHT02A,a2 ; This is an embedded light
|
||
movi (1000h|RING_Z_CENTER)+10h,a3
|
||
movi DMAWNZ|M_3D|M_SCRNREL,a4
|
||
cmpi 200,a9
|
||
jrlt #no_lt2a_flip
|
||
ori M_FLIPH,a4
|
||
#no_lt2a_flip
|
||
movi CLSFINI,a5
|
||
clr a6
|
||
clr a7
|
||
calla BEGINOBJ
|
||
.if 1
|
||
move a9,a0
|
||
sll 16,a0
|
||
move a10,a1
|
||
sll 16,a1
|
||
movi YKLIGHT02B,a2 ; This is an embedded light lens
|
||
movi (1000h|RING_Z_CENTER)+20h,a3
|
||
movi DMAWNZ|M_3D|M_SCRNREL,a4
|
||
cmpi 200,a9
|
||
jrlt #no_lt2b_flip
|
||
ori M_FLIPH,a4
|
||
#no_lt2b_flip
|
||
movi CLSFINI,a5
|
||
clr a6
|
||
clr a7
|
||
calla BEGINOBJ
|
||
.endif
|
||
|
||
; CREATE0 buzz_wire ; Make the wire buzz around
|
||
; CREATE0 shatter_lens ; Shatter the lens
|
||
|
||
SLEEPK 5
|
||
|
||
movk 15,a0
|
||
#more_smoke
|
||
movi lt_smk_tbl,a11 ; Make it smoke
|
||
#smoke_loop
|
||
move *a11+,a2,L
|
||
jrz #smoke_done
|
||
move a9,a0
|
||
sll 16,a0
|
||
move a10,a1
|
||
sll 16,a1
|
||
movi (1000h|RING_Z_CENTER)+30h,a3
|
||
movi DMAWNZ|M_3D|M_SCRNREL,a4
|
||
cmpi 200,a9
|
||
jrlt #no_smk_flip
|
||
ori M_FLIPH,a4
|
||
#no_smk_flip
|
||
movi CLSFINI,a5
|
||
clr a6
|
||
clr a7
|
||
|
||
calla BEGINOBJ
|
||
|
||
PUSHP a0
|
||
SLEEPK 5
|
||
PULLP a0
|
||
|
||
move a8,a0
|
||
calla DELOBJ
|
||
|
||
jruc #smoke_loop
|
||
#smoke_done
|
||
dsj a0,#more_smoke
|
||
|
||
SLEEP TSEC*5
|
||
|
||
movi CLSFINI,a0
|
||
calla obj_del1c
|
||
|
||
DIE
|
||
|
||
******************************************************************************
|
||
|
||
.end
|
||
|