198 lines
6.8 KiB
Plaintext
198 lines
6.8 KiB
Plaintext
**********************************MENU EQUATES****************************
|
||
;
|
||
; FOR EACH ENTRY IN THE MENU
|
||
;
|
||
MENU_TEXT_PTR EQU 0 ;OFFSET OF TEXT POINTER
|
||
MENU_ROUTINE EQU LONG_SIZE ;OFFSET OF ROUTINE
|
||
MENU_HELP EQU MENU_ROUTINE+LONG_SIZE
|
||
MENU_ENTRY_SIZE EQU 3*LONG_SIZE
|
||
*
|
||
BLNK_HELP EQU 0 ;NO HELP BOX FOR THIS ENTRY
|
||
NO_HELP EQU 00000001H ;NO HELP AREA IN THIS MENU
|
||
ADJ_HELP EQU 00000002H ;PASS STRUCTURE POINTER TO ADJUSTMENT HELP ROUT
|
||
SND_HELP EQU 00000003H ;CALLED ON SOUND TEST MENU
|
||
SND_PLAY EQU 00000004H ;CALLED FROM SOUND "PLAY" SELECTIONS
|
||
*
|
||
SND_MESS_Y EQU 196
|
||
SND_BOX_H EQU 57
|
||
|
||
*
|
||
* SPACING BETWEEN BOXES ON SCREEN
|
||
*
|
||
BOX_YGAP EQU 3
|
||
BOX_XGAP EQU 2
|
||
*
|
||
*
|
||
* A CENTERED BOX NEEDS TO BE MOVED LEFT THIS AMOUNT
|
||
* (PIXELS) TO CORRECTLY FRAME CENTERED TEXT AT
|
||
* THE SAME POSITION
|
||
*
|
||
C_KLUDGE EQU 1
|
||
*
|
||
* THESE DETERMINE THE THICKNESS OF THE BOX LINES
|
||
*
|
||
MB_XWID EQU 3
|
||
MB_YWID EQU 3
|
||
*
|
||
* GAP BETWEEN A MENU BORDER BOX AND
|
||
* THE SELECTION BAR
|
||
*
|
||
GAP EQU 2 ;GAP BETWEEN BORDER AND SELECTION BAR
|
||
*
|
||
* CONSTANT TO PASS TO "DO_BORDER" FOR OUR
|
||
* BOX SIZE
|
||
*
|
||
BORDER_SIZE EQU (MB_YWID*10000H)+MB_XWID
|
||
|
||
*******************************TEST TITLE CONSTANTS****************************
|
||
*
|
||
* THESE ARE USED TO SET TOP BOX AND MAIN TITLE.
|
||
* THE MENUS AND HELP SCREENS WILL SQUARE OFF
|
||
* TO THE NUMBERS SET HERE.
|
||
*
|
||
|
||
TM_X EQU 200 ;USED TO POSITION TITLE AND BOX TOGETHER
|
||
TM_Y EQU 10
|
||
|
||
TIT_ULX EQU TM_X-195
|
||
TIT_LRX EQU TM_X+189
|
||
|
||
TIT_ULY EQU TM_Y-6
|
||
TIT_LRY EQU TM_Y+32
|
||
|
||
********************************MAIN MENU CONSTANTS***************************
|
||
|
||
INST_ULY EQU TIT_LRY+BOX_YGAP ;Y RANGE FOR INSTRUCTION BOX
|
||
INST_LRY EQU INST_ULY+29
|
||
|
||
BAR_DY EQU -8
|
||
BAR_WID EQU 183
|
||
MENU_X EQU TIT_ULX+GAP+MB_XWID+(BAR_WID/2)+C_KLUDGE
|
||
MENU_Y EQU INST_LRY+BOX_YGAP+MB_YWID+GAP-BAR_DY
|
||
MENU_DY EQU 23
|
||
BAR_HITE EQU 26
|
||
BAR_DX EQU 6
|
||
*
|
||
* HELP DRAWER CONSTANTS
|
||
*
|
||
HELP_X_MARGIN EQU 10 ;MARGIN FOR LEFT JUSTIFIED HELP TEXT
|
||
HELP_Y_MARGIN EQU 8 ;TOP OF BOX TO 1ST ENTRY
|
||
HELP_YLO_MARGIN EQU HELP_Y_MARGIN-4 ;BOTTOM MARGIN IS A TOUCH LESS DUE
|
||
* ;TO SPACING
|
||
HELP_DY EQU 12 ;SCREEN UNITS PER ITEM.
|
||
*
|
||
*
|
||
* ADJUSTMENT MENU CONSTANTS
|
||
*
|
||
* "CURRENT SETTING" BOX
|
||
*
|
||
CUR_ULY EQU 125
|
||
CUR_LRX EQU TIT_LRX
|
||
CUR_LRY EQU CUR_ULY+(INST_LRY-INST_ULY) ;SAME HEIGHT AS TOP BOX
|
||
CUR_ULY2 EQU 140
|
||
CUR_LRY2 EQU CUR_ULY2+(INST_LRY-INST_ULY)
|
||
|
||
ADJ_ULY EQU CUR_LRY2+BOX_YGAP ;USE OUR "FIXED" SPACING.
|
||
ADJ_CULY EQU ADJ_ULY-20 ; COIN UPPER LEFT Y
|
||
ADJ_PULY EQU ADJ_ULY-28
|
||
|
||
COIN_HEAD_Y EQU ADJ_CULY+34 ;1ST OF TOP COIN INFO LINES
|
||
MESS_CTS EQU COIN_HEAD_Y+35 ;START/CONTINUE PLACE
|
||
|
||
**************************************************************************
|
||
* *
|
||
* COIN SELECT TABLE OFFSETS *
|
||
* *
|
||
**************************************************************************
|
||
|
||
* IF "CHUTES" VALUE CHANGES.....EXTRA WORDS MUST BE PUT HERE
|
||
|
||
CS_LMULT EQU 0
|
||
CS_CMULT EQU CS_LMULT+WORD_SIZE
|
||
CS_RMULT EQU CS_CMULT+WORD_SIZE
|
||
CS_XMULT EQU CS_RMULT+WORD_SIZE
|
||
CS_DBV EQU CS_XMULT+WORD_SIZE
|
||
CS_UCRED EQU CS_DBV+WORD_SIZE
|
||
CS_UBON EQU CS_UCRED+WORD_SIZE
|
||
CS_UMIN EQU CS_UBON+WORD_SIZE
|
||
|
||
CS_STRT EQU CS_UMIN+WORD_SIZE
|
||
CS_CONT EQU CS_STRT+WORD_SIZE
|
||
CS_CDIV EQU CS_CONT+WORD_SIZE
|
||
|
||
CS_FRAC EQU CS_CDIV+WORD_SIZE
|
||
CS_COPY EQU CS_FRAC+WORD_SIZE ;UP TO HERE IS COPIED AS ADJUSTMENTS
|
||
CS_LVAL EQU CS_COPY
|
||
CS_CVAL EQU CS_LVAL+WORD_SIZE
|
||
CS_RVAL EQU CS_CVAL+WORD_SIZE
|
||
CS_XVAL EQU CS_RVAL+WORD_SIZE
|
||
CS_DBVVAL EQU CS_XVAL+WORD_SIZE
|
||
CS_LMES EQU CS_DBVVAL+WORD_SIZE
|
||
CS_RMES EQU CS_LMES+LONG_SIZE
|
||
CS_PROMPT EQU CS_RMES+LONG_SIZE
|
||
CS_TITLE EQU CS_PROMPT+LONG_SIZE
|
||
CS_LIST EQU CS_TITLE+LONG_SIZE
|
||
CS_PICK EQU CS_LIST+LONG_SIZE ;WHICH LINE TO ADD TO 2 TO START...1 TO
|
||
CS_SLOTS EQU CS_PICK+WORD_SIZE ;TEXT DESCRIBING COIN SLOTS
|
||
CS_SIZE EQU CS_SLOTS+LONG_SIZE
|
||
|
||
*
|
||
* ADJUSTMENT STRUCTURE. THIS STRUCTURE IS
|
||
* POINTED TO BY THE 2ND MENU LONG WORD (WHERE NORMALLY
|
||
* THE ROUTINE LIVES).
|
||
*
|
||
AD_ROUT EQU 0 ;LONG...ROUTINE TO RUN WHEN SELECTED.
|
||
AD_TITLE EQU AD_ROUT+LONG_SIZE ;LONG...POINTER TO TITLE FOR RIGHT COLUMN
|
||
AD_HELP EQU AD_TITLE+LONG_SIZE ;LONG...POINT TO HELP STRUCT FOR EXPLANATION
|
||
AD_CMOS EQU AD_HELP+LONG_SIZE ;WORD...GET_ADJ / PUT_ADJ NUMBER.
|
||
AD_MIN EQU AD_CMOS+WORD_SIZE ;LONG...MINIMUM VALUE FOR ADJ.
|
||
AD_MAX EQU AD_MIN+LONG_SIZE ;LONG...MAXIMUM VALUE FOR ADJ.
|
||
AD_DELTA EQU AD_MAX+LONG_SIZE ;LONG...UNITS BETWEEN VALUES.
|
||
AD_ZEQU EQU AD_DELTA+LONG_SIZE ;LONG...NUMBER TO STORE AS A ZERO.
|
||
AD_NAMEIT EQU AD_ZEQU+LONG_SIZE ;LONG...ROUTINE TO PRINT VALUES.
|
||
AD_FLAGS EQU AD_NAMEIT+LONG_SIZE ;WORD...bit zero non zero says wrap
|
||
* ; bit one non zero says BCD
|
||
; bit two says flag "1st 8 coinage changed" (ADJVIRGIN)
|
||
; bit three says flag 1st 6 changed (ADJ1st6)
|
||
; bit four says its hsr counter
|
||
AD_NAMPTR EQU AD_FLAGS+WORD_SIZE ;LONG...POINTER TO DATA FOR NAMEIT ROUTINE
|
||
AD_MAIN EQU AD_NAMPTR+LONG_SIZE ;LONG...MAIN MENU STRING
|
||
|
||
WRAP_BIT EQU 0
|
||
BCD_BIT EQU 1
|
||
VIRG_BIT EQU 2
|
||
SIX_BIT EQU 3
|
||
HSR_BIT EQU 4
|
||
WRAP_VAL EQU 1
|
||
BCD_VAL EQU 2
|
||
VIRG_VAL EQU 4
|
||
SIX_VAL EQU 8
|
||
HSR_VAL EQU 16
|
||
*
|
||
* FOR CSELECT TABLE......
|
||
*
|
||
* A1 = 1 PLOT ONLY THE STRING LIST (1 OR 2 POINTERS
|
||
* CENTERED APPROPRIATELY
|
||
*
|
||
* A1 = 2 PLOT THE 1ST LINE OF THE STRING LIST ALONG
|
||
* WITH THE 2 CREDITS TO START...1 TO CONTINUE
|
||
*
|
||
* A1 = 3 PLOT THE 2ND LINE OF THE STRING LIST ALONG
|
||
* WITH THE 2 CREDITS TO START...1 TO CONTINUE
|
||
*
|
||
CSM_LIST EQU 1
|
||
CSM_1W_21 EQU 2
|
||
CSM_2W_21 EQU 3
|
||
CSM_3W_21 EQU 4
|
||
CSM_LAST EQU 4
|
||
|
||
*
|
||
* FOR CS_PICK:
|
||
*
|
||
SHOW_NONE EQU 0 ;JUST USE 2/1 BY ITSELF
|
||
SHOW_1 EQU 2 ;SHOW 1ST LINE
|
||
SHOW_2 EQU 3 ;SHOW 2ND LINE
|
||
SHOW_3 EQU 4 ;SHOW 3RD LINE
|
||
|
||
|
||
|