wwf-wrestlemania/REFSEQ1.ASM

570 lines
14 KiB
NASM
Raw Normal View History

2021-04-06 15:21:54 -07:00
**************************************************************
*
* Software: Jamie Rivett
* Initiated: 4/16/94
*
* COPYRIGHT (C) 1992 WILLIAMS ELECTRONICS GAMES, INC.
*
**************************************************************
.file "refseq1.asm"
.title "Flanders the ref animation sequences"
.width 132
.option b,d,l,t
.mnolist
.include "macros.h"
.include "mproc.equ" ;Mproc equates
.include "sys.equ"
.include "game.equ"
.include "plyr.equ"
.include "anim.equ"
.include "sound.h"
.include "display.equ"
.include "refimg.h"
******************************************************************************
* EXTERNAL REFERENCES
******************************************************************************
* SYMBOLS DEFINED IN THIS FILE
******************************************************************************
* EQUATES FOR THIS FILE
TSEC equ 53
#*****************************************************************************
*
* STANDS
SUBR ref_zip_anim
WL TSEC*60,J2ST2C+FR1
.word 0
#STND2_SPD equ 2
SUBR ref_stand2_anim
.word ANI_SETMODE,MODE_NORMAL
.word ANI_SETSPEED,100h
WL #STND2_SPD,J2ST2C+FR1
WL #STND2_SPD,J2ST2C+FR2
WL #STND2_SPD,J2ST2C+FR3
WL #STND2_SPD,J2ST2C+FR4
WL #STND2_SPD,J2ST2C+FR5
WL #STND2_SPD,J2ST2C+FR6
WL #STND2_SPD,J2ST2C+FR7
WL #STND2_SPD,J2ST2C+FR8
WL #STND2_SPD,J2ST2C+FR9
WL #STND2_SPD,J2ST2C+FR10
WL #STND2_SPD,J2ST2C+FR11
WL #STND2_SPD,J2ST2C+FR10
WL #STND2_SPD,J2ST2C+FR9
WL #STND2_SPD,J2ST2C+FR8
WL #STND2_SPD,J2ST2C+FR7
WL #STND2_SPD,J2ST2C+FR6
WL #STND2_SPD,J2ST2C+FR5
WL #STND2_SPD,J2ST2C+FR4
WL #STND2_SPD,J2ST2C+FR3
WL #STND2_SPD,J2ST2C+FR2
.word ANI_REPEAT
#STND4_SPD equ 2
SUBR ref_stand4_anim
.word ANI_SETMODE,MODE_NORMAL
.word ANI_SETSPEED,100h
WL #STND4_SPD,J4ST4C+FR1
WL #STND4_SPD,J4ST4C+FR2
WL #STND4_SPD,J4ST4C+FR3
WL #STND4_SPD,J4ST4C+FR4
WL #STND4_SPD,J4ST4C+FR5
WL #STND4_SPD,J4ST4C+FR6
WL #STND4_SPD,J4ST4C+FR7
WL #STND4_SPD,J4ST4C+FR8
WL #STND4_SPD,J4ST4C+FR9
WL #STND4_SPD,J4ST4C+FR10
WL #STND4_SPD,J4ST4C+FR9
WL #STND4_SPD,J4ST4C+FR8
WL #STND4_SPD,J4ST4C+FR7
WL #STND4_SPD,J4ST4C+FR6
WL #STND4_SPD,J4ST4C+FR5
WL #STND4_SPD,J4ST4C+FR4
WL #STND4_SPD,J4ST4C+FR3
WL #STND4_SPD,J4ST4C+FR2
.word ANI_REPEAT
#*****************************************************************************
*
* WALKING TORSOS
#TORSO2_SPD equ 4
SUBR ref_torso2_anim
WL #TORSO2_SPD,J1TR5Z+FR3
.word ANI_REPEAT
#TORSO4_SPD equ 4
SUBR ref_torso4_anim
WL #TORSO4_SPD,J1TR5Z+FR7
.word ANI_REPEAT
#*****************************************************************************
*
* WALKS FACING #2
#W2F2_SPD equ 3
SUBR ref_walk1_f2_anim
SUBR ref_walk2_f2_anim
WL #W2F2_SPD,J2WL2A+FR1
WL #W2F2_SPD,J2WL2A+FR2
WL #W2F2_SPD,J2WL2A+FR3
WL #W2F2_SPD,J2WL2A+FR4
WL #W2F2_SPD,J2WL2A+FR5
WL #W2F2_SPD,J2WL2A+FR6
WL #W2F2_SPD,J2WL2A+FR7
WL #W2F2_SPD,J2WL2A+FR8
WL #W2F2_SPD,J2WL2A+FR9
WL #W2F2_SPD,J2WL2A+FR10
WL #W2F2_SPD,J2WL2A+FR11
.word ANI_REPEAT
#W4F2_SPD equ 3
SUBR ref_walk4_f2_anim
WL #W4F2_SPD,J2WL4A+FR1
WL #W4F2_SPD,J2WL4A+FR2
WL #W4F2_SPD,J2WL4A+FR3
WL #W4F2_SPD,J2WL4A+FR4
WL #W4F2_SPD,J2WL4A+FR5
WL #W4F2_SPD,J2WL4A+FR6
WL #W4F2_SPD,J2WL4A+FR7
WL #W4F2_SPD,J2WL4A+FR8
WL #W4F2_SPD,J2WL4A+FR9
WL #W4F2_SPD,J2WL4A+FR10
WL #W4F2_SPD,J2WL4A+FR11
WL #W4F2_SPD,J2WL4A+FR12
WL #W4F2_SPD,J2WL4A+FR13
WL #W4F2_SPD,J2WL4A+FR14
WL #W4F2_SPD,J2WL4A+FR15
.word ANI_REPEAT
#W5F2_SPD equ 3
SUBR ref_walk5_f2_anim
SUBR ref_walk6_f2_anim
WL #W5F2_SPD,J2WL2A+FR11
WL #W5F2_SPD,J2WL2A+FR10
WL #W5F2_SPD,J2WL2A+FR9
WL #W5F2_SPD,J2WL2A+FR8
WL #W5F2_SPD,J2WL2A+FR7
WL #W5F2_SPD,J2WL2A+FR6
WL #W5F2_SPD,J2WL2A+FR5
WL #W5F2_SPD,J2WL2A+FR4
WL #W5F2_SPD,J2WL2A+FR3
WL #W5F2_SPD,J2WL2A+FR1
WL #W5F2_SPD,J2WL2A+FR1
.word ANI_REPEAT
SUBR ref_walk8_f2_anim
WL #W4F2_SPD,J8WL2A+FR1
WL #W4F2_SPD,J8WL2A+FR2
WL #W4F2_SPD,J8WL2A+FR3
WL #W4F2_SPD,J8WL2A+FR4
WL #W4F2_SPD,J8WL2A+FR5
WL #W4F2_SPD,J8WL2A+FR6
WL #W4F2_SPD,J8WL2A+FR7
WL #W4F2_SPD,J8WL2A+FR8
WL #W4F2_SPD,J8WL2A+FR9
WL #W4F2_SPD,J8WL2A+FR10
WL #W4F2_SPD,J8WL2A+FR11
WL #W4F2_SPD,J8WL2A+FR12
WL #W4F2_SPD,J8WL2A+FR13
WL #W4F2_SPD,J8WL2A+FR14
.word ANI_REPEAT
#*****************************************************************************
*
* WALKS FACING #4
#W1F4_SPD equ 3
SUBR ref_walk1_f4_anim
SUBR ref_walk2_f4_anim
WL #W1F4_SPD,J2WL4A+FR1
WL #W1F4_SPD,J2WL4A+FR2
WL #W1F4_SPD,J2WL4A+FR3
WL #W1F4_SPD,J2WL4A+FR4
WL #W1F4_SPD,J2WL4A+FR5
WL #W1F4_SPD,J2WL4A+FR6
WL #W1F4_SPD,J2WL4A+FR7
WL #W1F4_SPD,J2WL4A+FR8
WL #W1F4_SPD,J2WL4A+FR9
WL #W1F4_SPD,J2WL4A+FR10
WL #W1F4_SPD,J2WL4A+FR11
WL #W1F4_SPD,J2WL4A+FR12
WL #W1F4_SPD,J2WL4A+FR13
WL #W1F4_SPD,J2WL4A+FR14
WL #W1F4_SPD,J2WL4A+FR15
.word ANI_REPEAT
#W4F4_SPD equ 3
SUBR ref_walk4_f4_anim
WL #W4F4_SPD,J4WL4A+FR1
WL #W4F4_SPD,J4WL4A+FR2
WL #W4F4_SPD,J4WL4A+FR3
WL #W4F4_SPD,J4WL4A+FR4
WL #W4F4_SPD,J4WL4A+FR5
WL #W4F4_SPD,J4WL4A+FR6
WL #W4F4_SPD,J4WL4A+FR7
WL #W4F4_SPD,J4WL4A+FR8
WL #W4F4_SPD,J4WL4A+FR9
WL #W4F4_SPD,J4WL4A+FR10
WL #W4F4_SPD,J4WL4A+FR11
WL #W4F4_SPD,J4WL4A+FR12
.word ANI_REPEAT
#W5F4_SPD equ 3
SUBR ref_walk5_f4_anim
WL #W5F4_SPD,J4WL5A+FR1
WL #W5F4_SPD,J4WL5A+FR2
WL #W5F4_SPD,J4WL5A+FR3
WL #W5F4_SPD,J4WL5A+FR4
WL #W5F4_SPD,J4WL5A+FR5
WL #W5F4_SPD,J4WL5A+FR6
WL #W5F4_SPD,J4WL5A+FR7
WL #W5F4_SPD,J4WL5A+FR8
WL #W5F4_SPD,J4WL5A+FR9
WL #W5F4_SPD,J4WL5A+FR10
WL #W5F4_SPD,J4WL5A+FR11
WL #W5F4_SPD,J4WL5A+FR12
WL #W5F4_SPD,J4WL5A+FR13
WL #W5F4_SPD,J4WL5A+FR14
.word ANI_REPEAT
SUBR ref_walk6_f4_anim
WL #W1F4_SPD,J2WL4A+FR15
WL #W1F4_SPD,J2WL4A+FR14
WL #W1F4_SPD,J2WL4A+FR13
WL #W1F4_SPD,J2WL4A+FR12
WL #W1F4_SPD,J2WL4A+FR11
WL #W1F4_SPD,J2WL4A+FR10
WL #W1F4_SPD,J2WL4A+FR9
WL #W1F4_SPD,J2WL4A+FR8
WL #W1F4_SPD,J2WL4A+FR7
WL #W1F4_SPD,J2WL4A+FR6
WL #W1F4_SPD,J2WL4A+FR5
WL #W1F4_SPD,J2WL4A+FR4
WL #W1F4_SPD,J2WL4A+FR3
WL #W1F4_SPD,J2WL4A+FR2
WL #W1F4_SPD,J2WL4A+FR1
.word ANI_REPEAT
SUBR ref_walk8_f4_anim
WL #W4F4_SPD,J4WL4A+FR12
WL #W4F4_SPD,J4WL4A+FR11
WL #W4F4_SPD,J4WL4A+FR10
WL #W4F4_SPD,J4WL4A+FR9
WL #W4F4_SPD,J4WL4A+FR8
WL #W4F4_SPD,J4WL4A+FR7
WL #W4F4_SPD,J4WL4A+FR6
WL #W4F4_SPD,J4WL4A+FR5
WL #W4F4_SPD,J4WL4A+FR4
WL #W4F4_SPD,J4WL4A+FR3
WL #W4F4_SPD,J4WL4A+FR2
WL #W4F4_SPD,J4WL4A+FR1
.word ANI_REPEAT
#*****************************************************************************
*
* TURNS (STANDS)
#TURN_SPD equ 3 ;4
SUBR ref_2_to_4_turn_anim
SUBR ref_8_to_6_turn_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL #TURN_SPD,J1TT5A+FR4
WL #TURN_SPD,J1TT5A+FR5
WL #TURN_SPD,J1TT5A+FR6
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR ref_4_to_2_turn_anim
SUBR ref_6_to_8_turn_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL #TURN_SPD,J1TT5A+FR6
WL #TURN_SPD,J1TT5A+FR5
WL #TURN_SPD,J1TT5A+FR4
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR ref_4_to_6_turn_anim
SUBR ref_6_to_4_turn_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL #TURN_SPD,J1TT5A+FR8
WL #TURN_SPD,J1TT5A+FR9
.word ANI_XFLIP
WL #TURN_SPD,J1TT5A+FR9
WL #TURN_SPD,J1TT5A+FR8
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR ref_2_to_8_turn_anim
SUBR ref_8_to_2_turn_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL #TURN_SPD,J1TT5A+FR2
WL #TURN_SPD,J1TT5A+FR1
.word ANI_XFLIP
WL #TURN_SPD,J1TT5A+FR1
WL #TURN_SPD,J1TT5A+FR2
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR ref_4_to_8_turn_anim
SUBR ref_6_to_2_turn_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL #TURN_SPD,J1TT5A+FR8
WL #TURN_SPD,J1TT5A+FR9
.word ANI_XFLIP
WL #TURN_SPD,J1TT5A+FR9
WL #TURN_SPD,J1TT5A+FR8
WL #TURN_SPD,J1TT5A+FR7
WL #TURN_SPD,J1TT5A+FR6
WL #TURN_SPD,J1TT5A+FR5
WL #TURN_SPD,J1TT5A+FR4
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR ref_2_to_6_turn_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL #TURN_SPD,J1TT5A+FR2
WL #TURN_SPD,J1TT5A+FR1
.word ANI_XFLIP
WL #TURN_SPD,J1TT5A+FR1
WL #TURN_SPD,J1TT5A+FR2
WL #TURN_SPD,J1TT5A+FR3
WL #TURN_SPD,J1TT5A+FR4
WL #TURN_SPD,J1TT5A+FR5
WL #TURN_SPD,J1TT5A+FR6
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR ref_8_to_4_turn_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL #TURN_SPD,J1TT5A+FR4
WL #TURN_SPD,J1TT5A+FR5
WL #TURN_SPD,J1TT5A+FR6
WL #TURN_SPD,J1TT5A+FR7
WL #TURN_SPD,J1TT5A+FR8
WL #TURN_SPD,J1TT5A+FR9
.word ANI_XFLIP
WL #TURN_SPD,J1TT5A+FR9
WL #TURN_SPD,J1TT5A+FR8
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
#*****************************************************************************
*
* TURNS (TORSOS)
#TURN_SPD equ 3 ;4
SUBR ref_2_to_4_turn2_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL #TURN_SPD,J1TR5Z+FR1
.word ANI_SETFACING
WL #TURN_SPD,J1TR5Z+FR1
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR ref_4_to_2_turn2_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL #TURN_SPD,J1TR5Z+FR1
.word ANI_SETFACING
WL #TURN_SPD,J1TR5Z+FR1
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR ref_4_to_6_turn2_anim
SUBR ref_6_to_4_turn2_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL #TURN_SPD,J1TR5Z+FR1
.word ANI_SETFACING ;ANI_XFLIP <- not primary anim
WL #TURN_SPD,J1TR5Z+FR1
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR ref_2_to_8_turn2_anim
SUBR ref_8_to_2_turn2_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_SETSPEED,100h
WL #TURN_SPD,J1TR5Z+FR1
.word ANI_SETFACING ;ANI_XFLIP <- not primary anim
WL #TURN_SPD,J1TR5Z+FR1
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
#*****************************************************************************
*
* #4 HEAD HIT
#HEAD_HIT_SPD equ 3
SUBR ref_4_head_hit_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_ZEROVELS
.word ANI_SETSPEED,100h
WL #HEAD_HIT_SPD,J4AH3D+FR1
WL #HEAD_HIT_SPD,J4AH3D+FR2
WL #HEAD_HIT_SPD,J4AH3D+FR3
WL #HEAD_HIT_SPD,J4AH3D+FR4
WL #HEAD_HIT_SPD,J4AH3D+FR5
WL #HEAD_HIT_SPD,J4AH3D+FR6
WL #HEAD_HIT_SPD,J4AH3D+FR7
WL #HEAD_HIT_SPD,J4AH3D+FR8
WL #HEAD_HIT_SPD+6,J4AH3D+FR9
WL #HEAD_HIT_SPD,J4AH3D+FR10
WL #HEAD_HIT_SPD,J4AH3D+FR11
WL #HEAD_HIT_SPD,J4AH3D+FR12
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
#*****************************************************************************
*
* #2 HEAD HIT
#HEAD_HIT_SPD equ 3
SUBR ref_2_head_hit_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_ZEROVELS
.word ANI_SETSPEED,100h
WL #HEAD_HIT_SPD,J2AH3C+FR1
WL #HEAD_HIT_SPD,J2AH3C+FR2
WL #HEAD_HIT_SPD,J2AH3C+FR3
WL #HEAD_HIT_SPD,J2AH3C+FR4
WL #HEAD_HIT_SPD,J2AH3C+FR5
WL #HEAD_HIT_SPD,J2AH3C+FR6
WL #HEAD_HIT_SPD,J2AH3C+FR7
WL #HEAD_HIT_SPD,J2AH3C+FR8
WL #HEAD_HIT_SPD,J2AH3C+FR9
WL #HEAD_HIT_SPD,J2AH3C+FR10
WL #HEAD_HIT_SPD,J2AH3C+FR11
WL #HEAD_HIT_SPD,J2AH3C+FR12
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
#*****************************************************************************
*
* HEAD HIT2 (HANDS ON FACE)
#HEAD_HIT2_SPD equ 4
SUBR ref_head_hit2_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_ZEROVELS
.word ANI_SETSPEED,100h
.word ANI_FRICTION,3000h
WL #HEAD_HIT2_SPD,J4AH3A+FR1
WL #HEAD_HIT2_SPD,J4AH3A+FR2
WL #HEAD_HIT2_SPD,J4AH3A+FR3
WL #HEAD_HIT2_SPD,J4AH3A+FR4
WL #HEAD_HIT2_SPD,J4AH3A+FR5
WL #HEAD_HIT2_SPD,J4AH3A+FR6
WL #HEAD_HIT2_SPD,J4AH3A+FR7
WL #HEAD_HIT2_SPD,J4AH3A+FR8
WL #HEAD_HIT2_SPD,J4AH3A+FR9
WL ANI_CODE,#setface
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
#setface
;Need to set facing dir because of this odd getup sequence
movk 10,A1
move *A13(OBJ_CONTROL),a0
btst B_FLIPH,A0
jrz #rgt
movk 6,A1
#rgt move A1,*A13(FACING_DIR)
rets
#*****************************************************************************
*
* BODY HIT
#BODHIT_SPD equ 6
SUBR ref_2_body_hit_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_ZEROVELS
.word ANI_SETSPEED,100h
WL ANI_SET_YVEL,48000h
WL #BODHIT_SPD,J2AM3A+FR1
WL #BODHIT_SPD,J2AM3A+FR2
WL #BODHIT_SPD,J2AM3A+FR3
.word ANI_ZEROVELS
WL #BODHIT_SPD,J2AM3A+FR4
WL #BODHIT_SPD,J2AM3A+FR5
WL #BODHIT_SPD,J2AM3A+FR6
WL #BODHIT_SPD,J2AM3A+FR7
WL #BODHIT_SPD,J2AM3A+FR8
WL ANI_CODE,#setface
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
SUBR ref_4_body_hit_anim
.word ANI_SETMODE,MODE_UNINT+MODE_NOAUTOFLIP ;uninterruptable
.word ANI_ZEROVELS
.word ANI_SETSPEED,100h
WL ANI_SET_YVEL,48000h
WL #BODHIT_SPD,J4AM3B+FR1
WL #BODHIT_SPD,J4AM3B+FR2
WL #BODHIT_SPD,J4AM3B+FR3
.word ANI_ZEROVELS
WL #BODHIT_SPD,J4AM3B+FR4
WL #BODHIT_SPD,J4AM3B+FR5
WL #BODHIT_SPD,J4AM3B+FR6
WL #BODHIT_SPD,J4AM3B+FR7
WL #BODHIT_SPD,J4AM3B+FR8
WL ANI_CODE,#setface
.word ANI_SETMODE,MODE_NORMAL
.word ANI_END
#setface
;Need to set facing dir
movk 10,A1
move *A13(OBJ_CONTROL),A0
btst B_FLIPH,A0
jrz #rgt
movk 6,A1
#rgt move A1,*A13(FACING_DIR)
rets
******************************************************************************
.end