787 lines
22 KiB
Plaintext
787 lines
22 KiB
Plaintext
|
**************************************************************************
|
|||
|
* game.equ - All .equ constants to be used throughout the game
|
|||
|
*
|
|||
|
*.Last mod - 3/16/93 16:42
|
|||
|
*.Last mod - 4/12/95 - DCS sound board equates (JBJ)
|
|||
|
**************************************************************************
|
|||
|
|
|||
|
.asg 85/100,DIST_REDUCTION
|
|||
|
.asg 111/100,DIST_ADDITION
|
|||
|
|
|||
|
TRIVIA_PTS_NEEDED equ 100
|
|||
|
ALL_TMS_DEFEATD equ 1fffffffh
|
|||
|
NUM_BUTTONS equ 8
|
|||
|
NUM_ATTRIBS equ 8
|
|||
|
NUM_HEADS equ 5
|
|||
|
MIDDLE_HEAD equ 2
|
|||
|
MAX_CHK_MRKS equ 2
|
|||
|
MIDDLE_NICK_NAME equ 5
|
|||
|
NICK_NAMES_ON_SCRN equ 11 ;on screen at once
|
|||
|
MIDDLE_UNIFORM_NBR equ 5
|
|||
|
UNIFORM_NAMES_ON_SCRN equ 11 ;on screen at once
|
|||
|
|
|||
|
REPEAT_DELAY equ 18
|
|||
|
DEFAULT_HIT_PTS equ 40
|
|||
|
ATTRIB_MAX_VALUE equ 10
|
|||
|
ATTRIB_MIN_VALUE equ 0
|
|||
|
|
|||
|
|
|||
|
TEAMSEL_PAGE equ 0*256
|
|||
|
NAMENT_PAGE equ 0*256
|
|||
|
YESNO_PAGE equ 0*256
|
|||
|
;NAMENT_PAGE equ 1*256
|
|||
|
;YESNO_PAGE equ 2*256
|
|||
|
|
|||
|
;
|
|||
|
; X,Y positions for objects on OPTIONS SCREEN
|
|||
|
;
|
|||
|
.asg 23,BALL1X
|
|||
|
.asg 66,BALL1Y
|
|||
|
.asg 156,BALL2X
|
|||
|
.asg 66,BALL2Y
|
|||
|
.asg 285,BALL3X
|
|||
|
.asg 66,BALL3Y
|
|||
|
|
|||
|
;
|
|||
|
; X,Y positions for objects in PLAYER DESIGN
|
|||
|
;
|
|||
|
.asg 107,BBOXX ;big box ULHC X
|
|||
|
.asg 34,BBOXY ;big box ULHC Y
|
|||
|
.asg 269,SBOXX ;small box ULHC X
|
|||
|
.asg 178,SBOXY ;small box ULHC Y
|
|||
|
|
|||
|
;
|
|||
|
; X,Y positions for objects during SELECT TEAMS
|
|||
|
;
|
|||
|
.asg 99,TM1_X
|
|||
|
.asg 300,TM2_X
|
|||
|
.asg 103,TM1_Y
|
|||
|
.asg 103,TM2_Y
|
|||
|
|
|||
|
|
|||
|
;
|
|||
|
; This ID is excuslive to SCREEN TRANSITION EFFECTS
|
|||
|
;
|
|||
|
TRANS_OBJ_ID equ 0909h ;TRANSITION EFFECT ID
|
|||
|
|
|||
|
JOY_NONE equ 0
|
|||
|
JOY_UP equ 0001h
|
|||
|
JOY_DOWN equ 0002h
|
|||
|
JOY_LEFT equ 0004h
|
|||
|
JOY_RIGHT equ 0008h
|
|||
|
JOY_UP_LEFT equ 0005h
|
|||
|
JOY_UP_RIGHT equ 0009h
|
|||
|
JOY_DOWN_RIGHT equ 000Ah
|
|||
|
JOY_DOWN_LEFT equ 0006h
|
|||
|
BUT_SHOOT equ 0010h
|
|||
|
BUT_PASS equ 0020h
|
|||
|
BUT_TURBO equ 0040h
|
|||
|
|
|||
|
JDN_UP equ 0100h
|
|||
|
JDN_DOWN equ 0200h
|
|||
|
JDN_LEFT equ 0400h
|
|||
|
JDN_RIGHT equ 0800h
|
|||
|
JDN_UP_LEFT equ 0500h
|
|||
|
JDN_UP_RIGHT equ 0900h
|
|||
|
JDN_DOWN_RIGHT equ 0A00h
|
|||
|
JDN_DOWN_LEFT equ 0600h
|
|||
|
BDN_SHOOT equ 1000h
|
|||
|
BDN_PASS equ 2000h
|
|||
|
BDN_TURBO equ 4000h
|
|||
|
|
|||
|
JOY_REAL_LR equ JOY_LEFT | JOY_RIGHT
|
|||
|
JOY_ALL equ 01111b | JOY_REAL_LR
|
|||
|
|
|||
|
TURBO_BUTTON equ 4
|
|||
|
SHOOT_BUTTON equ 1
|
|||
|
PASS_BUTTON equ 2
|
|||
|
|
|||
|
END_CHAR equ 29 ;(0 relative)
|
|||
|
DEL_CHAR equ 27
|
|||
|
SPACE_CHAR equ 29 ;(1 relative)
|
|||
|
NUM_TEAMS equ 29
|
|||
|
NAME_LETTERS equ 6 ;characters for players NAME
|
|||
|
|
|||
|
;
|
|||
|
; PLAYER HEAD TABLE EQUATES (table is near end of SELECT2.asm)
|
|||
|
;
|
|||
|
HEADS_PER_LINE equ 2*32 ;2 longs
|
|||
|
HEAD_COMBINATIONS equ 20 ;20 comb. of 2 heads & end marker
|
|||
|
NEXT_TEAM equ HEADS_PER_LINE*HEAD_COMBINATIONS
|
|||
|
|
|||
|
;
|
|||
|
; PLAYER NAME TABLE EQUATES (in SCORE2.ASM)
|
|||
|
;
|
|||
|
NAMES_PER_LINE equ 2*32 ;2 longs
|
|||
|
NAME_COMBINATIONS equ 20 ;20 comb. of 2 heads & end marker
|
|||
|
NEXT_TEAM_NAMES equ NAMES_PER_LINE*NAME_COMBINATIONS
|
|||
|
;
|
|||
|
; MY [CITY NAME, CITY NUMBER] TABLE OFFSETS (in select.asm)
|
|||
|
;
|
|||
|
DELAY_B4_SCROLL equ 15 ;40 ticks
|
|||
|
OFFSET_NXT_CITY_NAME equ 32+16 ;1 long + 1 word
|
|||
|
HILITED_CITY_NAME_OFFST equ (OFFSET_NXT_CITY_NAME*3) ;7 cites shown
|
|||
|
HILITED_CITY_NBR_OFFST equ (OFFSET_NXT_CITY_NAME*3)+32 ; 4th is hi-lighted
|
|||
|
|
|||
|
;equates first originated in this file
|
|||
|
;these were in score.asm, moved here to be consistent
|
|||
|
|
|||
|
BUYTICK .EQU 110 ;60
|
|||
|
SCRNTOP .EQU 100
|
|||
|
BRGHT .EQU 2c2ch ;GREEN IN SCOREPAL
|
|||
|
COLORS .EQU 0909h ;WHITE IN SCOREPAL
|
|||
|
COLORA .EQU 3E3Eh ;COLOR CYCLE IN SCOREPAL
|
|||
|
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
* Net ani #'s
|
|||
|
|
|||
|
.asg 0,NET_RESET
|
|||
|
|
|||
|
.asg 2,NET_DEEPZ_FAR
|
|||
|
.asg 4,NET_DEEPZ_CLOSE
|
|||
|
.asg 6,NET_MIDZ_FAR
|
|||
|
.asg 8,NET_MIDZ_CLOSE
|
|||
|
.asg 10,NET_NEARZ_FAR
|
|||
|
.asg 12,NET_NEARZ_CLOSE
|
|||
|
|
|||
|
.asg 14,NET_MISS_FAR
|
|||
|
.asg 15,NET_MISS_CLOSE
|
|||
|
|
|||
|
.asg 16,NET_SOFT
|
|||
|
.asg 17,NET_DUNK
|
|||
|
.asg 18,NET_SHATTER
|
|||
|
|
|||
|
.asg 19,NET_ONFIRE
|
|||
|
.asg 20,NET_ROLLINFIRE
|
|||
|
|
|||
|
;----------
|
|||
|
; Some player equates
|
|||
|
|
|||
|
.asg 52,TURBO_CNT ;Turbo bar width cnt
|
|||
|
|
|||
|
.asg 3,ONFIRE_MINCNT ;Min # buckets for plyr on-fire
|
|||
|
.asg 8,ONFIRE_MAXCNT ;Max # buckets for plyr off-fire
|
|||
|
|
|||
|
.asg 3,TMFIRE_MINCNT ;Min # team-shots for team on-fire
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
|
|||
|
;LEDOCTRL .equ DMAWNZ|>3000 ;3 bits per pixel (In BB.asm)
|
|||
|
;MSGOCTRL .equ DMAWNZ|>6000
|
|||
|
;LEDOCTRL .equ DMAWNZ|5000h ;3 bits per pixel (In BB.asm)
|
|||
|
MSGOCTRL .equ DMAWNZ|3000h ;5000h
|
|||
|
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
|
|||
|
QRTRTIME .EQU [300h,0h] ;Time of each quarter
|
|||
|
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
* PROCESS ID'S
|
|||
|
|
|||
|
CYCPID .equ 109
|
|||
|
BUYINPID .equ 110
|
|||
|
GMEOVPID .equ 113
|
|||
|
COLRPID .equ 120 ;COLOR CYCLE FROM INTERRUPT
|
|||
|
DG1PID .equ 121 ;CNTDWN DIGIT PROC
|
|||
|
DG2PID .equ 122 ;CNTDWN DIGIT PROC
|
|||
|
FADEPID .equ 123 ;SOUND FADER
|
|||
|
CP_PID1 .equ 124 ;Credit page
|
|||
|
CP_PID2 .equ 125 ;^
|
|||
|
LC_PID .equ 126+8000h ;Left coin (Indestructible)
|
|||
|
RC_PID .equ 127+8000h
|
|||
|
CC_PID .equ 128+8000h
|
|||
|
SLAM_PID .equ 129+8000h
|
|||
|
DIAG_PID .equ 130
|
|||
|
PSWPID .equ 131 ;Plyr start switch
|
|||
|
|
|||
|
clockid .equ 132 ;24 second shot clock proc & img id
|
|||
|
tvid .equ 133 ;tv score plate images
|
|||
|
gclockid .equ 134 ;game clock
|
|||
|
tvscrid .equ 135 ;big tv score images
|
|||
|
bclockid .equ 136 ;big game clock
|
|||
|
creditid .equ 137 ;credit info at top score board
|
|||
|
stickid .equ 138 ;cpu message stick procid
|
|||
|
qrtrid .equ 139 ;qrtr imgs at scorers table
|
|||
|
arwid .equ 140 ;Plyr arrow process
|
|||
|
|
|||
|
p1stickid .equ 141 ;message stick on ids for p1
|
|||
|
p2stickid .equ 142
|
|||
|
p3stickid .equ 143
|
|||
|
p4stickid .equ 144 ;p4
|
|||
|
TIPID .equ 145
|
|||
|
ARWPID .equ 146
|
|||
|
adpid .equ 147
|
|||
|
takepid .equ 148
|
|||
|
|
|||
|
tmfireid .equ 149
|
|||
|
flashpid .equ 150 ;For flash_me routine
|
|||
|
|
|||
|
VOLBTN_PID .equ 149h ;coin door volume button
|
|||
|
VOLADJ_PID .equ 150h ;in-game volume adjustment
|
|||
|
FX_PID .equ 151h ;volume adjust bgnd noise
|
|||
|
|
|||
|
WATCH_FOR_PLAYERS_PID .equ 114
|
|||
|
TEAM1_SEL_PID .equ 152h
|
|||
|
TEAM2_SEL_PID .equ 153h
|
|||
|
FOG_PID .equ 154h
|
|||
|
TRAIL_HNDLR_PID .equ 155h
|
|||
|
CLOCK_PID .equ 156h ;during CREATE PLAYER
|
|||
|
JOIN_CYCLE_PID .equ 157h
|
|||
|
P1_BOX_SLIDE_PID .equ 158h
|
|||
|
P2_BOX_SLIDE_PID .equ 159h
|
|||
|
P3_BOX_SLIDE_PID .equ 15ah
|
|||
|
P4_BOX_SLIDE_PID .equ 15bh
|
|||
|
VS_LOGO_PID .equ 15ch
|
|||
|
FIRE_ANIM_PID .equ 15dh
|
|||
|
|
|||
|
WIN_STAY_PID .equ 15eh
|
|||
|
SHAKE_PID equ 15fh
|
|||
|
|
|||
|
METER_PID .equ 160h ;Jump ball meter
|
|||
|
PLYR_TRAIL_OBJ_PID .equ 161h
|
|||
|
FLSH_TXT_PID .equ 162h
|
|||
|
|
|||
|
SMOVE_PID .equ 162h ;Secret swirl moves
|
|||
|
|
|||
|
AMODE_PID .equ 100h ;Attract mode
|
|||
|
INTRO_PID .equ 300h ;Intro/player selection
|
|||
|
HISC_PID .equ 600h ;Hiscore table entry
|
|||
|
ENDQRTR_PID .equ 800h ;Hint pages/Halftime pages
|
|||
|
|
|||
|
P1_PID .equ 1000h ;P1 main loop
|
|||
|
|
|||
|
P2_PID .equ 1100h
|
|||
|
|
|||
|
P3_PID .equ 1200h
|
|||
|
|
|||
|
P4_PID .equ 1300h
|
|||
|
|
|||
|
P5_PID .equ 1400h
|
|||
|
P6_PID .equ 1500h
|
|||
|
|
|||
|
JOY_PID .equ 2000h ;Joystick scanner
|
|||
|
COLL_PID .equ 2100h ;Collisions
|
|||
|
STAT_PID .equ 2200h ;Status display
|
|||
|
HOOP_PID .equ 2300h ;Backboard,net,rim
|
|||
|
TOB_PID .equ 2400h ;Takeout ball
|
|||
|
CNTDWN_PID .equ 2500h ;countdown timer
|
|||
|
NOG_PID .equ 2600h ;no good (shots that don't go in)
|
|||
|
CYCPID2 .equ 2700h ;2nd cycler
|
|||
|
|
|||
|
|
|||
|
ANIMPID .equ 4000h ;Animation PIDs (256)
|
|||
|
ANIMPID2 .equ 4100h ;Animation2 PIDs (256)
|
|||
|
ANIMPID3 .equ 4200h ;Animation3 PIDs (256)
|
|||
|
ANIMPID4 .equ 4300h ;Animation4 PIDs (256)
|
|||
|
|
|||
|
QSNDRST_PID .equ 4400h
|
|||
|
HISCR_SCALE_PID .equ 4401h
|
|||
|
|
|||
|
|
|||
|
;OBJECT ID'S
|
|||
|
|
|||
|
;OBJECT IDENTIFIER FIELDS
|
|||
|
B_CLASS .set 15
|
|||
|
F_CLASS .set 0E000h
|
|||
|
|
|||
|
CLSNEUT .equ 0000h ;Neutral items
|
|||
|
CLSDEAD .equ 2000h ;Objects that delete themselves
|
|||
|
CLSANIM .equ 3800h ;Animation class objects
|
|||
|
CLSPLYR .equ 4000h ;Players stuff
|
|||
|
CLSENMY .equ 8000h ;Enemies
|
|||
|
|
|||
|
TYPNEUT .equ 0000h ;Type neutral
|
|||
|
TYPPLYR .equ 0100h ;Player
|
|||
|
TYPBALL .equ 0200h ;Basketball
|
|||
|
TYPTEXT .equ 0700h ;Type text
|
|||
|
|
|||
|
|
|||
|
;
|
|||
|
; Object classes
|
|||
|
;
|
|||
|
TM1BACKDROP .equ 0805h
|
|||
|
|
|||
|
COMBO_SYMBOLS_P1 equ 0806h ;obj class
|
|||
|
COMBO_SYMBOLS_P2 equ 0807h ;obj class
|
|||
|
COMBO_SYMBOLS_P3 equ 0808h ;obj class
|
|||
|
COMBO_SYMBOLS_P4 equ 0809h ;obj class
|
|||
|
PRIVILEGE_OBJS equ 080ah
|
|||
|
SM_PLYRS_NAME equ 080bh
|
|||
|
TM1_NAME_OBJS equ 080ch
|
|||
|
TM2_NAME_OBJS equ 080dh
|
|||
|
NICK_NAME_IMGS equ 080eh ;should put in game.equ
|
|||
|
HIT_PTS_FRACTION equ 080fh
|
|||
|
TM1_STAT_OBJS equ 0810h
|
|||
|
TM2_STAT_OBJS equ 0811h
|
|||
|
UNIFORM_NAME_OBJS equ 0812h
|
|||
|
|
|||
|
TM2BACKDROP .equ 0905h
|
|||
|
CREATE_PLYR_TIMER .equ 0901h
|
|||
|
BUTTON_PIECE .equ 0902h
|
|||
|
BUTN_BOX_STUFF .equ 0903h
|
|||
|
PLAYER_PIECE .equ 0904h
|
|||
|
BUTN_BOX_INST .equ 0905h
|
|||
|
BUTTON_INFO .equ 0906h
|
|||
|
BODY_STYLE_STR .equ 0907h
|
|||
|
BIG_BOX_STUFF .equ 0908h
|
|||
|
FOG_IMG_STUFF .equ 090ah
|
|||
|
OPTION_STUFF .equ 090bh
|
|||
|
SPOTLIGHT .equ 090ch
|
|||
|
BBALL_SHADOW .equ 090dh
|
|||
|
TITLE_BAR .equ 090eh
|
|||
|
TEAM_SEL_OBJS .equ 090fh
|
|||
|
YES_NO_BUTNS .equ 0900h
|
|||
|
|
|||
|
WIN_STAY_MSG .equ 0910h
|
|||
|
CHECK_MRK_OBJS .equ 0911h
|
|||
|
RULES_ID .equ 0912h
|
|||
|
P1_BTUNS .equ 0913h
|
|||
|
P2_BTUNS .equ 0914h
|
|||
|
P3_BTUNS .equ 0915h
|
|||
|
P4_BTUNS .equ 0916h
|
|||
|
TRIVIA_PTS_1_ID .equ 0917h
|
|||
|
TRIVIA_PTS_2_ID .equ 0918h
|
|||
|
TRIVIA_PTS_3_ID .equ 0919h
|
|||
|
TRIVIA_PTS_4_ID .equ 091ah
|
|||
|
TRIVIA_TIMER .equ 091bh
|
|||
|
PLR_TRAIL_ID .equ 091ch
|
|||
|
BUTN_PRIV_INST .equ 091dh
|
|||
|
STAT_TEXT_ID .equ 091eh
|
|||
|
ATTRIB_PLAQ_ID .equ 091fh
|
|||
|
|
|||
|
;TYPE NEUTRAL SUB TYPES
|
|||
|
SUBARW .EQU 1 ;ARROW ID
|
|||
|
SUBUP .EQU 2 ;OVERHEAD ITEMS
|
|||
|
SUBUP2 .EQU 3 ;OVERHEAD ITEMS AFTER VEL SET
|
|||
|
|
|||
|
;TYPE PLAYER SUB TYPES
|
|||
|
SUBPL1 .equ 1 ;P1
|
|||
|
SUBPL2 .equ 2 ;P2
|
|||
|
SUBPL3 .equ 3 ;P3
|
|||
|
SUBPL4 .equ 4 ;P4
|
|||
|
|
|||
|
;TYPE TEXT SUB TYPES
|
|||
|
SUBTXT .equ 1 ;TEXT ID
|
|||
|
SUBP1TXT .equ 2 ;P1 TEXT
|
|||
|
SUBP2TXT .equ 3 ;P2 TEXT
|
|||
|
SUBP1LVS .equ 4 ;ID FOR P1 LIVES DIGIT
|
|||
|
SUBWNDW .equ 5 ;BIG BOX WINDOW ID
|
|||
|
SUBNEW .equ 6 ;NEWOID FOR WAVES
|
|||
|
SUBTIME .equ 7 ;BTIME ID
|
|||
|
SUBMES1 .equ 8
|
|||
|
SUBMES2 .equ 9
|
|||
|
SUBGOTXT .equ 0Ah ;GAME OVER TEXT
|
|||
|
SUBSCOR .equ 0Bh ;SCORE ID
|
|||
|
SUBP2LVS .equ 0Ch ;ID FOR P2 LIVES DIGIT
|
|||
|
SUBDG1I .equ 0Dh ;CNTDWN PLYR1
|
|||
|
SUBDG2I .equ 0Eh ;CNTDWN PLYR2
|
|||
|
|
|||
|
|
|||
|
B_TYPE .set 12
|
|||
|
F_TYPE .set 1F00h
|
|||
|
B_PLYR .set 6
|
|||
|
F_PLYR .set 00C0h
|
|||
|
B_PLYR1 .set 6
|
|||
|
B_PLYR2 .set 7
|
|||
|
|
|||
|
B_SUBT .set 5
|
|||
|
F_SUBT .set 003Fh
|
|||
|
|
|||
|
JOYLFT .EQU 2
|
|||
|
JOYRGT .EQU 3
|
|||
|
JOYUP .EQU 0
|
|||
|
JOYDN .EQU 1
|
|||
|
|
|||
|
;BIT MASKS FOR PLAYER CONTROL TESTING
|
|||
|
|
|||
|
BMPRYTE .EQU 3 ;MOVE RIGHT,LEFT,DOWN,UP (LSB)
|
|||
|
BMPLEFT .EQU 2
|
|||
|
BMPDOWN .EQU 1
|
|||
|
BMPUP .EQU 0
|
|||
|
|
|||
|
;YUNIT EQUATES
|
|||
|
BMPFRYTE .EQU 7 ;FIRE RIGHT,LEFT,DOWN,UP (MSB)
|
|||
|
BMPFLEFT .EQU 6
|
|||
|
BMPFDOWN .EQU 5
|
|||
|
BMPFUP .EQU 4
|
|||
|
|
|||
|
;BITS USED IN PLAYER CONTROLS (1=ACTIVE)
|
|||
|
|
|||
|
PRYTE .EQU 8
|
|||
|
PLEFT .EQU 4
|
|||
|
PDOWN .EQU 2
|
|||
|
PUP .EQU 1
|
|||
|
|
|||
|
;YUNIT EQUATES FOR JOYSTICK
|
|||
|
PFRYTE .EQU 80H
|
|||
|
PFLEFT .EQU 40H
|
|||
|
PFDOWN .EQU 20H
|
|||
|
PFUP .EQU 10H
|
|||
|
|
|||
|
|
|||
|
*GAME STATE CONSTANTS
|
|||
|
INAMODE .equ 1
|
|||
|
ININTRO .equ 2
|
|||
|
INGAME .equ 3
|
|||
|
INPLYRINFO .equ 4
|
|||
|
INHALFPRICE .equ 5
|
|||
|
INFREEPRICE .equ 6
|
|||
|
INGAMEOV .equ 8
|
|||
|
INPLYRDESIGN .equ 9
|
|||
|
IN_PRE_PLYR_DESIGN .equ 7
|
|||
|
INDIAG .equ -1 ;Any neg
|
|||
|
|
|||
|
*ASCII FONT MISCELLANEOUS EQUATES
|
|||
|
F15SP .EQU 7EH ;FONT 15 SP CHARACTER, FOR HS ENTRY
|
|||
|
F15RUB .EQU F15SP+1 ;FONT 15 RUB CHARACTER,FOR HS ENTRY
|
|||
|
F15END .EQU F15RUB+1 ;FONT 15 END CHARACTER,FOR HS ENTRY
|
|||
|
F15RQUOT .EQU F15END+1 ;FONT 15 RIGHT QUOTE
|
|||
|
|
|||
|
* PLAYER DATA STRUCTURE
|
|||
|
|
|||
|
ply_messages .equ 00h ;img pntr for player buyin messages
|
|||
|
ply_stick .equ 20h ;img pntr for stuck on me message
|
|||
|
ply_turbo .equ 40h ;size of turbo meter remaining
|
|||
|
ply_turbo_dl .equ 50h ;delay before shrinking ply_turbo
|
|||
|
ply_time .equ 60h ;amount of play time remaining
|
|||
|
ply_points .equ 70h ;points this plyr scored
|
|||
|
ply_meter_imgs .equ 80h ;box,turbo meter,litup img needed for
|
|||
|
used_turbo .equ 0e0h ;cntr used for replenishing meter
|
|||
|
crds_paid .equ 0f0h ;For full game purchased
|
|||
|
head_arw_img .equ 100h ;*Plyr arrow img
|
|||
|
ply_idiot_use .equ 120h ;Has idiot used turbo?
|
|||
|
PDSIZE .equ 130h ;size of player data block
|
|||
|
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
* PDATA equates for name entry system
|
|||
|
|
|||
|
PC_CURSPOS equ PDATA+00h ;word
|
|||
|
PC_OBJID equ PDATA+10h ;word
|
|||
|
PC_TABWIDTH equ PDATA+20h ;word
|
|||
|
PC_TABSIZE equ PDATA+30h ;word
|
|||
|
PC_TABLE equ PDATA+40h ;dword
|
|||
|
PC_STARTX equ PDATA+60h ;word
|
|||
|
PC_STARTY equ PDATA+70h ;word
|
|||
|
PC_MENUBASE equ PDATA+80h ;dword
|
|||
|
PC_MENULEVEL equ PDATA+0a0h ;word
|
|||
|
PC_CURSOBJ equ PDATA+0b0h ;dword
|
|||
|
|
|||
|
PC_NAM1OBJ equ PDATA+0d0h ;dword
|
|||
|
PC_LOGOOBJ equ PC_NAM1OBJ
|
|||
|
PC_NAM2OBJ equ PDATA+0f0h ;dword
|
|||
|
PC_PNAME1 equ PC_NAM2OBJ
|
|||
|
PC_NAM3OBJ equ PDATA+110h ;dword
|
|||
|
PC_PNAME2 equ PC_NAM3OBJ
|
|||
|
PC_NAM4OBJ equ PDATA+130h
|
|||
|
PC_NAM5OBJ equ PDATA+150h
|
|||
|
PC_NAM6OBJ equ PDATA+170h
|
|||
|
|
|||
|
PC_PIN_NBR1 equ PDATA+190h ;dword
|
|||
|
PC_PIN_NBR2 equ PDATA+1b0h ;dword
|
|||
|
PC_PIN_NBR3 equ PDATA+1d0h ;dword
|
|||
|
PC_PIN_NBR4 equ PDATA+1f0h ;dword
|
|||
|
|
|||
|
;PC_MONTHOBJ equ PDATA+130h ;dword
|
|||
|
;PC_DAYOBJ equ PC_MONTHOBJ
|
|||
|
|
|||
|
PC_CHARPOS equ PDATA+210h ;word
|
|||
|
PC_CENTERX equ PDATA+220h ;word
|
|||
|
PC_HEAD1OBJ equ PDATA+230h ;dword
|
|||
|
PC_HEAD2OBJ equ PDATA+250h ;dword
|
|||
|
PC_CREDOBJS equ PDATA+270h ;dword * 3
|
|||
|
|
|||
|
PC_PLAYNUM equ PDATA+2d0h ;word
|
|||
|
PC_SPARE equ PDATA+2e0h ;word
|
|||
|
|
|||
|
PC_FLASHCOUNT equ PDATA+2f0h ;word
|
|||
|
PC_DATADDR equ PDATA+300h ;dword
|
|||
|
PC_CENTERX2 equ PDATA+320h ;word
|
|||
|
PC_ARROWOBJ equ PDATA+330h ;dword
|
|||
|
PC_CENTERXkit equ PDATA+350h ;word
|
|||
|
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
* player stats (during game)
|
|||
|
|
|||
|
PS_2PTS_TRY equ 0
|
|||
|
PS_2PTS_MADE equ 1
|
|||
|
PS_3PTS_TRY equ 2
|
|||
|
PS_3PTS_MADE equ 3
|
|||
|
PS_DUNKS_TRY equ 4
|
|||
|
PS_DUNKS_MADE equ 5
|
|||
|
PS_BLOCKS equ 6
|
|||
|
PS_OFF_REB equ 7
|
|||
|
PS_DEF_REB equ 8
|
|||
|
PS_STEALS equ 9
|
|||
|
PS_FREE_TRY equ 10
|
|||
|
PS_TURNOVERS equ 11
|
|||
|
PS_ASSISTS equ 12
|
|||
|
PS_INJURY equ 13
|
|||
|
PS_DBLE_DUNKS equ 14
|
|||
|
PS_ALLEYOOPS equ 15
|
|||
|
PS_SIZE equ 16
|
|||
|
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
* player record (while in RAM)
|
|||
|
|
|||
|
PR_COUNT equ 0 ;games played
|
|||
|
PR_WON equ PR_COUNT+16 ;games won
|
|||
|
PR_LOST equ PR_WON+16
|
|||
|
PR_LASTPLAY equ PR_LOST+16
|
|||
|
PR_NAME1 equ PR_LASTPLAY+16
|
|||
|
PR_NAME2 equ PR_NAME1+16
|
|||
|
PR_NAME3 equ PR_NAME2+16
|
|||
|
PR_NAME4 equ PR_NAME3+16
|
|||
|
PR_NAME5 equ PR_NAME4+16
|
|||
|
PR_NAME6 equ PR_NAME5+16
|
|||
|
PR_PIN_NBR1 equ PR_NAME6+16
|
|||
|
PR_PIN_NBR2 equ PR_PIN_NBR1+16
|
|||
|
PR_PIN_NBR3 equ PR_PIN_NBR2+16
|
|||
|
PR_PIN_NBR4 equ PR_PIN_NBR3+16
|
|||
|
PR_TEAMSDEF equ PR_PIN_NBR4+16
|
|||
|
PR_NUMDEF equ PR_TEAMSDEF+32
|
|||
|
PR_NUMDEFOLD equ PR_NUMDEF+16
|
|||
|
PR_WINSTREAK equ PR_NUMDEFOLD+16 ;current win streak
|
|||
|
PR_RANK equ PR_WINSTREAK+16
|
|||
|
PR_TOTAL_PTS equ PR_RANK+16 ;these are for CREATE PLAYER
|
|||
|
PR_HEIGHT_PTS equ PR_TOTAL_PTS+16
|
|||
|
PR_WEIGHT_PTS equ PR_HEIGHT_PTS+16
|
|||
|
PR_SPEED_PTS equ PR_WEIGHT_PTS+16
|
|||
|
PR_POWER_PTS equ PR_SPEED_PTS+16
|
|||
|
PR_SHOOT_PTS equ PR_POWER_PTS+16
|
|||
|
PR_DUNKS_PTS equ PR_SHOOT_PTS+16
|
|||
|
PR_STEAL_PTS equ PR_DUNKS_PTS+16
|
|||
|
PR_BLOCKS_PTS equ PR_STEAL_PTS+16
|
|||
|
PR_HEAD_NBR equ PR_BLOCKS_PTS+16
|
|||
|
PR_CREATED_PLYR equ PR_HEAD_NBR+16 ;wheter player used CREATE PLAYER
|
|||
|
PR_NICKNAME_NBR equ PR_CREATED_PLYR+16
|
|||
|
PR_PTS_SCORED equ PR_NICKNAME_NBR+16
|
|||
|
PR_PTS_ALLOWED equ PR_PTS_SCORED+16
|
|||
|
PR_UNIFORM_NBR equ PR_PTS_ALLOWED+16
|
|||
|
PR_TRIVIA_PTS equ PR_UNIFORM_NBR+16
|
|||
|
PR_PRIVILEGES equ PR_TRIVIA_PTS+16
|
|||
|
PR_CHECKSUM equ PR_PRIVILEGES+16
|
|||
|
PR_SIZE equ PR_CHECKSUM+16
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
* player record (while in CMOS)
|
|||
|
|
|||
|
PKDPR_COUNT equ 0 ;10 bits
|
|||
|
PKDPR_WON equ PKDPR_COUNT+10 ;10 bits
|
|||
|
PKDPR_LASTPLAY equ PKDPR_WON+10 ;11 bits
|
|||
|
PKDPR_NAME1 equ PKDPR_LASTPLAY+11 ;5 bits
|
|||
|
PKDPR_NAME2 equ PKDPR_NAME1+5 ;5 bits
|
|||
|
PKDPR_NAME3 equ PKDPR_NAME2+5 ;5 bits
|
|||
|
PKDPR_NAME4 equ PKDPR_NAME3+5 ;5 bits
|
|||
|
PKDPR_NAME5 equ PKDPR_NAME4+5 ;5 bits
|
|||
|
PKDPR_NAME6 equ PKDPR_NAME5+5 ;5 bits
|
|||
|
PKDPR_PIN_NBR1 equ PKDPR_NAME6+5 ; 5 bits
|
|||
|
PKDPR_PIN_NBR2 equ PKDPR_PIN_NBR1+5 ; 5 bits
|
|||
|
PKDPR_PIN_NBR3 equ PKDPR_PIN_NBR2+5 ; 5 bits
|
|||
|
PKDPR_PIN_NBR4 equ PKDPR_PIN_NBR3+5 ; 5 bits
|
|||
|
PKDPR_TEAMSDEF equ PKDPR_PIN_NBR4+5 ;30 bits (30 teams)
|
|||
|
PKDPR_WINSTREAK equ PKDPR_TEAMSDEF+30 ; 6 bits
|
|||
|
PKDPR_TOTAL_PTS equ PKDPR_WINSTREAK+6 ;7 bits
|
|||
|
PKDPR_HEIGHT_PTS equ PKDPR_TOTAL_PTS+7 ;4 bits
|
|||
|
PKDPR_WEIGHT_PTS equ PKDPR_HEIGHT_PTS+4 ;4 bits
|
|||
|
PKDPR_SPEED_PTS equ PKDPR_WEIGHT_PTS+4 ;4 bits
|
|||
|
PKDPR_POWER_PTS equ PKDPR_SPEED_PTS+4 ;4 bits
|
|||
|
PKDPR_SHOOT_PTS equ PKDPR_POWER_PTS+4 ;4 bits
|
|||
|
PKDPR_DUNKS_PTS equ PKDPR_SHOOT_PTS+4 ;4 bits
|
|||
|
PKDPR_STEAL_PTS equ PKDPR_DUNKS_PTS+4 ;4 bits
|
|||
|
PKDPR_BLOCKS_PTS equ PKDPR_STEAL_PTS+4 ;4 bits
|
|||
|
PKDPR_HEAD_NBR equ PKDPR_BLOCKS_PTS+4 ;8 bits
|
|||
|
PKDPR_CREATED_PLYR equ PKDPR_HEAD_NBR+8 ;1 bit
|
|||
|
PKDPR_NICKNAME_NBR equ PKDPR_CREATED_PLYR+1 ;6 bits
|
|||
|
PKDPR_PTS_SCORED equ PKDPR_NICKNAME_NBR+6 ;16 bits
|
|||
|
PKDPR_PTS_ALLOWED equ PKDPR_PTS_SCORED+16 ;16 bits
|
|||
|
PKDPR_UNIFORM_NBR equ PKDPR_PTS_ALLOWED+16 ;7 bits
|
|||
|
PKDPR_TRIVIA_PTS equ PKDPR_UNIFORM_NBR+7 ;8 bits
|
|||
|
PKDPR_PRIVILEGES equ PKDPR_TRIVIA_PTS+8 ;7 bits
|
|||
|
PKDPR_CHECKSUM equ PKDPR_PRIVILEGES+7 ;8 bits (206 bits total)
|
|||
|
PKDPR_SIZE equ ((PKDPR_CHECKSUM+8+7)/8)*8 ;must be on byte boundary
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
|
|||
|
|
|||
|
;FIX!!!!!!!!!!
|
|||
|
NUM_PRECORDS equ 410 ;increased size of record..make sure they all fit
|
|||
|
;NUM_PRECORDS equ 150 ;increased size of record..make sure they all fit
|
|||
|
;;NUM_PRECORDS equ 290
|
|||
|
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
* team record (while in RAM)
|
|||
|
|
|||
|
TR_PTS_SCORED equ 0
|
|||
|
TR_PTS_ALLOWED equ TR_PTS_SCORED+16
|
|||
|
TR_WINS equ TR_PTS_ALLOWED+16
|
|||
|
TR_OFF_RANK equ TR_WINS+16
|
|||
|
TR_DEF_RANK equ TR_OFF_RANK+16
|
|||
|
TR_TM_CHECKSUM equ TR_DEF_RANK+16
|
|||
|
TR_SIZE equ TR_TM_CHECKSUM+16
|
|||
|
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
* team record (while in CMOS)
|
|||
|
|
|||
|
PKDTR_PTS_SCORED equ 0 ;16 bits
|
|||
|
PKDTR_PTS_ALLOWED equ PKDTR_PTS_SCORED+16 ;16 bits
|
|||
|
PKDTR_WINS equ PKDTR_PTS_ALLOWED+16 ;11 bits
|
|||
|
PKDTR_TM_CHECKSUM equ PKDTR_WINS+11 ; 8 bits (51 bits total
|
|||
|
PKDTR_SIZE equ (((PKDTR_TM_CHECKSUM+8)+7)/8)*8 ;must be on byte boundary
|
|||
|
|
|||
|
NUM_TM_RECORDS equ NUM_TEAMS
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
* World records record (while in CMOS)
|
|||
|
|
|||
|
PKDWR_NAME1A equ 0 ;5 bits
|
|||
|
PKDWR_NAME2A equ PKDWR_NAME1A+5 ;5 bits
|
|||
|
PKDWR_NAME3A equ PKDWR_NAME2A+5 ;5 bits
|
|||
|
PKDWR_NAME4A equ PKDWR_NAME3A+5 ;5 bits
|
|||
|
PKDWR_NAME5A equ PKDWR_NAME4A+5 ;5 bits
|
|||
|
PKDWR_NAME6A equ PKDWR_NAME5A+5 ;5 bits
|
|||
|
PKDWR_PIN1A equ PKDWR_NAME6A+5 ;5 bits
|
|||
|
PKDWR_PIN2A equ PKDWR_PIN1A+5 ;5 bits
|
|||
|
PKDWR_PIN3A equ PKDWR_PIN2A+5 ;5 bits
|
|||
|
PKDWR_PIN4A equ PKDWR_PIN3A+5 ;5 bits
|
|||
|
PKDWR_WINSTREAK equ PKDWR_PIN4A+5 ;8 bits
|
|||
|
PKDWR_NAME1B equ PKDWR_WINSTREAK+8 ;5 bits
|
|||
|
PKDWR_NAME2B equ PKDWR_NAME1B+5 ;5 bits
|
|||
|
PKDWR_NAME3B equ PKDWR_NAME2B+5 ;5 bits
|
|||
|
PKDWR_NAME4B equ PKDWR_NAME3B+5 ;5 bits
|
|||
|
PKDWR_NAME5B equ PKDWR_NAME4B+5 ;5 bits
|
|||
|
PKDWR_NAME6B equ PKDWR_NAME5B+5 ;5 bits
|
|||
|
PKDWR_PIN1B equ PKDWR_NAME6B+5 ;5 bits
|
|||
|
PKDWR_PIN2B equ PKDWR_PIN1B+5 ;5 bits
|
|||
|
PKDWR_PIN3B equ PKDWR_PIN2B+5 ;5 bits
|
|||
|
PKDWR_PIN4B equ PKDWR_PIN3B+5 ;5 bits
|
|||
|
PKDWR_PTS_IN_GAME equ PKDWR_PIN4B+5 ;8 bits
|
|||
|
PKDWR_NAME1C equ PKDWR_PTS_IN_GAME+8 ;5 bits
|
|||
|
PKDWR_NAME2C equ PKDWR_NAME1C+5 ;5 bits
|
|||
|
PKDWR_NAME3C equ PKDWR_NAME2C+5 ;5 bits
|
|||
|
PKDWR_NAME4C equ PKDWR_NAME3C+5 ;5 bits
|
|||
|
PKDWR_NAME5C equ PKDWR_NAME4C+5 ;5 bits
|
|||
|
PKDWR_NAME6C equ PKDWR_NAME5C+5 ;5 bits
|
|||
|
PKDWR_PIN1C equ PKDWR_NAME6C+5 ;5 bits
|
|||
|
PKDWR_PIN2C equ PKDWR_PIN1C+5 ;5 bits
|
|||
|
PKDWR_PIN3C equ PKDWR_PIN2C+5 ;5 bits
|
|||
|
PKDWR_PIN4C equ PKDWR_PIN3C+5 ;5 bits
|
|||
|
PKDWR_REBNDS_IN_GAME equ PKDWR_PIN4C+5 ;8 bits
|
|||
|
PKDWR_NAME1D equ PKDWR_REBNDS_IN_GAME+8 ;5 bits
|
|||
|
PKDWR_NAME2D equ PKDWR_NAME1D+5 ;5 bits
|
|||
|
PKDWR_NAME3D equ PKDWR_NAME2D+5 ;5 bits
|
|||
|
PKDWR_NAME4D equ PKDWR_NAME3D+5 ;5 bits
|
|||
|
PKDWR_NAME5D equ PKDWR_NAME4D+5 ;5 bits
|
|||
|
PKDWR_NAME6D equ PKDWR_NAME5D+5 ;5 bits
|
|||
|
PKDWR_PIN1D equ PKDWR_NAME6D+5 ;5 bits
|
|||
|
PKDWR_PIN2D equ PKDWR_PIN1D+5 ;5 bits
|
|||
|
PKDWR_PIN3D equ PKDWR_PIN2D+5 ;5 bits
|
|||
|
PKDWR_PIN4D equ PKDWR_PIN3D+5 ;5 bits
|
|||
|
PKDWR_ASSISTS_IN_GAME equ PKDWR_PIN4D+5 ;8 bits
|
|||
|
PKDWR_CHECKSUM equ PKDWR_ASSISTS_IN_GAME+8 ;8 bits (240 bits total
|
|||
|
PKDWR_SIZE equ (((PKDWR_CHECKSUM+8)+7)/8)*8 ;must be on byte boundary
|
|||
|
|
|||
|
NUM_WRLD_RECS equ 1
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
* World records record (while in RAM)
|
|||
|
|
|||
|
WR_NAME1A equ 0
|
|||
|
WR_NAME2A equ WR_NAME1A+16
|
|||
|
WR_NAME3A equ WR_NAME2A+16
|
|||
|
WR_NAME4A equ WR_NAME3A+16
|
|||
|
WR_NAME5A equ WR_NAME4A+16
|
|||
|
WR_NAME6A equ WR_NAME5A+16
|
|||
|
WR_PIN1A equ WR_NAME6A+16
|
|||
|
WR_PIN2A equ WR_PIN1A+16
|
|||
|
WR_PIN3A equ WR_PIN2A+16
|
|||
|
WR_PIN4A equ WR_PIN3A+16
|
|||
|
WR_WINSTREAK equ WR_PIN4A+16
|
|||
|
WR_NAME1B equ WR_WINSTREAK+16
|
|||
|
WR_NAME2B equ WR_NAME1B+16
|
|||
|
WR_NAME3B equ WR_NAME2B+16
|
|||
|
WR_NAME4B equ WR_NAME3B+16
|
|||
|
WR_NAME5B equ WR_NAME4B+16
|
|||
|
WR_NAME6B equ WR_NAME5B+16
|
|||
|
WR_PIN1B equ WR_NAME6B+16
|
|||
|
WR_PIN2B equ WR_PIN1B+16
|
|||
|
WR_PIN3B equ WR_PIN2B+16
|
|||
|
WR_PIN4B equ WR_PIN3B+16
|
|||
|
WR_PTS_IN_GAME equ WR_PIN4B+16
|
|||
|
WR_NAME1C equ WR_PTS_IN_GAME+16
|
|||
|
WR_NAME2C equ WR_NAME1C+16
|
|||
|
WR_NAME3C equ WR_NAME2C+16
|
|||
|
WR_NAME4C equ WR_NAME3C+16
|
|||
|
WR_NAME5C equ WR_NAME4C+16
|
|||
|
WR_NAME6C equ WR_NAME5C+16
|
|||
|
WR_PIN1C equ WR_NAME6C+16
|
|||
|
WR_PIN2C equ WR_PIN1C+16
|
|||
|
WR_PIN3C equ WR_PIN2C+16
|
|||
|
WR_PIN4C equ WR_PIN3C+16
|
|||
|
WR_REBNDS_IN_GAME equ WR_PIN4C+16
|
|||
|
WR_NAME1D equ WR_REBNDS_IN_GAME+16 ;5 bits
|
|||
|
WR_NAME2D equ WR_NAME1D+16 ;5 bits
|
|||
|
WR_NAME3D equ WR_NAME2D+16 ;5 bits
|
|||
|
WR_NAME4D equ WR_NAME3D+16 ;5 bits
|
|||
|
WR_NAME5D equ WR_NAME4D+16 ;5 bits
|
|||
|
WR_NAME6D equ WR_NAME5D+16 ;5 bits
|
|||
|
WR_PIN1D equ WR_NAME6D+16 ;5 bits
|
|||
|
WR_PIN2D equ WR_PIN1D+16 ;5 bits
|
|||
|
WR_PIN3D equ WR_PIN2D+16 ;5 bits
|
|||
|
WR_PIN4D equ WR_PIN3D+16 ;5 bits
|
|||
|
WR_ASSISTS_IN_GAME equ WR_PIN4D+16 ;8 bits
|
|||
|
WR_CHECKSUM equ WR_ASSISTS_IN_GAME+16
|
|||
|
WR_SIZE equ WR_CHECKSUM+16
|
|||
|
|
|||
|
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
* team record (while in CMOS)
|
|||
|
|
|||
|
PKDTR_PTS_SCORED equ 0 ;16 bits
|
|||
|
PKDTR_PTS_ALLOWED equ PKDTR_PTS_SCORED+16 ;16 bits
|
|||
|
PKDTR_WINS equ PKDTR_PTS_ALLOWED+16 ;11 bits
|
|||
|
PKDTR_TM_CHECKSUM equ PKDTR_WINS+11 ; 8 bits (51 bits total
|
|||
|
PKDTR_SIZE equ (((PKDTR_TM_CHECKSUM+8)+7)/8)*8 ;must be on byte boundary
|
|||
|
|
|||
|
NUM_TM_RECORDS equ NUM_TEAMS
|
|||
|
|
|||
|
|
|||
|
RS_RECORD_NUM equ 0
|
|||
|
RS_GAMES_PLAYED equ RS_RECORD_NUM+10h
|
|||
|
RS_WINS equ RS_GAMES_PLAYED+10h
|
|||
|
RS_AVERAGE equ RS_WINS+10h
|
|||
|
RS_TEAMSDEF equ RS_AVERAGE+10h
|
|||
|
RS_STREAK equ RS_TEAMSDEF+10h
|
|||
|
RS_OFF_RANK equ RS_STREAK+10h
|
|||
|
RS_DEF_RANK equ RS_OFF_RANK+10h
|
|||
|
RS_TRIVIA_PTS equ RS_DEF_RANK+10h
|
|||
|
RS_SIZE equ RS_TRIVIA_PTS+10h
|
|||
|
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
* shot type equates (for play by play speech calls)
|
|||
|
|
|||
|
DESPERATION equ 0
|
|||
|
LONG_RANGE equ 1
|
|||
|
_2_POINTS equ 2
|
|||
|
_3_POINTS equ 3
|
|||
|
HOOK_SHOT equ 4
|
|||
|
LAY_UP equ 5
|
|||
|
FINGER_ROLL equ 6
|
|||
|
DUNK_SHORT equ 7
|
|||
|
DUNK_MED equ 8
|
|||
|
DUNK_LONG equ 9
|
|||
|
FADE_AWAY equ 10
|
|||
|
FADE_IN equ 11
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
|