7641 lines
171 KiB
NASM
7641 lines
171 KiB
NASM
|
**************************************************************
|
|||
|
*
|
|||
|
* Software: LARRY DEMAR and DR. J
|
|||
|
* Initiated: ?
|
|||
|
*
|
|||
|
* Modified: Shawn Liptak, 11/1/91 -Total carnage
|
|||
|
* Shawn Liptak, 1/20/92 -Coinage from T2, Dipswitch
|
|||
|
* Shawn Liptak, 1/24/92 -Coinage corrections
|
|||
|
* Shawn Liptak, 3/4/92 -Basketball mods
|
|||
|
* Shawn Liptak, 10/2/92 -TUNIT sound mods
|
|||
|
* Jason Skiles, 11/24/93 -DCS sound mods
|
|||
|
* Jason Skiles, 12/3/93 -Strip audits for WWF
|
|||
|
*
|
|||
|
* COPYRIGHT (C) 1992 WILLIAMS ELECTRONICS GAMES, INC.
|
|||
|
*
|
|||
|
*.Last mod - 12/7/93 11:25
|
|||
|
**************************************************************
|
|||
|
.file "menu.asm"
|
|||
|
.title "test menus"
|
|||
|
.width 132
|
|||
|
.option b,d,l,t
|
|||
|
.mnolist
|
|||
|
|
|||
|
.include "mproc.equ"
|
|||
|
.include "display.equ"
|
|||
|
.include "sys.equ"
|
|||
|
.include "gsp.equ"
|
|||
|
.include "game.equ"
|
|||
|
.include "link.equ"
|
|||
|
.include "menu.equ"
|
|||
|
.include "macros.h"
|
|||
|
.include "sound.h"
|
|||
|
|
|||
|
.include "fontsimg.glo"
|
|||
|
|
|||
|
.text
|
|||
|
|
|||
|
; IN THIS MODULE
|
|||
|
|
|||
|
.DEF MEN_MAIN,GET_CSPT
|
|||
|
.DEF MESS_FAC
|
|||
|
.DEF ANY_BUT,MEN_YN
|
|||
|
.DEF STR_OBJ
|
|||
|
.DEF STR_FREE
|
|||
|
.DEF CKPROMPT
|
|||
|
.DEF GO_DIAG ;ROUTINE FOR DIAGNOSTIC MENU
|
|||
|
.DEF RTR_LEV,ROM_LEV
|
|||
|
.DEF MESS_MM
|
|||
|
.DEF CS_ENTS ;NUMBER OF HIGHEST IN COIN TABLE
|
|||
|
.DEF TWO_TS,TWO_TP
|
|||
|
.DEF FAC_STUF
|
|||
|
.DEF BUILD_ST
|
|||
|
.DEF SCODE ;SYNTH CODE CURRENTLY BEING MADE
|
|||
|
.DEF DCODE ;DIG CODE CURRENTLY BEING MADE
|
|||
|
.DEF HID_P
|
|||
|
.DEF SNDTST
|
|||
|
.DEF USA_1, USA_2, USA_3, USA_4, USA_ELECTITLE
|
|||
|
.DEF GERMAN_1, GERMAN_2, GERMAN_3, GERMAN_4, GERMAN_ELECTITLE
|
|||
|
.DEF FRENCH_1, FRENCH_2, FRENCH_3, FRENCH_4, FRENCH_ELECTITLE
|
|||
|
.DEF DIPCOINTAB
|
|||
|
.def RES_ALL
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
* EXTERNAL REFERENCES
|
|||
|
.ref _coin_addr
|
|||
|
.ref _switch_addr
|
|||
|
.ref _switch2_addr
|
|||
|
.ref _sound_addr
|
|||
|
.ref _soundirq_addr
|
|||
|
.ref _coin_counter_addr
|
|||
|
.ref _set_time
|
|||
|
.ref dec_to_asc
|
|||
|
.ref copy_rom_string
|
|||
|
.ref concat_string,concat_rom_string
|
|||
|
.ref message_buffer
|
|||
|
.ref MENU_TOP
|
|||
|
.ref COL_INST
|
|||
|
.ref GETSTICK
|
|||
|
.ref ST_STICK
|
|||
|
.ref CLR_MAIN
|
|||
|
.ref ADJ_INST
|
|||
|
.ref CADJ_BOX
|
|||
|
.ref CLR_CUR
|
|||
|
.ref _switch_map_mode
|
|||
|
.ref _clk_rd
|
|||
|
.ref _get_time
|
|||
|
.ref _aquire_time
|
|||
|
|
|||
|
.REF RNDRNG0
|
|||
|
.REF CREATE_TEXT_LINE
|
|||
|
|
|||
|
.globl _rtc_seconds, _rtc_day, _rtc_date, _rtc_month
|
|||
|
.globl _rtc_minutes, _rtc_hours, _rtc_year
|
|||
|
.globl _tseconds,_tminutes,_thours,_tday,_tdate,_tmonth,_tyear
|
|||
|
.globl _serial_number,_month,_day,_year,_man_date
|
|||
|
.globl _GetTime,_auto_update_save
|
|||
|
|
|||
|
.bss _setup_mess,10*16 ;Used for built messages
|
|||
|
.bss _setup_mess_msg,8*40 ;Used for built message strings
|
|||
|
|
|||
|
.bss _rtc_seconds,16 ;These are used when SETTING the RTC
|
|||
|
.bss _rtc_minutes,16
|
|||
|
.bss _rtc_hours,16
|
|||
|
.bss _rtc_day,16
|
|||
|
.bss _rtc_date,16
|
|||
|
.bss _rtc_month,16
|
|||
|
.bss _rtc_year,16
|
|||
|
|
|||
|
.bss _last_seconds,16 ;This is used when displaying the time
|
|||
|
|
|||
|
.bss _tseconds,16 ;This is where the current time is
|
|||
|
.bss _tminutes,16 ;stored when the time data is read
|
|||
|
.bss _thours,16 ;from the PIC.
|
|||
|
.bss _tday,16
|
|||
|
.bss _tdate,16
|
|||
|
.bss _tmonth,16
|
|||
|
.bss _tyear,16
|
|||
|
.bss _mytemp,32
|
|||
|
|
|||
|
.bss _serial_number,32 ;Game Serial Number (Hexidecimal)
|
|||
|
.bss _man_date,32 ;Date of manufacture (composite)
|
|||
|
.bss _month,32 ;Date of manufacture (month)
|
|||
|
.bss _day,32 ;Date of manufacture (date)
|
|||
|
.bss _year,32 ;Date of manufacture (year)
|
|||
|
|
|||
|
.bss _auto_update_save,32 ;Save area for clock auto update
|
|||
|
|
|||
|
|
|||
|
.ref display_init
|
|||
|
.ref opmsg_main
|
|||
|
.ref SWITCHTEST
|
|||
|
.ref CLR_AUD
|
|||
|
.ref fswitches_cur,fswitches_down,fudge_switches2
|
|||
|
.ref AREUSURE
|
|||
|
.ref RD15FONT
|
|||
|
.ref L_MESS
|
|||
|
.ref SCRCLR
|
|||
|
.ref SUR_MESS
|
|||
|
.ref DIAG_EX
|
|||
|
.ref GET_ADJ
|
|||
|
.ref NO_CREDS
|
|||
|
.ref COL_BARS
|
|||
|
.ref DIGSRT
|
|||
|
.ref STRCNRM
|
|||
|
.ref GET_AUD
|
|||
|
.ref STRCAT
|
|||
|
.ref QSNDRST
|
|||
|
.ref FAC_SET
|
|||
|
.ref GEN_MENU
|
|||
|
.ref STRNGRAM
|
|||
|
.ref GET_HSC
|
|||
|
.ref STD_BORD
|
|||
|
.ref CLR_AUDR
|
|||
|
.ref STRNEW1
|
|||
|
.ref CMOS_VAL
|
|||
|
.ref FORM_ADC
|
|||
|
.ref LM_FINIS
|
|||
|
.ref INIT_HSR
|
|||
|
.ref TOP_BOX
|
|||
|
.ref LM_SETUP
|
|||
|
.ref B_MENU
|
|||
|
.ref GO_ADJ
|
|||
|
.ref BLNKAREA
|
|||
|
.ref MAIN_RET
|
|||
|
.ref STRLNRM
|
|||
|
.ref RD7FONT
|
|||
|
.ref WC_WORD
|
|||
|
.ref HEXTOASC
|
|||
|
.ref DIAGCPUTEST
|
|||
|
.ref CROSS_H
|
|||
|
.ref WDOGDIS
|
|||
|
.ref SURE_BOX
|
|||
|
.ref ROM_NAME
|
|||
|
.ref STRRNRM
|
|||
|
.ref FILLAREA
|
|||
|
.ref CLR_SCRN
|
|||
|
.ref CAT_A0
|
|||
|
.ref CK_MAX
|
|||
|
.ref BURN_IN
|
|||
|
.ref WAIT_BUT
|
|||
|
.ref BAD_AUD
|
|||
|
|
|||
|
;from AUDIT.ASM
|
|||
|
.ref AUD1
|
|||
|
|
|||
|
;from DIAG.ASM
|
|||
|
.ref RECTANGLE
|
|||
|
|
|||
|
;from HSTD.ASM
|
|||
|
.ref INIT_TB,STREAK_TAB,PIN_SPEED_TAB,INIT_HSTRING
|
|||
|
.REF BEATEN_TAB
|
|||
|
.ref INTER_TAB
|
|||
|
.REF TAG_TAB
|
|||
|
|
|||
|
;from MPROC.ASM
|
|||
|
.ref KIL1C
|
|||
|
|
|||
|
;from NSOUND.ASM
|
|||
|
.ref SNDSND,nosounds,set_volume
|
|||
|
|
|||
|
;from UTIL.ASM
|
|||
|
.ref get_but_val_down,get_stick_val_cur,dpageflip_off
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
|
|||
|
.BSS FAC_FLAG,16 ;FLAG SAYS CLEAR AUDITS AND HSTABLE
|
|||
|
;IF FACTORY SETTINGS SUCCEED.
|
|||
|
.BSS SCODE,16 ;SYNTH CODE LAST MADE!
|
|||
|
.BSS DCODE,16 ;DIG CODE LAST MADE!
|
|||
|
.BSS TMPOBJ,32 ;TEMPORARY OBJECT FROM STR_OBJ
|
|||
|
|
|||
|
BSSX octopus2,16
|
|||
|
|
|||
|
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* COIN TABLE *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
*
|
|||
|
* The coin table is made up of the normal entries from
|
|||
|
* the pinball system, as well as some new ones that
|
|||
|
* determine start and buy-in cost, and others that
|
|||
|
* aid in the determination of a "total collection".
|
|||
|
*
|
|||
|
* Left Slot Multiplier word
|
|||
|
* Center Slot Multiplier word
|
|||
|
* Right Slot Multiplier word
|
|||
|
* fourth slot Muliplier word
|
|||
|
* bill validator Muliplier word
|
|||
|
* Units for Credit word
|
|||
|
* Units for Bonus word
|
|||
|
* Minimum Units word
|
|||
|
* Credits to start word
|
|||
|
* Credits to Continue word
|
|||
|
* Divisor in money calculation word 0 means "OFF"
|
|||
|
*
|
|||
|
* --------------------------------------------------------------
|
|||
|
* The above value get copied as adjustments (and are adjustable).
|
|||
|
* In addition, the coin table contains help on how to arrive at
|
|||
|
* the "Total Collection" for the coin audits.
|
|||
|
* --------------------------------------------------------------
|
|||
|
*
|
|||
|
* Count for each Left coin word
|
|||
|
* Count for each Center coin word
|
|||
|
* Count for each Right coin word
|
|||
|
* Count for fourth coin word
|
|||
|
* Count for DBV word
|
|||
|
* Pointer to Leading text string long
|
|||
|
* Pointer to Following text string long
|
|||
|
*
|
|||
|
**************************************************************************
|
|||
|
*
|
|||
|
* GET_CSPT
|
|||
|
*
|
|||
|
* THIS IS CALLED TO RETURN IN A6 THE CURRENT
|
|||
|
* CSELCT LINE AS STORED IN THE ADJUSTMENT TABLE.
|
|||
|
*
|
|||
|
**************************************************************************
|
|||
|
GET_CSPT
|
|||
|
PUSH a0
|
|||
|
movk ADJPRICE,a0
|
|||
|
CALLA GET_ADJ ;GET THE COIN SELECT NUMBER BEING USED.
|
|||
|
CALLR CS_POINT
|
|||
|
PULL a0
|
|||
|
RETS
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* CS_POINT - Point at selected entry in the coinage select table
|
|||
|
* A0=Offset #
|
|||
|
* Rets: A6=*Coinage table
|
|||
|
**************************************************************************
|
|||
|
CS_POINT
|
|||
|
MMTM SP,A0,A1
|
|||
|
MOVE A0,A0 ;ZERO?
|
|||
|
JRZ CS1 ;YEP...RETURN FIRST LINE
|
|||
|
|
|||
|
CMPI CS_ENTS,A0 ;IN RANGE?
|
|||
|
JRLS CS2 ;YEP...CONTINUE
|
|||
|
MOVK 1,A0 ;TOO LARGE.......USE 1ST LINE.
|
|||
|
|
|||
|
CS2 DEC A0 ;INDEX INTO TABLE
|
|||
|
CS1 MOVI CS_SIZE,A1 ;SIZE PER ENTRY
|
|||
|
MPYU A0,A1 ;OFFSET INTO TABLE
|
|||
|
ADDI CSELCT,A1
|
|||
|
MOVE A1,A6 ;RETURN THE POINTER
|
|||
|
MMFM SP,A0,A1
|
|||
|
RETS
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
*
|
|||
|
* CKPROMPT
|
|||
|
*
|
|||
|
* IS THERE A PROMPT STRING FOR THE CREDITS PAGE.
|
|||
|
*
|
|||
|
* A0 RETURNS:
|
|||
|
*
|
|||
|
* YES.....RETURN POINTER TO SOMETHING
|
|||
|
* NO......RETURN ZERO
|
|||
|
*
|
|||
|
* IF A0 HAS A POINTER THEN....
|
|||
|
*
|
|||
|
* IF A1 = 0 THEN A0 IS AN L_MESS STRING THAT SHOULD
|
|||
|
* JUST BE SENT OUT.
|
|||
|
*
|
|||
|
* IF A1 != 0 THEN A0 IS A POINTER LIST OF UP TO 2 MESSAGES.
|
|||
|
* THAT GIVE PRICING INFO
|
|||
|
*
|
|||
|
* A1 = 0 PLOT THE A0 STRING OUTRIGHT USING L_MESS
|
|||
|
* (IT CONTAINS ALL DATA)
|
|||
|
*
|
|||
|
* 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
|
|||
|
*
|
|||
|
* A1 = 4 PLOT THE 3RD LINE OF THE STRING LIST ALONG
|
|||
|
* WITH THE 2 CREDITS TO START...1 TO CONTINUE
|
|||
|
*
|
|||
|
* A1 = 5 PLOT THE 1ST LINE OF THE STRING LIST ALONG
|
|||
|
* ALONG WITH 2 COINS PER PLAYER
|
|||
|
*
|
|||
|
* A1 = 6 PLOT THE 2ND LINE OF THE STRING LIST ALONG
|
|||
|
* ALONG WITH 2 COINS PER PLAYER
|
|||
|
*
|
|||
|
* A1 = 7 PLOT THE 3RD LINE OF THE STRING LIST ALONG
|
|||
|
* ALONG WITH 2 COINS PER PLAYER
|
|||
|
*
|
|||
|
* A1 = 8 CUSTOM MESSAGE
|
|||
|
*
|
|||
|
**************************************************************************
|
|||
|
|
|||
|
CKPROMPT
|
|||
|
PUSH a6
|
|||
|
movk ADJFREPL,a0
|
|||
|
CALLA GET_ADJ
|
|||
|
jrnz RET_NO ;Free play?
|
|||
|
|
|||
|
CALLA CK_MAX ;ARE WE AT MAX CREDITS?
|
|||
|
JRHS RET_MAX
|
|||
|
|
|||
|
movk ADJNOCPAG,a0
|
|||
|
CALLA GET_ADJ ;CHECK THE ADJUSTMENT
|
|||
|
JRNZ CKSPCASE ;WE'RE SET TO SHUT UP.JUST START/CONT
|
|||
|
|
|||
|
movk ADJ1ST6,a0 ;has operator messed around?
|
|||
|
CALLA GET_ADJ
|
|||
|
JRZ CKSPCASE ;YEP...GO FOR GENERIC "2 TO START"
|
|||
|
|
|||
|
* OPERATOR IS USING CANNED COINAGE....WE NEED TO USE THE
|
|||
|
* CHECK IF ITS 2/1 OR 2/2
|
|||
|
|
|||
|
CALLR CK_2_CRED ;IS IT A 2 CREDIT MODE?
|
|||
|
JRZ NOT_2_MODE ;NOPE...PRINT STOCK STUFF
|
|||
|
|
|||
|
MOVE A0,A1 ;COPY 2/1 2/2 CODE
|
|||
|
CALLR GET_CSPT ;POINT A6 AT CSEL FOR US NOW.
|
|||
|
MOVE *A6(CS_PICK),A0 ;GET INDICATION OF WHICH LINE
|
|||
|
JRZ CKSPCASE ;IT SAYS JUST ENUMERATE THE MODE!
|
|||
|
|
|||
|
* NOW....IF ITS 2/1, A0 HAS THE CORRECT RETURN CODE
|
|||
|
* IF ITS 2/2 WE NEED TO ADD 2
|
|||
|
|
|||
|
subk 1,a1
|
|||
|
JRZ RET_A0_VAL ;2/1?
|
|||
|
|
|||
|
addk 3,a0
|
|||
|
JRUC RET_A0_VAL ;RETURN THIS!
|
|||
|
|
|||
|
NOT_2_MODE
|
|||
|
CALLR GET_CSPT ;POINT A6 AT CSEL FOR US NOW.
|
|||
|
MOVE *A6(CS_PROMPT),A0,L ;FETCH POINTER TO MESSAGE (IF ANY)
|
|||
|
JRZ CKSPCASE
|
|||
|
;WE HAVE SOMETHING STORED AT THE PROMPT
|
|||
|
CMPI CSM_LAST,A0 ;IS IT LITTLE?
|
|||
|
JRHI CKEXIT ;NOPE..ITS A POINTER..RETURN L_MESS STATUE
|
|||
|
|
|||
|
RET_A0_VAL
|
|||
|
MOVE A0,A1 ;ITS LITTLE...RETURN IT AS A CODE
|
|||
|
MOVE *A6(CS_LIST),A0,L ;PASS BACK MESSAGE LIST FOR THIS MODE
|
|||
|
JRUC CK_BYE
|
|||
|
|
|||
|
RET_NO CLR A0 ;IT IS FREE PLAY.
|
|||
|
CKEXIT CLR A1 ;NO FANCIES YET
|
|||
|
CK_BYE PULL a6
|
|||
|
move a0,a0 ;Pass Z
|
|||
|
rets
|
|||
|
|
|||
|
* CONTROL COMES HERE IF IT LOOKS LIKE NO MESSAGE IS
|
|||
|
* APPROPRIATE....CHECK FOR 2 TO START 1 TO CONTINUE GENERIC NEEDED.
|
|||
|
|
|||
|
CKSPCASE
|
|||
|
CALLR CK_2_CRED ;CHECK IF THERE ARE 2 CREDIT MODES.
|
|||
|
JRZ RET_NO ;NOT A 2 CREDIT MODE.
|
|||
|
|
|||
|
subk 1,a0
|
|||
|
JRZ TWO_ONE ;YEP...RETURN 2/1
|
|||
|
|
|||
|
MOVI TWO_CRED_PER_PLAYER,A0
|
|||
|
JRUC CKEXIT ;RETURN IT!
|
|||
|
|
|||
|
|
|||
|
TWO_ONE MOVI TWO_TO_START_2C,A0
|
|||
|
|
|||
|
|
|||
|
JRUC CKEXIT
|
|||
|
|
|||
|
RET_MAX MOVI MAX_C_M,A0
|
|||
|
JRUC CKEXIT
|
|||
|
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* CK_2_CRED - Checks if in a 2-credit to start mode
|
|||
|
*
|
|||
|
* A0=0 NOT 2/1 OR 2/2 CREDIT MODE
|
|||
|
* A0=1 2 TO START 1 TO CONTINUE
|
|||
|
* A0=2 2 TO START 2 TO CONTINUE
|
|||
|
*
|
|||
|
* Z NOT 2/1 OR 2/2 CREDIT MODE
|
|||
|
* NZ IS 2/1 OR 2/2 CREDIT MODE
|
|||
|
**************************************************************************
|
|||
|
CK_2_CRED
|
|||
|
MOVI ADJCSTRT,A0
|
|||
|
CALLA GET_ADJ ;HOW MANY TO START
|
|||
|
subk 2,a0
|
|||
|
jrnz c2c20 ;!2 to start?
|
|||
|
|
|||
|
MOVI ADJCCONT,A0
|
|||
|
CALLA GET_ADJ ;GET CONTINUE NUMBER
|
|||
|
cmpi 2,a0 ;1 or 2 is what we return
|
|||
|
jrhi c2c20 ;>2?
|
|||
|
move a0,a0 ;Return NZ (unless its 2/0)
|
|||
|
rets
|
|||
|
|
|||
|
c2c20 clr a0 ;Pass Z
|
|||
|
rets
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* MENU HANDLING SOFTWARE *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* FORCE_MAIN *
|
|||
|
* *
|
|||
|
* THIS IS CALLED TO GET TO MAIN MENU FROM LEVEL FURTHER *
|
|||
|
* THAN 1 DOWN. IT SETS THE GLOBAL FLAG "MAIN_RET" *
|
|||
|
* NON ZERO. GEN_MENU WILL KEEP RETURNING UNTIL *
|
|||
|
* IT GETS BACK TO THE MAIN MENU. *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
FORCE_MAIN
|
|||
|
MOVK 1,A0 ;POSITIVE NUMBER FORCES MAIN MENU.
|
|||
|
MOVE A0,@MAIN_RET
|
|||
|
RETP ;NOW "RETURN TO THE MENU"
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* DIAGNOSTIC TESTS SELECTED......SHOW DIAGNOSTIC TEST MENU *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
GO_DIAG
|
|||
|
MOVI MEN_DIAG,A8 ;PUT UP THE MENU AND GO!
|
|||
|
JAUC GEN_MENU ;THIS WILL RETURN TO LEVEL ABOVE US!
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* COIN BOOKKEEPING SELECTED *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
gb20 JSRP DO_CLCOIN
|
|||
|
GO_BOOK
|
|||
|
CALLA CLR_SCRN
|
|||
|
MOVI MES_BOOK,A2
|
|||
|
MOVI ROBO_WHITE,A3
|
|||
|
JSRP TOP_BOX ;PRINT TITLE BOX.
|
|||
|
|
|||
|
MOVI COIN_AUDS,A0 ;PUT TABLE UP.
|
|||
|
JSRP PRNT_AUD
|
|||
|
MOVI COIN1_AUDS,A0 ;PUT TABLE UP.
|
|||
|
JSRP PRNT_AUD
|
|||
|
|
|||
|
MOVI AUDLCOIN,A8 ;NOW PRINT MONEY FOR 1ST 3
|
|||
|
JSRP PRINT_COL
|
|||
|
|
|||
|
MOVI COIN2_AUDS,A0 ;PUT TABLE UP.
|
|||
|
JSRP PRNT_AUD
|
|||
|
|
|||
|
|
|||
|
|
|||
|
; MOVI COIN_A2,A0 ;PUT PART 2 OF THE TABLE THERE.
|
|||
|
; JSRP PRNT_AUD
|
|||
|
|
|||
|
MOVI MEN_DETAIL,A8
|
|||
|
MOVK 2,A9 ;CURSOR ON 2nd ENTRY
|
|||
|
JSRP B_MENU ;SEE IF THEY WANT PAGE 2.
|
|||
|
CMPI 1,A8 ;DID WE GET 1'ST ENTRY?
|
|||
|
jreq gb20
|
|||
|
|
|||
|
RETP
|
|||
|
|
|||
|
|
|||
|
;DETAIL_SCREEN
|
|||
|
; CALLA CLR_SCRN ;CLEAR OUT FOR ACTION!
|
|||
|
;
|
|||
|
; MOVI DT_Y1,A0 ;HEIGHT OF TOP TITLE
|
|||
|
; MOVI ROBO_YELLOW,A9 ;COLOR
|
|||
|
; CALLA F_TITLE ;FRAME IT
|
|||
|
;
|
|||
|
; MOVI DT_Y2,A0 ;HEIGHT OF 2ND TITLE
|
|||
|
; CALLA F_TITLE ;FRAME IT
|
|||
|
;
|
|||
|
; MOVI DETAIL_TITLES,A8 ;NO ROOM FOR PRETTY TOP BOX...DO TITLES
|
|||
|
; JSRP L_MESS ;ESTABLISH THE TITLES.
|
|||
|
;
|
|||
|
; MOVI COIN_D1,A0 ;DETAILED AUDIT 1
|
|||
|
; JSRP PRNT_AUD ;PRINT IT
|
|||
|
;
|
|||
|
; MOVI AUDLCOIN,A8 ;NOW PRINT MONEY FOR 1ST 3
|
|||
|
; JSRP PRINT_COL
|
|||
|
;
|
|||
|
; MOVI AUDLCSUB,A8 ;SUB-TOTAL OF TOTAL MONEY
|
|||
|
; JSRP PRINT_SUBTOTAL ;PRINT IT.
|
|||
|
;
|
|||
|
; MOVI COIN_D2,A0 ;DETAILED AUDIT 2
|
|||
|
; JSRP PRNT_AUD
|
|||
|
;
|
|||
|
; MOVI AUDLCDC,A8 ;NOW PRINT MONEY FOR DOOR CLOSED SET
|
|||
|
; JSRP PRINT_COL
|
|||
|
;
|
|||
|
; MOVI AUDLCDCS,A8 ;NOW PRINT SUB-TOTAL FOR DOOR CLOSED
|
|||
|
; JSRP PRINT_SUBTOTAL ;THATS IT!
|
|||
|
;
|
|||
|
; MOVI MEN_CLR_SUB,A8 ;CLEAR SUBTOTAL OR RETURN TO MAIN MENU
|
|||
|
; MOVI 2,A9 ;CURSOR ON 2ND ENTRY
|
|||
|
; JSRP B_MENU
|
|||
|
;
|
|||
|
; CMPI 1,A8 ;CHOICE 1 IS CLEAR.....
|
|||
|
; JRNZ NO_CLEAR_SUB ;NOPE...RETURN TO CALLER!
|
|||
|
;
|
|||
|
; MOVI MESS_CLEAR_SUBS,A8 ;CLEAR COIN SUB-TOTALS...ARE YOU SURE
|
|||
|
; MOVI CLR_SUBS,A9 ;ROUTINE TO DO IT
|
|||
|
; MOVI MESS_SUBS_CLEAR,A10 ;CONFIRMATION.
|
|||
|
; JSRP AREUSURE ;ASK EM.
|
|||
|
; JRUC DETAIL_SCREEN ;NOW PUT THIS SCREEN BACK UP.
|
|||
|
;
|
|||
|
;NO_CLEAR_SUB
|
|||
|
;NO_DETAIL
|
|||
|
; RETP ;AND RETURN TO OUR CALLER.
|
|||
|
;
|
|||
|
;PRINT_SUBTOTAL
|
|||
|
; CALLR ADD_AUDIT_DY ;PUSH THE Y 1 LEVEL
|
|||
|
; MOVI T_SUB,A9 ;USE "SUB-TOTAL" MESSAGE
|
|||
|
; JAUC PRINT_MONEY ;AND NOW PRINT THE REQUESTED SUM.
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* GAME AUDITS SELECTED *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* AUDITS TO BE SHOWN ON GAME AUDITS PAGE: *
|
|||
|
* *
|
|||
|
* EXTRA MEN *
|
|||
|
* GAMES COMPLETED *
|
|||
|
* 1 PLAYER MINUTES *
|
|||
|
* 2 PLAYER MINUTES *
|
|||
|
* TOTAL HOURS PLAYED *
|
|||
|
* AVG "PLAYER" GAME TIME *
|
|||
|
* AVG. ELAPSED TIME / PLAY *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
|
|||
|
GO_AUD
|
|||
|
CALLA CLR_SCRN
|
|||
|
MOVI MES_AUD,A2
|
|||
|
MOVI ROBO_CYAN,A3
|
|||
|
JSRP TOP_BOX ;PRINT TITLE BOX.
|
|||
|
|
|||
|
MOVI GAME_AUDS1,A0 ;PUT TABLE UP.
|
|||
|
JSRP PRNT_AUD
|
|||
|
SLEEPK 1
|
|||
|
|
|||
|
MOVI MEN_AP1,A8 ;AUDIT PAGE 1 MENU
|
|||
|
MOVK 1,A9 ;CURSOR ON 1ST ENTRY
|
|||
|
JSRP B_MENU ;SEE IF THEY WANT PAGE 2.
|
|||
|
CMPI 1,A8 ;DID WE GET 1'ST ENTRY?
|
|||
|
JRNZ NO_AP2 ;NOPE...RETURN TO OUR CALLER
|
|||
|
|
|||
|
|
|||
|
#page2
|
|||
|
CALLA CLR_SCRN
|
|||
|
|
|||
|
MOVI MES_AUD,A2
|
|||
|
MOVI ROBO_CYAN,A3
|
|||
|
JSRP TOP_BOX ;PRINT TITLE BOX.
|
|||
|
|
|||
|
MOVI GAME_AUDS2,A0 ;PUT TABLE UP.
|
|||
|
JSRP PRNT_AUD
|
|||
|
|
|||
|
MOVI MEN_AP2,A8
|
|||
|
MOVK 1,A9 ;CURSOR ON 1ST ENTRY
|
|||
|
JSRP B_MENU ;SEE IF THEY WANT PAGE 2.
|
|||
|
cmpi 2,A8 ;DID WE GET 2nd ENTRY (RETURN TO PAGE 1)
|
|||
|
jreq GO_AUD ;YEP...PUT IT UP!
|
|||
|
|
|||
|
#page2a
|
|||
|
CALLA CLR_SCRN
|
|||
|
|
|||
|
MOVI MES_AUD,A2
|
|||
|
MOVI ROBO_CYAN,A3
|
|||
|
JSRP TOP_BOX ;PRINT TITLE BOX.
|
|||
|
|
|||
|
MOVI GAME_AUDS2a,A0 ;PUT TABLE UP.
|
|||
|
JSRP PRNT_AUD
|
|||
|
|
|||
|
MOVI MEN_AP2,A8
|
|||
|
MOVK 1,A9 ;CURSOR ON 1ST ENTRY
|
|||
|
JSRP B_MENU ;SEE IF THEY WANT PAGE 2.
|
|||
|
cmpi 2,A8 ;DID WE GET 2nd ENTRY (RETURN TO PAGE 1)
|
|||
|
jreq #page2 ;YEP...PUT IT UP!
|
|||
|
|
|||
|
#page3
|
|||
|
CALLA CLR_SCRN
|
|||
|
|
|||
|
MOVI MES_AUD,A2
|
|||
|
MOVI ROBO_CYAN,A3
|
|||
|
JSRP TOP_BOX ;PRINT TITLE BOX.
|
|||
|
|
|||
|
MOVI GAME_AUDS3a,A0 ;PUT TABLE UP.
|
|||
|
JSRP PRNT_AUD
|
|||
|
|
|||
|
MOVI GAME_AUDS3b,A0 ;PUT TABLE UP.
|
|||
|
JSRP PRNT_AUD
|
|||
|
|
|||
|
MOVI GAME_AUDS3c,A0 ;PUT TABLE UP.
|
|||
|
JSRP PRNT_AUD
|
|||
|
|
|||
|
MOVI GAME_AUDS3d,A0 ;PUT TABLE UP.
|
|||
|
JSRP PRNT_AUD
|
|||
|
|
|||
|
movi GAUD_P3HEAD1,a8 ;and the page header
|
|||
|
JSRP L_MESS
|
|||
|
|
|||
|
movi GAUD_P3HEAD2,a8 ;and the page header
|
|||
|
JSRP L_MESS
|
|||
|
|
|||
|
movi GAUD_P3HEAD3,a8 ;and the page header
|
|||
|
JSRP L_MESS
|
|||
|
|
|||
|
movi GAUD_P3HEAD4,a8 ;and the page header
|
|||
|
JSRP L_MESS
|
|||
|
|
|||
|
movi GAUD_P3HEAD5,a8 ;and the page header
|
|||
|
JSRP L_MESS
|
|||
|
|
|||
|
movi GAUD_P3HEAD6,a8 ;and the page header
|
|||
|
JSRP L_MESS
|
|||
|
|
|||
|
MOVI MEN_AP3,A8
|
|||
|
MOVK 1,A9 ;CURSOR ON 1ST ENTRY
|
|||
|
JSRP B_MENU ;SEE IF THEY WANT PAGE 2.
|
|||
|
cmpi 2,A8 ;DID WE GET 2nd ENTRY (RETURN TO PAGE 2)
|
|||
|
; jreq #page2 ;YEP...PUT IT UP!
|
|||
|
jreq #page2a ;YEP...PUT IT UP!
|
|||
|
|
|||
|
NO_AP2
|
|||
|
RETP
|
|||
|
|
|||
|
GO_UTIL
|
|||
|
MOVI MEN_UTIL,A8
|
|||
|
JAUC GEN_MENU ;PROCESS THE UTILITY MENU!
|
|||
|
*
|
|||
|
* INDIVIDUAL UTILITY PROGRAMS
|
|||
|
*
|
|||
|
|
|||
|
DO_CLCRED
|
|||
|
MOVI MESS_CLCRED,A8 ;CLEAR COIN SUB-TOTALS...ARE YOU SURE
|
|||
|
MOVI CLR_CREDITS,A9 ;ROUTINE TO DO IT
|
|||
|
MOVI MESS_CCCONF,A10 ;CONFIRMATION.
|
|||
|
JAUC AREUSURE ;ASK EM......THEN RETURN!
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* VOLUME ADJUSTMENT SELECTED *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
|
|||
|
.bss bar_height,16
|
|||
|
|
|||
|
GO_VOL
|
|||
|
|
|||
|
calla display_blank
|
|||
|
calla dpageflip_off ;page flipping off
|
|||
|
|
|||
|
calla CLR_SCRN
|
|||
|
movi M_VOLUME,a2
|
|||
|
movi ROBO_GREEN,a3
|
|||
|
JSRP TOP_BOX
|
|||
|
|
|||
|
create FX_PID,background_sound ;noise
|
|||
|
|
|||
|
; movi pf_volume_1,a8 ;title/instructions
|
|||
|
; JSRP L_MESS
|
|||
|
movi pf_volume_2,a8
|
|||
|
JSRP L_MESS
|
|||
|
movi pf_volume_3,a8
|
|||
|
JSRP L_MESS
|
|||
|
|
|||
|
movi bxy,a0 ;frame
|
|||
|
movi bw|bh,a1
|
|||
|
; movi ROBO_GREEN,a2
|
|||
|
movi ROBO_BLUE,a2
|
|||
|
fcall RECTANGLE,b6
|
|||
|
|
|||
|
movi bxy+>00030003,a0 ;frame
|
|||
|
movi bw|bh->00060006,a1
|
|||
|
movi ROBO_BLACK,a2
|
|||
|
fcall RECTANGLE,b6
|
|||
|
|
|||
|
movi pf_volume_4,a8 ;MIN/MAX
|
|||
|
JSRP L_MESS
|
|||
|
movi pf_volume_5,a8
|
|||
|
JSRP L_MESS
|
|||
|
|
|||
|
clr a0
|
|||
|
move a0,@bar_height
|
|||
|
movi ADJVOLUME,a0
|
|||
|
calla GET_ADJ
|
|||
|
BADCHK a0,0,255,28 ;reg, lo, hi, val if bad
|
|||
|
calla set_volume
|
|||
|
callr vol_to_ht
|
|||
|
callr adjust_bar_height
|
|||
|
SLEEPK 2
|
|||
|
calla display_unblank
|
|||
|
|
|||
|
vol_loop_top
|
|||
|
SLEEPK 1
|
|||
|
|
|||
|
;check for done
|
|||
|
clr a1
|
|||
|
clr a0
|
|||
|
calla get_but_val_down
|
|||
|
or a0,a1
|
|||
|
movk 1,a0
|
|||
|
calla get_but_val_down
|
|||
|
or a0,a1
|
|||
|
move @_coin_addr,a0,L
|
|||
|
move *a0,a0
|
|||
|
not a0
|
|||
|
; andi 0e7ffh,a0
|
|||
|
andi 0e7efh,a0
|
|||
|
or a0,a1
|
|||
|
jrnz vol_loop_done
|
|||
|
|
|||
|
;check for a vol change
|
|||
|
clr a0
|
|||
|
calla get_stick_val_cur
|
|||
|
move a0,a1
|
|||
|
movk 1,a0
|
|||
|
calla get_stick_val_cur
|
|||
|
or a0,a1
|
|||
|
andi 0011b,a1 ;filter out left/right
|
|||
|
|
|||
|
;listen to the coin door switches too. OR them in.
|
|||
|
; move @COINS,a0 ;the down switch
|
|||
|
move @_coin_addr,a0,L
|
|||
|
move *a0,a0
|
|||
|
not a0
|
|||
|
andi 0800h,a0
|
|||
|
srl 10,a0
|
|||
|
or a0,a1
|
|||
|
; move @COINS,a0 ;the up switch
|
|||
|
move @_coin_addr,a0,L
|
|||
|
move *a0,a0
|
|||
|
not a0
|
|||
|
andi 1000h,a0
|
|||
|
srl 12,a0
|
|||
|
or a0,a1
|
|||
|
jrz vol_loop_top
|
|||
|
|
|||
|
;get the volume
|
|||
|
movi ADJVOLUME,a0
|
|||
|
calla GET_ADJ
|
|||
|
|
|||
|
;make sure the volume is in range
|
|||
|
BADCHK a0,1,255,28 ;reg, lo, hi, val if bad
|
|||
|
; cmpi 4,a0
|
|||
|
; jrge vol_notlow
|
|||
|
; movi 4,a0
|
|||
|
; jruc vol_nothigh
|
|||
|
;vol_notlow
|
|||
|
; cmpi 255,a0
|
|||
|
; jrle vol_nothigh
|
|||
|
; movi 255,a0
|
|||
|
;vol_nothigh
|
|||
|
|
|||
|
btst JOYDN,a1
|
|||
|
jrnz vol_dec
|
|||
|
|
|||
|
;increment volume
|
|||
|
cmpi 255,a0
|
|||
|
jreq vol_loop_top
|
|||
|
inc a0
|
|||
|
calla set_volume
|
|||
|
callr vol_to_ht
|
|||
|
callr adjust_bar_height
|
|||
|
jruc vol_loop_top
|
|||
|
|
|||
|
vol_dec ;decrement volume
|
|||
|
cmpi 4,a0
|
|||
|
jreq vol_loop_top
|
|||
|
dec a0
|
|||
|
calla set_volume
|
|||
|
callr vol_to_ht
|
|||
|
callr adjust_bar_height
|
|||
|
jruc vol_loop_top
|
|||
|
|
|||
|
vol_loop_done
|
|||
|
movi FX_PID,a0 ;kill the background noise
|
|||
|
calla KIL1C
|
|||
|
calla nosounds
|
|||
|
|
|||
|
RETP
|
|||
|
|
|||
|
|
|||
|
#***************************************
|
|||
|
* Adjusts the bar height
|
|||
|
* >a0=new height (1-170)
|
|||
|
|
|||
|
SUBRP adjust_bar_height
|
|||
|
|
|||
|
move a0,a1
|
|||
|
move @bar_height,a0
|
|||
|
#adjust_loop
|
|||
|
cmp a1,a0
|
|||
|
jreq #done
|
|||
|
jrlt #grow_bar
|
|||
|
|
|||
|
movi ROBO_BLACK,a2
|
|||
|
callr vol_bar_line
|
|||
|
dec a0
|
|||
|
jruc #adjust_loop
|
|||
|
|
|||
|
#grow_bar
|
|||
|
inc a0
|
|||
|
movi ROBO_RED,a2
|
|||
|
callr vol_bar_line
|
|||
|
jruc #adjust_loop
|
|||
|
|
|||
|
#done
|
|||
|
move a0,@bar_height
|
|||
|
rets
|
|||
|
|
|||
|
|
|||
|
****************************************
|
|||
|
* Draws a line on the volume bar, but won't overwrite green pixels (text)
|
|||
|
* >a0=line index (not Ypos) >a2=color
|
|||
|
|
|||
|
SUBRP vol_bar_line
|
|||
|
|
|||
|
PUSH a0,a1,a2
|
|||
|
;convert the line index to a linear address
|
|||
|
sla 16,a0
|
|||
|
neg a0
|
|||
|
addi bxy+bh->00030000+59,a0 ;various fudges here
|
|||
|
cvxyl a0,a0
|
|||
|
|
|||
|
;now write the color value to all non-green pixels
|
|||
|
movi bw-6,a14
|
|||
|
vbl_pixel_loop
|
|||
|
movb *a0,a1
|
|||
|
; cmpi ROBO_GREEN&0Fh,a1
|
|||
|
cmpi ROBO_BLUE&0Fh,a1
|
|||
|
jreq vbl_skip_pixel
|
|||
|
movb a2,*a0
|
|||
|
vbl_skip_pixel
|
|||
|
addk 8,a0
|
|||
|
dsj a14,vbl_pixel_loop
|
|||
|
|
|||
|
PULL a0,a1,a2
|
|||
|
rets
|
|||
|
|
|||
|
****************************************
|
|||
|
* Converts a 0-255 volume value to a 1-170 bar height value
|
|||
|
* >a0=volume
|
|||
|
* <a0=height
|
|||
|
|
|||
|
SUBRP vol_to_ht
|
|||
|
|
|||
|
PUSH a1
|
|||
|
move a0,a1
|
|||
|
movi 169,a14
|
|||
|
mpyu a14,a1
|
|||
|
movi 255,a14
|
|||
|
divu a14,a1
|
|||
|
inc a1
|
|||
|
move a1,a0
|
|||
|
PULL a1
|
|||
|
|
|||
|
rets
|
|||
|
|
|||
|
****************************************
|
|||
|
* Makes noises during sound test.
|
|||
|
*
|
|||
|
|
|||
|
SUBRP background_sound
|
|||
|
clr a3
|
|||
|
calla SNDSND
|
|||
|
movi 1000,a3
|
|||
|
calla SNDSND
|
|||
|
SLEEP >40
|
|||
|
|
|||
|
bgsnd3 movi sound_fx_table,a10
|
|||
|
bgsnd6 move *a10+,a3,W
|
|||
|
jrz bgsnd3
|
|||
|
calla SNDSND
|
|||
|
SLEEP >20
|
|||
|
jruc bgsnd6
|
|||
|
|
|||
|
sound_fx_table
|
|||
|
.word 6528
|
|||
|
.word >0B0
|
|||
|
.word >080
|
|||
|
.word >203
|
|||
|
.word >0C5
|
|||
|
.word >0B9
|
|||
|
.word >0CB
|
|||
|
.word >206
|
|||
|
.word >0B6
|
|||
|
.word >0D1
|
|||
|
.word >315
|
|||
|
.word >202
|
|||
|
.word 0
|
|||
|
|
|||
|
pf_volume_2
|
|||
|
MESS_MAC RD7FONT,SPACING20,200,174+53,COLOR_YELLOW,STRCNRM,0
|
|||
|
.string "ADJUST VOLUME WITH JOYSTICKS OR VOLUME BUTTONS",0,0
|
|||
|
.even
|
|||
|
|
|||
|
pf_volume_3
|
|||
|
MESS_MAC RD7FONT,SPACING20,200,184+53,ROBO_LASER,STRCNRM,0
|
|||
|
.string "ANY OTHER BUTTON TO QUIT",0,0
|
|||
|
.even
|
|||
|
|
|||
|
pf_volume_4
|
|||
|
MESS_MAC RD7FONT,SPACING20,201,vb_y+>05,ROBO_BLUE,STRCNRM,0
|
|||
|
.string "MAX",0,0
|
|||
|
.even
|
|||
|
|
|||
|
pf_volume_5
|
|||
|
MESS_MAC RD7FONT,SPACING20,201,vb_y+>a0,ROBO_BLUE,STRCNRM,0
|
|||
|
.string "MIN",0,0
|
|||
|
.even
|
|||
|
|
|||
|
vb_y .set >2f
|
|||
|
vb_height .set 171
|
|||
|
bxy .set >002e0000+200->18
|
|||
|
|
|||
|
bh .set >b0*>10000
|
|||
|
bw .set >30
|
|||
|
|
|||
|
bthickx .set 3
|
|||
|
bthicky .set 3*>10000
|
|||
|
|
|||
|
volume_table
|
|||
|
.long bh+3,bxy ; height:width / y:x coordinates
|
|||
|
.long bh+3,bxy+bw ; height:width / y:x coordinates
|
|||
|
|
|||
|
.long bthicky+bw,bxy ; height:width / y:x coordinates
|
|||
|
.long bthicky+bw+bthickx,bxy+bh ; height:width / y:x coordinates
|
|||
|
.long 0
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* CLR_CREDITS *
|
|||
|
* *
|
|||
|
* ROUTINE TO CLEAR OUT THE CREDITS POSTED ON THE GAME. *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
CLR_CREDITS
|
|||
|
CALLA NO_CREDS ;CALL THE ROUTINE THAT DOES IT
|
|||
|
RETP
|
|||
|
|
|||
|
DO_CLCOIN
|
|||
|
MOVI MESS_CLCOIN,A8 ;CLEAR COIN SUB-TOTALS...ARE YOU SURE
|
|||
|
MOVI CLR_COINS,A9 ;ROUTINE TO DO IT
|
|||
|
MOVI MESS_CCNCONF,A10 ;CONFIRMATION.
|
|||
|
JAUC AREUSURE ;ASK EM......THEN RETURN!
|
|||
|
|
|||
|
CLR_COINS
|
|||
|
MOVI FRST_C,A0
|
|||
|
MOVI LAST_C,A1
|
|||
|
CALLA CLR_AUDR
|
|||
|
RETP
|
|||
|
|
|||
|
DO_CLAUD
|
|||
|
MOVI MESS_CLAUD,A8 ;CLEAR COIN SUB-TOTALS...ARE YOU SURE
|
|||
|
MOVI CLR_AUDITS,A9 ;ROUTINE TO DO IT
|
|||
|
MOVI MESS_CAUDCONF,A10 ;CONFIRMATION.
|
|||
|
JAUC AREUSURE ;ASK EM......THEN RETURN!
|
|||
|
|
|||
|
DO_CLPLRECS
|
|||
|
movi MESS_CLPLRECS,A8 ;CLEAR PLAYER RECORDS
|
|||
|
movi clr_plr_records,a9 ;ROUTINE TO DO IT
|
|||
|
movi MESS_CLPLRECSCONF,a10 ;CONFIRMATION.
|
|||
|
jauc AREUSURE ;ASK EM......THEN RETURN!
|
|||
|
|
|||
|
; .global clear_player_records
|
|||
|
clr_plr_records
|
|||
|
; calla clear_player_records
|
|||
|
MOVI AUD_BHART,A0
|
|||
|
MOVI LASTGAUD,A1
|
|||
|
CALLA CLR_AUDR
|
|||
|
RETP
|
|||
|
|
|||
|
CLR_AUDITS
|
|||
|
MOVI FRSTGAUD,A0
|
|||
|
MOVI LASTGAUD,A1
|
|||
|
CALLA CLR_AUDR
|
|||
|
; CALLA DUMP_FS ;AND START THE "DUMP" RECORDS OVER
|
|||
|
RETP
|
|||
|
|
|||
|
DO_HSRES
|
|||
|
MOVI MESS_HSRESET,A8
|
|||
|
MOVI HSSOFT,A9
|
|||
|
MOVI MESS_HSRCONF,A10
|
|||
|
JAUC AREUSURE
|
|||
|
|
|||
|
HSSOFT
|
|||
|
CALLR RES_ALL
|
|||
|
RETP ;PROGRAM TO DO THE JOB!
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
*
|
|||
|
* RES_ALL
|
|||
|
*
|
|||
|
* RESET ALL TIME HIGH SCORE TABLE AND THE
|
|||
|
* HIGH SCORE RESET COUNTER.
|
|||
|
*
|
|||
|
**************************************************************************
|
|||
|
RES_ALL
|
|||
|
MOVI STREAK_TAB,A8
|
|||
|
CALLA INIT_TB
|
|||
|
movi PIN_SPEED_TAB,a8
|
|||
|
calla INIT_TB
|
|||
|
movi BEATEN_TAB,a8
|
|||
|
calla INIT_TB
|
|||
|
movi INTER_TAB,a8
|
|||
|
calla INIT_TB
|
|||
|
MOVI TAG_TAB,A8
|
|||
|
calla INIT_TB
|
|||
|
|
|||
|
calla INIT_HSTRING
|
|||
|
jauc INIT_HSR ;RE-SET THE HIGH SCORE RESET COUNTER
|
|||
|
|
|||
|
DO_FACSET
|
|||
|
MOVI MESS_FACSET,A8
|
|||
|
MOVK 1,A0
|
|||
|
JRUC DEF_ADJ_PART
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* DO_DEF_ADJ THIS IS CALLED FROM UTILITY MENU TO *
|
|||
|
* DO THE DEFAULT ADJUSTMENTS. *
|
|||
|
* *
|
|||
|
* DEF_ADJ_PART THIS IS CALLED OUT OF THE FULL *
|
|||
|
* FACTORY SETTING TO HANDLE THE *
|
|||
|
* ADJUSTMENT PART. *
|
|||
|
* *
|
|||
|
* A8 MUST HAVE THE MESSAGE FOR "ARE YOU SURE" *
|
|||
|
* A0 .NE. 0 FOR FULL FACTORY SETTINGS (ON *
|
|||
|
* SUCCESS OF ADJUSTMENT PART *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
DO_DEF_ADJ
|
|||
|
MOVI MESS_DEF_ADJ,A8
|
|||
|
CLR A0
|
|||
|
|
|||
|
DEF_ADJ_PART
|
|||
|
MOVE A0,@FAC_FLAG,W ;INDICATE THIS IS ADJUSTMENTS ONLY
|
|||
|
MOVI DEFADJSOFT,A9
|
|||
|
MOVI NULL_ST,A10 ;DON'T PRINT ANYTHING....ROUTINE WILL.
|
|||
|
JSRP AREUSURE
|
|||
|
RETP
|
|||
|
|
|||
|
DEFADJSOFT
|
|||
|
*
|
|||
|
* NOW SMASH THE CHECKSUM
|
|||
|
*
|
|||
|
CALLA FORM_ADC ;FORM THE CKSUM
|
|||
|
MOVE A1,A0 ;PUT IN CMOS WRITING REGGIE
|
|||
|
MOVI ADJ_CKSUM,A7
|
|||
|
INC A0 ;THIS SMASHES ADJUSTMENTS
|
|||
|
CALLA WC_WORD ;AND STORE IT
|
|||
|
.ref form_crc32
|
|||
|
.ref WC_LONG
|
|||
|
|
|||
|
calla form_crc32
|
|||
|
move a1,a0
|
|||
|
movi ADJ_CRC32,a7
|
|||
|
calla WC_LONG
|
|||
|
*
|
|||
|
* NOW MAKE SURE ITS SMASHED
|
|||
|
*
|
|||
|
CALLA CMOS_VAL
|
|||
|
JRZ AD_FAIL ;WE CAN'T DO IT.....PRINT FAILURE.
|
|||
|
*
|
|||
|
* NOW SET THE ADJUSTMENTS TO THE FACTORY VALUE.
|
|||
|
*
|
|||
|
clr a0 ;Full
|
|||
|
CALLA FAC_SET
|
|||
|
CALLA CMOS_VAL ;IS IT OK NOW?
|
|||
|
JRNZ AD_FAIL ;NOPE...PRINT FAILURE
|
|||
|
|
|||
|
MOVI MESS_DEFCONF,A8 ;THIS IS SINGLE MESSAGE
|
|||
|
|
|||
|
MOVE @FAC_FLAG,A0,W ;DO WE NEED TO CLEAR THE TABLES?
|
|||
|
JRZ DAX ;NOPE...POST SINGLE MESSAGE
|
|||
|
|
|||
|
CALLA CLR_SCRN ;CLEAR THE SCREEN FOR OUR MESSAGES.
|
|||
|
CALLR FAC_STUF ;DO AUDITS AND HIGH SCORE TABLE
|
|||
|
|
|||
|
MOVI MESS_FFSCONF,A8 ;PRINT THE REST OF THE MESSAGES
|
|||
|
JSRP L_MESS ;THAT DOES IT!
|
|||
|
|
|||
|
NOTABS
|
|||
|
RETP
|
|||
|
|
|||
|
*
|
|||
|
* ON A FULL FACTORY SETTING (EITHER REQUESTED OR
|
|||
|
* ADJUSTMENT FAILURE) THIS CLEARS THE AUDITS AND
|
|||
|
* HIGH SCORE TABLE.
|
|||
|
*
|
|||
|
FAC_STUF
|
|||
|
CALLA CLR_AUD ;CLEAR AUDITS TOO
|
|||
|
CALLR RES_ALL ;ALL TIME TABLE
|
|||
|
RETS
|
|||
|
|
|||
|
AD_FAIL
|
|||
|
MOVI MESS_FACFAIL,A8
|
|||
|
JRUC DAX
|
|||
|
|
|||
|
DEF_CAN
|
|||
|
MOVI MESS_CANCELLED,A8
|
|||
|
DAX
|
|||
|
CALLA CLR_SCRN
|
|||
|
JSRP SUR_MESS
|
|||
|
RETP
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* EXIST_LET *
|
|||
|
* *
|
|||
|
* IS THE E_INITS PROCESS RUNNING? *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
EXIST_LET
|
|||
|
MOVI OPMES_PID,A0 ;SETUP FOR THE EXISTP
|
|||
|
MOVI 0FFFFH,A1
|
|||
|
JAUC EXISTP
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* BUILD_ST *
|
|||
|
* *
|
|||
|
* THIS IS CALLED TO TAKE THE STRING POINTED TO *
|
|||
|
* BY -A10- AND REMOVE LEADING AND TRAILING BLANKS *
|
|||
|
* AND MOVE THE STRING TO "STRNGRAM". *
|
|||
|
* *
|
|||
|
* RETURN THE NUMBER OF TRAILING BLANKS IN A2. *
|
|||
|
* RETURN .EQ. IF ALL BLANK! *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
BUILD_ST
|
|||
|
MMTM SP,A0,A1,A3,A4,A5,A10
|
|||
|
CLR A4 ;A4 = ZERO UNTIL 1ST NON-BLANK
|
|||
|
MOVI STRNGRAM-BYTE_SIZE,A5 ;LAST NON-SPACE CHAR
|
|||
|
MOVI STRNGRAM,A1 ;DESTINATION POINTER
|
|||
|
MOVI CMESS_CHARS,A2 ;CHAR COUNT
|
|||
|
|
|||
|
BSLOOP
|
|||
|
MOVB *A10,A3 ;FETCH A BYTE
|
|||
|
ANDI BYTE_MASK,A3 ;KILL SIGN EXTEND.
|
|||
|
JRNZ BS1 ;NOT ZERO
|
|||
|
MOVI SPACE,A3 ;REPLACE ZERO WITH SPACE.
|
|||
|
|
|||
|
BS1
|
|||
|
CMPI SPACE,A3 ;IS IT A SPACE?
|
|||
|
JRZ BS2 ;IT IS...
|
|||
|
*
|
|||
|
* NON-SPACE CHARACTER
|
|||
|
*
|
|||
|
OR A3,A4 ;INDICATE 1ST NON-BLANK SEEN
|
|||
|
MOVE A1,A5 ;INDICATE THIS IS CURRENT TERMINATOR.
|
|||
|
JRUC BS3
|
|||
|
|
|||
|
BS2
|
|||
|
MOVE A4,A4 ;HAS 1ST SPACE BEEN SEEN?
|
|||
|
JRZ BS4 ;NOT YET...DON'T STORE
|
|||
|
BS3
|
|||
|
MOVB A3,*A1 ;STORE IT IN MEMORY
|
|||
|
ADDK BYTE_SIZE,A1 ;PUSH DESTINATION POINTER
|
|||
|
BS4
|
|||
|
ADDK BYTE_SIZE,A10 ;PUSH SOURCE POINTER
|
|||
|
DSJS A2,BSLOOP ;AND FINISH PARSE
|
|||
|
*
|
|||
|
* A5 NOW POINTS AT LAST NON-BLANK CHARACTER
|
|||
|
*
|
|||
|
ADDK BYTE_SIZE,A5 ;THIS IS 1 BEYOND
|
|||
|
CLR A2
|
|||
|
MOVB A2,*A5 ;TERMINATE WITH A ZERO.
|
|||
|
*
|
|||
|
* FOR OUR RETURN, WE NEED TO COMPUTE THE NUMBER OF
|
|||
|
* TRAILING SPACES IGNORED.
|
|||
|
*
|
|||
|
MOVE A4,A4 ;ALL BLANK?
|
|||
|
JRNZ NOT_BLNK
|
|||
|
MOVI CMESS_CHARS,A2 ;ALL CHARS ARE TRAILING BLANKS
|
|||
|
JRUC BL_EX ;RETURN THIS
|
|||
|
|
|||
|
NOT_BLNK
|
|||
|
MOVE A1,A2 ;THIS IS LAST CHAR WE WROTE
|
|||
|
SUB A5,A2 ;THIS IS NUMBER OF TRAILING SPACES (TIMES 8)
|
|||
|
SRL 3,A2 ;DIVIDE BY 8 TO GET SPACES
|
|||
|
BL_EX
|
|||
|
MOVE A4,A4 ;FLAG ZERO FOR ALL BLANK!
|
|||
|
MMFM SP,A0,A1,A3,A4,A5,A10
|
|||
|
RETS
|
|||
|
|
|||
|
* A1 = <COLOR><PALETTE>
|
|||
|
* A3 = DAG OF AREA [YPOS,XPOS]
|
|||
|
* A4 = [Y,X] SIZE OF AREA
|
|||
|
|
|||
|
GO_RED
|
|||
|
MOVI ROBO_RED,A1
|
|||
|
JAUC SC_COL
|
|||
|
|
|||
|
GO_GREEN
|
|||
|
MOVI ROBO_GREEN,A1
|
|||
|
JAUC SC_COL
|
|||
|
|
|||
|
GO_BLUE
|
|||
|
MOVI ROBO_BLUE,A1
|
|||
|
SC_COL
|
|||
|
SLL 16,A1 ;[color,palette]
|
|||
|
clr a3 ;[y,x] start
|
|||
|
movi [256,399],a4 ;[Y,X] SIZE OF AREA
|
|||
|
CALLA FILLAREA ;THIS DOES THE SCREEN
|
|||
|
movk 3,a1 ; Any button map mode
|
|||
|
move a1,@_switch_map_mode,L
|
|||
|
; JAUC WAIT_BUT ;NOW WAIT FOR ANY BUTTON!
|
|||
|
JSRP WAIT_BUT
|
|||
|
movk 1,a1
|
|||
|
move a1,@_switch_map_mode,L ; Back to menu map mode
|
|||
|
RETP
|
|||
|
|
|||
|
GO_CPUTEST
|
|||
|
JAUC DIAGCPUTEST
|
|||
|
|
|||
|
|
|||
|
GO_CROSS
|
|||
|
CALLA SCRCLR
|
|||
|
CALLA CROSS_H
|
|||
|
movk 3,a1 ; Any button map mode
|
|||
|
move a1,@_switch_map_mode,L
|
|||
|
; JAUC WAIT_BUT ;NOW WAIT FOR ANY BUTTON!
|
|||
|
JSRP WAIT_BUT
|
|||
|
movk 1,a1
|
|||
|
move a1,@_switch_map_mode,L ; Back to menu map mode
|
|||
|
RETP
|
|||
|
; JSRP WAIT_BUT
|
|||
|
; CALLA SCRCLR
|
|||
|
; CALLA display_init
|
|||
|
; RETP
|
|||
|
|
|||
|
GO_SWTEST
|
|||
|
CALLA SCRCLR
|
|||
|
movi M_SWTEST,a2
|
|||
|
movi ROBO_GREEN,a3
|
|||
|
JSRP TOP_BOX
|
|||
|
clr a0
|
|||
|
JSRP SWITCHTEST
|
|||
|
; CALLA SCRCLR
|
|||
|
; CALLA display_init
|
|||
|
RETP
|
|||
|
|
|||
|
dipsw_test
|
|||
|
CALLA SCRCLR
|
|||
|
movi M_DIPTEST,a2
|
|||
|
movi ROBO_GREEN,a3
|
|||
|
JSRP TOP_BOX
|
|||
|
movk 1,a0 ;DIP mode
|
|||
|
JSRP SWITCHTEST
|
|||
|
RETP
|
|||
|
|
|||
|
;GO_ROMTEST
|
|||
|
; JAUC ROM_CHK
|
|||
|
|
|||
|
GO_BARS
|
|||
|
; MOVI 8000H,A1
|
|||
|
; CLR A0
|
|||
|
; CALLA KILALL
|
|||
|
CALLA SCRCLR
|
|||
|
MMTM SP,A12,A13
|
|||
|
CALLA COL_BARS
|
|||
|
MMFM SP,A12,A13
|
|||
|
movk 3,a1 ; Any button map mode
|
|||
|
move a1,@_switch_map_mode,L
|
|||
|
; JAUC WAIT_BUT ;NOW WAIT FOR ANY BUTTON!
|
|||
|
JSRP WAIT_BUT
|
|||
|
movk 1,a1
|
|||
|
move a1,@_switch_map_mode,L ; Back to menu map mode
|
|||
|
RETP
|
|||
|
; JSRP WAIT_BUT
|
|||
|
; CALLA SCRCLR
|
|||
|
; CALLA display_init
|
|||
|
; CALLA COLRSTRT
|
|||
|
; RETP
|
|||
|
|
|||
|
DO_BURN
|
|||
|
MOVI MESS_BURN,A8 ;CLEAR COIN SUB-TOTALS...ARE YOU SURE
|
|||
|
MOVI BURN_IN,A9 ;ENTRY POINT
|
|||
|
MOVI MESS_BURN,A10 ;THIS WILL NEVER BE SEEN!
|
|||
|
JAUC AREUSURE ;ASK EM.
|
|||
|
|
|||
|
ANY_BUT
|
|||
|
MOVI ANY_MENU,A8 ;ANY BUTTON TO CONTINUE
|
|||
|
MOVK 1,A9 ;CURSOR ON ENTRY 1
|
|||
|
JAUC B_MENU ;DO IT....RETURN WHEN PRESSED.
|
|||
|
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* HARDWARE INFORMATION SELECTED *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
.data
|
|||
|
|
|||
|
M_DIPTEST
|
|||
|
.string "DIPSWITCH TEST",0
|
|||
|
.even
|
|||
|
M_SWTEST
|
|||
|
.string "GENERAL SWITCH TEST",0
|
|||
|
.even
|
|||
|
M_VOLUME
|
|||
|
.string "VOLUME ADJUST",0
|
|||
|
.even
|
|||
|
HARDWARE_HELP
|
|||
|
.word 0
|
|||
|
.word COLOR_BLUE
|
|||
|
.word 2
|
|||
|
.long HDWH_SN
|
|||
|
.long HDWH_MAN
|
|||
|
HDWH_SN
|
|||
|
.string "SERIAL NUMBER",0
|
|||
|
.even
|
|||
|
HDWH_MAN
|
|||
|
.string "MANUFACTURE DATE",0
|
|||
|
.even
|
|||
|
|
|||
|
CLOCK_HELP
|
|||
|
.word 0
|
|||
|
.word COLOR_BLUE
|
|||
|
.word 2
|
|||
|
.long CLKH_MESS1
|
|||
|
.long CLKH_MESS2
|
|||
|
CLKH_MESS1
|
|||
|
.string "DISPLAY OR SET",0
|
|||
|
.even
|
|||
|
CLKH_MESS2
|
|||
|
.string "THE REAL TIME CLOCK",0
|
|||
|
.even
|
|||
|
CLK_DISPLAY_HELP
|
|||
|
.word 0
|
|||
|
.word COLOR_BLUE
|
|||
|
.word 3
|
|||
|
.long CDISP_H1
|
|||
|
.long CDISP_H2
|
|||
|
.long CDISP_H3
|
|||
|
CDISP_H1
|
|||
|
.string "DISPLAYS THE CURRENT",0
|
|||
|
.even
|
|||
|
CDISP_H2
|
|||
|
.string "DATE AND TIME FROM",0
|
|||
|
.even
|
|||
|
CDISP_H3
|
|||
|
.string "THE REAL TIME CLOCK",0
|
|||
|
.even
|
|||
|
CLK_SET_HELP
|
|||
|
.word 0
|
|||
|
.word COLOR_BLUE
|
|||
|
.word 3
|
|||
|
.long CSET_H1
|
|||
|
.long CSET_H2
|
|||
|
.long CSET_H3
|
|||
|
CSET_H1
|
|||
|
.string "ALLOWS SETTING OF THE",0
|
|||
|
.even
|
|||
|
CSET_H2
|
|||
|
.string "DATE AND TIME FOR",0
|
|||
|
.even
|
|||
|
CSET_H3
|
|||
|
.string "THE REAL TIME CLOCK",0
|
|||
|
.even
|
|||
|
CLK_CALIBRATE_HELP
|
|||
|
.word 0
|
|||
|
.word COLOR_BLUE
|
|||
|
.word 3
|
|||
|
.long CCAL_H1
|
|||
|
.long CCAL_H2
|
|||
|
.long CCAL_H3
|
|||
|
CCAL_H1
|
|||
|
.string "PREFORMS AUTOMATIC",0
|
|||
|
.even
|
|||
|
CCAL_H2
|
|||
|
.string "CALIBRATION OF THE",0
|
|||
|
.even
|
|||
|
CCAL_H3
|
|||
|
.string "REAL TIME CLOCK",0
|
|||
|
.even
|
|||
|
|
|||
|
MESS_HARDWARE
|
|||
|
.string "HARDWARE INFO",0
|
|||
|
.even
|
|||
|
MESS_CLOCK
|
|||
|
.string "REAL TIME CLOCK",0
|
|||
|
.even
|
|||
|
|
|||
|
CAL_MESS_Y EQU 114
|
|||
|
|
|||
|
CLK_CALIBRATE_MESS
|
|||
|
MESS_MAC RD15FONT,SPACING07,200,CAL_MESS_Y+20,ROBO_YELLOW,STRCNRM,0
|
|||
|
.string "Calibrating Real Time Clock"
|
|||
|
.byte 0,1
|
|||
|
.even
|
|||
|
MESS_MAC RD15FONT,SPACING07,200,CAL_MESS_Y,ROBO_DECAY,STRCNRM,0
|
|||
|
.string "Please Wait"
|
|||
|
.byte 0,0
|
|||
|
.even
|
|||
|
CLK_CALIBRATE_OK_MESS
|
|||
|
MESS_MAC RD15FONT,SPACING07,200,CAL_MESS_Y+7,ROBO_WHITE,STRCNRM,0
|
|||
|
.string "Calibration Successful"
|
|||
|
.byte 0,0
|
|||
|
.even
|
|||
|
M_CLK_DISPLAY
|
|||
|
.string "DATE AND TIME DISPLAY",0,0
|
|||
|
.even
|
|||
|
M_CLK_CALIBRATE
|
|||
|
.string "REAL TIME CLOCK CALIBRATION",0,0
|
|||
|
.even
|
|||
|
M_CLK_SET
|
|||
|
.string "SETTING REAL TIME CLOCK",0,0
|
|||
|
.even
|
|||
|
|
|||
|
CDAY_PROMPT_Y EQU 50
|
|||
|
CTIME_PROMPT_Y EQU 130
|
|||
|
CDAY_Y EQU CDAY_PROMPT_Y+30
|
|||
|
CDATE_Y EQU CDAY_Y+20
|
|||
|
CTIME_Y EQU CTIME_PROMPT_Y+30
|
|||
|
|
|||
|
MESS_CLKD_PROMPTS
|
|||
|
MESS_MAC RD15FONT,SPACING07,200,CDAY_PROMPT_Y,ROBO_WHITE,STRCNRM,0
|
|||
|
.string "Current Date"
|
|||
|
.byte 0,1
|
|||
|
.even
|
|||
|
MESS_MAC RD15FONT,SPACING07,200,CTIME_PROMPT_Y,ROBO_WHITE,STRCNRM,0
|
|||
|
.string "Current Time"
|
|||
|
.byte 0,1
|
|||
|
.even
|
|||
|
MESS_QUIT
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,230,ROBO_DECAY,STRCNRM,0
|
|||
|
.string "PRESS ANY BUTTON TO QUIT"
|
|||
|
.byte 0,0
|
|||
|
.even
|
|||
|
MESS_RTC_SET
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,215,ROBO_LASER,STRCNRM,0
|
|||
|
.string "THE REAL TIME CLOCK HAS BEEN SET"
|
|||
|
.byte 0,0
|
|||
|
.even
|
|||
|
MESS_SUNDAY
|
|||
|
.string "Sunday",0
|
|||
|
.even
|
|||
|
MESS_MONDAY
|
|||
|
.string "Monday",0
|
|||
|
.even
|
|||
|
MESS_TUESDAY
|
|||
|
.string "Tuesday",0
|
|||
|
.even
|
|||
|
MESS_WEDNESDAY
|
|||
|
.string "Wednesday",0
|
|||
|
.even
|
|||
|
MESS_THURSDAY
|
|||
|
.string "Thursday",0
|
|||
|
.even
|
|||
|
MESS_FRIDAY
|
|||
|
.string "Friday",0
|
|||
|
.even
|
|||
|
MESS_SATURDAY
|
|||
|
.string "Saturday",0
|
|||
|
.even
|
|||
|
|
|||
|
DAY_TABLE .long MESS_SUNDAY,MESS_MONDAY,MESS_TUESDAY,MESS_WEDNESDAY
|
|||
|
.long MESS_THURSDAY,MESS_FRIDAY,MESS_SATURDAY
|
|||
|
.even
|
|||
|
|
|||
|
MESS_JANUARY
|
|||
|
.string "January ",0
|
|||
|
.even
|
|||
|
MESS_FEBRUARY
|
|||
|
.string "February ",0
|
|||
|
.even
|
|||
|
MESS_MARCH
|
|||
|
.string "March ",0
|
|||
|
.even
|
|||
|
MESS_APRIL
|
|||
|
.string "April ",0
|
|||
|
.even
|
|||
|
MESS_MAY
|
|||
|
.string "May ",0
|
|||
|
.even
|
|||
|
MESS_JUNE
|
|||
|
.string "June ",0
|
|||
|
.even
|
|||
|
MESS_JULY
|
|||
|
.string "July ",0
|
|||
|
.even
|
|||
|
MESS_AUGUST
|
|||
|
.string "August ",0
|
|||
|
.even
|
|||
|
MESS_SEPTEMBER
|
|||
|
.string "September ",0
|
|||
|
.even
|
|||
|
MESS_OCTOBER
|
|||
|
.string "October ",0
|
|||
|
.even
|
|||
|
MESS_NOVEMBER
|
|||
|
.string "November ",0
|
|||
|
.even
|
|||
|
MESS_DECEMBER
|
|||
|
.string "December ",0
|
|||
|
.even
|
|||
|
MONTH_TABLE
|
|||
|
.long MESS_JANUARY, MESS_FEBRUARY, MESS_MARCH, MESS_APRIL
|
|||
|
.long MESS_MAY, MESS_JUNE, MESS_JULY, MESS_AUGUST, MESS_SEPTEMBER
|
|||
|
.long MESS_OCTOBER, MESS_NOVEMBER, MESS_DECEMBER
|
|||
|
.even
|
|||
|
MESS_HYEARS
|
|||
|
.string ", 19",0
|
|||
|
.even
|
|||
|
TSEPERATOR
|
|||
|
.string ":",0
|
|||
|
.even
|
|||
|
ZPAD
|
|||
|
.string "0",0
|
|||
|
.even
|
|||
|
TIME_PM
|
|||
|
.string " PM",0
|
|||
|
.even
|
|||
|
TIME_AM
|
|||
|
.string " AM",0
|
|||
|
.even
|
|||
|
DAY_SETUP
|
|||
|
MESS_MAC RD15FONT,SPACING07,200,CDAY_Y,ROBO_GREEN,STRCNRM,0
|
|||
|
.string ""
|
|||
|
.byte 0,0
|
|||
|
.even
|
|||
|
DATE_SETUP
|
|||
|
MESS_MAC RD15FONT,SPACING07,200,CDATE_Y,ROBO_GREEN,STRCNRM,0
|
|||
|
.string ""
|
|||
|
.byte 0,0
|
|||
|
.even
|
|||
|
TIME_SETUP
|
|||
|
MESS_MAC RD15FONT,SPACING07,200,CTIME_Y,ROBO_GREEN,STRCNRM,0
|
|||
|
.string ""
|
|||
|
.byte 0,0
|
|||
|
.even
|
|||
|
DAYADJ_SETUP
|
|||
|
MESS_MAC RD15FONT,SPACING07,284,185,ROBO_GREEN,STRCNRM,0
|
|||
|
.string ""
|
|||
|
.byte 0,0
|
|||
|
.even
|
|||
|
DATEADJ_SETUP
|
|||
|
MESS_MAC RD15FONT,SPACING07,286,205,ROBO_GREEN,STRCNRM,0
|
|||
|
.string ""
|
|||
|
.byte 0,0
|
|||
|
.even
|
|||
|
TADJ_SETUP
|
|||
|
MESS_MAC RD15FONT,SPACING07,284,225,ROBO_GREEN,STRCNRM,0
|
|||
|
.string ""
|
|||
|
.byte 0,0
|
|||
|
.even
|
|||
|
|
|||
|
;SNDRELEASE_NUM_PROMPT:
|
|||
|
; MESS_MAC RD15FONT,SPACING07,200,130,ROBO_PURPLE,STRCNRM,0
|
|||
|
; .string "Sound Software Version:\n"
|
|||
|
; .string "RELEASE %2ld"
|
|||
|
; .byte 0,0
|
|||
|
; .long _serial_number
|
|||
|
; .even
|
|||
|
;SNDPROTO_NUM_PROMPT:
|
|||
|
; MESS_MAC RD15FONT,SPACING07,200,130,ROBO_PURPLE,STRCNRM,0
|
|||
|
; .string "Sound Software Version:\n"
|
|||
|
; .string "PROTO %2ld"
|
|||
|
; .byte 0,0
|
|||
|
; .long _serial_number
|
|||
|
; .even
|
|||
|
|
|||
|
WILLY_Y EQU 50
|
|||
|
UNIT_Y EQU WILLY_Y+50
|
|||
|
SERIAL_Y EQU UNIT_Y+40
|
|||
|
MAN_Y EQU SERIAL_Y+40
|
|||
|
|
|||
|
M_DOM
|
|||
|
.string "DATE OF MANUFACTURE: ",0
|
|||
|
.even
|
|||
|
M_SERIAL
|
|||
|
.string "SERIAL NUMBER: ",0
|
|||
|
.even
|
|||
|
MAN_DATE_SETUP:
|
|||
|
MESS_MAC RD7FONT, SPACING07,200, MAN_Y, ROBO_PURPLE,STRCNRM,0
|
|||
|
.string ""
|
|||
|
.byte 0,0
|
|||
|
.even
|
|||
|
WILLY_PROMPT:
|
|||
|
MESS_MAC RD15FONT, SPACING07, 200, WILLY_Y, ROBO_GREEN, STRCNRM,0
|
|||
|
.string "Midway Manufacturing Inc."
|
|||
|
.byte 0,1
|
|||
|
.even
|
|||
|
MESS_MAC RD15FONT, SPACING20, 200, UNIT_Y, ROBO_YELLOW, STRCNRM, 0
|
|||
|
.string "WWF UNIT"
|
|||
|
.byte 0,0
|
|||
|
.even
|
|||
|
SERIAL_NUM_SETUP:
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,SERIAL_Y,ROBO_PURPLE,STRCNRM,0
|
|||
|
.string ""
|
|||
|
.byte 0,0
|
|||
|
.even
|
|||
|
|
|||
|
M_HARDWARE_INFO
|
|||
|
.string "HARDWARE INFORMATION",0
|
|||
|
.even
|
|||
|
|
|||
|
MESS_CLK_TITLE
|
|||
|
.string "REAL TIME CLOCK",0
|
|||
|
.even
|
|||
|
MESS_DISPLAY
|
|||
|
.string "DISPLAY",0
|
|||
|
.even
|
|||
|
MESS_SET
|
|||
|
.string "SET",0
|
|||
|
.even
|
|||
|
MESS_CALIBRATE
|
|||
|
.string "CALIBRATE",0
|
|||
|
.even
|
|||
|
|
|||
|
MEN_CLOCK
|
|||
|
.long RD7FONT ;FONT
|
|||
|
.long STRCNRM ;CENTER PLEASE
|
|||
|
.long MESS_CLK_TITLE ;TITLE
|
|||
|
.word COLOR_GREEN ;COLOR OF TITLE
|
|||
|
.word 104 ;UL X
|
|||
|
.word MENU_Y-3 ;UL Y
|
|||
|
.word MENU_DY-4 ;VERTICAL SPACING
|
|||
|
.word ROBO_WHITE ;COLOR WHEN NOT SELECTED
|
|||
|
.word 16 ;HEIGHT OF SELECTION BAR
|
|||
|
.word -4 ;DISTANCE OF BAR FROM TOP OF TEXT (NEGATIVE)
|
|||
|
.word BAR_DX ;EXTRA X ON EACH SIDE.
|
|||
|
.word BAR_WID ;WIDTH OF BAR! (A LITTLE FATTER)
|
|||
|
.word ROBO_DECAY ;TEXT COLOR OF SELECTED ITEM (SHOULD BE DECAY)
|
|||
|
.long MESS_DISPLAY,GO_DISPLAY,CLK_DISPLAY_HELP
|
|||
|
.long MESS_SET,GO_TIME_SET,CLK_SET_HELP
|
|||
|
; .long MESS_CALIBRATE,GO_CALIBRATE,CLK_CALIBRATE_HELP
|
|||
|
; .long MESS_MM,RET_CLOCK,NO_HELP
|
|||
|
.long MESS_MM,RET_CLOCK,BLNK_HELP
|
|||
|
.long 0
|
|||
|
|
|||
|
|
|||
|
|
|||
|
*
|
|||
|
* CLOCK SET MENU IS SKINNY..LEAVING ROOM FOR EXPLANATION.
|
|||
|
*
|
|||
|
CS_BDY EQU -2
|
|||
|
CS_WID EQU 0A7H
|
|||
|
CS_X EQU TIT_ULX+GAP+MB_XWID+(CS_WID/2)+C_KLUDGE
|
|||
|
CS_Y EQU INST_LRY+BOX_YGAP+MB_YWID+GAP-CS_BDY
|
|||
|
*
|
|||
|
* RIGHT MARGIN OF ADJUST MENU BOX
|
|||
|
*
|
|||
|
CS_RX EQU TIT_ULX+(2*GAP)+CS_WID+(2*MB_XWID)
|
|||
|
*
|
|||
|
* LEFT MARGIN OF HELP BOX
|
|||
|
*
|
|||
|
CS_HX EQU CS_RX+BOX_XGAP
|
|||
|
|
|||
|
M_TIME_SET
|
|||
|
.string "SET REAL TIME CLOCK",0
|
|||
|
.even
|
|||
|
MESS_YEAR_SET
|
|||
|
.string "YEAR",0
|
|||
|
.even
|
|||
|
MESS_DATE_SET
|
|||
|
.string "DATE",0
|
|||
|
.even
|
|||
|
MESS_MONTH_SET
|
|||
|
.string "MONTH",0
|
|||
|
.even
|
|||
|
MESS_DAY_SET
|
|||
|
.string "DAY",0
|
|||
|
.even
|
|||
|
MESS_HOUR_SET
|
|||
|
.string "HOURS",0
|
|||
|
.even
|
|||
|
MESS_MINUTE_SET
|
|||
|
.string "MINUTES",0
|
|||
|
.even
|
|||
|
MESS_SECOND_SET
|
|||
|
.string "SECONDS",0
|
|||
|
.even
|
|||
|
MESS_SET_CLOCK
|
|||
|
.string "SET TIME/DATE",0
|
|||
|
.even
|
|||
|
MESS_CLK_RET
|
|||
|
.string "RETURN TO PREV MENU",0
|
|||
|
.even
|
|||
|
|
|||
|
MEN_TIME_SET
|
|||
|
.LONG RD7FONT ;FONT
|
|||
|
.LONG STRCNRM ;CENTER PLEASE
|
|||
|
.LONG M_TIME_SET ;TITLE
|
|||
|
.WORD COLOR_WHITE ;COLOR OF TITLE
|
|||
|
.WORD CS_X ;UL X
|
|||
|
.WORD CS_Y ;UL Y
|
|||
|
.WORD 12
|
|||
|
.WORD COLOR_WHITE ;COLOR WHEN NOT SELECTED
|
|||
|
.WORD 12 ;HEIGHT OF SELECTION BAR
|
|||
|
.WORD CS_BDY ;DISTANCE OF BAR FROM TOP OF TEXT (NEGATIVE)
|
|||
|
.WORD BAR_DX ;EXTRA X ON EACH SIDE.
|
|||
|
.WORD CS_WID ;WIDTH OF BAR!
|
|||
|
.WORD COLOR_DECAY ;TEXT COLOR OF SELECTED ITEM
|
|||
|
.LONG MESS_CLK_RET,0,BLNK_HELP ;RETURN TO MAIN MENU
|
|||
|
.LONG MESS_YEAR_SET,DO_YEAR,ADJ_HELP
|
|||
|
.LONG MESS_DATE_SET,DO_DATE,ADJ_HELP
|
|||
|
.LONG MESS_MONTH_SET,DO_MONTH,ADJ_HELP ;FREE PLAY
|
|||
|
.LONG MESS_DAY_SET,DO_DAY,ADJ_HELP
|
|||
|
.LONG MESS_HOUR_SET,DO_HOUR,ADJ_HELP
|
|||
|
.LONG MESS_MINUTE_SET,DO_MINUTE,ADJ_HELP
|
|||
|
.LONG MESS_SECOND_SET,DO_SECOND,ADJ_HELP
|
|||
|
.LONG MESS_SET_CLOCK,GO_CLOCK_SET,SET_CLOCK_HELP
|
|||
|
.LONG MESS_CLK_RET,0,BLNK_HELP ;RETURN TO MAIN MENU
|
|||
|
.LONG 0 ;END
|
|||
|
|
|||
|
INSTR_Y EQU INST_ULY+5
|
|||
|
INSTR_2Y EQU INSTR_Y+10
|
|||
|
|
|||
|
CS_ADV
|
|||
|
MESS_MAC RD7FONT,SPACING07,CS_X,INSTR_Y,COLOR_BPR,STRCNRM,0
|
|||
|
.STRING "SELECT WITH ANY STICK"
|
|||
|
.BYTE 0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,CS_X,INSTR_2Y,COLOR_BPR,STRCNRM,0
|
|||
|
.STRING "PRESS A BUTTON TO MODIFY"
|
|||
|
.BYTE 0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
SCH_1
|
|||
|
.string "SETS THE REAL TIME CLOCK",0
|
|||
|
.even
|
|||
|
SCH_2
|
|||
|
.string "TO THE VALUES SPECIFIED BY",0
|
|||
|
.even
|
|||
|
SCH_3
|
|||
|
.string "THE OTHER MENU ITEMS.",0
|
|||
|
.even
|
|||
|
SET_CLOCK_HELP
|
|||
|
.word 1
|
|||
|
.word COLOR_BLUE
|
|||
|
.word 3
|
|||
|
.long SCH_1
|
|||
|
.long SCH_2
|
|||
|
.long SCH_3
|
|||
|
.even
|
|||
|
YSH_1
|
|||
|
.string " SET THE REAL TIME CLOCK's",0
|
|||
|
.even
|
|||
|
YSH_2
|
|||
|
.string " YEAR VALUE.",0
|
|||
|
.even
|
|||
|
YSH_3
|
|||
|
.string " Takes effect when SET is",0
|
|||
|
.even
|
|||
|
YSH_4
|
|||
|
.string " selected on the RTC MENU",0
|
|||
|
.even
|
|||
|
HELP_YEAR
|
|||
|
.word 1
|
|||
|
.word COLOR_BLUE
|
|||
|
.word 4
|
|||
|
.long YSH_1
|
|||
|
.long YSH_2
|
|||
|
.long YSH_3
|
|||
|
.long YSH_4
|
|||
|
.even
|
|||
|
DO_YEAR
|
|||
|
.long GEN_TS ; Routine to run
|
|||
|
.long MESS_YEAR_SET ; Header Message
|
|||
|
.long HELP_YEAR ; Help Messages
|
|||
|
.word 6 ; Index number of val to change
|
|||
|
.long 0 ; Minimum value
|
|||
|
.long 99 ; Maximum value
|
|||
|
.long 1 ; Move up and down by 1's
|
|||
|
.long 0 ; Dont sub zero for any
|
|||
|
.long YEAR_SET ; Message list for values
|
|||
|
.word WRAP_VAL ; Wrap around
|
|||
|
.long 0 ; Just Show Number
|
|||
|
.long MESS_YEAR_SET ; Header Message
|
|||
|
|
|||
|
DTSH_2
|
|||
|
.string " DATE VALUE.",0
|
|||
|
.even
|
|||
|
HELP_DATE
|
|||
|
.word 1
|
|||
|
.word COLOR_BLUE
|
|||
|
.word 4
|
|||
|
.long YSH_1
|
|||
|
.long DTSH_2
|
|||
|
.long YSH_3
|
|||
|
.long YSH_4
|
|||
|
.even
|
|||
|
DO_DATE
|
|||
|
.long GEN_TS ; Routine to run
|
|||
|
.long MESS_DATE_SET ; Header Message
|
|||
|
.long HELP_DATE ; Help Messages
|
|||
|
.word 4 ; Index Number of val to change
|
|||
|
.long 1 ; Minimum value
|
|||
|
.long 31 ; Maximum value
|
|||
|
.long 1 ; Move up and down by 1's
|
|||
|
.long 0 ; Dont sub zero for any
|
|||
|
.long DATE_SET ; Message list for values
|
|||
|
.word WRAP_VAL ; Wrap around
|
|||
|
.long 0 ; Just Show Number
|
|||
|
.long MESS_DATE_SET ; Header Message
|
|||
|
|
|||
|
|
|||
|
MSH_2
|
|||
|
.string " MONTH OF YEAR.",0
|
|||
|
.even
|
|||
|
HELP_MONTH
|
|||
|
.word 1
|
|||
|
.word COLOR_BLUE
|
|||
|
.word 4
|
|||
|
.long YSH_1
|
|||
|
.long MSH_2
|
|||
|
.long YSH_3
|
|||
|
.long YSH_4
|
|||
|
.even
|
|||
|
DO_MONTH
|
|||
|
.long GEN_TS ; Routine to run
|
|||
|
.long MESS_MONTH_SET ; Header Message
|
|||
|
.long HELP_MONTH ; Help Messages
|
|||
|
.word 5 ; Index Number of val to change
|
|||
|
.long 1 ; Minimum value
|
|||
|
.long 12 ; Maximum value
|
|||
|
.long 1 ; Move up and down by 1's
|
|||
|
.long 0 ; Dont sub zero for any
|
|||
|
.long MONTH_SET ; Message list for values
|
|||
|
.word WRAP_VAL ; Wrap around
|
|||
|
.long MONTH_TABLE ; Just Show Number
|
|||
|
.long MESS_MONTH_SET ; Header Message
|
|||
|
|
|||
|
|
|||
|
DSH_2
|
|||
|
.string " DAY OF WEEK.",0
|
|||
|
.even
|
|||
|
HELP_DAY
|
|||
|
.word 1
|
|||
|
.word COLOR_BLUE
|
|||
|
.word 4
|
|||
|
.long YSH_1
|
|||
|
.long DSH_2
|
|||
|
.long YSH_3
|
|||
|
.long YSH_4
|
|||
|
.even
|
|||
|
DO_DAY
|
|||
|
.long GEN_TS ; Routine to run
|
|||
|
.long MESS_DAY_SET ; Header Message
|
|||
|
.long HELP_DAY ; Help Messages
|
|||
|
.word 3 ; Index Number of val to change
|
|||
|
.long 1 ; Minimum value
|
|||
|
.long 7 ; Maximum value
|
|||
|
.long 1 ; Move up and down by 1's
|
|||
|
.long 0 ; Dont sub zero for any
|
|||
|
.long DAY_SET ; Message list for values
|
|||
|
.word WRAP_VAL ; Wrap around
|
|||
|
.long DAY_TABLE ; Just Show Number
|
|||
|
.long MESS_DAY_SET ; Header Message
|
|||
|
|
|||
|
HSH_2
|
|||
|
.string " HOUR VALUE.",0
|
|||
|
.even
|
|||
|
HELP_HOUR
|
|||
|
.word 1
|
|||
|
.word COLOR_BLUE
|
|||
|
.word 4
|
|||
|
.long YSH_1
|
|||
|
.long HSH_2
|
|||
|
.long YSH_3
|
|||
|
.long YSH_4
|
|||
|
.even
|
|||
|
DO_HOUR
|
|||
|
.long GEN_TS ; Routine to run
|
|||
|
.long MESS_HOUR_SET ; Header Message
|
|||
|
.long HELP_HOUR ; Help Messages
|
|||
|
.word 2 ; Index Number of val to change
|
|||
|
.long 1 ; Minimum value
|
|||
|
.long 24 ; Maximum value
|
|||
|
.long 1 ; Move up and down by 1's
|
|||
|
.long 0 ; Dont sub zero for any
|
|||
|
.long HOUR_SET ; Message list for values
|
|||
|
.word WRAP_VAL ; Wrap around
|
|||
|
.long 0 ; Just Show Number
|
|||
|
.long MESS_HOUR_SET ; Header Message
|
|||
|
|
|||
|
|
|||
|
MINSH_2
|
|||
|
.string " MINUTE VALUE.",0
|
|||
|
.even
|
|||
|
HELP_MINUTE
|
|||
|
.word 1
|
|||
|
.word COLOR_BLUE
|
|||
|
.word 4
|
|||
|
.long YSH_1
|
|||
|
.long MINSH_2
|
|||
|
.long YSH_3
|
|||
|
.long YSH_4
|
|||
|
.even
|
|||
|
DO_MINUTE
|
|||
|
.long GEN_TS ; Routine to run
|
|||
|
.long MESS_MINUTE_SET ; Header Message
|
|||
|
.long HELP_MINUTE ; Help Messages
|
|||
|
.word 1 ; Index Number of val to change
|
|||
|
.long 0 ; Minimum value
|
|||
|
.long 59 ; Maximum value
|
|||
|
.long 1 ; Move up and down by 1's
|
|||
|
.long 0 ; Dont sub zero for any
|
|||
|
.long MINUTE_SET ; Message list for values
|
|||
|
.word WRAP_VAL ; Wrap around
|
|||
|
.long 0 ; Just Show Number
|
|||
|
.long MESS_MINUTE_SET ; Header Message
|
|||
|
|
|||
|
SSH_2
|
|||
|
.string " SECOND VALUE.",0
|
|||
|
.even
|
|||
|
HELP_SECOND
|
|||
|
.word 1
|
|||
|
.word COLOR_BLUE
|
|||
|
.word 4
|
|||
|
.long YSH_1
|
|||
|
.long SSH_2
|
|||
|
.long YSH_3
|
|||
|
.long YSH_4
|
|||
|
.even
|
|||
|
DO_SECOND
|
|||
|
.long GEN_TS ; Routine to run
|
|||
|
.long MESS_SECOND_SET ; Header Message
|
|||
|
.long HELP_SECOND ; Help Messages
|
|||
|
.word 0 ; Not used
|
|||
|
.long 0 ; Minimum value
|
|||
|
.long 59 ; Maximum value
|
|||
|
.long 1 ; Move up and down by 1's
|
|||
|
.long 0 ; Dont sub zero for any
|
|||
|
.long SECOND_SET ; Message list for values
|
|||
|
.word WRAP_VAL ; Wrap around
|
|||
|
.long 0 ; Just Show Number
|
|||
|
.long MESS_SECOND_SET ; Header Message
|
|||
|
|
|||
|
.text
|
|||
|
|
|||
|
GO_HARDWARE:
|
|||
|
move @_man_date,a2,L
|
|||
|
move a2,a1
|
|||
|
subk 1,a1
|
|||
|
movi 372,a0
|
|||
|
divu a0,a1
|
|||
|
movi 372,a3
|
|||
|
mpyu a1,a3
|
|||
|
sub a3,a2
|
|||
|
addi 80,a1
|
|||
|
move a1,@_year,1
|
|||
|
move a2,a0
|
|||
|
movi 31,a1
|
|||
|
modu a1,a0
|
|||
|
move a0,@_day,1
|
|||
|
move a2,a1
|
|||
|
subk 1,a1
|
|||
|
movi 31,a0
|
|||
|
divu a0,a1
|
|||
|
addk 1,a1
|
|||
|
move a1,@_month,1
|
|||
|
calla CLR_SCRN ; Clear the screen
|
|||
|
movi M_HARDWARE_INFO,a2 ; Put up Title Box
|
|||
|
movi ROBO_GREEN,a3
|
|||
|
JSRP TOP_BOX
|
|||
|
movi WILLY_PROMPT,a8
|
|||
|
JSRP L_MESS
|
|||
|
movi M_DOM,a4
|
|||
|
calla copy_rom_string ; Copy the Date of manufacture prompt
|
|||
|
move @_month,a0
|
|||
|
dec a0
|
|||
|
sll 5,a0
|
|||
|
movi MONTH_TABLE,a8
|
|||
|
add a0,a8
|
|||
|
move *a8,a4,L
|
|||
|
calla concat_rom_string ; Copy the month name
|
|||
|
move @_day,a0 ; Convert date to ascii
|
|||
|
movi 31,a1
|
|||
|
calla dec_to_asc
|
|||
|
calla concat_string ; Add date to string
|
|||
|
movi MESS_HYEARS,a4 ; Add , 19 to string
|
|||
|
calla concat_rom_string
|
|||
|
move @_year,a0 ; Convert year to ascii
|
|||
|
movi 99,a1
|
|||
|
calla dec_to_asc
|
|||
|
calla concat_string ; Add year to string
|
|||
|
movi MAN_DATE_SETUP,a0 ; Setup message
|
|||
|
callr _setup_message
|
|||
|
movi _setup_mess,a8
|
|||
|
JSRP L_MESS ; Print Date of Manufacture
|
|||
|
|
|||
|
movi M_SERIAL,a4
|
|||
|
calla copy_rom_string ; Copy serial number prompt
|
|||
|
move @_serial_number,a0,L ; Convert serial number to ascii
|
|||
|
movi 1000000,a1
|
|||
|
calla dec_to_asc
|
|||
|
calla concat_string ; Add serial number to prompt
|
|||
|
movi SERIAL_NUM_SETUP,a0 ; Setup the message
|
|||
|
callr _setup_message
|
|||
|
movi _setup_mess,a8
|
|||
|
JSRP L_MESS ; Print the Serial Number
|
|||
|
movi MESS_QUIT,a8
|
|||
|
JSRP L_MESS
|
|||
|
_hardware_check_sw: ; Wait for a button to be pressed
|
|||
|
SLEEP 10
|
|||
|
move @_switch2_addr,a0,L
|
|||
|
move *a0,a0,W
|
|||
|
move @_switch_addr,a1,L
|
|||
|
move *a1,a1,W
|
|||
|
sll 16,a0
|
|||
|
srl 16,a0
|
|||
|
sll 16,a1
|
|||
|
srl 16,a1
|
|||
|
and a0,a1
|
|||
|
move @_coin_addr,a0,L
|
|||
|
move *a0,a0
|
|||
|
ori 10h,a0
|
|||
|
sll 16,a0
|
|||
|
or a1,a0
|
|||
|
not a0
|
|||
|
jrz _hardware_check_sw
|
|||
|
RET_HARDWARE:
|
|||
|
JSRP FORCE_MAIN
|
|||
|
RETP
|
|||
|
|
|||
|
|
|||
|
GO_CLOCK:
|
|||
|
move @_clk_rd,a8,L ;Save current auto update state
|
|||
|
move a8,@_auto_update_save,L
|
|||
|
clr a8 ;Enable auto update
|
|||
|
move a8,@_clk_rd,L
|
|||
|
JSRP _GetTime
|
|||
|
movi MEN_CLOCK,a8
|
|||
|
jauc GEN_MENU
|
|||
|
RET_CLOCK:
|
|||
|
move @_auto_update_save,a8,L ;Restore Auto Update state
|
|||
|
move a8,@_clk_rd,L
|
|||
|
JSRP FORCE_MAIN
|
|||
|
RETP
|
|||
|
|
|||
|
GO_CALIBRATE:
|
|||
|
calla CLR_SCRN ; Clear the screen
|
|||
|
movi M_CLK_CALIBRATE,a2 ; Put up Title Box
|
|||
|
movi ROBO_GREEN,a3
|
|||
|
JSRP TOP_BOX
|
|||
|
movi CLK_CALIBRATE_MESS,a8 ; Put up calibrating message
|
|||
|
JSRP L_MESS
|
|||
|
SLEEP 5*60 ; Do calibration here
|
|||
|
move @0c00000b0h,a0 ; Make sure transparency is OFF
|
|||
|
move a0,-*sp
|
|||
|
andni 020h,a0
|
|||
|
move a0,@0c00000b0h
|
|||
|
movi [CAL_MESS_Y,0],a0 ; Get rid of calibrating message
|
|||
|
movi [40,400],a1
|
|||
|
movi ROBO_BLACK,a2
|
|||
|
fcall RECTANGLE,b6
|
|||
|
move *sp+,a0
|
|||
|
move a0,@0c00000b0h ; Restore CONTROL register
|
|||
|
movi CLK_CALIBRATE_OK_MESS,a8 ; Put up success message
|
|||
|
JSRP L_MESS
|
|||
|
SLEEP 60 ; Let user see it
|
|||
|
calla CLR_SCRN
|
|||
|
RETP ; All done
|
|||
|
|
|||
|
; a0 = pointer to MESS_MAC TO COPY message is copied from message_buffer
|
|||
|
_setup_message:
|
|||
|
movi _setup_mess,a1
|
|||
|
movk 10,a2
|
|||
|
_sm_lp1:
|
|||
|
move *a0+,*a1+
|
|||
|
dsjs a2,_sm_lp1
|
|||
|
movi _setup_mess_msg,a1
|
|||
|
movi message_buffer,a0
|
|||
|
pushst
|
|||
|
setf 8,0
|
|||
|
_sm_lp2:
|
|||
|
move *a0+,a2
|
|||
|
move a2,*a1+
|
|||
|
move a2,a2
|
|||
|
jrnz _sm_lp2
|
|||
|
_sm_done
|
|||
|
popst
|
|||
|
clr a2
|
|||
|
move a2,*a1
|
|||
|
rets
|
|||
|
|
|||
|
*******************************************************************
|
|||
|
* _GetTime - Process subroutine to get the current time. Time is
|
|||
|
* returned in the _tXXXXXX globals.
|
|||
|
*
|
|||
|
SUBRP _GetTime
|
|||
|
move @_clk_rd,a0,L ;Save status of auto update
|
|||
|
move a0,@_auto_update_save,L
|
|||
|
movi -1,a0 ;Shut down auto update
|
|||
|
move a0,@_clk_rd,L
|
|||
|
calla _aquire_time ;Arm time aquistion
|
|||
|
SLEEPK 5 ;Wait for it to aquire time
|
|||
|
calla _get_time ;Get the current time
|
|||
|
move @_auto_update_save,a0,L
|
|||
|
move a0,@_clk_rd,L ;Restore auto update status
|
|||
|
RETP ;All done
|
|||
|
|
|||
|
; Process Subroutine to print time
|
|||
|
_display_time:
|
|||
|
clr a0
|
|||
|
move a0,@message_buffer
|
|||
|
move @_thours,a0 ; Hours
|
|||
|
jrnz _hour_gz1
|
|||
|
addk 12,a0
|
|||
|
jruc _time_is_am
|
|||
|
_hour_gz1
|
|||
|
cmpi 12,a0
|
|||
|
jrle _time_is_am
|
|||
|
move @_thours,a0 ; Hours
|
|||
|
subi 12,a0
|
|||
|
_time_is_am
|
|||
|
movi 12,a1 ; Max hours
|
|||
|
calla dec_to_asc
|
|||
|
calla concat_string
|
|||
|
movi TSEPERATOR,a4
|
|||
|
calla concat_rom_string
|
|||
|
move @_tminutes,a0
|
|||
|
cmpi 9,a0
|
|||
|
jrgt _no_min_pad
|
|||
|
movi ZPAD,a4
|
|||
|
calla concat_rom_string
|
|||
|
_no_min_pad
|
|||
|
move @_tminutes,a0
|
|||
|
movi 59,a1 ; Max Minutes
|
|||
|
calla dec_to_asc
|
|||
|
calla concat_string
|
|||
|
movi TSEPERATOR,a4
|
|||
|
calla concat_rom_string
|
|||
|
move @_tseconds,a0
|
|||
|
move a0,@_last_seconds
|
|||
|
cmpi 9,a0
|
|||
|
jrgt _no_sec_pad
|
|||
|
movi ZPAD,a4
|
|||
|
calla concat_rom_string
|
|||
|
_no_sec_pad
|
|||
|
move @_tseconds,a0
|
|||
|
movi 59,a1 ; Max Seconds
|
|||
|
calla dec_to_asc
|
|||
|
calla concat_string
|
|||
|
move @_thours,a0 ; Hours
|
|||
|
cmpi 11,a0
|
|||
|
jrgt _time_is_pm
|
|||
|
movi TIME_AM,a4
|
|||
|
jruc _tdone
|
|||
|
_time_is_pm
|
|||
|
movi TIME_PM,a4
|
|||
|
_tdone
|
|||
|
calla concat_rom_string
|
|||
|
movi TIME_SETUP,a0
|
|||
|
callr _setup_message
|
|||
|
movi _setup_mess,a8
|
|||
|
JSRP L_MESS
|
|||
|
_time_check_sw:
|
|||
|
SLEEP 1
|
|||
|
move @_switch2_addr,a0,L
|
|||
|
move *a0,a0,W
|
|||
|
move @_switch_addr,a1,L
|
|||
|
move *a1,a1,W
|
|||
|
sll 16,a0
|
|||
|
srl 16,a0
|
|||
|
sll 16,a1
|
|||
|
srl 16,a1
|
|||
|
and a0,a1
|
|||
|
move @_coin_addr,a0,L
|
|||
|
move *a0,a0,W
|
|||
|
ori 10h,a0
|
|||
|
sll 16,a0
|
|||
|
or a1,a0
|
|||
|
not a0
|
|||
|
jrnz _dtime_done
|
|||
|
move @_tseconds,a0
|
|||
|
move @_last_seconds,a1
|
|||
|
cmp a0,a1
|
|||
|
jrz _time_check_sw
|
|||
|
movi 1cch,a3
|
|||
|
calla SNDSND
|
|||
|
move @CONTROL,a0 ; Make sure transparency is OFF
|
|||
|
move a0,-*sp
|
|||
|
andni 020h,a0
|
|||
|
move a0,@CONTROL
|
|||
|
movi [CTIME_Y,0],a0 ; Get rid of calibrating message
|
|||
|
movi [20,400],a1
|
|||
|
movi ROBO_BLACK,a2
|
|||
|
fcall RECTANGLE,b6
|
|||
|
move *sp+,a0
|
|||
|
move a0,@CONTROL ; Restore CONTROL register
|
|||
|
jruc _display_time
|
|||
|
_dtime_done
|
|||
|
RETP
|
|||
|
|
|||
|
|
|||
|
GO_DISPLAY:
|
|||
|
calla CLR_SCRN ; Clear the screen
|
|||
|
movi M_CLK_DISPLAY,a2 ; Put up Title Box
|
|||
|
movi ROBO_GREEN,a3
|
|||
|
JSRP TOP_BOX
|
|||
|
GO_CLKS:
|
|||
|
; move @_clk_rd,a0,L ;Save current auto update state
|
|||
|
; move a0,@_auto_update_save,L
|
|||
|
; clr a0 ;Enable auto update
|
|||
|
; move a0,@_clk_rd,L
|
|||
|
; JSRP _GetTime
|
|||
|
movi MESS_CLKD_PROMPTS,a8 ; Put up assorted prompts
|
|||
|
JSRP L_MESS
|
|||
|
SLEEP 5
|
|||
|
movi DAY_TABLE,a8 ; Put Day of week up
|
|||
|
move @_tday,a0 ; Day of week (1-7)
|
|||
|
dec a0
|
|||
|
cmpi 6,a0
|
|||
|
jrgt _bad_day
|
|||
|
sll 5,a0
|
|||
|
add a0,a8
|
|||
|
move *a8,a4,L
|
|||
|
calla copy_rom_string
|
|||
|
movi DAY_SETUP,a0
|
|||
|
callr _setup_message
|
|||
|
movi _setup_mess,a8
|
|||
|
JSRP L_MESS
|
|||
|
_bad_day
|
|||
|
movi MONTH_TABLE,a8 ; Put month of year up
|
|||
|
move @_tmonth,a0 ; Month of year number (0-11)
|
|||
|
dec a0
|
|||
|
cmpi 11,a0
|
|||
|
jrgt _bad_month
|
|||
|
sll 5,a0
|
|||
|
add a0,a8
|
|||
|
move *a8,a4,L
|
|||
|
calla copy_rom_string ; Copy month name to buffer
|
|||
|
_bad_month
|
|||
|
move @_tdate,a0 ; Date (1-31)
|
|||
|
cmpi 9,a0
|
|||
|
jrgt _no_date_pad
|
|||
|
movi ZPAD,a4
|
|||
|
calla concat_rom_string
|
|||
|
_no_date_pad
|
|||
|
move @_tdate,a0 ; Date (1-31)
|
|||
|
movi 31,a1 ; Maximum Date
|
|||
|
calla dec_to_asc ; Convert Date to ascii
|
|||
|
calla concat_string ; Add to buffer
|
|||
|
movi MESS_HYEARS,a4 ; , 19
|
|||
|
calla concat_rom_string ; Add to buffer
|
|||
|
move @_tyear,a0 ; Year (0 - 99)
|
|||
|
cmpi 9,a0
|
|||
|
jrgt _no_year_pad
|
|||
|
movi ZPAD,a4
|
|||
|
calla concat_rom_string
|
|||
|
_no_year_pad
|
|||
|
move @_tyear,a0
|
|||
|
movi 99,a1 ; Max year
|
|||
|
calla dec_to_asc ; Convert Years to ascii
|
|||
|
calla concat_string ; Add to buffer
|
|||
|
movi DATE_SETUP,a0
|
|||
|
callr _setup_message
|
|||
|
movi _setup_mess,a8
|
|||
|
JSRP L_MESS
|
|||
|
JSRP _display_time
|
|||
|
; move @_auto_update_save,a0,L ;Restore Auto Update state
|
|||
|
; move a0,@_clk_rd,L
|
|||
|
movi 0c7h,a3
|
|||
|
calla SNDSND
|
|||
|
RETP ; All done
|
|||
|
|
|||
|
_transfer_time
|
|||
|
mmtm sp,a1,a2,a3
|
|||
|
movi _rtc_seconds,a1
|
|||
|
movi _tseconds,a2
|
|||
|
movi 7,a3
|
|||
|
_tt_loop1
|
|||
|
move *a2+,*a1+
|
|||
|
dsjs a3,_tt_loop1
|
|||
|
mmfm sp,a1,a2,a3
|
|||
|
rets
|
|||
|
|
|||
|
GO_CLOCK_SET:
|
|||
|
calla CLR_SCRN ; Clear the screen
|
|||
|
movi M_CLK_SET,a2 ; Put up Title Box
|
|||
|
movi ROBO_GREEN,a3
|
|||
|
JSRP TOP_BOX
|
|||
|
calla _set_time
|
|||
|
movi MESS_RTC_SET,a8 ; Put up "CLOCK SET" message
|
|||
|
JSRP L_MESS
|
|||
|
; SLEEP 16
|
|||
|
SLEEP 30
|
|||
|
callr _transfer_time
|
|||
|
jauc GO_CLKS
|
|||
|
|
|||
|
GO_TIME_SET
|
|||
|
; JSRP _GetTime
|
|||
|
callr _transfer_time
|
|||
|
movi MEN_TIME_SET,a8
|
|||
|
GEN_TIME_SET
|
|||
|
move a8,-*a12,L
|
|||
|
movk 1,a0
|
|||
|
move a0,-*a12,W
|
|||
|
TIME_SET_LOOP
|
|||
|
calla CLR_SCRN
|
|||
|
movi CS_ADV,a8
|
|||
|
JSRP L_MESS
|
|||
|
move *a12(WORD_SIZE),a8,L
|
|||
|
JSRP MENU_TOP
|
|||
|
movi COLOR_RED,a9
|
|||
|
calla COL_INST
|
|||
|
move *a12,a9,W
|
|||
|
JSRP B_MENU
|
|||
|
move a9,a9
|
|||
|
jrz GO_TS_QUIT
|
|||
|
_not_set_time
|
|||
|
move a8,*a12,W
|
|||
|
move *a9(AD_ROUT),a0,L
|
|||
|
movi TIME_SET_LOOP,a7
|
|||
|
move a7,-*a12,L
|
|||
|
cmpi 9,a8
|
|||
|
jrz _time_set
|
|||
|
jump a0
|
|||
|
_time_set
|
|||
|
jauc GO_CLOCK_SET
|
|||
|
GO_TS_QUIT
|
|||
|
addk WORD_SIZE,a12
|
|||
|
addk LONG_SIZE,a12
|
|||
|
RETP
|
|||
|
|
|||
|
_do_title
|
|||
|
mmtm a12,a10,a11,a8 ;SAVE STUFF FOR CALLER
|
|||
|
; move @_clk_rd,a0,L ;Save current auto update state
|
|||
|
; move a0,@_auto_update_save,L
|
|||
|
; clr a0 ;Enable auto update
|
|||
|
; move a0,@_clk_rd,L
|
|||
|
; JSRP _GetTime
|
|||
|
subk 4,a10
|
|||
|
move a11,a6
|
|||
|
movi CS_HX,a9
|
|||
|
addi TIT_LRX,a9
|
|||
|
srl 1,a9
|
|||
|
subk 4,a9
|
|||
|
sll 16,a10 ;SHIFT Y DOWN
|
|||
|
movy a10,a9 ;X,Y SET
|
|||
|
move a2,a8 ;TEXT POINTER
|
|||
|
clr a0 ;NO SLEEP
|
|||
|
movi SPACING20,a10
|
|||
|
movi RD15FONT,a11
|
|||
|
JSRP STRCNRM ;DO IT!
|
|||
|
mmfm a12,a10,a11,a8 ;POP THE STUFF.
|
|||
|
RETP
|
|||
|
|
|||
|
_adj_time_and_date
|
|||
|
movi DAY_TABLE,a8 ; Put Day of week up
|
|||
|
move @_rtc_day,a0 ; Day of week number (1-7)
|
|||
|
dec a0
|
|||
|
; cmpi 6,a0
|
|||
|
; jrgt _abad_day
|
|||
|
sll 5,a0
|
|||
|
add a0,a8
|
|||
|
move *a8,a4,L
|
|||
|
calla copy_rom_string
|
|||
|
movi DAYADJ_SETUP,a0
|
|||
|
callr _setup_message
|
|||
|
movi _setup_mess,a8
|
|||
|
JSRP L_MESS
|
|||
|
_abad_day
|
|||
|
movi MONTH_TABLE,a8 ; Put month of year up
|
|||
|
move @_rtc_month,a0 ; Month of year number (1 - 12)
|
|||
|
dec a0
|
|||
|
; cmpi 11,a0
|
|||
|
; jrgt _abad_month
|
|||
|
sll 5,a0
|
|||
|
add a0,a8
|
|||
|
move *a8,a4,L
|
|||
|
calla copy_rom_string ; Copy month name to buffer
|
|||
|
_abad_month
|
|||
|
move @_rtc_date,a0 ; Date
|
|||
|
cmpi 9,a0
|
|||
|
jrgt _no_date_pad1
|
|||
|
movi ZPAD,a4
|
|||
|
calla concat_rom_string
|
|||
|
_no_date_pad1
|
|||
|
move @_rtc_date,a0 ; Date
|
|||
|
movi 31,a1 ; Maximum Date
|
|||
|
calla dec_to_asc ; Convert Date to ascii
|
|||
|
calla concat_string ; Add to buffer
|
|||
|
movi MESS_HYEARS,a4 ; , 19
|
|||
|
calla concat_rom_string ; Add to buffer
|
|||
|
move @_rtc_year,a0 ; Year
|
|||
|
cmpi 9,a0
|
|||
|
jrgt _no_year_pad1
|
|||
|
movi ZPAD,a4
|
|||
|
calla concat_rom_string
|
|||
|
_no_year_pad1
|
|||
|
move @_rtc_year,a0
|
|||
|
movi 99,a1 ; Max year
|
|||
|
calla dec_to_asc ; Convert Years to ascii
|
|||
|
calla concat_string ; Add to buffer
|
|||
|
movi DATEADJ_SETUP,a0
|
|||
|
callr _setup_message
|
|||
|
movi _setup_mess,a8
|
|||
|
JSRP L_MESS
|
|||
|
|
|||
|
clr a0
|
|||
|
move a0,@message_buffer
|
|||
|
move @_rtc_hours,a0 ; Hours
|
|||
|
jrnz _hour_gz
|
|||
|
addk 12,a0
|
|||
|
jruc _time_is_am1
|
|||
|
_hour_gz
|
|||
|
cmpi 12,a0
|
|||
|
jrle _time_is_am1
|
|||
|
move @_rtc_hours,a0 ; Hours
|
|||
|
subi 12,a0
|
|||
|
_time_is_am1
|
|||
|
movi 12,a1 ; Max hours
|
|||
|
calla dec_to_asc
|
|||
|
calla concat_string
|
|||
|
movi TSEPERATOR,a4
|
|||
|
calla concat_rom_string
|
|||
|
move @_rtc_minutes,a0
|
|||
|
cmpi 9,a0
|
|||
|
jrgt _no_min_pad1
|
|||
|
movi ZPAD,a4
|
|||
|
calla concat_rom_string
|
|||
|
_no_min_pad1
|
|||
|
move @_rtc_minutes,a0
|
|||
|
movi 59,a1 ; Max Minutes
|
|||
|
calla dec_to_asc
|
|||
|
calla concat_string
|
|||
|
movi TSEPERATOR,a4
|
|||
|
calla concat_rom_string
|
|||
|
move @_rtc_seconds,a0
|
|||
|
cmpi 9,a0
|
|||
|
jrgt _no_sec_pad1
|
|||
|
movi ZPAD,a4
|
|||
|
calla concat_rom_string
|
|||
|
_no_sec_pad1
|
|||
|
move @_rtc_seconds,a0
|
|||
|
movi 59,a1 ; Max Seconds
|
|||
|
calla dec_to_asc
|
|||
|
calla concat_string
|
|||
|
move @_rtc_hours,a0 ; Hours
|
|||
|
cmpi 11,a0
|
|||
|
jrgt _time_is_pm1
|
|||
|
_time_is_afm
|
|||
|
movi TIME_AM,a4
|
|||
|
jruc _tdone1
|
|||
|
_time_is_pm1
|
|||
|
cmpi 24,a0
|
|||
|
jrz _time_is_afm
|
|||
|
movi TIME_PM,a4
|
|||
|
_tdone1
|
|||
|
calla concat_rom_string
|
|||
|
movi TADJ_SETUP,a0
|
|||
|
callr _setup_message
|
|||
|
movi _setup_mess,a8
|
|||
|
JSRP L_MESS
|
|||
|
RETP
|
|||
|
|
|||
|
_set_it_up
|
|||
|
calla CLR_CUR
|
|||
|
movi 6,a1
|
|||
|
movk 5,a4
|
|||
|
calla CADJ_BOX
|
|||
|
movi 1,a1
|
|||
|
clr a4
|
|||
|
calla CADJ_BOX
|
|||
|
movi [ADJ_CULY+5,CS_HX+5],A3
|
|||
|
movi [21,185],A4
|
|||
|
calla BLNKAREA
|
|||
|
movi [ADJ_CULY+31,CS_HX+5],A3
|
|||
|
movi [58,185],A4
|
|||
|
calla BLNKAREA
|
|||
|
SLEEPK 2 ; I dare you to take this out
|
|||
|
RETP
|
|||
|
|
|||
|
|
|||
|
YEAR_SET
|
|||
|
JSRP _set_it_up
|
|||
|
movi MESS_YEAR_SET,a2
|
|||
|
JSRP _do_title
|
|||
|
JSRP _adj_time_and_date
|
|||
|
RETP
|
|||
|
|
|||
|
MONTH_SET
|
|||
|
JSRP _set_it_up
|
|||
|
movi MESS_MONTH_SET,a2
|
|||
|
JSRP _do_title
|
|||
|
JSRP _adj_time_and_date
|
|||
|
RETP
|
|||
|
|
|||
|
DATE_SET
|
|||
|
JSRP _set_it_up
|
|||
|
movi MESS_DATE_SET,a2
|
|||
|
JSRP _do_title
|
|||
|
JSRP _adj_time_and_date
|
|||
|
RETP
|
|||
|
|
|||
|
DAY_SET
|
|||
|
JSRP _set_it_up
|
|||
|
movi MESS_DAY_SET,a2
|
|||
|
JSRP _do_title
|
|||
|
JSRP _adj_time_and_date
|
|||
|
RETP
|
|||
|
|
|||
|
HOUR_SET
|
|||
|
JSRP _set_it_up
|
|||
|
movi MESS_HOUR_SET,a2
|
|||
|
JSRP _do_title
|
|||
|
JSRP _adj_time_and_date
|
|||
|
RETP
|
|||
|
|
|||
|
MINUTE_SET
|
|||
|
JSRP _set_it_up
|
|||
|
movi MESS_MINUTE_SET,a2
|
|||
|
JSRP _do_title
|
|||
|
JSRP _adj_time_and_date
|
|||
|
RETP
|
|||
|
|
|||
|
SECOND_SET
|
|||
|
JSRP _set_it_up
|
|||
|
movi MESS_SECOND_SET,a2
|
|||
|
JSRP _do_title
|
|||
|
JSRP _adj_time_and_date
|
|||
|
RETP
|
|||
|
|
|||
|
; a0 = value code
|
|||
|
; a8 = PTR to data struct
|
|||
|
; TRASHES a0, a3, a2
|
|||
|
_ts_val_up:
|
|||
|
mmtm sp,a0,a2,a3
|
|||
|
sll 4,a0
|
|||
|
addi _rtc_seconds,a0
|
|||
|
move *a0,a3
|
|||
|
addk 1,a3
|
|||
|
move *a8(AD_MAX),a2,L
|
|||
|
cmp a3,a2
|
|||
|
jrge _ts_vu_done
|
|||
|
move *a8(AD_MIN),a3,L
|
|||
|
_ts_vu_done
|
|||
|
andi 0ffh,a1
|
|||
|
move a3,*a0
|
|||
|
mmfm sp,a0,a2,a3
|
|||
|
rets
|
|||
|
|
|||
|
; a0 = value code
|
|||
|
; a8 = PTR to data struct
|
|||
|
; TRASHES a0, a3
|
|||
|
_ts_val_down:
|
|||
|
mmtm sp,a0,a3,a1
|
|||
|
sll 4,a0
|
|||
|
addi _rtc_seconds,a0
|
|||
|
move *a0,a3
|
|||
|
subk 1,a3
|
|||
|
move *a8(AD_MIN),a1,L
|
|||
|
cmp a1,a3
|
|||
|
jrge _ts_vd_done
|
|||
|
move *a8(AD_MAX),a3,L
|
|||
|
_ts_vd_done
|
|||
|
andi 0ffh,a3
|
|||
|
move a3,*a0
|
|||
|
mmfm sp,a0,a3,a1
|
|||
|
rets
|
|||
|
|
|||
|
GEN_TS:
|
|||
|
movk 2,a0
|
|||
|
move a0,@_switch_map_mode,L
|
|||
|
move a9,*a13(PDATA),L
|
|||
|
move a9,a8
|
|||
|
calla CLR_MAIN
|
|||
|
calla ADJ_INST
|
|||
|
JSRP ST_STICK
|
|||
|
SLEEPK 2
|
|||
|
TS_CHNG
|
|||
|
SLEEPK 1
|
|||
|
movi 31000h,a5
|
|||
|
JSRP GETSTICK
|
|||
|
move *a13(PDATA),a8,L
|
|||
|
move a0,a1
|
|||
|
jrz TS_CHNG
|
|||
|
move *a8(AD_CMOS),a0,W ; Get What we are adjusting
|
|||
|
cmpi 3,a1
|
|||
|
jrz TS_BUTT
|
|||
|
cmpi 2,a1
|
|||
|
jrz TS_DOWN
|
|||
|
callr _ts_val_up ; Incrment the value
|
|||
|
jruc TS_JOIN
|
|||
|
TS_DOWN:
|
|||
|
callr _ts_val_down ; Decrement the value
|
|||
|
TS_JOIN:
|
|||
|
movi beep1_snd,a3
|
|||
|
calla SNDSND
|
|||
|
JSRP TS_UPDATE
|
|||
|
jruc TS_CHNG
|
|||
|
TS_UPDATE:
|
|||
|
move *a8(AD_NAMEIT),a0,L
|
|||
|
movi ROBO_LASER,a11
|
|||
|
jump a0
|
|||
|
TS_BUTT:
|
|||
|
movi beep2_snd,a3
|
|||
|
calla SNDSND
|
|||
|
JSRP TS_UPDATE
|
|||
|
SLEEPK 5
|
|||
|
TS_CAN:
|
|||
|
movk 1,a0
|
|||
|
move a0,@_switch_map_mode,L
|
|||
|
RETP
|
|||
|
|
|||
|
|
|||
|
********************************
|
|||
|
* DIAGNOSTIC TESTS
|
|||
|
*
|
|||
|
* SOUND TEST STUFF
|
|||
|
|
|||
|
NCHAN EQU 6 ;DECLARE NUMBER OF ALLOWED CHANNELS
|
|||
|
MUSICHAN EQU 3 ;THIS CHANNEL IS FOR THE TUNES
|
|||
|
|
|||
|
|
|||
|
;RESETBIT EQU 0FE00H ;Sound board reset bit
|
|||
|
|
|||
|
|
|||
|
GO_STEST
|
|||
|
|
|||
|
CALLA CLR_SCRN
|
|||
|
|
|||
|
movi MEN_SOUNDTEST,a8
|
|||
|
movk 1,a9 ;CURSOR ON 1st ENTRY
|
|||
|
|
|||
|
JAUC GEN_MENU ;THIS WILL RETURN TO LEVEL ABOVE US!
|
|||
|
|
|||
|
; jsrp B_MENU ;SEE IF THEY WANT PAGE 2.
|
|||
|
; cmpi 1,A8 ;DID WE GET 1'ST ENTRY?
|
|||
|
; RETP
|
|||
|
|
|||
|
SNDTST
|
|||
|
MOVI SNDMES,A8 ;MESSAGE POINTER
|
|||
|
SNDTLP
|
|||
|
CALLA SCRCLR
|
|||
|
MOVI M_STEST,A0 ;SOUND TEST MESSAGE
|
|||
|
MOVI >6080,A1
|
|||
|
CLR A2
|
|||
|
MOVI ROBO_WHITE,A3
|
|||
|
CALLA STRNEW1
|
|||
|
MOVI >B080,A1 ;SCREEN ADDRESS
|
|||
|
MOVE A8,A0
|
|||
|
CALLA STRNEW1
|
|||
|
ADDK 8,A0
|
|||
|
MOVB *A0,A5 ;Channel
|
|||
|
ADDK 8,A0
|
|||
|
MOVB *A0,A3 ;Sound #
|
|||
|
sll 32-8,a3 ;Kill sign extend
|
|||
|
srl 32-8,a3
|
|||
|
ADDK 8,A0
|
|||
|
CALLA SNDSND
|
|||
|
MOVE A0,A8
|
|||
|
MOVE A13,A13 ;AUTO-CYCLE?
|
|||
|
JRNE SNDSLP ;NO
|
|||
|
CALLA WDOGDIS
|
|||
|
MOVI 3000000,A13
|
|||
|
SNDAUTO DSJS A13,SNDAUTO
|
|||
|
JRUC SNDSLP1
|
|||
|
SNDSLP
|
|||
|
SLEEP 120
|
|||
|
SNDSLP1
|
|||
|
MOVB *A8,A5
|
|||
|
JRNE SNDTLP
|
|||
|
MOVE A13,A13 ;AUTO CYCLE EXIT
|
|||
|
JREQ SNDX1
|
|||
|
RETP
|
|||
|
|
|||
|
SNDX1 RETS
|
|||
|
|
|||
|
*SOUND TABLE
|
|||
|
*MESSAGE,CHANNEL,SOUNDCODE
|
|||
|
*
|
|||
|
SNDMES
|
|||
|
.byte "TUNE 1 (1)",0
|
|||
|
.byte MUSICHAN,1
|
|||
|
.byte "NO WAY (E6)",0
|
|||
|
.byte 1,>e6
|
|||
|
.byte "EXPL1 (30)",0
|
|||
|
.byte 4,>30
|
|||
|
.byte "TUNE 2 (9)",0
|
|||
|
.byte MUSICHAN,9
|
|||
|
.byte "SPIDER BOUNCE (83)",0
|
|||
|
.byte 4,>83
|
|||
|
.byte "MUSIC OFF (0)",0
|
|||
|
.byte MUSICHAN,0
|
|||
|
.byte 0 ;THE END OF TABLE
|
|||
|
.even
|
|||
|
|
|||
|
.ref SNDPROTOPROMPT
|
|||
|
.ref SNDRELEASEPROMPT
|
|||
|
.ref SNDTIMEOUT
|
|||
|
.ref SOUNDSUP
|
|||
|
.ref _snd_chip_count
|
|||
|
|
|||
|
snd_vprompt
|
|||
|
.string "SOUND SYSTEM VERSION: ",0
|
|||
|
.even
|
|||
|
|
|||
|
snd_rev_mes
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,227,ROBO_GREEN,STRCNRM,0
|
|||
|
.byte 0,0,0
|
|||
|
.even
|
|||
|
|
|||
|
snd_tout_mes
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,227,ROBO_RED,STRCNRM,0
|
|||
|
.byte 0,0,0
|
|||
|
.even
|
|||
|
|
|||
|
#*************************************************************
|
|||
|
*
|
|||
|
SUBRP GetSoundRev
|
|||
|
move @_coin_counter_addr,a0,L
|
|||
|
movi 030h,a1 ; Yank down the reset
|
|||
|
move a1,*a0,W
|
|||
|
movi 10000,a1 ; Hold it fer a while
|
|||
|
dsjs a1,$
|
|||
|
movi 020h,a1 ; Let it go
|
|||
|
move a1,*a0,W
|
|||
|
movi 10000,a1
|
|||
|
dsjs a1,$
|
|||
|
move @_sound_addr,a0,L ; Bypass the diags
|
|||
|
movb a0,*a0
|
|||
|
movi 500000,a1 ; Wait fer a while
|
|||
|
#swait_lp
|
|||
|
dsjs a1,#swait_lp
|
|||
|
clr a3 ; Turn on the sounds
|
|||
|
move a3,@SOUNDSUP,W
|
|||
|
movi 999,a3 ; Send revision request sound call
|
|||
|
calla SNDSND
|
|||
|
movi 1000000,a2
|
|||
|
#sndrev_loop
|
|||
|
move @_soundirq_addr,a0,L ; Wait fer a response
|
|||
|
move *a0,a1,W
|
|||
|
btst B_SDAV,a1 ; Got a response ?
|
|||
|
jrz #snd_response ; BR = yes
|
|||
|
dsjs a2,#sndrev_loop
|
|||
|
#snd_timeout
|
|||
|
movi SNDTIMEOUT,a4 ; If we get here we never got a response
|
|||
|
calla copy_rom_string
|
|||
|
movi snd_tout_mes,a0
|
|||
|
callr _setup_message
|
|||
|
movi _setup_mess,a8
|
|||
|
JSRP L_MESS
|
|||
|
|
|||
|
jruc #sndrev_done ; Then we be done
|
|||
|
#snd_response
|
|||
|
movi snd_vprompt,a4
|
|||
|
calla copy_rom_string
|
|||
|
|
|||
|
move @_sound_addr,a0,L ; Get sound revision data
|
|||
|
move *a0,a0,W
|
|||
|
move a0,@_snd_chip_count,W ; Put up sound revision
|
|||
|
move a0,a1
|
|||
|
andi 0ffh,a1
|
|||
|
cmpi 0ffh,a1
|
|||
|
jrz #snd_timeout
|
|||
|
andi 0f0h,a1
|
|||
|
cmpi 0d0h,a1
|
|||
|
jrz #proto_version
|
|||
|
movi SNDRELEASEPROMPT,a4
|
|||
|
jruc #do_snd_version
|
|||
|
#proto_version
|
|||
|
movi SNDPROTOPROMPT,a4
|
|||
|
#do_snd_version
|
|||
|
calla concat_rom_string
|
|||
|
move @_snd_chip_count,a0,W
|
|||
|
andi 0fh,a0
|
|||
|
movk 15,a1
|
|||
|
calla dec_to_asc
|
|||
|
calla concat_string
|
|||
|
movi snd_rev_mes,a0
|
|||
|
callr _setup_message
|
|||
|
movi _setup_mess,a8
|
|||
|
JSRP L_MESS
|
|||
|
#sndrev_done
|
|||
|
RETP
|
|||
|
|
|||
|
*******************************************************************************
|
|||
|
DO_GENTEST
|
|||
|
|
|||
|
CALLA CLR_SCRN
|
|||
|
MOVI M_DIGT,A2
|
|||
|
MOVI ROBO_GREEN,A3
|
|||
|
JSRP TOP_BOX ;PRINT TITLE BOX.
|
|||
|
|
|||
|
CALLA SURE_BOX ;PUT A NICE BOX UP!
|
|||
|
|
|||
|
movi #snd_testing_mess,a8
|
|||
|
JSRP L_MESS
|
|||
|
|
|||
|
JSRP GetSoundRev
|
|||
|
|
|||
|
;reset the board
|
|||
|
movi SNDRSTBIT|32,a0 ;pull bit low
|
|||
|
; move a0,@COIN_COUNTERS,W
|
|||
|
move @_coin_counter_addr,a8,L
|
|||
|
move a0,*a8,W
|
|||
|
movi 8,a14 ;wait a bit
|
|||
|
dsjs a14,$
|
|||
|
|
|||
|
movi 32,a0 ;send it high again
|
|||
|
; move a0,@COIN_COUNTERS,W
|
|||
|
move @_coin_counter_addr,a8,L
|
|||
|
move a0,*a8,W
|
|||
|
|
|||
|
SLEEP TSEC/4 ;250ms wait
|
|||
|
|
|||
|
movi TSEC*7,a0 ;wait for data available
|
|||
|
JSRP poll_sdav
|
|||
|
|
|||
|
; movb @SOUNDR,a0 ;read from the board (better be 0x79)
|
|||
|
move @_sound_addr,a0,L
|
|||
|
movb *a0,a0
|
|||
|
cmpi 79h,a0
|
|||
|
jrne sdav_not79
|
|||
|
|
|||
|
movi TSEC/5,a0
|
|||
|
JSRP poll_sdav ;great. now wait for the bong count
|
|||
|
|
|||
|
; movb @SOUNDR,a0
|
|||
|
move @_sound_addr,a0,L
|
|||
|
movb *a0,a0
|
|||
|
X32 a0
|
|||
|
addi diag_message_table,a0
|
|||
|
move *a0,a8,L
|
|||
|
JSRP L_MESS
|
|||
|
|
|||
|
jauc ANY_BUT
|
|||
|
|
|||
|
sdav_not79
|
|||
|
movi AUD_SNDERR4,a0
|
|||
|
calla AUD1
|
|||
|
.if DEBUG ;sound board misbehaving. should
|
|||
|
LOCKUP ; write a 0x79 after the checksum
|
|||
|
.endif ; tests. it wrote something else.
|
|||
|
jauc ANY_BUT
|
|||
|
|
|||
|
diag_message_table
|
|||
|
.long #check_hardware
|
|||
|
.long #board_ok
|
|||
|
.long #bad_u2_checksum
|
|||
|
.long #bad_u3_checksum
|
|||
|
.long #bad_u4_checksum
|
|||
|
.long #bad_u5_checksum
|
|||
|
.long #bad_u6_checksum
|
|||
|
.long #bad_u7_checksum
|
|||
|
.long #bad_u8_checksum
|
|||
|
.long #bad_u9_checksum
|
|||
|
.long #bad_ram
|
|||
|
|
|||
|
|
|||
|
****************************************
|
|||
|
* Wait for sound board Data AVailable to go active, with timeout.
|
|||
|
* >a0=timeout
|
|||
|
* <a0=time remaining
|
|||
|
|
|||
|
SUBR poll_sdav
|
|||
|
PUSHP a8
|
|||
|
move a0,a8
|
|||
|
|
|||
|
|
|||
|
;psdav_0 move @SOUNDIRQ,a1,W
|
|||
|
|
|||
|
psdav_0
|
|||
|
move @_soundirq_addr,a1,L
|
|||
|
move *a1,a1,W
|
|||
|
|
|||
|
btst B_SDAV,a1
|
|||
|
jrz psdav_found
|
|||
|
SLEEPK 1
|
|||
|
dsj a8,psdav_0
|
|||
|
jruc psdav_timeout
|
|||
|
|
|||
|
psdav_found
|
|||
|
nop
|
|||
|
|
|||
|
psdav_timeout
|
|||
|
move a8,a0
|
|||
|
PULLP a8
|
|||
|
RETP
|
|||
|
|
|||
|
|
|||
|
****************************************
|
|||
|
*blank the inside of the "are you sure" box
|
|||
|
*
|
|||
|
blnk_sure_box
|
|||
|
MOVI [41H,29H],A3
|
|||
|
MOVI [0F2H,166H]-[41H,29H],A4
|
|||
|
JAUC BLNKAREA ;ITS BLANK!
|
|||
|
|
|||
|
M_DIGT
|
|||
|
.STRING "GENERAL SOUND TEST",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
SIRQ_DETECT
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,170,ROBO_GREEN,STRCNRM,0
|
|||
|
.STRING "SOUND IRQ DETECT FUNCTIONAL.",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
*
|
|||
|
*MESSAGE FOR SOUND BOARD IRQ NOT WORKING
|
|||
|
*
|
|||
|
SIRQ_ERR
|
|||
|
MESS_MAC RD15FONT,SPACING07,200,95,COLOR_LF,STRCNRM,0
|
|||
|
.STRING "** WARNING! **",0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,120,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "UNABLE TO DETECT SOUND BOARD IRQ.",0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,135,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "THIS MAY RESULT IN ERRANT SOUNDS.",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
SIRQ_ERR2
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,170,ROBO_RED,STRCNRM,0
|
|||
|
.STRING "ERROR - SOUND IRQ NOT DETECTED.",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
DAC_LX EQU 125
|
|||
|
DAC_LX2 EQU DAC_LX+52
|
|||
|
DAC_ERR
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,68,COLOR_LF,STRCNRM,0
|
|||
|
.STRING "LISTEN FOR TONES:",0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,81,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "0 TONES - CHECK HARDWARE",0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,91,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "1 TONE - SOUND BOARD OK",0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,101,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "2 TONES - BAD U2 CHECKSUM",0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,111,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "3 TONES - BAD U3 CHECKSUM",0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,121,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "4 TONES - BAD U4 CHECKSUM",0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,131,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "5 TONES - BAD U5 CHECKSUM",0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,141,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "6 TONES - BAD U6 CHECKSUM",0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,151,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "10 TONES - RAM TEST FAILED",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
#snd_testing_mess
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,81,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "TESTING",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
#check_hardware
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,91,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "NO RESPONSE FROM SOUND SYSTEM",0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,101,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "CHECK HARDWARE",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
#board_ok
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,91,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "1 TONE - SOUND BOARD OK",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
#bad_u2_checksum
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,91,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "BAD U2 CHECKSUM",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
#bad_u3_checksum
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,91,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "BAD U3 CHECKSUM",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
#bad_u4_checksum
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,91,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "BAD U4 CHECKSUM",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
#bad_u5_checksum
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,91,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "BAD U5 CHECKSUM",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
#bad_u6_checksum
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,91,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "BAD U6 CHECKSUM",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
#bad_u7_checksum
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,91,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "BAD U7 CHECKSUM",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
#bad_u8_checksum
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,91,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "BAD U8 CHECKSUM",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
#bad_u9_checksum
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,91,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "BAD U9 CHECKSUM",0,1
|
|||
|
.EVEN
|
|||
|
|
|||
|
#bad_ram
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,91,COLOR_YELLOW,STRCNRM,0
|
|||
|
.STRING "RAM TEST FAILED",0,1
|
|||
|
.EVEN
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
DO_PLAYSOUNDS
|
|||
|
|
|||
|
MOVI SND_INST,A8
|
|||
|
JSRP L_MESS ;PUT INSTRUCTION OUT.
|
|||
|
|
|||
|
JSRP QSNDRST
|
|||
|
|
|||
|
movi [177,200-105],a4 ;upper left
|
|||
|
movi [238+16,200+104-1],a5 ;bottom right
|
|||
|
MOVI COLOR_WHITE,a9
|
|||
|
CALLA STD_BORD
|
|||
|
|
|||
|
CLR A10
|
|||
|
movi COLOR_LF,a0
|
|||
|
move a10,a1
|
|||
|
callr plot_sound
|
|||
|
move a10,a3
|
|||
|
CALLR MAKE_SOUND
|
|||
|
#loop
|
|||
|
SLEEPK 1
|
|||
|
|
|||
|
calla fudge_switches2
|
|||
|
move @fswitches_down,a0,L
|
|||
|
andi START_BITS,a0
|
|||
|
jrnz #exit
|
|||
|
|
|||
|
move @fswitches_down,a0,L
|
|||
|
andi ACTION_BITS,a0
|
|||
|
jrz #no_play_sound
|
|||
|
move a10,a3
|
|||
|
CALLR MAKE_SOUND
|
|||
|
jruc #loop
|
|||
|
#no_play_sound
|
|||
|
|
|||
|
move a10,a2
|
|||
|
move @fswitches_cur,a0,L
|
|||
|
andi UP_BITS,a0
|
|||
|
jrz #no_down
|
|||
|
inc a2
|
|||
|
#no_down
|
|||
|
move @fswitches_cur,a0,L
|
|||
|
andi DOWN_BITS,a0
|
|||
|
jrz #no_up
|
|||
|
dec a2
|
|||
|
#no_up
|
|||
|
cmp a2,a10
|
|||
|
jreq #loop ;no change
|
|||
|
|
|||
|
push a2
|
|||
|
movi ROBO_BLACK,a0
|
|||
|
move a10,a1
|
|||
|
callr plot_sound
|
|||
|
pull a10
|
|||
|
andi 7,a10
|
|||
|
SLEEPK 6
|
|||
|
movi COLOR_LF,a0
|
|||
|
move a10,a1
|
|||
|
callr plot_sound
|
|||
|
move a10,a3
|
|||
|
CALLR MAKE_SOUND
|
|||
|
|
|||
|
movi 30,a11
|
|||
|
#wait_release
|
|||
|
|
|||
|
calla fudge_switches2
|
|||
|
move @fswitches_cur,a0,L
|
|||
|
andi UP_BITS|DOWN_BITS,a0
|
|||
|
jrz #loop
|
|||
|
SLEEPK 1
|
|||
|
dsj a11,#wait_release
|
|||
|
jruc #loop
|
|||
|
|
|||
|
#exit
|
|||
|
JSRP QSNDRST
|
|||
|
RETP
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* colour in a0
|
|||
|
* sound number 0-3 passed in a1
|
|||
|
plot_sound
|
|||
|
PUSH a10
|
|||
|
sll 5,a1 ;x 32 bits
|
|||
|
addi sounds_tab,a1 ;base addr
|
|||
|
move *a1,a1,L
|
|||
|
PUSH a0,a1
|
|||
|
movi SND_SETUP,a8
|
|||
|
calla LM_SETUP ;GET CONFIRMATION DATA READY.
|
|||
|
PULL a6,a8 ;colour,string
|
|||
|
JSRP LM_FINIS ;plot strings
|
|||
|
PULL a10
|
|||
|
rets
|
|||
|
*
|
|||
|
*MAKE_SOUND - MAKE A SOUND TEST SOUND
|
|||
|
*A3 = INDEX INTO TEST SOUND LIST
|
|||
|
*NOTE: TRASHES A3
|
|||
|
MAKE_SOUND
|
|||
|
SLL 4,A3
|
|||
|
ADDI TEST_SOUND_TAB,A3
|
|||
|
MOVE *A3,A3,W
|
|||
|
JAUC SNDSND
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* MONITOR PATTERNS *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
GO_PATTERNS
|
|||
|
MOVI MEN_PATTERNS,A8 ;PUT UP THE MENU AND GO!
|
|||
|
JAUC GEN_MENU ;THIS WILL RETURN TO LEVEL ABOVE US!
|
|||
|
|
|||
|
*******************************************************************************
|
|||
|
*******************************************************************************
|
|||
|
*******************************************************************************
|
|||
|
*
|
|||
|
* A U D I T D I S P L A Y S
|
|||
|
*
|
|||
|
*******************************************************************************
|
|||
|
*******************************************************************************
|
|||
|
*******************************************************************************
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* AUDIT TABLE STRUCTURE *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
|
|||
|
STRUCT 0
|
|||
|
APTR AUD_MESS ;*Text
|
|||
|
APTR AUD_ROUTINE ;*Code to call or 0
|
|||
|
WORD AUD_NUMBER ;Audit number to show or 0
|
|||
|
WORD AUD_COLOR ;Color for this line
|
|||
|
LABEL AUD_T_SIZE ;Size of structure
|
|||
|
|
|||
|
AMAC .macro mess,rout,audit,color
|
|||
|
.long :mess:,:rout:
|
|||
|
.word :audit:,:color:
|
|||
|
.endm
|
|||
|
|
|||
|
TXTLINE .macro s
|
|||
|
.byte ":s:",0
|
|||
|
.even
|
|||
|
.endm
|
|||
|
|
|||
|
|
|||
|
AUD_LM EQU TIT_ULX ;SQUARE OFF AUDITS W/ HEADER.
|
|||
|
AUD_RM EQU TIT_LRX
|
|||
|
AUD_Y_STRT EQU 54
|
|||
|
AUD_DY EQU 14
|
|||
|
|
|||
|
CP2_Y EQU 156 ;PART 2 OF COIN AUDIT PAGE.
|
|||
|
|
|||
|
********************************
|
|||
|
* (doesn't display dollar values)
|
|||
|
|
|||
|
COIN_OCTO_AUDS
|
|||
|
.word AUD_Y_STRT+50,12+8 ;Y start, Y spacing
|
|||
|
.word AUD_LM+30,AUD_RM-30 ;LFT/RGT margin X
|
|||
|
AMAC M_LCOIN2,0,AUDLCOIN,ROBO_YELLOW
|
|||
|
AMAC M_RCOIN2,0,AUDRCOIN,ROBO_YELLOW
|
|||
|
AMAC M_CCOIN2,0,AUDCCOIN,ROBO_YELLOW
|
|||
|
|
|||
|
.long 0
|
|||
|
|
|||
|
|
|||
|
|
|||
|
********************************
|
|||
|
* TOP HALF OF COIN AUDIT PAGE 1 TABLE
|
|||
|
|
|||
|
COIN_AUDS
|
|||
|
.word AUD_Y_STRT,12+5 ;Y start, Y spacing
|
|||
|
.word AUD_LM,AUD_RM ;LFT/RGT margin X
|
|||
|
AMAC M_LCOIN,0,AUDLCOIN,ROBO_YELLOW
|
|||
|
AMAC M_RCOIN,0,AUDRCOIN,ROBO_YELLOW
|
|||
|
AMAC M_CCOIN,0,AUDCCOIN,ROBO_YELLOW
|
|||
|
AMAC M_XCOIN,0,AUDXCOIN,ROBO_YELLOW
|
|||
|
AMAC M_DBV,0,AUD_DBV,ROBO_YELLOW
|
|||
|
AMAC M_START,STARTS,0,ROBO_GREEN
|
|||
|
; AMAC M_CONTO,0,AUD_CONTOFFERED,ROBO_GREEN
|
|||
|
; AMAC M_CONT,0,AUD_CONTTAKEN,ROBO_GREEN
|
|||
|
.long 0
|
|||
|
|
|||
|
COIN1_AUDS
|
|||
|
.word AUD_Y_STRT+14*6+2+13,AUD_DY
|
|||
|
.word AUD_LM,AUD_RM
|
|||
|
AMAC M_PAIDC,0,AUDPAIDC,ROBO_WHITE
|
|||
|
.long 0
|
|||
|
|
|||
|
COIN2_AUDS
|
|||
|
.word CP2_Y+AUD_DY+5+13,AUD_DY ;Y start, Y spacing
|
|||
|
.word AUD_LM,AUD_RM ;LFT/RGT margin X
|
|||
|
AMAC M_SERV,0,AUDSERV,>1212
|
|||
|
AMAC M_PLAYS,DOPLAYS,0,ROBO_YELLOW
|
|||
|
; AMAC M_HSLEFT,DOHSLEFT,0,ROBO_YELLOW
|
|||
|
.long 0
|
|||
|
|
|||
|
amst_s TXTLINE "ATTRACT MODE STARTS"
|
|||
|
M_START TXTLINE "MID GAME STARTS"
|
|||
|
M_CONTO TXTLINE "CONTINUES OFFERED"
|
|||
|
M_CONT TXTLINE "CONTINUES TAKEN"
|
|||
|
M_EXTRA TXTLINE "EXTRA MEN COLLECTED/EARNED"
|
|||
|
M_P1MIN TXTLINE "HOURS OF SINGLE PLAY"
|
|||
|
M_P2MIN TXTLINE "HOURS OF DUAL PLAY"
|
|||
|
M_HOURS TXTLINE "TOTAL HOURS OF PLAY"
|
|||
|
M_AVGT .byte "AVG. ",ASCII_DQ,"PLAYER",ASCII_DQ," GAME TIME (MIN.)",0
|
|||
|
.even
|
|||
|
|
|||
|
|
|||
|
;* BOTTOM HALF OF COIN AUDIT PAGE 1 TABLE
|
|||
|
;COIN_A2 .WORD CP2_Y ;Y START
|
|||
|
; .WORD AUD_DY ;Y BETWEEN ENTRIES
|
|||
|
; .WORD AUD_LM ;LEFT MARGIN X
|
|||
|
; .WORD AUD_RM ;RIGHT MARGIN X
|
|||
|
; AMAC M_START,STARTS,0,ROBO_YELLOW
|
|||
|
; AMAC M_CONT,CONTINS,0,ROBO_YELLOW
|
|||
|
; AMAC M_PLAYS,DOPLAYS,0,ROBO_YELLOW
|
|||
|
; AMAC M_HSLEFT,DOHSLEFT,0,ROBO_YELLOW
|
|||
|
; .LONG 0
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* COIN_D1 *
|
|||
|
* *
|
|||
|
* THIS IS TOP HALF OF DETAILED COIN AUDIT PAGE *
|
|||
|
* ITS THE SAME AS THE OTHER COIN PAGE WITH THE Y POSITIONING *
|
|||
|
* A LITTLE DIFFERENT *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
;COIN_D1
|
|||
|
; .WORD 39H ;Y START
|
|||
|
; .WORD 11H ;Y BETWEEN ENTRIES
|
|||
|
; .WORD AUD_LM ;LEFT MARGIN X
|
|||
|
; .WORD AUD_RM ;RIGHT MARGIN X
|
|||
|
; AMAC M_LCOIN,0,AUDLCOIN,ROBO_YELLOW
|
|||
|
; AMAC M_CCOIN,0,AUDCCOIN,ROBO_YELLOW
|
|||
|
; AMAC M_RCOIN,0,AUDRCOIN,ROBO_YELLOW
|
|||
|
; .LONG 0
|
|||
|
*
|
|||
|
* DOOR CLOSED AUDITS.
|
|||
|
*
|
|||
|
;COIN_D2
|
|||
|
; .WORD 090H ;Y START
|
|||
|
; .WORD 11H ;Y BETWEEN ENTRIES
|
|||
|
; .WORD AUD_LM ;LEFT MARGIN X
|
|||
|
; .WORD AUD_RM ;RIGHT MARGIN X
|
|||
|
; AMAC M_LCOIN,0,AUDLCDC,ROBO_YELLOW
|
|||
|
; AMAC M_CCOIN,0,AUDCCDC,ROBO_YELLOW
|
|||
|
; AMAC M_RCOIN,0,AUDRCDC,ROBO_YELLOW
|
|||
|
; .LONG 0
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* GAME PLAY AUDIT SCREEN *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
|
|||
|
.asg 50,LM
|
|||
|
.asg 400-50,RM
|
|||
|
|
|||
|
GAME_AUDS1
|
|||
|
.word 55-10,11,LM,RM ;Y start, Y spacing, L margin, R margin
|
|||
|
AMAC str_totuptime, prn_uptime,0, ROBO_WHITE
|
|||
|
AMAC str_totpltime, prn_pltime,0, ROBO_WHITE
|
|||
|
AMAC str_1pplay, prn_1plpct,0, ROBO_BLUE
|
|||
|
AMAC str_2pplay, prn_2plpct,0, ROBO_BLUE
|
|||
|
AMAC str_totstarts, 0,AUD_TOTSTARTS,ROBO_YELLOW
|
|||
|
AMAC str_amodstarts, 0,AUD_PRESTARTS,ROBO_YELLOW
|
|||
|
AMAC str_contoff, 0,AUD_CONTOFF, ROBO_CYAN
|
|||
|
AMAC str_conttaken, 0,AUD_CONTTAKN, ROBO_CYAN
|
|||
|
AMAC str_vscpus, 0,AUD_VSCPUS, ROBO_PURPLE
|
|||
|
AMAC str_vscpuf, 0,AUD_VSCPUF, ROBO_PURPLE
|
|||
|
AMAC str_cpuwin, prn_cpuwins,0, ROBO_GREEN
|
|||
|
AMAC str_credlen, prn_credlen,0,ROBO_GREEN
|
|||
|
AMAC str_inter, 0,AUD_INTERCON, ROBO_YELLOW
|
|||
|
AMAC str_wwf, 0,AUD_WWF, ROBO_YELLOW
|
|||
|
.long 0
|
|||
|
|
|||
|
GAME_AUDS2
|
|||
|
.word 55-10,11,LM,RM ;Y start, Y spacing, L margin, R margin
|
|||
|
AMAC str_gametime, prn_avgtime,0, ROBO_BLUE
|
|||
|
AMAC str_vshumtime, prn_hvhtime,0, ROBO_WHITE
|
|||
|
AMAC str_cpuwintime, prn_cwintime,0, ROBO_WHITE
|
|||
|
AMAC str_cpulosstime,prn_closstime,0,ROBO_WHITE
|
|||
|
AMAC str_fasthvh, prn_fasthvh,0, ROBO_GREEN
|
|||
|
AMAC str_fastcpuwin, prn_fastcwin,0, ROBO_GREEN
|
|||
|
AMAC str_combo_per, prn_combogames,0, ROBO_GREEN
|
|||
|
AMAC str_fasthumwin, prn_fasthwin,0, ROBO_GREEN
|
|||
|
; AMAC str_kanomorph, prn_kanomorph,0, ROBO_GREEN
|
|||
|
|
|||
|
AMAC str_lockups, 0,AUD_LOCKUP, ROBO_CYAN
|
|||
|
AMAC str_lockups2, 0,AUD_LOCKUP2, ROBO_CYAN
|
|||
|
AMAC str_snderr1, 0,AUD_SNDERR1, ROBO_PINK
|
|||
|
AMAC str_snderr2, 0,AUD_SNDERR2, ROBO_PINK
|
|||
|
AMAC str_snderr3, 0,AUD_SNDERR3, ROBO_PINK
|
|||
|
AMAC str_snderr4, 0,AUD_SNDERR4, ROBO_PINK
|
|||
|
.long 0
|
|||
|
|
|||
|
GAME_AUDS2a
|
|||
|
.word 55-10,11,LM,RM ;Y start, Y spacing, L margin, R margin
|
|||
|
AMAC str_hdtohd, 0,AUD_HEADTOHEAD,ROBO_WHITE
|
|||
|
AMAC str_rumble, 0,AUD_ROYALRUM, ROBO_WHITE
|
|||
|
AMAC str_rumwins, 0,AUD_RRWINS, ROBO_GREEN
|
|||
|
AMAC str_p1icons, 0,AUD_P1ICONMAX,ROBO_CYAN
|
|||
|
AMAC str_p2icons, 0,AUD_P2ICONMAX,ROBO_CYAN
|
|||
|
.long 0
|
|||
|
|
|||
|
GAME_AUDS3a
|
|||
|
.word 55-10+22,11,LM,RM-140 ;Y start, Y spacing, L margin, R margin
|
|||
|
AMAC str_bhart, 0,AUD_BHART, ROBO_GREEN
|
|||
|
AMAC str_rramo, 0,AUD_RRAMO, ROBO_WHITE
|
|||
|
AMAC str_under, 0,AUD_UNDER, ROBO_BLUE
|
|||
|
AMAC str_yoko, 0,AUD_YOKO, ROBO_YELLOW
|
|||
|
AMAC str_smich, 0,AUD_SMICH, ROBO_CYAN
|
|||
|
AMAC str_bbbig, 0,AUD_BBBIG, ROBO_PURPLE
|
|||
|
AMAC str_dclow, 0,AUD_DCLOW, ROBO_GREEN
|
|||
|
AMAC str_lluge, 0,AUD_LLUGE, ROBO_YELLOW
|
|||
|
; AMAC str_adam, dummy,0, ROBO_BLUE
|
|||
|
.long 0
|
|||
|
|
|||
|
GAME_AUDS3b
|
|||
|
.word 55-10+22,11,LM,RM-105-12 ;Y start, Y spacing, L margin, R margin
|
|||
|
AMAC str_space, bhart_hwinpct,0,ROBO_GREEN
|
|||
|
AMAC str_space, rramo_hwinpct,0,ROBO_WHITE
|
|||
|
AMAC str_space, under_hwinpct,0,ROBO_BLUE
|
|||
|
AMAC str_space, yoko_hwinpct,0,ROBO_YELLOW
|
|||
|
AMAC str_space, smich_hwinpct,0,ROBO_CYAN
|
|||
|
AMAC str_space, bbbig_hwinpct,0,ROBO_PURPLE
|
|||
|
AMAC str_space, dclow_hwinpct,0,ROBO_GREEN
|
|||
|
AMAC str_space, lluge_hwinpct,0,ROBO_YELLOW
|
|||
|
.long 0
|
|||
|
|
|||
|
GAME_AUDS3c
|
|||
|
.word 55-10+22,11,LM,RM-35 ;Y start, Y spacing, L margin, R margin
|
|||
|
AMAC str_space, 0,AUD_BHARTC, ROBO_GREEN
|
|||
|
AMAC str_space, 0,AUD_RRAMOC, ROBO_WHITE
|
|||
|
AMAC str_space, 0,AUD_UNDERC, ROBO_BLUE
|
|||
|
AMAC str_space, 0,AUD_YOKOC, ROBO_YELLOW
|
|||
|
AMAC str_space, 0,AUD_SMICHC, ROBO_CYAN
|
|||
|
AMAC str_space, 0,AUD_BBBIGC, ROBO_PURPLE
|
|||
|
AMAC str_space, 0,AUD_DCLOWC, ROBO_GREEN
|
|||
|
AMAC str_space, 0,AUD_LLUGEC, ROBO_YELLOW
|
|||
|
.long 0
|
|||
|
|
|||
|
GAME_AUDS3d
|
|||
|
.word 55-10+22,11,LM,RM-12 ;Y start, Y spacing, L margin, R margin
|
|||
|
AMAC str_space, bhart_cwinpct,0,ROBO_GREEN
|
|||
|
AMAC str_space, rramo_cwinpct,0,ROBO_WHITE
|
|||
|
AMAC str_space, under_cwinpct,0,ROBO_BLUE
|
|||
|
AMAC str_space, yoko_cwinpct,0,ROBO_YELLOW
|
|||
|
AMAC str_space, smich_cwinpct,0,ROBO_CYAN
|
|||
|
AMAC str_space, bbbig_cwinpct,0,ROBO_PURPLE
|
|||
|
AMAC str_space, dclow_cwinpct,0,ROBO_GREEN
|
|||
|
AMAC str_space, lluge_cwinpct,0,ROBO_YELLOW
|
|||
|
; AMAC str_space, prn_adam,0, ROBO_WHITE
|
|||
|
.long 0
|
|||
|
|
|||
|
GAUD_P3HEAD1
|
|||
|
MESS_MAC RD7FONT,SPACING07,RM-135,45,ROBO_BLUE,STRCNRM,0
|
|||
|
.STRING "PLAYER",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
GAUD_P3HEAD2
|
|||
|
MESS_MAC RD7FONT,SPACING07,RM-30,45,ROBO_BLUE,STRCNRM,0
|
|||
|
.STRING "CPU",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
GAUD_P3HEAD3
|
|||
|
MESS_MAC RD7FONT,SPACING07,RM-140,56,ROBO_RED,STRRNRM,0
|
|||
|
.STRING "USES",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
GAUD_P3HEAD4
|
|||
|
MESS_MAC RD7FONT,SPACING07,RM-105,56,ROBO_RED,STRRNRM,0
|
|||
|
.STRING "WINS",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
GAUD_P3HEAD5
|
|||
|
MESS_MAC RD7FONT,SPACING07,RM-35,56,ROBO_RED,STRRNRM,0
|
|||
|
.STRING "USES",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
GAUD_P3HEAD6
|
|||
|
MESS_MAC RD7FONT,SPACING07,RM,56,ROBO_RED,STRRNRM,0
|
|||
|
.STRING "WINS",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
;page 1
|
|||
|
str_totuptime TXTLINE "TOTAL GAME UPTIME (HRS:MINS)"
|
|||
|
str_totpltime TXTLINE "TOTAL GAME PLAY TIME (HRS:MINS)"
|
|||
|
str_1pplay TXTLINE "ONE-PLAYER PLAY"
|
|||
|
str_2pplay TXTLINE "TWO-PLAYER PLAY"
|
|||
|
str_totstarts TXTLINE "TOTAL STARTS"
|
|||
|
str_amodstarts TXTLINE "ATTRACT MODE STARTS"
|
|||
|
str_contoff TXTLINE "CONTINUES OFFERED"
|
|||
|
str_conttaken TXTLINE "CONTINUES TAKEN"
|
|||
|
str_vscpus TXTLINE "1P GAMES BEGUN"
|
|||
|
str_vscpuf TXTLINE "1P GAMES FINISHED"
|
|||
|
str_cpuwin TXTLINE "CPU VICTORIES"
|
|||
|
str_inter TXTLINE "INTER BELT CHOSEN"
|
|||
|
str_wwf TXTLINE "WWF BELT CHOSEN"
|
|||
|
str_hdtohd TXTLINE "HEAD TO HEAD GAMES"
|
|||
|
str_rumble TXTLINE "ROYAL RUMBLE GAMES"
|
|||
|
str_rumwins TXTLINE "ROYAL RUMBLE WINS"
|
|||
|
str_p1icons TXTLINE "PLAYER 1 MAX ICONS"
|
|||
|
str_p2icons TXTLINE "PLAYER 2 MAX ICONS"
|
|||
|
|
|||
|
;page 2
|
|||
|
str_gametime TXTLINE "AVG MATCH TIME (MIN:SEC)"
|
|||
|
str_vshumtime TXTLINE "AVG HUMAN VS HUMAN TIME"
|
|||
|
str_cpuwintime TXTLINE "AVG CPU WIN TIME"
|
|||
|
str_cpulosstime TXTLINE "AVG CPU LOSS TIME"
|
|||
|
str_fasthvh TXTLINE "FASTEST 2-PLAYER WIN"
|
|||
|
;str_kanomorph TXTLINE "KANO TRANSFORMATIONS"
|
|||
|
str_credlen TXTLINE "AVG 1 PLAYER TIME PER CREDIT"
|
|||
|
str_fastcpuwin TXTLINE "FASTEST CPU WIN"
|
|||
|
str_fasthumwin TXTLINE "FASTEST CPU LOSS"
|
|||
|
str_combo_per TXTLINE "HUMAN COMBO GAMES"
|
|||
|
str_lockups TXTLINE "DOGS"
|
|||
|
str_lockups2 TXTLINE "PROCESS KO"
|
|||
|
str_snderr1 TXTLINE "SND ERR #1 (IRQ)"
|
|||
|
str_snderr2 TXTLINE "SND ERR #2 (ROM CHECKSUM)"
|
|||
|
str_snderr3 TXTLINE "SND ERR #3 (RAM TEST)"
|
|||
|
str_snderr4 TXTLINE "SND ERR #4 (SDAV)"
|
|||
|
|
|||
|
;page 3
|
|||
|
str_bhart TXTLINE "BRET HART"
|
|||
|
str_rramo TXTLINE "RAZOR RAMON"
|
|||
|
str_under TXTLINE "UNDERTAKER"
|
|||
|
str_yoko TXTLINE "YOKOZUNA"
|
|||
|
str_smich TXTLINE "SHAWN MICHAELS"
|
|||
|
str_bbbig TXTLINE "BAM BAM BIGELOW"
|
|||
|
str_dclow TXTLINE "DOINK THE CLOWN"
|
|||
|
str_lluge TXTLINE "LEX LUGER"
|
|||
|
;str_adam TXTLINE "ADAM BOMB APPEARANCES"
|
|||
|
|
|||
|
str_pct TXTLINE "%"
|
|||
|
|
|||
|
str_space TXTLINE " "
|
|||
|
.even
|
|||
|
|
|||
|
.if 0
|
|||
|
ROBO_GREY EQU 0101H ;[0E0H-223,0E0H-223]
|
|||
|
ROBO_WHITE EQU 0202H ;[0E1H-223,0E1H-223]
|
|||
|
ROBO_RED EQU 0303H ;[0E2H-223,0E2H-223]
|
|||
|
ROBO_ORANGE EQU 0404H ;[0E3H-223,0E3H-223]
|
|||
|
ROBO_YELLOW EQU 0505H ;[0E4H-223,0E4H-223]
|
|||
|
ROBO_GREEN EQU 0606H ;[0E5H-223,0E5H-223]
|
|||
|
ROBO_BLUE EQU 0707H ;[0E6H-223,0E6H-223]
|
|||
|
ROBO_LF EQU 03E3EH
|
|||
|
ROBO_CYAN EQU 0E0EH ;[0EDH-223,0EDH-223]
|
|||
|
ROBO_DECAY EQU 03F3FH
|
|||
|
ROBO_RGOLD EQU 0A0AH ;[0E9H-223,0E9H-223]
|
|||
|
ROBO_LASER EQU 03E3EH
|
|||
|
ROBO_LASER2 EQU 03F3FH
|
|||
|
ROBO_BLUWH EQU 0C0CH ;[0EBH-223,0EBH-223]
|
|||
|
ROBO_PINK EQU 0303H ;[0E2H-223,0E2H-223]
|
|||
|
ROBO_SKY EQU 0D0DH ;[0ECH-223,0ECH-223] ;LAST COLOR IN ROBO IS "SKY" COLOR
|
|||
|
ROBO_PURPLE EQU ROBO_SKY ;PURPLE FOR TEST MODE
|
|||
|
ROBO_BLACK EQU 1414H ;BLACK AS COAL
|
|||
|
.endif
|
|||
|
|
|||
|
|
|||
|
#*****************************************************************************
|
|||
|
* total uptime
|
|||
|
prn_uptime
|
|||
|
movi AUD_UPTIME,a0
|
|||
|
calla GET_AUD
|
|||
|
;* 5 sec incs / 60 (sec p/min) = /12
|
|||
|
movk 12,a0
|
|||
|
divu a0,a1 ;mins
|
|||
|
jruc P_TIME
|
|||
|
|
|||
|
|
|||
|
#*****************************************************************************
|
|||
|
* actual play time
|
|||
|
prn_pltime
|
|||
|
movi AUD_PLTIME,a0
|
|||
|
calla GET_AUD
|
|||
|
;* 5 sec incs / 60 (sec p/min) = /12
|
|||
|
movk 12,a0
|
|||
|
divu a0,a1 ;mins
|
|||
|
jruc P_TIME
|
|||
|
|
|||
|
|
|||
|
#*****************************************************************************
|
|||
|
* percentage of 1 player play
|
|||
|
prn_1plpct
|
|||
|
movi AUD_PLTIME,a0
|
|||
|
calla GET_AUD
|
|||
|
move a1,a4
|
|||
|
|
|||
|
movi AUD_1PLAYTIME,a0
|
|||
|
calla GET_AUD
|
|||
|
movi 100,a0
|
|||
|
mpyu a0,a1
|
|||
|
move a1,a2
|
|||
|
move a4,a0
|
|||
|
callr ROUNDED_A0_INTO_A2 ;DIVIDES A0 INTO A2. RESULT IN A2
|
|||
|
move a2,a3
|
|||
|
jruc PERCENT_WORK
|
|||
|
|
|||
|
|
|||
|
#*****************************************************************************
|
|||
|
* percentage of 2 player play
|
|||
|
prn_2plpct
|
|||
|
movi AUD_PLTIME,a0
|
|||
|
calla GET_AUD
|
|||
|
move a1,a4
|
|||
|
|
|||
|
movi AUD_2PLAYTIME,a0
|
|||
|
calla GET_AUD
|
|||
|
movi 100,a0
|
|||
|
mpyu a0,a1
|
|||
|
move a1,a2
|
|||
|
move a4,a0
|
|||
|
callr ROUNDED_A0_INTO_A2 ;DIVIDES A0 INTO A2. RESULT IN A2
|
|||
|
move a2,a3
|
|||
|
jruc PERCENT_WORK
|
|||
|
|
|||
|
|
|||
|
#*****************************************************************************
|
|||
|
*
|
|||
|
prn_cpuwins
|
|||
|
movi AUD_VSCPUF,a0
|
|||
|
calla GET_AUD
|
|||
|
move a1,a4
|
|||
|
|
|||
|
movi AUD_CPUWIN,a0
|
|||
|
calla GET_AUD
|
|||
|
movi 100,a0
|
|||
|
mpyu a0,a1
|
|||
|
move a1,a2
|
|||
|
move a4,a0
|
|||
|
callr ROUNDED_A0_INTO_A2 ;DIVIDES A0 INTO A2. RESULT IN A2
|
|||
|
move a2,a3
|
|||
|
jruc PERCENT_WORK
|
|||
|
|
|||
|
|
|||
|
#*****************************************************************************
|
|||
|
* avg battle time (all categories)
|
|||
|
|
|||
|
prn_avgtime
|
|||
|
movi AUD_2PBTIME,a0
|
|||
|
calla GET_AUD
|
|||
|
move a1,a3
|
|||
|
movi AUD_CPUWINTIME,a0
|
|||
|
calla GET_AUD
|
|||
|
add a1,a3
|
|||
|
movi AUD_CPULOSETIME,a0
|
|||
|
calla GET_AUD
|
|||
|
add a1,a3
|
|||
|
|
|||
|
movi AUD_VSHUMF,a0
|
|||
|
calla GET_AUD
|
|||
|
move a1,a2
|
|||
|
movi AUD_VSCPUF,a0
|
|||
|
calla GET_AUD
|
|||
|
add a1,a2
|
|||
|
|
|||
|
divu a2,a3
|
|||
|
move a3,a1
|
|||
|
jruc P_TIME
|
|||
|
|
|||
|
|
|||
|
#*****************************************************************************
|
|||
|
* avg 2-player battle time
|
|||
|
|
|||
|
prn_hvhtime
|
|||
|
movi AUD_2PBTIME,a0
|
|||
|
calla GET_AUD
|
|||
|
|
|||
|
move a1,a3
|
|||
|
movi AUD_VSHUMF,a0
|
|||
|
calla GET_AUD
|
|||
|
|
|||
|
divu a1,a3
|
|||
|
move a3,a1
|
|||
|
jruc P_TIME
|
|||
|
|
|||
|
|
|||
|
#*****************************************************************************
|
|||
|
* avg CPU win time
|
|||
|
|
|||
|
prn_cwintime
|
|||
|
movi AUD_CPUWINTIME,a0
|
|||
|
calla GET_AUD
|
|||
|
|
|||
|
move a1,a3
|
|||
|
movi AUD_CPUWIN,a0
|
|||
|
calla GET_AUD
|
|||
|
|
|||
|
divu a1,a3
|
|||
|
move a3,a1
|
|||
|
jruc P_TIME
|
|||
|
|
|||
|
|
|||
|
#*****************************************************************************
|
|||
|
* avg CPU loss time
|
|||
|
|
|||
|
prn_closstime
|
|||
|
movi AUD_CPULOSETIME,a0
|
|||
|
calla GET_AUD
|
|||
|
|
|||
|
move a1,a3
|
|||
|
movi AUD_VSCPUF,a0
|
|||
|
calla GET_AUD
|
|||
|
move a1,a2
|
|||
|
movi AUD_CPUWIN,a0
|
|||
|
calla GET_AUD
|
|||
|
sub a1,a2
|
|||
|
|
|||
|
divu a2,a3
|
|||
|
move a3,a1
|
|||
|
jruc P_TIME
|
|||
|
|
|||
|
|
|||
|
#*****************************************************************************
|
|||
|
* fastest human v human win
|
|||
|
|
|||
|
prn_fasthvh
|
|||
|
movi AUD_FASTHDH,a0
|
|||
|
calla GET_AUD
|
|||
|
jruc P_TIME
|
|||
|
|
|||
|
#*****************************************************************************
|
|||
|
;* KANO MORPHS
|
|||
|
;
|
|||
|
;prn_adam
|
|||
|
;prn_kanomorph
|
|||
|
; movi AUD_VSCPUF,a0
|
|||
|
; calla GET_AUD
|
|||
|
; CMPI 3000,A1
|
|||
|
; JRLE ZERO_MORPHS
|
|||
|
; MOVI 10,A0
|
|||
|
; CALLA RNDRNG0
|
|||
|
; MOVE A0,A8
|
|||
|
; PUSH A8
|
|||
|
; MOVI MESS_AUD_NUM,A8 ;SETUP FOR AUDIT NUMBER
|
|||
|
; CALLA LM_SETUP
|
|||
|
; PULL A8
|
|||
|
; CALLA HEXTOASC ;NOW WE POINT TO THE STRING.
|
|||
|
; move *a13(AT_PTR),a6,L ;Get *audit
|
|||
|
; move *a6(AUD_COLOR),a6
|
|||
|
; JSRP RIGHT_FINISH ;PRINT THE LINE
|
|||
|
;dummy
|
|||
|
; RETP
|
|||
|
;
|
|||
|
;ZERO_MORPHS
|
|||
|
; MOVI MESS_AUD_NUM,A8 ;SETUP FOR AUDIT NUMBER
|
|||
|
; CALLA LM_SETUP
|
|||
|
; CLR A8
|
|||
|
; CALLA HEXTOASC ;NOW WE POINT TO THE STRING.
|
|||
|
; move *a13(AT_PTR),a6,L ;Get *audit
|
|||
|
; move *a6(AUD_COLOR),a6
|
|||
|
; JSRP RIGHT_FINISH ;PRINT THE LINE
|
|||
|
; RETP
|
|||
|
|
|||
|
|
|||
|
prn_credlen
|
|||
|
MOVI AUD_CREDLEN,A0
|
|||
|
CALLA GET_AUD
|
|||
|
MOVE A1,A3
|
|||
|
MOVI AUD_CREDLENNUM,A0
|
|||
|
CALLA GET_AUD
|
|||
|
DIVU A1,A3
|
|||
|
MOVK 5,A1 ;TURN INTO SECONDS
|
|||
|
MPYU A1,A3 ;A3 HAS SECONDS OF INTEREST
|
|||
|
MOVE A3,A1
|
|||
|
jruc P_TIME
|
|||
|
|
|||
|
|
|||
|
#*****************************************************************************
|
|||
|
* fastest computer win
|
|||
|
|
|||
|
prn_fastcwin
|
|||
|
movi AUD_FASTCDH,a0
|
|||
|
calla GET_AUD
|
|||
|
jruc P_TIME
|
|||
|
|
|||
|
|
|||
|
#*****************************************************************************
|
|||
|
* fastest computer loss
|
|||
|
|
|||
|
prn_fasthwin
|
|||
|
movi AUD_FASTHDC,a0
|
|||
|
calla GET_AUD
|
|||
|
jruc P_TIME
|
|||
|
|
|||
|
|
|||
|
#*****************************************************************************
|
|||
|
* percentage of human combo games
|
|||
|
|
|||
|
prn_combogames
|
|||
|
movi AUD_COMBO,a2
|
|||
|
movi AUD_TOTALGAMES,a0
|
|||
|
jruc #set
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
* wrestler win percentages
|
|||
|
*
|
|||
|
|
|||
|
bhart_hwinpct
|
|||
|
movi AUD_BHART,a0
|
|||
|
movi AUD_BHARTHW,a2
|
|||
|
jruc #set
|
|||
|
bhart_cwinpct
|
|||
|
movi AUD_BHARTC,a0
|
|||
|
movi AUD_BHARTCW,a2
|
|||
|
jruc #set
|
|||
|
rramo_hwinpct
|
|||
|
movi AUD_RRAMO,a0
|
|||
|
movi AUD_RRAMOHW,a2
|
|||
|
jruc #set
|
|||
|
rramo_cwinpct
|
|||
|
movi AUD_RRAMOC,a0
|
|||
|
movi AUD_RRAMOCW,a2
|
|||
|
jruc #set
|
|||
|
under_hwinpct
|
|||
|
movi AUD_UNDER,a0
|
|||
|
movi AUD_UNDERHW,a2
|
|||
|
jruc #set
|
|||
|
under_cwinpct
|
|||
|
movi AUD_UNDERC,a0
|
|||
|
movi AUD_UNDERCW,a2
|
|||
|
jruc #set
|
|||
|
yoko_hwinpct
|
|||
|
movi AUD_YOKO,a0
|
|||
|
movi AUD_YOKOHW,a2
|
|||
|
jruc #set
|
|||
|
yoko_cwinpct
|
|||
|
movi AUD_YOKOC,a0
|
|||
|
movi AUD_YOKOCW,a2
|
|||
|
jruc #set
|
|||
|
smich_hwinpct
|
|||
|
movi AUD_SMICH,a0
|
|||
|
movi AUD_SMICHHW,a2
|
|||
|
jruc #set
|
|||
|
smich_cwinpct
|
|||
|
movi AUD_SMICHC,a0
|
|||
|
movi AUD_SMICHCW,a2
|
|||
|
jruc #set
|
|||
|
bbbig_hwinpct
|
|||
|
movi AUD_BBBIG,a0
|
|||
|
movi AUD_BBBIGHW,a2
|
|||
|
jruc #set
|
|||
|
bbbig_cwinpct
|
|||
|
movi AUD_BBBIGC,a0
|
|||
|
movi AUD_BBBIGCW,a2
|
|||
|
jruc #set
|
|||
|
dclow_hwinpct
|
|||
|
movi AUD_DCLOW,a0
|
|||
|
movi AUD_DCLOWHW,a2
|
|||
|
jruc #set
|
|||
|
dclow_cwinpct
|
|||
|
movi AUD_DCLOWC,a0
|
|||
|
movi AUD_DCLOWCW,a2
|
|||
|
jruc #set
|
|||
|
lluge_hwinpct
|
|||
|
movi AUD_LLUGE,a0
|
|||
|
movi AUD_LLUGEHW,a2
|
|||
|
jruc #set
|
|||
|
lluge_cwinpct
|
|||
|
movi AUD_LLUGEC,a0
|
|||
|
movi AUD_LLUGECW,a2
|
|||
|
jruc #set
|
|||
|
#set
|
|||
|
calla GET_AUD
|
|||
|
move a1,a4
|
|||
|
move a2,a0
|
|||
|
calla GET_AUD
|
|||
|
movi 100,a0
|
|||
|
mpyu a0,a1
|
|||
|
move a1,a2
|
|||
|
move a4,a0
|
|||
|
callr ROUNDED_A0_INTO_A2
|
|||
|
move a2,a3
|
|||
|
jruc PERCENT_WORK
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* NUMBER_WORK - Print audit number
|
|||
|
* A3=#
|
|||
|
|
|||
|
PERCENT_WORK
|
|||
|
MOVI MESS_AUD_NUM,A8 ;SETUP FOR AUDIT NUMBER
|
|||
|
CALLA LM_SETUP
|
|||
|
|
|||
|
MOVE A3,A8 ;NOW WE HAVE BINARY NUMBER
|
|||
|
CALLA HEXTOASC ;NOW WE POINT TO THE STRING.
|
|||
|
|
|||
|
PUSH a8
|
|||
|
move a8,a7
|
|||
|
movi str_pct,a8
|
|||
|
CALLA STRCAT
|
|||
|
PULL a8
|
|||
|
|
|||
|
PUSH a0
|
|||
|
move *a13(AT_RX),a0
|
|||
|
PUSHP a0
|
|||
|
addi 13,a0
|
|||
|
move a0,*a13(AT_RX)
|
|||
|
PULL a0
|
|||
|
|
|||
|
move *a13(AT_PTR),a6,L ;Get *audit
|
|||
|
move *a6(AUD_COLOR),a6
|
|||
|
|
|||
|
JSRP RIGHT_FINISH
|
|||
|
|
|||
|
PULLP a0
|
|||
|
move a0,*a13(AT_RX) ;restore right margin
|
|||
|
RETP
|
|||
|
|
|||
|
#*****************************************************************************
|
|||
|
|
|||
|
MISC_AUD
|
|||
|
.word 50,18,AUD_LM,AUD_RM ;Y start, Y spacing, LMar, RMar
|
|||
|
AMAC M_SECBON,0,AUDSURV,ROBO_YELLOW ;WARPS TAKEN
|
|||
|
AMAC M_HIDB,0,AUDBONE,ROBO_YELLOW ;GAMES NOT FINISHED
|
|||
|
AMAC M_PLAYS,DOPLAYS,0,ROBO_YELLOW ;PLAYS ON TOP
|
|||
|
AMAC M_P1MIN,DO_P1MIN,0,ROBO_YELLOW
|
|||
|
AMAC M_P2MIN,DO_P2MIN,0,ROBO_YELLOW
|
|||
|
AMAC M_AVGT,DO_AVGT,0,ROBO_YELLOW
|
|||
|
AMAC M_ELAPSE,DO_ELAPSE,0,ROBO_YELLOW
|
|||
|
AMAC adiff_s,diff_prt,0,>1212
|
|||
|
.LONG 0
|
|||
|
|
|||
|
adiff_s TXTLINE "GAME DIFFICULTY LEVEL"
|
|||
|
|
|||
|
|
|||
|
.IF 0
|
|||
|
********************************
|
|||
|
* Display revision message
|
|||
|
* Do coin DIP if enabled
|
|||
|
* Check cmos, if bad reset to factory
|
|||
|
|
|||
|
FACCHECK
|
|||
|
calla dpageflip_off
|
|||
|
|
|||
|
CALLA CLR_SCRN
|
|||
|
MOVI DIAGP,A0
|
|||
|
CALLA pal_getf
|
|||
|
|
|||
|
MOVI AUDSTAT,A0 ;CLEAR GAME STATE AUDIT
|
|||
|
CLR A1
|
|||
|
CALLA STORE_AUDIT
|
|||
|
|
|||
|
MOVI ROM_NAME,A2
|
|||
|
MOVI ROBO_LF,A3
|
|||
|
JSRP TOP_BOX ;PRINT TITLE BOX.
|
|||
|
|
|||
|
.if YUNIT
|
|||
|
move @SWITCH+30h,a0
|
|||
|
btst 6,a0
|
|||
|
jrnz fc40 ;No DIP coinage?
|
|||
|
|
|||
|
movk 1,a0 ;Just coinage
|
|||
|
calla FAC_SET
|
|||
|
movi dipcoinage_mess,a8
|
|||
|
JSRP L_MESS
|
|||
|
fc40
|
|||
|
.endif
|
|||
|
|
|||
|
.if DEBUG
|
|||
|
SLEEPK 1 ;Show it DEBUG
|
|||
|
.else
|
|||
|
SLEEP 120 ;Show it
|
|||
|
.endif
|
|||
|
|
|||
|
CALLA CMOS_VAL ;CMOS BOGUS?
|
|||
|
JRZ FACC0 ;NO
|
|||
|
|
|||
|
MOVI MESS_RESET,A8 ;ERROR MESSAGE
|
|||
|
JSRP L_MESS
|
|||
|
SLEEP 60
|
|||
|
|
|||
|
CALLR RES_ALL ;ALL TIME TABLE
|
|||
|
clr a0 ;Full
|
|||
|
CALLA FAC_SET
|
|||
|
|
|||
|
MOVI MESS_FAC,A8
|
|||
|
CALLA LM_SETUP ;GET CONFIRMATION DATA READY.
|
|||
|
JSRP LM_FINIS
|
|||
|
SLEEP 60
|
|||
|
CALLA CMOS_VAL ;CMOS BOGUS?
|
|||
|
JRZ FACC00 ;NO
|
|||
|
|
|||
|
CALLA SCRCLR
|
|||
|
MOVI MESS_RESET,A8 ;ERROR MESSAGE
|
|||
|
JSRP L_MESS
|
|||
|
FACC00
|
|||
|
SLEEP 240
|
|||
|
|
|||
|
FACC0 CALLA SCRCLR
|
|||
|
|
|||
|
CREATE AMODE_PID,attract_mode
|
|||
|
DIE
|
|||
|
|
|||
|
|
|||
|
dipcoinage_mess
|
|||
|
MESS_MAC RD7FONT,SPACING20,200,65,ROBO_WHITE,STRCNRM,0
|
|||
|
.byte "USING DIPSWITCH COINAGE",0,0
|
|||
|
.even
|
|||
|
|
|||
|
.ENDIF
|
|||
|
|
|||
|
|
|||
|
********************************
|
|||
|
* Octopus sucessful, show stats
|
|||
|
|
|||
|
HID_P
|
|||
|
CALLA display_init ;MAKE SURE A13 IS OK BEFORE ANY ACTIONS!
|
|||
|
CALLA DIGSRT ;RE-INIT THE WORLD!
|
|||
|
|
|||
|
MOVI ROM_NAME,A2
|
|||
|
MOVI ROBO_LF,A3
|
|||
|
JSRP TOP_BOX ;PRINT TITLE BOX.
|
|||
|
|
|||
|
* A4 = UPPER LEFT Y,X *
|
|||
|
* A5 = LOWER RIGHT Y,X *
|
|||
|
* A6 = NUMBER OF SLICES GOING IN. *
|
|||
|
|
|||
|
calla CLR_SCRN ;Clr screen
|
|||
|
|
|||
|
movi COIN_OCTO_AUDS,a0
|
|||
|
JSRP PRNT_AUD
|
|||
|
|
|||
|
movi AUD_Y_STRT,a0 ;aud Y start
|
|||
|
MOVE a0,*A13(AT_Y),W ;set Y COORDINATE
|
|||
|
MOVI AUDLCOIN,A8 ;NOW PRINT MONEY FOR 1ST 3
|
|||
|
JSRP PRINT_COL2
|
|||
|
JSRP WAIT_BUT
|
|||
|
|
|||
|
calla CLR_SCRN ;Clr screen
|
|||
|
movi GAME_AUDS1,A0 ;Show 1st screen
|
|||
|
JSRP PRNT_AUD
|
|||
|
JSRP WAIT_BUT
|
|||
|
|
|||
|
calla CLR_SCRN ;Clr screen
|
|||
|
movi GAME_AUDS2,A0 ;Show 2nd screen
|
|||
|
JSRP PRNT_AUD
|
|||
|
JSRP WAIT_BUT
|
|||
|
|
|||
|
calla CLR_SCRN ;Clr screen
|
|||
|
movi GAME_AUDS2a,A0 ;Show 3rd screen
|
|||
|
JSRP PRNT_AUD
|
|||
|
JSRP WAIT_BUT
|
|||
|
|
|||
|
calla CLR_SCRN ;Clr screen
|
|||
|
movi GAME_AUDS3a,A0 ;Show 4th screen data
|
|||
|
JSRP PRNT_AUD
|
|||
|
movi GAME_AUDS3b,A0
|
|||
|
JSRP PRNT_AUD
|
|||
|
movi GAME_AUDS3c,A0
|
|||
|
JSRP PRNT_AUD
|
|||
|
movi GAME_AUDS3d,A0
|
|||
|
JSRP PRNT_AUD
|
|||
|
movi GAUD_P3HEAD1,a8 ;and the page headers
|
|||
|
JSRP L_MESS
|
|||
|
movi GAUD_P3HEAD2,a8
|
|||
|
JSRP L_MESS
|
|||
|
movi GAUD_P3HEAD3,a8
|
|||
|
JSRP L_MESS
|
|||
|
movi GAUD_P3HEAD4,a8
|
|||
|
JSRP L_MESS
|
|||
|
movi GAUD_P3HEAD5,a8
|
|||
|
JSRP L_MESS
|
|||
|
movi GAUD_P3HEAD6,a8
|
|||
|
JSRP L_MESS
|
|||
|
JSRP WAIT_BUT
|
|||
|
|
|||
|
;volume adjust
|
|||
|
JSRP GO_VOL
|
|||
|
|
|||
|
JAUC DIAG_EX ;NOW GET OUT!
|
|||
|
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* PRNT_AUD - THIS IS CALLED TO PRINT OUT AN AUDIT TABLE
|
|||
|
|
|||
|
AT_PTR EQU PDATA ;LONG
|
|||
|
AT_Y EQU PDATA+LONG_SIZE ;WORD
|
|||
|
AT_DY EQU AT_Y+WORD_SIZE ;WORD
|
|||
|
AT_LX EQU AT_DY+WORD_SIZE ;WORD LEFT MARGIN X
|
|||
|
AT_RX EQU AT_LX+WORD_SIZE ;WORD RIGHT MARGIN X
|
|||
|
AT_OBJ EQU AT_RX+WORD_SIZE ;LONG OBJECT POINTER FOR COLLECTION ROUT
|
|||
|
AT_MESS EQU AT_OBJ+LONG_SIZE ;LONG PRINT_MONEY MESSAGE STASH
|
|||
|
|
|||
|
PRNT_AUD
|
|||
|
MOVE *A0+,A1 ;GET STARTING HEIGHT
|
|||
|
MOVE A1,*A13(AT_Y) ;STORE
|
|||
|
|
|||
|
MOVE *A0+,A1 ;GET DY TO USE
|
|||
|
MOVE A1,*A13(AT_DY) ;STASH IT AWAY
|
|||
|
|
|||
|
MOVE *A0+,A1 ;GET LEFT MARGIN
|
|||
|
MOVE A1,*A13(AT_LX) ;STORE
|
|||
|
|
|||
|
MOVE *A0+,A1 ;GET RIGHT MARGIN
|
|||
|
MOVE A1,*A13(AT_RX) ;STASH IT AWAY
|
|||
|
|
|||
|
MOVE A0,*A13(AT_PTR),L ;SAVE POINTER INTO AREA
|
|||
|
|
|||
|
PA1 JSRP aud_prtone
|
|||
|
|
|||
|
MOVE *A13(AT_PTR),A0,L ;GET POINTER
|
|||
|
ADDI AUD_T_SIZE,A0
|
|||
|
MOVE A0,*A13(AT_PTR),L ;PUT BACK
|
|||
|
|
|||
|
CALLR ADD_AUDIT_DY
|
|||
|
|
|||
|
MOVE *A0,A1,L ;ARE WE DONE?
|
|||
|
JRNZ PA1
|
|||
|
SLEEPK 2
|
|||
|
|
|||
|
RETP
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* ADD_AUDIT_DY *
|
|||
|
* *
|
|||
|
* THIS IS CALLED TO MOVE THE AUDIT Y (STORE IN *
|
|||
|
* PROCESS AREA) TO THE NEXT AUDIT BY ADDING THE *
|
|||
|
* CURRENT DY (ALSO STORED IN PROCESS AREA). *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
ADD_AUDIT_DY
|
|||
|
MMTM SP,A1,A2
|
|||
|
MOVE *A13(AT_Y),A1,W
|
|||
|
MOVE *A13(AT_DY),A2,W ;GET DELTA Y
|
|||
|
ADD A2,A1 ;MOVE THE Y DOWN
|
|||
|
MOVE A1,*A13(AT_Y),W
|
|||
|
MMFM SP,A1,A2
|
|||
|
RETS
|
|||
|
|
|||
|
BEGIN_AUDIT
|
|||
|
MMTM SP,A0
|
|||
|
CLR A0
|
|||
|
MOVE A0,@BAD_AUD,W ;MONITOR CORRUPTION.
|
|||
|
MMFM SP,A0
|
|||
|
RETS
|
|||
|
|
|||
|
********************************
|
|||
|
* Print an audit line
|
|||
|
|
|||
|
SUBRP aud_prtone
|
|||
|
|
|||
|
CALLR BEGIN_AUDIT
|
|||
|
MOVE *A13(AT_PTR),A3,L ;GET POINTER
|
|||
|
MOVE *A3(AUD_ROUTINE),A4,L
|
|||
|
jrz apo20 ;No code?
|
|||
|
|
|||
|
movi apo50,a7
|
|||
|
MOVE A7,-*A12,L ;PUSH RET ADDR
|
|||
|
JUMP A4 ;"CALL" THE ROUTINE
|
|||
|
|
|||
|
apo20 MOVE *A3(AUD_NUMBER),A0 ;FETCH THE AUDIT NUMBER
|
|||
|
CALLA GET_AUD ;TURN INTO AUDIT COUNT!
|
|||
|
MOVE A1,A3 ;PROTECT FOR A SECOND.
|
|||
|
JSRP NUMBER_WORK ;GET THE NUMBER IN A3 UP THERE!
|
|||
|
|
|||
|
apo50
|
|||
|
movi MESS_AUD_LINE,a8
|
|||
|
calla LM_SETUP ;Setup for audit printing
|
|||
|
|
|||
|
move *a13(AT_PTR),a3,L ;Get *audit
|
|||
|
move *a3(AUD_COLOR),a6
|
|||
|
move *a3(AUD_MESS),a8,L ;Get *text
|
|||
|
|
|||
|
jruc LEFT_FINISH
|
|||
|
|
|||
|
|
|||
|
********************************
|
|||
|
* LEFT_FINISH AND RIGHT_FINISH
|
|||
|
*
|
|||
|
* THESE ARE CALLED TO PUT AUDIT INFO
|
|||
|
* ON THE LEFT OR RIGHT SIDE ONCE A8 POINTS AT
|
|||
|
* THE CORRECT DATA TO PRINT
|
|||
|
|
|||
|
LEFT_FINISH
|
|||
|
CALLR TURN_RED_IF_NEC
|
|||
|
CALLR SET_FOR_Y ;SET FOR AUDIT'S Y
|
|||
|
CALLR SET_LEFT_X ;SET FOR LEFT X
|
|||
|
JSRP LM_FINIS ;AND TYPE UP THE MESSAGE!
|
|||
|
RETP
|
|||
|
|
|||
|
RIGHT_FINISH
|
|||
|
CALLR TURN_RED_IF_NEC ;CHANGE COLOR IF CORRUPTED.
|
|||
|
CALLR SET_FOR_Y ;SET FOR AUDIT'S Y
|
|||
|
CALLR SET_RIGHT_X
|
|||
|
JSRP LM_FINIS ;FINISH THE JOB!
|
|||
|
|
|||
|
MOVE @BAD_AUD,A0,W ;IS IT CORRUPTED?
|
|||
|
JRZ RFX ;NOPE....RETURN
|
|||
|
|
|||
|
MOVI MESS_ERROR,A8
|
|||
|
CALLA LM_SETUP ;SETUP "ERROR"
|
|||
|
|
|||
|
CALLR SET_FOR_Y ;SET FOR AUDIT'S Y
|
|||
|
ADDI 40000H,A9 ;PUSH 4 Y UNITS TO CENTER
|
|||
|
CALLR SET_RIGHT_X
|
|||
|
JSRP LM_FINIS ;FINISH THE JOB!
|
|||
|
|
|||
|
RFX RETP
|
|||
|
|
|||
|
TURN_RED_IF_NEC
|
|||
|
MMTM SP,A3
|
|||
|
MOVE @BAD_AUD,A3 ;CHANGE TO RED?
|
|||
|
JRZ DAA_1 ;NOPE...ITS OK!
|
|||
|
MOVI ROBO_RED,A6 ;CHANGE COLOR TO RED
|
|||
|
DAA_1 MMFM SP,A3
|
|||
|
RETS
|
|||
|
|
|||
|
SET_FOR_Y
|
|||
|
MMTM SP,A3
|
|||
|
MOVE *A13(AT_Y),A3,W ;GET Y COORDINATE
|
|||
|
SLL 16,A3 ;PUT IT IN POSITION
|
|||
|
MOVY A3,A9 ;PUT IT IN PLACE
|
|||
|
MMFM SP,A3
|
|||
|
RETS
|
|||
|
|
|||
|
SET_LEFT_X
|
|||
|
MMTM SP,A3
|
|||
|
MOVE *A13(AT_LX),A3,W
|
|||
|
MOVX A3,A9 ;PUT THE X IN PLACE
|
|||
|
MMFM SP,A3
|
|||
|
RETS
|
|||
|
|
|||
|
SET_RIGHT_X
|
|||
|
MMTM SP,A3
|
|||
|
MOVE *A13(AT_RX),A3,W
|
|||
|
MOVX A3,A9 ;PUT THE X IN PLACE
|
|||
|
MMFM SP,A3
|
|||
|
RETS
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* NUMBER_WORK - Print audit number
|
|||
|
* A3=#
|
|||
|
|
|||
|
NUMBER_WORK
|
|||
|
MOVI MESS_AUD_NUM,A8 ;SETUP FOR AUDIT NUMBER
|
|||
|
CALLA LM_SETUP
|
|||
|
|
|||
|
MOVE A3,A8 ;NOW WE HAVE BINARY NUMBER
|
|||
|
CALLA HEXTOASC ;NOW WE POINT TO THE STRING.
|
|||
|
move *a13(AT_PTR),a6,L ;Get *audit
|
|||
|
move *a6(AUD_COLOR),a6
|
|||
|
jruc RIGHT_FINISH
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* GET_STARTS *
|
|||
|
* *
|
|||
|
* TOTAL GAME STARTS IN A2. *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
GET_STARTS
|
|||
|
MMTM SP,A0,A1
|
|||
|
MOVK AUD1STRT,A0
|
|||
|
CALLA GET_AUD
|
|||
|
MOVE A1,A2
|
|||
|
|
|||
|
MOVK AUD2STRT,A0
|
|||
|
CALLA GET_AUD
|
|||
|
ADD A1,A2
|
|||
|
MMFM SP,A0,A1
|
|||
|
RETS
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* GET_CONTS *
|
|||
|
* *
|
|||
|
* TOTAL GAME CONTINUES IN A2. *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
GET_CONTS
|
|||
|
MMTM SP,A0,A1
|
|||
|
MOVK AUD1CONT,A0
|
|||
|
CALLA GET_AUD
|
|||
|
MOVE A1,A2
|
|||
|
|
|||
|
MOVK AUD2CONT,A0
|
|||
|
CALLA GET_AUD
|
|||
|
ADD A1,A2
|
|||
|
MMFM SP,A0,A1
|
|||
|
RETS
|
|||
|
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* Get total plays (Beginning+starts+continues)
|
|||
|
* Rets: A2=#
|
|||
|
|
|||
|
GET_PLAYS
|
|||
|
PUSH a0
|
|||
|
; movk AUDBEGIN,a0
|
|||
|
; calla GET_AUD
|
|||
|
; move a1,a0
|
|||
|
clr a0
|
|||
|
callr GET_STARTS ;Actually middle starts
|
|||
|
add a2,a0
|
|||
|
callr GET_CONTS
|
|||
|
add a0,a2
|
|||
|
PULL a0
|
|||
|
rets
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* PRINT_MONEY *
|
|||
|
* *
|
|||
|
* THIS IS CALLED TO PRINT OUT THE "MONEY" ON THE MONEY *
|
|||
|
* LINE OF THE AUDIT TABLE. *
|
|||
|
* *
|
|||
|
* AUDIT X AND Y IS SET FOR THE LINE TO DISPLAY IT ON. *
|
|||
|
* *
|
|||
|
* A8 HAS THE 1ST OF 3 AUDITS TO USE FOR THE CALCULATION *
|
|||
|
* A9 HAS THE MESSAGE TO LEFT JUSTIFY ON THE CURRENT LINE *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
PRINT_COL
|
|||
|
MOVI T_MONEY,A9 ;THIS ENTRYPOINT IS FOR COLLECTION MESSAGE
|
|||
|
|
|||
|
PRINT_MONEY
|
|||
|
MOVE A9,*A13(AT_MESS),L ;HOLD MESSAGE FOR WHEN WE NEED IT!
|
|||
|
MOVI ADJCDIV,A0 ;IF DIVISOR IS ZERO..THEN ITS OFF!
|
|||
|
CALLA GET_ADJ
|
|||
|
JRZ NO_MONEY ;THAT'S ALL FOLKS!
|
|||
|
|
|||
|
CALLR BEGIN_AUDIT ;KEEP TRACK OF SANITY OF CALC.
|
|||
|
*
|
|||
|
* ROUTINE IN A2 FORMS STRING BASED ON 3 AUDITS STARTING
|
|||
|
* WITH THE NUMBER IN A8.
|
|||
|
*
|
|||
|
CALLR STR_OBJ ;GET AN OBJECT FOR STRINGING
|
|||
|
JRC NO_MONEY ;COULDN'T GET AN OBJECT!
|
|||
|
|
|||
|
CALLR SUM_COINS ;ADD UP THE COIN PARTS IN A2
|
|||
|
|
|||
|
*
|
|||
|
* WE'RE DOING A PREFIX STRING...NO PREFIX IF ITS BEEN TAMPERED
|
|||
|
*
|
|||
|
CALLR SIXP ;HAVE THE 6 BEEN TAMPERED
|
|||
|
JRZ NO_PREFIX
|
|||
|
CALLR GET_CSPT ;A6 POINTS AT CSECECT DATA.
|
|||
|
MOVE *A6(CS_LMES),A8,L ;LEFT STRING FOR MONEY TOTAL
|
|||
|
CALLA STRCAT ;SHOVE THE STRING IN!
|
|||
|
|
|||
|
NO_PREFIX
|
|||
|
MOVK 1,A0 ;DIVIDE COINS BY 1 IF ITS BEEN TAMPERED WITH
|
|||
|
CALLR SIXP
|
|||
|
JRZ DIV_BY_1 ;TAMPERED WITH...DIVIDE BY 1 FOR "COINS"
|
|||
|
|
|||
|
MOVI ADJCDIV,A0 ;GET THE COIN PARTS PLEASE
|
|||
|
CALLA GET_ADJ
|
|||
|
*
|
|||
|
* GET QUOTIENT IN A2
|
|||
|
* REMAINDER IN A3
|
|||
|
*
|
|||
|
DIV_BY_1
|
|||
|
MOVE A2,A3 ;SETUP <A2><A3> AS DIVIDEND
|
|||
|
CLR A2
|
|||
|
DIVU A0,A2 ;DIVIDE UNITS/DIVISOR
|
|||
|
|
|||
|
MOVE A2,A8 ;WE NEED TO PUT QUOTIENT IN STRING
|
|||
|
CALLA HEXTOASC ;THIS FORMS STRING FOR QUOTIENT
|
|||
|
|
|||
|
CALLA STRCAT ;ADD QUOTIENT TO PRINTOUT
|
|||
|
|
|||
|
CMPI 1,A0 ;IS DIVISOR ONE??????
|
|||
|
JRZ NOFRAC ;YEP.......NO DECIMAL!
|
|||
|
*
|
|||
|
* WE HAVE A DIVISOR.....WE NEED TO DISPLAY CENTS.
|
|||
|
*
|
|||
|
MOVI ME_DECIMAL,A8 ;ADD DECIMAL POINT
|
|||
|
CALLA STRCAT ;ITS THERE!
|
|||
|
*
|
|||
|
* REMAINDER IS IN A3....TURN IT TO 100THS.
|
|||
|
*
|
|||
|
MOVI 100,A2
|
|||
|
MPYU A2,A3 ;REMAINDER TIMES 100
|
|||
|
MOVE A3,A2 ;DIVIDEND IN A2
|
|||
|
|
|||
|
CALLR ROUNDED_A0_INTO_A2
|
|||
|
CALLR A2_100TH ;CAT THE 100THS IN A2 TO THE A7 STRING.
|
|||
|
|
|||
|
NOFRAC
|
|||
|
MOVI COINS_TRAIL,A8 ;ASSUME IT WILL BE "COINS"
|
|||
|
CALLR SIXP ;TAMPERED?
|
|||
|
JRZ COIN_SUF ;YEP....USE " COINS"
|
|||
|
MOVE *A6(CS_RMES),A8,L ;FINISH IT OFF WITH RIGHT STRING
|
|||
|
|
|||
|
COIN_SUF
|
|||
|
CALLA STRCAT ;SHOVE THE STRING IN!
|
|||
|
MOVI M_MONEY,A8 ;MESSAGE FOR THIS LINE PASSED IN A9
|
|||
|
CALLA LM_SETUP
|
|||
|
|
|||
|
MOVE @TMPOBJ,A8,L ;POINTER TO MONEY STRING
|
|||
|
JSRP RIGHT_FINISH ;PUT ON RIGHT MARGIN
|
|||
|
|
|||
|
CALLR STR_FREE
|
|||
|
|
|||
|
MOVE *A13(AT_MESS),A8,L ;SETUP PASSED MESSAGE
|
|||
|
CALLA LM_SETUP
|
|||
|
JSRP LEFT_FINISH ;PUT UP PASSED MESSAGE.
|
|||
|
NO_MONEY
|
|||
|
RETP
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* prints up collection minus $$$
|
|||
|
*
|
|||
|
|
|||
|
PRINT_COL2
|
|||
|
MOVI T_MONEY2,A9 ;THIS ENTRYPOINT IS FOR COLLECTION MESSAGE
|
|||
|
|
|||
|
MOVE A9,*A13(AT_MESS),L ;HOLD MESSAGE FOR WHEN WE NEED IT!
|
|||
|
MOVI ADJCDIV,A0 ;IF DIVISOR IS ZERO..THEN ITS OFF!
|
|||
|
CALLA GET_ADJ
|
|||
|
JRZ NO_MONEY2 ;THAT'S ALL FOLKS!
|
|||
|
|
|||
|
CALLR BEGIN_AUDIT ;KEEP TRACK OF SANITY OF CALC.
|
|||
|
*
|
|||
|
* ROUTINE IN A2 FORMS STRING BASED ON 3 AUDITS STARTING
|
|||
|
* WITH THE NUMBER IN A8.
|
|||
|
*
|
|||
|
CALLR STR_OBJ ;GET AN OBJECT FOR STRINGING
|
|||
|
JRC NO_MONEY2 ;COULDN'T GET AN OBJECT!
|
|||
|
|
|||
|
CALLR SUM_COINS ;ADD UP THE COIN PARTS IN A2
|
|||
|
|
|||
|
*
|
|||
|
* WE'RE DOING A PREFIX STRING...NO PREFIX IF ITS BEEN TAMPERED
|
|||
|
*
|
|||
|
;; CALLR SIXP ;HAVE THE 6 BEEN TAMPERED
|
|||
|
;; JRZ NO_PREFIX2
|
|||
|
;; CALLR GET_CSPT ;A6 POINTS AT CSECECT DATA.
|
|||
|
;; MOVE *A6(CS_LMES),A8,L ;LEFT STRING FOR MONEY TOTAL
|
|||
|
movi M_VERINF,a8
|
|||
|
CALLA STRCAT ;SHOVE THE STRING IN!
|
|||
|
|
|||
|
NO_PREFIX2
|
|||
|
MOVK 1,A0 ;DIVIDE COINS BY 1 IF ITS BEEN TAMPERED WITH
|
|||
|
CALLR SIXP
|
|||
|
JRZ DIV_BY_12 ;TAMPERED WITH...DIVIDE BY 1 FOR "COINS"
|
|||
|
|
|||
|
MOVI ADJCDIV,A0 ;GET THE COIN PARTS PLEASE
|
|||
|
CALLA GET_ADJ
|
|||
|
*
|
|||
|
* GET QUOTIENT IN A2
|
|||
|
* REMAINDER IN A3
|
|||
|
*
|
|||
|
DIV_BY_12
|
|||
|
MOVE A2,A3 ;SETUP <A2><A3> AS DIVIDEND
|
|||
|
CLR A2
|
|||
|
DIVU A0,A2 ;DIVIDE UNITS/DIVISOR
|
|||
|
|
|||
|
MOVE A2,A8 ;WE NEED TO PUT QUOTIENT IN STRING
|
|||
|
CALLA HEXTOASC ;THIS FORMS STRING FOR QUOTIENT
|
|||
|
|
|||
|
CALLA STRCAT ;ADD QUOTIENT TO PRINTOUT
|
|||
|
|
|||
|
CMPI 1,A0 ;IS DIVISOR ONE??????
|
|||
|
JRZ NOFRAC2 ;YEP.......NO DECIMAL!
|
|||
|
*
|
|||
|
* WE HAVE A DIVISOR.....WE NEED TO DISPLAY CENTS.
|
|||
|
*
|
|||
|
;; MOVI ME_DECIMAL,A8 ;ADD DECIMAL POINT
|
|||
|
MOVI ME_DASH,A8 ;ADD DASH
|
|||
|
CALLA STRCAT ;ITS THERE!
|
|||
|
*
|
|||
|
* REMAINDER IS IN A3....TURN IT TO 100THS.
|
|||
|
*
|
|||
|
MOVI 100,A2
|
|||
|
MPYU A2,A3 ;REMAINDER TIMES 100
|
|||
|
MOVE A3,A2 ;DIVIDEND IN A2
|
|||
|
|
|||
|
CALLR ROUNDED_A0_INTO_A2
|
|||
|
CALLR A2_100TH ;CAT THE 100THS IN A2 TO THE A7 STRING.
|
|||
|
|
|||
|
NOFRAC2
|
|||
|
MOVI COINS_TRAIL,A8 ;ASSUME IT WILL BE "COINS"
|
|||
|
CALLR SIXP ;TAMPERED?
|
|||
|
JRZ COIN_SUF2 ;YEP....USE " COINS"
|
|||
|
MOVE *A6(CS_RMES),A8,L ;FINISH IT OFF WITH RIGHT STRING
|
|||
|
|
|||
|
COIN_SUF2
|
|||
|
CALLA STRCAT ;SHOVE THE STRING IN!
|
|||
|
MOVI M_MONEY,A8 ;MESSAGE FOR THIS LINE PASSED IN A9
|
|||
|
CALLA LM_SETUP
|
|||
|
|
|||
|
MOVE @TMPOBJ,A8,L ;POINTER TO MONEY STRING
|
|||
|
JSRP RIGHT_FINISH ;PUT ON RIGHT MARGIN
|
|||
|
|
|||
|
CALLR STR_FREE
|
|||
|
|
|||
|
MOVE *A13(AT_MESS),A8,L ;SETUP PASSED MESSAGE
|
|||
|
CALLA LM_SETUP
|
|||
|
JSRP LEFT_FINISH ;PUT UP PASSED MESSAGE.
|
|||
|
NO_MONEY2
|
|||
|
RETP
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* STR_OBJ *
|
|||
|
* *
|
|||
|
* THIS IS CALLED TO GET AN OBJECT FOR *
|
|||
|
* CONCATONATING STRINGS TOGETHER. *
|
|||
|
* *
|
|||
|
* A7 POINTS AT NULL STRING *
|
|||
|
* *
|
|||
|
* NOTE THAT THIS IS NO LONGER RE-ENTRANT! *
|
|||
|
* *
|
|||
|
* YOU MUST CALL STR_FREE BEFORE SLEEPING! *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
STR_OBJ
|
|||
|
PUSH a0,a1,a14
|
|||
|
CALLA GETOBJ ;USE AN OBJECT BLOCK FOR STRING MANIPULATION
|
|||
|
JRNZ STR_O1
|
|||
|
*
|
|||
|
* NO OBJECTS DURING TEST MODE
|
|||
|
*
|
|||
|
SETC
|
|||
|
JRUC STR_OFAIL
|
|||
|
|
|||
|
STR_O1
|
|||
|
MOVE A0,@TMPOBJ,L ;SAVE TO FREE LATER
|
|||
|
MOVE A0,A7 ;THIS IS WHERE IT BELONGS.
|
|||
|
CLR A0
|
|||
|
MOVB A0,*A7 ;MAKE STRING NULL
|
|||
|
CLRC ;RETURN SUCCESS
|
|||
|
STR_OFAIL
|
|||
|
PULL a0,a1,a14
|
|||
|
RETS
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* ROUNDED_A0_INTO_A2 *
|
|||
|
* *
|
|||
|
* THIS DIVIDES A0 INTO A2. IT LEAVES THE RESULT IN A2 *
|
|||
|
* AND ROUNDS UP IF NECESSARY. *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
ROUNDED_A0_INTO_A2
|
|||
|
MMTM SP,A3
|
|||
|
MOVE A0,A0 ;DIVIDE BY ZERO?
|
|||
|
JRNZ NDZ
|
|||
|
MOVE A0,A2 ;RETURN ZERO
|
|||
|
JRUC NOROUND
|
|||
|
NDZ
|
|||
|
MOVE A2,A3
|
|||
|
CLR A2 ;<A2> <A3> AS DIVIDEND
|
|||
|
DIVU A0,A2 ;DIVIDE AND A2 = PENNIES....A3 = REMAINDER
|
|||
|
SLL 1,A3 ;SHIFT REMAINDER
|
|||
|
CMP A0,A3 ;COMPARE TO DIVISOR
|
|||
|
JRLO NOROUND ;TOO LOW TO ROUND UP
|
|||
|
INC A2 ;A2 HAS CORRECT PENNIES
|
|||
|
NOROUND
|
|||
|
MMFM SP,A3
|
|||
|
RETS
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* A2_100TH *
|
|||
|
* *
|
|||
|
* A7 HAS A STRING TO BE PRINTED. WE HAVE THE *
|
|||
|
* LAST TWO NUMBERS (NOT TO BE LEAD ZERO BLANKED) IN *
|
|||
|
* A2. CONCATONATE THEM ONTO THE A7 STRING. *
|
|||
|
* *
|
|||
|
* THIS IS USED FOR PENNIES, HOURS AND MINUTES. *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
A2_100TH
|
|||
|
MMTM SP,A8
|
|||
|
CMPI 9,A2 ;9 OR LESS REQUIES LEAD ZERO.
|
|||
|
JRHI NOLEAD
|
|||
|
|
|||
|
MOVI ME_ZERO,A8 ;THROW IN THE LEAD ZERO
|
|||
|
CALLA STRCAT ;THIS DOES IT!
|
|||
|
|
|||
|
NOLEAD
|
|||
|
MOVE A2,A8
|
|||
|
CALLA HEXTOASC ;MAKE STRING
|
|||
|
CALLA STRCAT ;PUT IT IN!
|
|||
|
MMFM SP,A8
|
|||
|
RETS
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* SUM_COINS *
|
|||
|
* *
|
|||
|
* A8 HAS FIRST OF THE 4 AUDIT NUMBERS OF INTEREST *
|
|||
|
* *
|
|||
|
* RETURN COINS TIMES THEIR FACTORS IN A2. *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
SUM_COINS
|
|||
|
MMTM SP,A0,A1,A3,A6,A4
|
|||
|
|
|||
|
MOVE A8,A0 ;POINT AT AUDIT NUMBER
|
|||
|
CLR A2 ;SUM = ZERO
|
|||
|
|
|||
|
CALLR GET_CSPT ;A6 POINTS AT CSELECT TABLE
|
|||
|
ADDI CS_LVAL,A6 ;POINT AT 1ST MULTIPLIER
|
|||
|
|
|||
|
MOVI CHUTES,A4 ;NOW...ITERATE OVER THE CHUTES
|
|||
|
|
|||
|
NEXT_CHUTE
|
|||
|
MOVE *A6+,A3,W ;GET MULTPLIER FOR THIS CHUTE
|
|||
|
CALLR FIX_A3 ;REPLACE A3 WITH 1 (MULTIPLIER) IF
|
|||
|
;ITS SOME CUSTOM MODE.
|
|||
|
CALLR ADD_AUD_A0_TIMES_A3_TO_A2
|
|||
|
INC A0 ;NEXT AUDIT
|
|||
|
DSJS A4,NEXT_CHUTE
|
|||
|
|
|||
|
MMFM SP,A0,A1,A3,A6,A4
|
|||
|
RETS
|
|||
|
|
|||
|
ADD_AUD_A0_TIMES_A3_TO_A2
|
|||
|
CALLA GET_AUD ;FETCH THE AUDIT
|
|||
|
MPYU A1,A3 ;TIME THE FACTOR
|
|||
|
ADD A3,A2
|
|||
|
RETS
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* FIX_A3
|
|||
|
*
|
|||
|
* THIS IS CALLED BY THE LOW LEVEL MONEY TOTALIZER.
|
|||
|
* THE MULTIPLIER FOR THE COIN SLOT THAT ITS WORKING
|
|||
|
* ON IS IN A3. WE REPLACE IT WITH "1" TO SUM "TOTAL COINS"
|
|||
|
* IF ITS IN A NON-STANDARD COIN MODE.
|
|||
|
*
|
|||
|
**************************************************************************
|
|||
|
FIX_A3
|
|||
|
CALLR SIXP ;HAS IT BEEN TAMPERED WITH?
|
|||
|
JRNZ FIX_A3X ;NOPE...LEAVE A3
|
|||
|
|
|||
|
MOVK 1,A3
|
|||
|
FIX_A3X
|
|||
|
RETS
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* SIXP
|
|||
|
*
|
|||
|
* THIS IS CALLED TO SEE IF THE 1ST 6 COIN PARAMETERS HAVE
|
|||
|
* BEEN TAMPERED WITH.
|
|||
|
*
|
|||
|
* Z=YES
|
|||
|
*
|
|||
|
**************************************************************************
|
|||
|
SIXP
|
|||
|
MMTM SP,A0
|
|||
|
MOVI ADJ1ST6,A0
|
|||
|
CALLA GET_ADJ ;HAS IT BEEN TAMPERED WITH?
|
|||
|
MMFM SP,A0
|
|||
|
RETS
|
|||
|
|
|||
|
STARTS
|
|||
|
CALLR GET_STARTS
|
|||
|
MOVE A2,A3 ;GET IN PRINTOUT REG.
|
|||
|
jruc NUMBER_WORK ;AND PRINT IT
|
|||
|
|
|||
|
CONTINS
|
|||
|
CALLR GET_CONTS
|
|||
|
MOVE A2,A3 ;GET IN PRINTOUT REG.
|
|||
|
jruc NUMBER_WORK ;AND PRINT IT
|
|||
|
|
|||
|
DOPLAYS
|
|||
|
CALLR GET_PLAYS
|
|||
|
MOVE A2,A3 ;PUT IN PLACE
|
|||
|
jruc NUMBER_WORK
|
|||
|
|
|||
|
DOHSLEFT
|
|||
|
MOVI ADJHSRES,A0
|
|||
|
CALLA GET_ADJ ;IS IF OFF?
|
|||
|
JRZ DOHSOFF ;YEP...PRINT IT
|
|||
|
|
|||
|
CALLA GET_HSC ;GET THE COUNTER VALUE
|
|||
|
MOVE A0,A3
|
|||
|
jruc NUMBER_WORK ;AND SHOW IT!
|
|||
|
|
|||
|
DOHSOFF
|
|||
|
MOVI MESS_AUD_NUM,A8
|
|||
|
CALLA LM_SETUP ;SETUP FOR AUDIT PRINTING.
|
|||
|
|
|||
|
MOVI M_HSOFF,A8 ;THIS EFFECTIVELY ERASES LINE!
|
|||
|
JAUC RIGHT_FINISH
|
|||
|
|
|||
|
DO_P1MIN
|
|||
|
MOVI AUD1TIME,A0
|
|||
|
P1MJ
|
|||
|
CALLA GET_AUD ;TURN INTO NUMBER
|
|||
|
MOVE A1,A4 ;MOVE NUMBER TO "HOUR" COMPUTATION REGGIE
|
|||
|
JRUC DH11 ;AND DO LIKE THE HOURS!
|
|||
|
|
|||
|
|
|||
|
DO_P2MIN
|
|||
|
MOVI AUD2TIME,A0
|
|||
|
JRUC P1MJ
|
|||
|
|
|||
|
DO_HOURS
|
|||
|
CALLR TOT_TIME ;READ OUT THE TOTAL TIME.
|
|||
|
DH11 MOVE A4,A5 ;A5 HAS RUNNING PLAY TIME
|
|||
|
CLR A4 ;<A4><A5> READY FOR DIVISION
|
|||
|
MOVK 12,A0
|
|||
|
DIVU A0,A4 ;A4 HAS MINUTES
|
|||
|
CMPI 6,A5 ;ROUND PROPERLY
|
|||
|
JRLO DH1 ;NOT ENOUGH
|
|||
|
INC A4
|
|||
|
DH1
|
|||
|
MOVE A4,A1 ;NOW THIS DIVIDED BY 60 IS WHAT WE NEED
|
|||
|
jruc P_TIME ;DO IT!
|
|||
|
|
|||
|
DO_AVGT
|
|||
|
CALLR TOT_TIME ;A3 HAS WEIGHTED TIME
|
|||
|
|
|||
|
DOAVC CALLR GET_PLAYS ;GET TOTAL PLAYS IN A2
|
|||
|
MOVE A2,A0 ;STASH IN A0.
|
|||
|
MOVK 5,A1 ;TURN INTO SECONDS
|
|||
|
MPYU A1,A3 ;A3 HAS SECONDS OF INTEREST
|
|||
|
MOVE A3,A2
|
|||
|
CALLR ROUNDED_A0_INTO_A2 ;DIVIDE A2 BY PLAYS (AND ROUND)
|
|||
|
MOVE A2,A1 ;NOW GET IN PLACE FOR P_TIME
|
|||
|
jruc P_TIME ;DO IT!
|
|||
|
|
|||
|
DO_ELAPSE
|
|||
|
CALLR TOT_TIME
|
|||
|
MOVE A4,A3 ;USE ELAPSED TIME
|
|||
|
JRUC DOAVC ;AND THE REST IS IDENTICAL.
|
|||
|
|
|||
|
|
|||
|
keyavg_prt
|
|||
|
; movi AUDKEYTOT,a0
|
|||
|
; calla GET_AUD
|
|||
|
; move a1,a3
|
|||
|
; movi AUDFULLGAMES,a0
|
|||
|
; calla GET_AUD
|
|||
|
; divs a1,a3
|
|||
|
; jruc NUMBER_WORK ;Print it
|
|||
|
|
|||
|
|
|||
|
diff_prt
|
|||
|
movk ADJDIFF,a0
|
|||
|
calla GET_ADJ
|
|||
|
move a0,a3
|
|||
|
jruc NUMBER_WORK ;Print it
|
|||
|
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* P_TIME *
|
|||
|
* *
|
|||
|
* THIS IS CALLED TO DISPLAY AN AUDIT IN TIME (0:00) *
|
|||
|
* FORMAT. THE NUMBER TO BE USED IS PASSED IN A1. *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
P_TIME
|
|||
|
CALLR STR_OBJ ;USE AN OBJECT BLOCK FOR STRING MANIPULATION
|
|||
|
JRC NO_OBJS ;NO OBJECTS....PRINT NOTHING
|
|||
|
|
|||
|
CLR A0 ;DIVIDEND IN <A0><A1>
|
|||
|
MOVI 60,A2
|
|||
|
DIVU A2,A0 ;A0 = "MINUTES"....A1 = "SECONDS
|
|||
|
|
|||
|
CALLA CAT_A0 ;ADD A0 STRING TO A7 BUILD
|
|||
|
MOVI ME_COLON,A8
|
|||
|
CALLA STRCAT ;PUT THE COLON IN.
|
|||
|
|
|||
|
MOVE A1,A2 ;GET "SECONDS" IN A2
|
|||
|
CALLR A2_100TH ;AND GET THE 100THS IN.
|
|||
|
|
|||
|
MOVI MESS_AUD_NUM,A8 ;SETUP FOR AUDIT NUMBER
|
|||
|
CALLA LM_SETUP
|
|||
|
move *a13(AT_PTR),a6,L ;Get *audit
|
|||
|
move *a6(AUD_COLOR),a6
|
|||
|
|
|||
|
MOVE A7,A8 ;PUT STRING CORRECT REGGIE
|
|||
|
JSRP RIGHT_FINISH ;PRINT THE LINE
|
|||
|
|
|||
|
CALLR STR_FREE ;FREE UP THE OBJECT!
|
|||
|
|
|||
|
NO_OBJS
|
|||
|
RETP ;NOW RETURN TO CALLER
|
|||
|
|
|||
|
STR_FREE
|
|||
|
MOVE @TMPOBJ,A0,L ;GET OBJECT BACK
|
|||
|
JRNZ FREE_IT_NOW
|
|||
|
|
|||
|
.IF DEBUG
|
|||
|
LOCKUP
|
|||
|
.ENDIF
|
|||
|
RETS ;NO OBJECT...RETURN!
|
|||
|
|
|||
|
FREE_IT_NOW
|
|||
|
jauc FREEOBJ ;AND LET IT GO.
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* TOT_TIME *
|
|||
|
* *
|
|||
|
* (1 * P1TIME) + (2 * P2TIME) IN A3 *
|
|||
|
* ELAPSED TIME IN A4 *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
TOT_TIME
|
|||
|
MMTM SP,A0,A1
|
|||
|
MOVI AUD1TIME,A0
|
|||
|
CALLA GET_AUD
|
|||
|
MOVE A1,A3
|
|||
|
MOVE A1,A4
|
|||
|
MOVI AUD2TIME,A0
|
|||
|
CALLA GET_AUD
|
|||
|
ADD A1,A4 ;A4 HAS SIMPLE SUM NOW
|
|||
|
SLL 1,A1 ;DOUBLE THE PLAYER 2 TIME
|
|||
|
ADD A1,A3
|
|||
|
MMFM SP,A0,A1
|
|||
|
RETS
|
|||
|
|
|||
|
|
|||
|
********************************
|
|||
|
**** DATA SECTION BEGINS ****
|
|||
|
|
|||
|
.DATA
|
|||
|
|
|||
|
|
|||
|
|
|||
|
********************************
|
|||
|
* AUDIT TEXT
|
|||
|
|
|||
|
MESS_ERROR
|
|||
|
MESS_MAC RD7FONT,SPACING07,0,0,ROBO_RED,STRLNRM,0
|
|||
|
TXTLINE " ERROR"
|
|||
|
|
|||
|
MESS_AUD_NUM
|
|||
|
MESS_MAC RD7FONT,SPACING20,367,227,ROBO_YELLOW,STRRNRM,0
|
|||
|
|
|||
|
MESS_AUD_LINE
|
|||
|
MESS_MAC RD7FONT,SPACING20,23,227,ROBO_YELLOW,STRLNRM,0
|
|||
|
|
|||
|
|
|||
|
MES_AUD TXTLINE "GAME AUDITS"
|
|||
|
|
|||
|
MES_BOOK
|
|||
|
TXTLINE "COIN BOOKKEEPING"
|
|||
|
|
|||
|
M_LCOIN TXTLINE "LEFT SLOT COINS"
|
|||
|
M_CCOIN TXTLINE "CENTER SLOT (3) COINS"
|
|||
|
M_RCOIN TXTLINE "RIGHT SLOT COINS"
|
|||
|
|
|||
|
M_LCOIN2 TXTLINE "WATCHDOG FEEDINGS"
|
|||
|
M_CCOIN2 TXTLINE "SELF-CORRECTED CMOS ERRORS"
|
|||
|
M_RCOIN2 TXTLINE "PROCESS LIST RE-INITIALIZATIONS"
|
|||
|
|
|||
|
M_XCOIN TXTLINE "EXTRA SLOT (4) COINS"
|
|||
|
M_DBV TXTLINE "BILL VALIDATOR"
|
|||
|
|
|||
|
M_PAIDC TXTLINE "PAID CREDITS"
|
|||
|
|
|||
|
M_SERV TXTLINE "SERVICE CREDITS"
|
|||
|
|
|||
|
|
|||
|
M_PLAYS TXTLINE "TOTAL PLAYS"
|
|||
|
|
|||
|
M_HSLEFT
|
|||
|
TXTLINE "PLAYS UNTIL H.S. RESET"
|
|||
|
|
|||
|
M_HSOFF TXTLINE "OFF"
|
|||
|
|
|||
|
.even
|
|||
|
M_ELAPSE
|
|||
|
TXTLINE "AVG. ELAPSED TIME/PLAY"
|
|||
|
|
|||
|
M_MONEY MESS_MAC RD15FONT,SPACING20,367,227,ROBO_WHITE,STRRNRM,0
|
|||
|
|
|||
|
T_MONEY MESS_MAC RD15FONT,SPACING20,23,227,ROBO_WHITE,STRLNRM,0
|
|||
|
TXTLINE "TOTAL COLLECTION"
|
|||
|
|
|||
|
T_MONEY2 MESS_MAC RD15FONT,SPACING20,23,227,ROBO_WHITE,STRLNRM,0
|
|||
|
TXTLINE "XRAM COUNT"
|
|||
|
|
|||
|
M_VERINF
|
|||
|
TXTLINE "031-0"
|
|||
|
|
|||
|
M_LOCKUP
|
|||
|
TXTLINE "LOCKUPS"
|
|||
|
M_HIDB TXTLINE "GAMES NOT FINISHED"
|
|||
|
|
|||
|
M_SECBON
|
|||
|
TXTLINE "WARPS"
|
|||
|
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* MENU DESCRIPTORS *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
*
|
|||
|
* MAIN TEST MENU
|
|||
|
*
|
|||
|
MEN_MAIN
|
|||
|
.LONG RD7FONT ;FONT
|
|||
|
.LONG STRCNRM ;CENTER PLEASE
|
|||
|
.LONG MESSMAIN ;TITLE
|
|||
|
.WORD ROBO_WHITE ;COLOR OF TITLE
|
|||
|
.WORD MENU_X ;UL X
|
|||
|
.WORD MENU_Y-3 ;UL Y
|
|||
|
.WORD MENU_DY-6 ;VERTICAL SPACING
|
|||
|
.WORD ROBO_WHITE ;COLOR WHEN NOT SELECTED
|
|||
|
.WORD 16 ;HEIGHT OF SELECTION BAR
|
|||
|
.WORD -4 ;DISTANCE OF BAR FROM TOP OF TEXT (NEGATIVE)
|
|||
|
.WORD BAR_DX ;EXTRA X ON EACH SIDE.
|
|||
|
.WORD BAR_WID ;WIDTH OF BAR!
|
|||
|
.WORD ROBO_DECAY ;TEXT COLOR OF SELECTED ITEM
|
|||
|
.LONG MESS_DIAG,GO_DIAG,DIAG_HELP
|
|||
|
.LONG MESS_COIN_AUD,GO_BOOK,COIN_HELP
|
|||
|
.LONG MESS_GAME_AUD,GO_AUD,AUDIT_HELP
|
|||
|
.LONG MESS_GAME_ADJ,GO_ADJ,ADJUST_HELP
|
|||
|
.LONG MESS_UTIL,GO_UTIL,UTIL_HELP
|
|||
|
.LONG MESS_HARDWARE,GO_HARDWARE,HARDWARE_HELP
|
|||
|
.LONG MESS_CLOCK,GO_CLOCK,CLOCK_HELP
|
|||
|
.LONG MESS_VOL,GO_VOL,VOL_HELP
|
|||
|
.LONG MESS_EXIT,0,EXIT_HELP ;SPECIAL CASE!
|
|||
|
.LONG 0 ;END
|
|||
|
|
|||
|
* UTILITES MENU GOES LEFT OF CENTER
|
|||
|
|
|||
|
UM_WID EQU 206
|
|||
|
UM_X EQU TIT_ULX+GAP+MB_XWID+(UM_WID/2)+C_KLUDGE
|
|||
|
|
|||
|
MEN_UTIL
|
|||
|
.LONG RD7FONT ;FONT
|
|||
|
.LONG STRCNRM ;CENTER PLEASE
|
|||
|
.LONG MESSUTIL ;TITLE
|
|||
|
.WORD COLOR_WHITE ;COLOR OF TITLE
|
|||
|
.WORD UM_X ;UL X
|
|||
|
.WORD MENU_Y-3 ;UL Y
|
|||
|
.WORD 18 ;VERTICAL SPACING
|
|||
|
.WORD COLOR_WHITE ;COLOR WHEN NOT SELECTED
|
|||
|
.WORD 16 ;HEIGHT OF SELECTION BAR
|
|||
|
.WORD -4 ;DISTANCE OF BAR FROM TOP OF TEXT (NEG)
|
|||
|
.WORD BAR_DX ;EXTRA X ON EACH SIDE.
|
|||
|
.WORD UM_WID ;WIDTH OF BAR!
|
|||
|
.WORD COLOR_DECAY ;TEXT COLOR OF SELECTED ITEM
|
|||
|
.LONG MESS_CLCRED,DO_CLCRED,CLCRED_HELP
|
|||
|
.LONG MESS_CLCOIN,DO_CLCOIN,CLCOIN_HELP
|
|||
|
.LONG MESS_CLAUD,DO_CLAUD,CLAUD_HELP
|
|||
|
.LONG MESS_HSRES,DO_HSRES,HSRES_HELP
|
|||
|
.LONG MESS_CLPLRECS,DO_CLPLRECS,CLPLRECS_HELP
|
|||
|
.LONG MESS_DEF_ADJ,DO_DEF_ADJ,DEF_ADJ_HELP
|
|||
|
.LONG MESS_FACSET,DO_FACSET,FACSET_HELP
|
|||
|
.LONG opmsg_s,opmsg_main,OPMSG_HELP
|
|||
|
.LONG MESS_MM,0,BLNK_HELP ;RETURN TO MAIN MENU
|
|||
|
.LONG 0 ;END
|
|||
|
|
|||
|
* DIAGNOSTIC TESTS MENU
|
|||
|
|
|||
|
MEN_DIAG
|
|||
|
.LONG RD7FONT ;FONT
|
|||
|
.LONG STRCNRM ;CENTER PLEASE
|
|||
|
.LONG MESSDIAG ;TITLE
|
|||
|
.WORD COLOR_RED ;COLOR OF TITLE
|
|||
|
.WORD 200 ;UL X
|
|||
|
.WORD MENU_Y-3 ;UL Y
|
|||
|
.WORD 20 ;VERTICAL SPACING
|
|||
|
.WORD COLOR_RED ;COLOR WHEN NOT SELECTED
|
|||
|
.WORD 16 ;HEIGHT OF SELECTION BAR
|
|||
|
.WORD -4 ;DISTANCE OF BAR FROM TOP OF TEXT (NEGATIVE)
|
|||
|
.WORD BAR_DX ;EXTRA X ON EACH SIDE.
|
|||
|
.WORD 195 ;WIDTH OF BAR! (A LITTLE FATTER)
|
|||
|
.WORD COLOR_DECAY ;TEXT COLOR OF SELECTED ITEM
|
|||
|
.LONG MESS_SWTEST,GO_SWTEST,BLNK_HELP
|
|||
|
.LONG diptst_mess,dipsw_test,BLNK_HELP
|
|||
|
ROM_LEV EQU 3 ;TEST NUMBER FOLLOWING ROM TEST
|
|||
|
.LONG MESS_CPUTEST,GO_CPUTEST,BLNK_HELP
|
|||
|
RTR_LEV EQU 4 ;TEST NUMBER FOLLOWING CPU TEST (FOR RETURN)
|
|||
|
.LONG M_STEST,GO_STEST,BLNK_HELP
|
|||
|
.LONG MESS_PATTERNS,GO_PATTERNS,BLNK_HELP
|
|||
|
.LONG MESS_BURN,DO_BURN,BLNK_HELP
|
|||
|
.LONG MESS_MM,0,BLNK_HELP ;RETURN TO MAIN MENU
|
|||
|
.LONG 0
|
|||
|
|
|||
|
STM_WID EQU 250
|
|||
|
|
|||
|
|
|||
|
* PRESS ANY BUTTON TO CONTINUE
|
|||
|
|
|||
|
ANY_MENU
|
|||
|
.LONG RD7FONT ;FONT
|
|||
|
.LONG STRCNRM ;CENTER PLEASE
|
|||
|
.LONG 0 ;TITLE
|
|||
|
.WORD 0 ;COLOR OF TITLE
|
|||
|
.WORD 200 ;UL X
|
|||
|
.WORD 200 ;UL Y
|
|||
|
.WORD MENU_DY ;VERTICAL SPACING
|
|||
|
.WORD COLOR_BLUE ;COLOR WHEN NOT SELECTED
|
|||
|
.WORD BAR_HITE ;HEIGHT OF SELECTION BAR
|
|||
|
.WORD -9 ;DISTANCE OF BAR FROM TOP OF TEXT (NEGATIVE)
|
|||
|
.WORD BAR_DX ;EXTRA X ON EACH SIDE.
|
|||
|
.WORD 234 ;WIDTH OF BAR!
|
|||
|
.WORD COLOR_DECAY ;TEXT COLOR OF SELECTED ITEM
|
|||
|
.LONG MESS_ANY,0,NO_HELP
|
|||
|
.LONG 0
|
|||
|
|
|||
|
* MONITOR PATTERNS
|
|||
|
|
|||
|
MEN_PATTERNS
|
|||
|
.LONG RD7FONT ;FONT
|
|||
|
.LONG STRCNRM ;CENTER PLEASE
|
|||
|
.LONG MESSPAT ;TITLE
|
|||
|
.WORD COLOR_RED ;COLOR OF TITLE
|
|||
|
.WORD 200 ;UL X (CENTER IT!)
|
|||
|
.WORD MENU_Y-3 ;UL Y
|
|||
|
.WORD 23 ;VERTICAL SPACING
|
|||
|
.WORD COLOR_YELLOW ;COLOR WHEN NOT SELECTED
|
|||
|
.WORD 16 ;HEIGHT OF SELECTION BAR
|
|||
|
.WORD -4 ;DISTANCE OF BAR FROM TOP OF TEXT (NEGATIVE)
|
|||
|
.WORD BAR_DX ;EXTRA X ON EACH SIDE.
|
|||
|
.WORD 234 ;WIDTH OF BAR!
|
|||
|
.WORD COLOR_DECAY ;TEXT COLOR OF SELECTED ITEM
|
|||
|
.LONG MESS_RED,GO_RED,BLNK_HELP
|
|||
|
.LONG MESS_GREEN,GO_GREEN,BLNK_HELP
|
|||
|
.LONG MESS_BLUE,GO_BLUE,BLNK_HELP
|
|||
|
.LONG MESS_BARS,GO_BARS,BLNK_HELP
|
|||
|
.LONG MESS_CROSS,GO_CROSS,BLNK_HELP
|
|||
|
.LONG MESS_DIAGM,0,BLNK_HELP
|
|||
|
.LONG MESS_MM,FORCE_MAIN,NO_HELP ;RETURN TO MAIN MENU
|
|||
|
.LONG 0
|
|||
|
|
|||
|
* DETAILED COINAGE AVAILABLE (ON 1ST COINAGE PAGE)
|
|||
|
|
|||
|
MEN_DETAIL
|
|||
|
.LONG RD7FONT ;FONT
|
|||
|
.LONG STRCNRM ;CENTER PLEASE
|
|||
|
.LONG MESSPAT ;TITLE
|
|||
|
.WORD COLOR_YELLOW ;COLOR OF TITLE
|
|||
|
.WORD 200 ;UL X (CENTER IT!)
|
|||
|
.WORD 224 ;UL Y
|
|||
|
.WORD 12 ;VERTICAL SPACING
|
|||
|
.WORD COLOR_BLUE ;COLOR WHEN NOT SELECTED
|
|||
|
.WORD 10 ;HEIGHT OF SELECTION BAR
|
|||
|
.WORD -1 ;DISTANCE OF BAR FROM TOP OF TEXT (NEGATIVE)
|
|||
|
.WORD BAR_DX ;EXTRA X ON EACH SIDE.
|
|||
|
.WORD 157 ;WIDTH OF BAR!
|
|||
|
.WORD COLOR_DECAY ;TEXT COLOR OF SELECTED ITEM
|
|||
|
.LONG MESS_CLCOIN,0,NO_HELP ;Clr coins
|
|||
|
.LONG MESS_MM,FORCE_MAIN,NO_HELP ;RETURN TO MAIN MENU
|
|||
|
.LONG 0
|
|||
|
|
|||
|
* YES/NO (FOR ARE YOU SURE?)
|
|||
|
|
|||
|
MEN_YN .LONG RD7FONT ;FONT
|
|||
|
.LONG STRCNRM ;CENTER PLEASE
|
|||
|
.LONG MESSDIAG ;TITLE
|
|||
|
.WORD COLOR_RED ;COLOR OF TITLE
|
|||
|
.WORD 200 ;UL X
|
|||
|
.WORD 166 ;UL Y
|
|||
|
.WORD 19 ;VERTICAL SPACING
|
|||
|
.WORD COLOR_YELLOW ;COLOR WHEN NOT SELECTED
|
|||
|
.WORD 16 ;HEIGHT OF SELECTION BAR
|
|||
|
.WORD -4 ;DISTANCE OF BAR FROM TOP OF TEXT (NEGATIVE)
|
|||
|
.WORD BAR_DX ;EXTRA X ON EACH SIDE.
|
|||
|
.WORD 78 ;WIDTH OF BAR! (A LITTLE FATTER)
|
|||
|
.WORD COLOR_DECAY ;TEXT COLOR OF SELECTED ITEM
|
|||
|
.LONG MESS_YES,0,NO_HELP
|
|||
|
.LONG MESS_NO,0,NO_HELP
|
|||
|
.LONG 0
|
|||
|
|
|||
|
* NEXT AUDIT PAGE
|
|||
|
|
|||
|
MEN_AP1 .LONG RD7FONT ;FONT
|
|||
|
.LONG STRCNRM ;CENTER PLEASE
|
|||
|
.LONG MESSPAT ;TITLE
|
|||
|
.WORD ROBO_YELLOW ;COLOR OF TITLE
|
|||
|
.WORD 200 ;UL X (CENTER IT!)
|
|||
|
.WORD 226 ;UL Y
|
|||
|
.WORD 12 ;VERTICAL SPACING
|
|||
|
.WORD COLOR_BLUE ;COLOR WHEN NOT SELECTED
|
|||
|
.WORD 10 ;HEIGHT OF SELECTION BAR
|
|||
|
.WORD -1 ;DISTANCE OF BAR FROM TOP OF TEXT (NEGATIVE)
|
|||
|
.WORD BAR_DX ;EXTRA X ON EACH SIDE.
|
|||
|
.WORD 157 ;WIDTH OF BAR!
|
|||
|
.WORD ROBO_DECAY ;TEXT COLOR OF SELECTED ITEM
|
|||
|
.LONG MESS_TOPAGE2,0,NO_HELP ;DETAILED SECTION
|
|||
|
.LONG MESS_MM,FORCE_MAIN,NO_HELP;RETURN TO MAIN MENU
|
|||
|
.LONG 0
|
|||
|
|
|||
|
MEN_AP2 .LONG RD7FONT ;FONT
|
|||
|
.LONG STRCNRM ;CENTER PLEASE
|
|||
|
.LONG MESSPAT ;TITLE
|
|||
|
.WORD ROBO_YELLOW ;COLOR OF TITLE
|
|||
|
.WORD 200 ;UL X (CENTER IT!)
|
|||
|
.WORD 226 ;UL Y
|
|||
|
.WORD 12 ;VERTICAL SPACING
|
|||
|
.WORD COLOR_BLUE ;COLOR WHEN NOT SELECTED
|
|||
|
.WORD 10 ;HEIGHT OF SELECTION BAR
|
|||
|
.WORD -1 ;DISTANCE OF BAR FROM TOP OF TEXT (NEGATIVE)
|
|||
|
.WORD BAR_DX ;EXTRA X ON EACH SIDE.
|
|||
|
.WORD 157 ;WIDTH OF BAR!
|
|||
|
.WORD ROBO_DECAY ;TEXT COLOR OF SELECTED ITEM
|
|||
|
.LONG MESS_TOPAGE2,0,NO_HELP ;DETAILED SECTION
|
|||
|
.LONG MESS_BACKP1,0,NO_HELP ;DETAILED SECTION
|
|||
|
.LONG 0
|
|||
|
|
|||
|
MEN_AP3 .LONG RD7FONT ;FONT
|
|||
|
.LONG STRCNRM ;CENTER PLEASE
|
|||
|
.LONG MESSPAT ;TITLE
|
|||
|
.WORD ROBO_YELLOW ;COLOR OF TITLE
|
|||
|
.WORD 200 ;UL X (CENTER IT!)
|
|||
|
.WORD 226 ;UL Y
|
|||
|
.WORD 12 ;VERTICAL SPACING
|
|||
|
.WORD COLOR_BLUE ;COLOR WHEN NOT SELECTED
|
|||
|
.WORD 10 ;HEIGHT OF SELECTION BAR
|
|||
|
.WORD -1 ;DISTANCE OF BAR FROM TOP OF TEXT (NEGATIVE)
|
|||
|
.WORD BAR_DX ;EXTRA X ON EACH SIDE.
|
|||
|
.WORD 157 ;WIDTH OF BAR!
|
|||
|
.WORD ROBO_DECAY ;TEXT COLOR OF SELECTED ITEM
|
|||
|
.LONG MESS_MM,FORCE_MAIN,NO_HELP;RETURN TO MAIN MENU
|
|||
|
.LONG MESS_BACKP1,0,NO_HELP ;DETAILED SECTION
|
|||
|
.LONG 0
|
|||
|
|
|||
|
|
|||
|
MEN_SOUNDTEST
|
|||
|
.LONG RD7FONT ;FONT
|
|||
|
.LONG STRCNRM ;CENTER PLEASE
|
|||
|
.LONG MESS_SNDTST0 ;TITLE
|
|||
|
.WORD ROBO_YELLOW ;COLOR OF TITLE
|
|||
|
.WORD 200 ;UL X (CENTER IT!)
|
|||
|
.WORD MENU_Y-3 ;UL Y
|
|||
|
.WORD 20 ;VERTICAL SPACING
|
|||
|
.word ROBO_RED ;colour when not selected
|
|||
|
.WORD 16 ;HEIGHT OF SELECTION BAR
|
|||
|
.WORD -4 ;DISTANCE OF BAR FROM TOP OF TEXT (NEGATIVE)
|
|||
|
.WORD BAR_DX ;EXTRA X ON EACH SIDE.
|
|||
|
.WORD 192+6 ;WIDTH OF BAR!
|
|||
|
.WORD ROBO_DECAY ;TEXT COLOR OF SELECTED ITEM
|
|||
|
.long MESS_SNDTST1,DO_GENTEST,NO_HELP
|
|||
|
.long MESS_SNDTST2,DO_PLAYSOUNDS,NO_HELP
|
|||
|
.long MESS_SNDTST3,0,NO_HELP
|
|||
|
.long MESS_SNDTST4,FORCE_MAIN,NO_HELP
|
|||
|
.LONG 0
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* HELP MENUS FOR MAIN MENU *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
* HM_JUST 0 = CENTER 1 = LEFT
|
|||
|
* HM_COLOR
|
|||
|
* HM_ENTS
|
|||
|
|
|||
|
DIAG_HELP
|
|||
|
.WORD 0 ;CENTER JUSTIFY
|
|||
|
.WORD COLOR_BLUE ;COLOR
|
|||
|
.WORD 6 ;# ENTRIES
|
|||
|
.LONG MESS_SWTEST
|
|||
|
.long diptst_mess
|
|||
|
.LONG MESS_CPUTEST
|
|||
|
.LONG M_STEST
|
|||
|
.LONG MESS_PATTERNS
|
|||
|
.LONG U_BURNIN
|
|||
|
|
|||
|
COIN_HELP
|
|||
|
.WORD 0 ;CENTER JUSTIFY
|
|||
|
.WORD COLOR_BLUE ;COLOR
|
|||
|
.WORD 3 ;2 ENTRIES
|
|||
|
.LONG CH_0
|
|||
|
.LONG CH_1
|
|||
|
.LONG CH_2
|
|||
|
|
|||
|
AUDIT_HELP
|
|||
|
.WORD 0 ;CENTER JUSTIFY
|
|||
|
.WORD COLOR_BLUE ;COLOR
|
|||
|
.WORD 2 ;2 ENTRIES
|
|||
|
.LONG AH_1
|
|||
|
.LONG AH_2
|
|||
|
|
|||
|
ADJUST_HELP
|
|||
|
.WORD 0 ;CENTER JUSTIFY
|
|||
|
.WORD COLOR_BLUE ;COLOR
|
|||
|
.WORD 3 ;3 ENTRIES
|
|||
|
.LONG AD_1
|
|||
|
.LONG AD_2
|
|||
|
.LONG AD_3
|
|||
|
|
|||
|
UTIL_HELP
|
|||
|
.WORD 0 ;CENTER JUSTIFY
|
|||
|
.WORD COLOR_BLUE ;COLOR
|
|||
|
.WORD 6 ;6 ENTRIES
|
|||
|
.LONG U_CLR_CRED
|
|||
|
.LONG U_CLR_COIN
|
|||
|
.LONG U_CLR_AUD
|
|||
|
.LONG U_HSRESET
|
|||
|
.LONG U_CLRRECS
|
|||
|
.LONG U_FACTORY
|
|||
|
|
|||
|
VOL_HELP
|
|||
|
.WORD 0 ;CENTER JUSTIFY
|
|||
|
.WORD COLOR_BLUE ;COLOR
|
|||
|
.WORD 2 ;2 ENTRIES
|
|||
|
.LONG MESS_ATV
|
|||
|
.LONG MESS_OTG
|
|||
|
|
|||
|
EXIT_HELP
|
|||
|
.WORD 0 ;CENTER JUSTIFY
|
|||
|
.WORD COLOR_BLUE ;COLOR
|
|||
|
.WORD 1 ;1 ENTRY
|
|||
|
.LONG U_END
|
|||
|
|
|||
|
|
|||
|
********************************
|
|||
|
* HELP FOR UTILITY MENU
|
|||
|
|
|||
|
CLCRED_HELP
|
|||
|
.WORD 0 ;CENTER JUSTIFY
|
|||
|
.WORD COLOR_BLUE ;COLOR
|
|||
|
.WORD 3 ;# entries
|
|||
|
.LONG MEH_CLCRED1
|
|||
|
.LONG MEH_CLCRED2
|
|||
|
.LONG MEH_CLCRED3
|
|||
|
|
|||
|
CLCOIN_HELP
|
|||
|
.WORD 0 ;CENTER JUSTIFY
|
|||
|
.WORD COLOR_BLUE ;COLOR
|
|||
|
.WORD 4 ;# entries
|
|||
|
.LONG MEH_CLCOIN1
|
|||
|
.LONG MEH_CLCOIN2
|
|||
|
.LONG MEH_CLCOIN3
|
|||
|
.LONG MEH_CLCOIN4
|
|||
|
|
|||
|
CLAUD_HELP
|
|||
|
.WORD 0 ;CENTER JUSTIFY
|
|||
|
.WORD COLOR_BLUE ;COLOR
|
|||
|
.WORD 2 ;# entries
|
|||
|
.LONG MEH_CLAUD1
|
|||
|
.LONG MEH_CLAUD2
|
|||
|
|
|||
|
CLPLRECS_HELP
|
|||
|
.WORD 0 ;CENTER JUSTIFY
|
|||
|
.WORD COLOR_BLUE ;COLOR
|
|||
|
.WORD 2 ;# entries
|
|||
|
.long MEH_CLPLRECS1
|
|||
|
.long MEH_CLPLRECS2
|
|||
|
|
|||
|
HSRES_HELP
|
|||
|
.WORD 0 ;CENTER JUSTIFY
|
|||
|
.WORD COLOR_BLUE ;COLOR
|
|||
|
.WORD 3 ;# entries
|
|||
|
.LONG MEH_RESHS1
|
|||
|
.LONG MEH_RESHS2
|
|||
|
.LONG MEH_RESHS3
|
|||
|
|
|||
|
DEF_ADJ_HELP
|
|||
|
.WORD 0 ;CENTER JUSTIFY
|
|||
|
.WORD COLOR_BLUE ;COLOR
|
|||
|
.WORD 4 ;# entries
|
|||
|
.LONG MEH_DEFA1
|
|||
|
.LONG MEH_DEFA2
|
|||
|
.LONG MEH_DEFA3
|
|||
|
.LONG MEH_DEFA4
|
|||
|
|
|||
|
FACSET_HELP
|
|||
|
.WORD 0 ;CENTER JUSTIFY
|
|||
|
.WORD COLOR_BLUE ;COLOR
|
|||
|
.WORD 4 ;# entries
|
|||
|
.LONG MEH_FAC1
|
|||
|
.LONG MEH_FAC2
|
|||
|
.LONG MEH_FAC3
|
|||
|
.LONG MEH_FAC4
|
|||
|
|
|||
|
OPMSG_HELP
|
|||
|
.word 0 ;CENTER JUSTIFY
|
|||
|
.word COLOR_BLUE ;COLOR
|
|||
|
.word 3 ;# entries
|
|||
|
.long opmsgh1_s
|
|||
|
.long opmsgh2_s
|
|||
|
.long opmsgh3_s
|
|||
|
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* TEXT STRINGS *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
|
|||
|
SIY0 equ 190
|
|||
|
SIY1 equ 212
|
|||
|
SIY2 equ 224
|
|||
|
SIY3 equ 236
|
|||
|
|
|||
|
SND_INST
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,SIY1,ROBO_WHITE,STRCNRM,0
|
|||
|
.STRING "UP AND DOWN TO SELECT SOUND",0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,SIY2,ROBO_WHITE,STRCNRM,0
|
|||
|
.STRING "PRESS ACTION BUTTON TO PLAY",0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,200,SIY3,ROBO_WHITE,STRCNRM,0
|
|||
|
.STRING "PRESS START BUTTON TO EXIT",0,0
|
|||
|
|
|||
|
SND_SETUP MESS_MAC RD15FONT,SPACING20,200,SIY0,ROBO_WHITE,STRCNRM,0
|
|||
|
|
|||
|
sounds_tab .long SND_ST0,SND_ST1,SND_ST2,SND_ST3
|
|||
|
.long SND_ST4,SND_ST5,SND_ST6,SND_ST7
|
|||
|
|
|||
|
SND_ST0 .string "FACE HIT",0
|
|||
|
SND_ST1 .string "WHOOSH",0
|
|||
|
SND_ST2 .string "HARD HIT",0
|
|||
|
SND_ST3 .string "LONG GRUNT",0
|
|||
|
SND_ST4 .string "SHORT GRUNT",0
|
|||
|
SND_ST5 .string "DOINK LAUGH",0
|
|||
|
SND_ST6 .string "DOINK YELL",0
|
|||
|
SND_ST7 .string "MR FUJI",0
|
|||
|
|
|||
|
.even
|
|||
|
|
|||
|
TEST_SOUND_TAB
|
|||
|
.word 080h,0B4h,0C7h,0DDh,114h,226h,230h,6528
|
|||
|
|
|||
|
MESS_SNDTST0 .string "SOUND BOARD TEST",0
|
|||
|
MESS_SNDTST1 .string "GENERAL TEST",0
|
|||
|
MESS_SNDTST2 .string "PLAY SOUNDS",0
|
|||
|
MESS_SNDTST3 .string "BACK TO DIAGNOSTICS MENU",0
|
|||
|
MESS_SNDTST4 .string "RETURN TO MAIN MENU",0
|
|||
|
|
|||
|
MESS_YES
|
|||
|
.byte "YES",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_NO .byte "NO",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
;MESS_CLEAR_SUBS
|
|||
|
; .byte "CLEAR SUBTOTALS"
|
|||
|
; .BYTE 0
|
|||
|
; .EVEN
|
|||
|
;
|
|||
|
;MESS_SUBS_CLEAR
|
|||
|
; .byte "SUBTOTALS CLEARED"
|
|||
|
; .BYTE 0
|
|||
|
; .EVEN
|
|||
|
|
|||
|
MESS_TOPAGE2
|
|||
|
.byte "NEXT AUDIT PAGE"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_BACKP1
|
|||
|
.byte "PREVIOUS AUDIT PAGE"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_ANY
|
|||
|
.byte "ANY BUTTON TO CONTINUE"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_MM
|
|||
|
.byte "RETURN TO MAIN MENU"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESSDIAG ;THIS IS TITLE OF PAGE
|
|||
|
MESS_DIAG
|
|||
|
.byte "DIAGNOSTIC TESTS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
MESS_COIN_AUD
|
|||
|
.byte "COIN BOOKKEEPING"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
MESS_GAME_AUD
|
|||
|
.byte "GAME AUDITS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_GAME_ADJ
|
|||
|
.byte "GAME ADJUSTMENT"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
MESS_UTIL
|
|||
|
.byte "UTILITIES"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_VOL
|
|||
|
.byte "VOLUME ADJUST"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_EXIT
|
|||
|
.byte "EXIT TO GAME OVER"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
CH_0 .byte "VIEW COINBOX"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
CH_1 .byte "TOTALS AND"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
CH_2 .byte "GAMEPLAY COUNTERS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
AH_1 .byte "VIEW GAME"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
AH_2 .byte "PLAY STATISTICS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
AD_1 .byte "MAKE CHANGES"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
AD_2 .byte "TO PRICING AND"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
AD_3 .byte "GAME DIFFICULTY"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_CLCRED
|
|||
|
U_CLR_CRED .byte "CLEAR CREDITS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_CCCONF .byte "CREDITS CLEARED"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_CLCOIN
|
|||
|
U_CLR_COIN .byte "CLEAR COIN COUNTERS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_CLAUD
|
|||
|
U_CLR_AUD .byte "CLEAR GAME AUDITS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_CLPLRECS
|
|||
|
U_CLRRECS
|
|||
|
.string "CLEAR PLAYER STATISTICS",0
|
|||
|
|
|||
|
MESS_HSRESET
|
|||
|
U_HSRESET .byte "RESET HIGH SCORES"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_HSRES
|
|||
|
.byte "RESET HIGH SCORES"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_ATV
|
|||
|
.byte "ADJUST THE VOLUME",0
|
|||
|
.even
|
|||
|
MESS_OTG
|
|||
|
.byte "OF THE GAME",0
|
|||
|
.even
|
|||
|
|
|||
|
;M_OPMESS_TIT
|
|||
|
;U_OPMESS .byte "OPERATOR MESSAGE"
|
|||
|
; .BYTE 0
|
|||
|
; .EVEN
|
|||
|
|
|||
|
;M_SET_OMESS
|
|||
|
;;MESS_OPMESS .byte "SET OPERATOR MESSAGE"
|
|||
|
; .BYTE 0
|
|||
|
; .EVEN
|
|||
|
|
|||
|
U_BURNIN .byte "BURN-IN TEST",0
|
|||
|
.even
|
|||
|
|
|||
|
MESS_BURN .byte "RUN BURN-IN TEST",0
|
|||
|
.even
|
|||
|
|
|||
|
MESS_DEF_ADJ TXTLINE "DEFAULT ADJUSTMENTS"
|
|||
|
U_FACTORY TXTLINE "FACTORY SETTINGS"
|
|||
|
MESS_FACSET TXTLINE "FULL FACTORY RESTORE"
|
|||
|
|
|||
|
opmsg_s TXTLINE "OPERATOR MESSAGE"
|
|||
|
opmsgh1_s TXTLINE "ENTER AN OPERATOR"
|
|||
|
opmsgh2_s TXTLINE "MESSAGE TO"
|
|||
|
opmsgh3_s TXTLINE "THE PLAYERS"
|
|||
|
|
|||
|
|
|||
|
U_END .byte "END TESTING",0
|
|||
|
.even
|
|||
|
|
|||
|
MESS_SWTEST .byte "SWITCH TEST",0
|
|||
|
.even
|
|||
|
diptst_mess .byte "DIP SWITCH TEST",0
|
|||
|
.even
|
|||
|
MESS_CPUTEST .byte "CPU BOARD TEST",0
|
|||
|
.even
|
|||
|
M_STEST .byte "SOUND BOARD TEST",0
|
|||
|
.even
|
|||
|
|
|||
|
MESSPAT ;HEADER TITLE
|
|||
|
MESS_PATTERNS .byte "MONITOR PATTERNS",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_RED .byte "RED SCREEN",0
|
|||
|
.EVEN
|
|||
|
MESS_GREEN .byte "GREEN SCREEN",0
|
|||
|
.EVEN
|
|||
|
MESS_BLUE .byte "BLUE SCREEN",0
|
|||
|
.EVEN
|
|||
|
MESS_BARS .byte "COLOR BARS",0
|
|||
|
.EVEN
|
|||
|
MESS_CROSS .byte "CROSSHATCH PATTERN",0
|
|||
|
.EVEN
|
|||
|
MESS_DIAGM .byte "BACK TO DIAGNOSTICS MENU",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
* ON FULL RESTORE....THE FOLLOWING IS PRINTED.
|
|||
|
;0 = END OF STRING...1 = MORE MESSAGES!
|
|||
|
|
|||
|
MESS_RESET
|
|||
|
MESS_MAC RD7FONT,SPACING20,200,80,ROBO_RED,STRCNRM,0
|
|||
|
MESS_FACFAIL
|
|||
|
.byte "FAILURE IN CMOS RAM",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_FFSCONF
|
|||
|
MESS_FAC MESS_MAC RD7FONT,SPACING20,200,96,COLOR_WHITE,STRCNRM,0
|
|||
|
MESS_DEFCONF
|
|||
|
.byte "ADJUSTMENTS RESTORED.",0,1
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_MAC RD7FONT,SPACING20,200,112,COLOR_YELLOW,STRCNRM,0
|
|||
|
MESS_CCNCONF
|
|||
|
.byte "COIN COUNTERS CLEARED.",0,1
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_MAC RD7FONT,SPACING20,200,128,COLOR_BLUE,STRCNRM,0
|
|||
|
MESS_CAUDCONF
|
|||
|
.byte "GAME AUDITS CLEARED.",0,1
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_MAC RD7FONT,SPACING20,200,144,COLOR_RED,STRCNRM,0
|
|||
|
MESS_HSRCONF
|
|||
|
.byte "HIGH SCORE TABLE RESET.",0,1
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_MAC RD7FONT,SPACING20,200,160,COLOR_CYAN,STRCNRM,0
|
|||
|
MESS_CLPLRECSCONF
|
|||
|
.string "PLAYER STATISTICS CLEARED.",0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MESS_CANCELLED
|
|||
|
.byte "CANCELLED",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
CIN_X EQU (TIT_ULX+TIT_LRX)/2
|
|||
|
CR_X EQU CIN_X-34
|
|||
|
CIN_Y EQU 86
|
|||
|
|
|||
|
CIY1 EQU CIN_Y+14
|
|||
|
CIY2 EQU CIY1+15
|
|||
|
CIY3 EQU CIY2+25
|
|||
|
CIY4 EQU CIY3+25
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* STRINGS FOR UTILITY HELP MENUS *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
MEH_CLCRED1 .byte "REMOVE ANY",0
|
|||
|
.EVEN
|
|||
|
MEH_CLCRED2 .byte "POSTED CREDITS",0
|
|||
|
.EVEN
|
|||
|
MEH_CLCRED3 .byte "FROM THE GAME",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MEH_CLCOIN1 .byte "CLEAR OUT PAID",0
|
|||
|
.EVEN
|
|||
|
MEH_CLCOIN2 .byte "CREDITS TOTAL",0
|
|||
|
.EVEN
|
|||
|
MEH_CLCOIN3 .byte "AND THE COIN",0
|
|||
|
.EVEN
|
|||
|
MEH_CLCOIN4 .byte "SLOT COUNTERS",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MEH_CLAUD1 .byte "CLEAR GAMEPLAY",0
|
|||
|
.EVEN
|
|||
|
MEH_CLAUD2 .byte "STATISTICS",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MEH_CLPLRECS1 .string "CLEAR PLAYER",0
|
|||
|
.even
|
|||
|
MEH_CLPLRECS2 .string "STATISTICS",0
|
|||
|
.even
|
|||
|
|
|||
|
MEH_RESHS1 .byte "RESET HIGH SCORE",0
|
|||
|
.EVEN
|
|||
|
MEH_RESHS2 .byte "TABLE TO FACTORY",0
|
|||
|
.EVEN
|
|||
|
MEH_RESHS3 .byte "DEFAULT VALUES",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MEH_DEFA1 .byte "SET ALL GAME",0
|
|||
|
.EVEN
|
|||
|
MEH_DEFA2 .byte "ADJUSTMENTS TO",0
|
|||
|
.EVEN
|
|||
|
MEH_DEFA3 .byte "THEIR FACTORY",0
|
|||
|
.EVEN
|
|||
|
MEH_DEFA4 .byte "DEFAULT VALUE",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
|
|||
|
MEH_FAC1
|
|||
|
.STRING "RESET ALL AUDITS,",0
|
|||
|
.EVEN
|
|||
|
MEH_FAC2
|
|||
|
.STRING "COUNTERS, ADJUSTMENTS,",0
|
|||
|
.EVEN
|
|||
|
MEH_FAC3
|
|||
|
.STRING "HIGH SCORES AND",0
|
|||
|
.EVEN
|
|||
|
MEH_FAC4
|
|||
|
.STRING "THE PLAYER STATISTICS.",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* MAIN MENU NAMES *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
MESSMAIN
|
|||
|
.byte "WRESTLEMANIA TEST MENU",0
|
|||
|
.even
|
|||
|
|
|||
|
MESSUTIL
|
|||
|
.byte "UTILITY MENU",0
|
|||
|
.even
|
|||
|
|
|||
|
|
|||
|
|
|||
|
CSELCT
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* USA 1: 1 COIN = 1 CREDIT *
|
|||
|
* *
|
|||
|
* 2 TO START / 2 TO CONTINUE *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
.WORD 1,0,1,0,4,1,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 4 ;4 COINS PER DOLLAR (FOR CALC)
|
|||
|
.WORD 1 ;DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,1,0,4 ;COIN VALUE
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ;CHARACTER STRINGS.
|
|||
|
.LONG OCOP ;ONE COIN ONE PLAY
|
|||
|
.LONG USA_1 ;TITLE OF COIN MODE
|
|||
|
.LONG Q_Q ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_NONE ;NO PRICING LINE ON 2/1
|
|||
|
.LONG USA_QDQ ;QUARTER
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* USA 2: 1 COIN = 1 CREDIT *
|
|||
|
* *
|
|||
|
* 2 TO START / 1 TO CONTINUE *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
.WORD 1,0,1,0,4,1,0,0,2,1 ;WILLY PRICING
|
|||
|
.WORD 4 ;4 COINS PER DOLLAR (FOR CALC)
|
|||
|
.WORD 1 ;DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,1,0,4 ;COIN VALUE
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ;CHARACTER STRINGS.
|
|||
|
.LONG OCOP ;ONE COIN ONE PLAY
|
|||
|
.LONG USA_2 ;TITLE OF COIN MODE
|
|||
|
.LONG Q_Q ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_NONE ;NO PRICING LINE ON 2/1
|
|||
|
.LONG USA_QDQ ;QUARTER
|
|||
|
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* USA 3 COINAGE IS 25 CENT *
|
|||
|
* 1 TO START / 1 TO CONTINUE *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
|
|||
|
.WORD 1,0,1,0,4,1,0,0,1,1 ;WILLY PRICING
|
|||
|
.WORD 4 ;4 COINS PER DOLLAR (FOR CALC)
|
|||
|
.WORD 1 ;DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,1,0,4 ;COIN VALUE
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;ONE COIN ONE PLAY
|
|||
|
.LONG USA_3 ;TITLE OF COIN MODE
|
|||
|
.LONG Q_Q ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_NONE ;NO PRICING LINE ON 2/1
|
|||
|
.LONG USA_QDQ ;QUARTER
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* USA 4 COINAGE IS 50 CENT 3/$1.00 *
|
|||
|
* 1 TO START / 1 TO CONTINUE *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
|
|||
|
.WORD 1,0,1,0,4,2,4,0,1,1 ; WILLY PRICING
|
|||
|
.WORD 4 ; 4 COINS PER DOLLAR (FOR CALC)
|
|||
|
.WORD 1 ; DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,1,0,4 ; COIN VALUE
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ; CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ; PRINT THE 2 THE OP SEES
|
|||
|
.LONG USA_4 ; TITLE OF COIN MODE
|
|||
|
.LONG DOLLAR_3 ; 1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2 ; SHOW LINE 2
|
|||
|
.LONG USA_QDQ ; QUARTER
|
|||
|
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* ADDITION "FULL PRICE" COINAGES *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* USA 5 COINAGE IS 50 CENT 4/$1.00 *
|
|||
|
* 2 TO START / 1 TO CONTINUE *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
|
|||
|
.WORD 3,0,3,0,12,4,12,6,2,1 ;WILLY PRICING
|
|||
|
.WORD 4 ;4 COINS PER DOLLAR (FOR CALC)
|
|||
|
.WORD 0 ;NO COIN FRACTIONS
|
|||
|
.WORD 1,0,1,0,4 ;COIN VALUE
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;PRINT THE 2 THE OP SEES
|
|||
|
.LONG USA_5 ;TITLE OF COIN MODE
|
|||
|
.LONG DOLLAR_4 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2 ;SHOW LINE 2
|
|||
|
.LONG USA_QDQ ;QUARTER
|
|||
|
|
|||
|
*
|
|||
|
* USA 6 50 PER CREDIT
|
|||
|
*
|
|||
|
.WORD 1,0,1,0,4,2,0,0,1,1 ; WILLY PRICING
|
|||
|
.WORD 4 ;4 COINS PER DOLLAR (FOR CALC)
|
|||
|
.WORD 1 ;DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,1,0,4 ;COIN VALUE
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;2 COINS PER PLAYER
|
|||
|
.LONG USA_6 ;TITLE OF COIN MODE
|
|||
|
.LONG F_F_1S1C ;2 COINS PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_1 ;SHOW LINE 1
|
|||
|
.LONG USA_QDQ ;QUARTER
|
|||
|
*
|
|||
|
* USA 7 COINAGE IS 50 CENT 3/$1.00
|
|||
|
*
|
|||
|
|
|||
|
.WORD 1,0,1,0,4,2,4,0,1,1 ; WILLY PRICING
|
|||
|
.WORD 4 ;4 COINS PER DOLLAR (FOR CALC)
|
|||
|
.WORD 0 ;DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,1,0,4 ;COIN VALUE
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;PRINT THE 2 THE OP SEES
|
|||
|
.LONG USA_7 ;TITLE OF COIN MODE
|
|||
|
.LONG UFS3D ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2 ;SHOW LINE 2
|
|||
|
.LONG USA_QDQ ;QUARTER
|
|||
|
|
|||
|
*
|
|||
|
* USA 8 COINAGE IS 50 CENT 4/$1.00
|
|||
|
*
|
|||
|
* L, C,R, 4,DBV,U/C,U/B,MINUNITS /START /CONTINUE
|
|||
|
.WORD 3,0,3,0,12,4,12,6,2,2 ;WILLY PRICING
|
|||
|
.WORD 4 ;4 COINS PER DOLLAR (FOR CALC)
|
|||
|
.WORD 0 ;NO COIN FRACTIONS
|
|||
|
.WORD 1,0,1,0,4 ;COIN VALUE
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;PRINT THE 2 THE OP SEES
|
|||
|
.LONG USA_8 ;TITLE OF COIN MODE
|
|||
|
.LONG UFS4D ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2 ;SHOW LINE 2
|
|||
|
.LONG USA_QDQ ;QUARTER
|
|||
|
|
|||
|
* USA 9 COINAGE IS 50 CENT 4/$1.00
|
|||
|
*
|
|||
|
* L, C,R, 4,DBV,U/C,U/B,MINUNITS /START /CONTINUE
|
|||
|
.WORD 1,0,1,0,4,1,0,1,3,2 ;WILLY PRICING
|
|||
|
.WORD 4 ;4 COINS PER DOLLAR (FOR CALC)
|
|||
|
.WORD 0 ;NO COIN FRACTIONS
|
|||
|
.WORD 1,0,1,0,4 ;COIN VALUE
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;PRINT THE 2 THE OP SEES
|
|||
|
.LONG USA_9 ;TITLE OF COIN MODE
|
|||
|
.LONG Q_Q ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2 ;SHOW LINE 2
|
|||
|
.LONG USA_QDQ ;QUARTER
|
|||
|
|
|||
|
* USA 10 COINAGE IS 50 CENT 4/$1.00
|
|||
|
*
|
|||
|
.WORD 1,0,1,0,4,1,0,1,3,3 ;WILLY PRICING
|
|||
|
.WORD 4 ;4 COINS PER DOLLAR (FOR CALC)
|
|||
|
.WORD 0 ;NO COIN FRACTIONS
|
|||
|
.WORD 1,0,1,0,4 ;COIN VALUE
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;PRINT THE 2 THE OP SEES
|
|||
|
.LONG USA_10 ;TITLE OF COIN MODE
|
|||
|
.LONG Q_Q ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2 ;SHOW LINE 2
|
|||
|
.LONG USA_QDQ ;QUARTER
|
|||
|
|
|||
|
.ENDIF
|
|||
|
*
|
|||
|
* USA ELECTRONIC
|
|||
|
*
|
|||
|
.WORD 20,2,5,1,20,5,0,0,2,2 ; L,C,R,4,U/C,U/B,MINUNITS
|
|||
|
.WORD 20 ; COINS/DOLLAR
|
|||
|
.WORD 1 ; DISPLAY FRACTIONS
|
|||
|
.WORD 20,2,5,1,20 ; L,C,R,4
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ; CHARACTER STRINGS.
|
|||
|
.LONG USA_ELECTRONIC ; SPECIAL MESSAGE
|
|||
|
.LONG USA_ELECTITLE ; TITLE OF COIN MODE
|
|||
|
.LONG USA_EL ; SETTINGS DESCRIPTION
|
|||
|
.WORD SHOW_2 ; LINES TO SHOW ON
|
|||
|
.LONG USA_ESLOT ; QUARTER
|
|||
|
|
|||
|
*
|
|||
|
* GERMAN 1 COINAGE IS 6 PLAYS FOR 5 DM
|
|||
|
* 2 TO START, 2 TO CONTINUE
|
|||
|
*
|
|||
|
.WORD 6,0,30,0,0,5,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;DMS HAVE NO FRACTIONS
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,DM_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG GERMAN_1 ;TITLE OF COIN MODE
|
|||
|
.LONG DM_6 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG GERMAN_15 ;1 DM / 5 DM
|
|||
|
|
|||
|
G1SEL EQU ($-CSELCT)/CS_SIZE ;COIN SELECT VALUE FOR GERMAN 1
|
|||
|
*
|
|||
|
* GERMAN 2 COINAGE IS 7 PLAYS FOR 5 DM
|
|||
|
* 2 TO START, 1 TO CONTINUE
|
|||
|
*
|
|||
|
.WORD 6,0,30,0,0,5,30,0,2,1 ;WILLY PRICING
|
|||
|
.WORD 1 ;DMS HAVE NO FRACTIONS
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,DM_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG GERMAN_2 ;TITLE OF COIN MODE
|
|||
|
.LONG DM_7 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG GERMAN_15 ;1 DM / 5 DM
|
|||
|
*
|
|||
|
* GERMAN 3 COINAGE IS 8 PLAYS FOR 5 DM
|
|||
|
* 2 TO START, 1 TO CONTINUE
|
|||
|
*
|
|||
|
.WORD 7,0,35,0,0,5,35,0,2,1 ;WILLY PRICING
|
|||
|
.WORD 1 ;DMS HAVE NO FRACTIONS
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,DM_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG GERMAN_3 ;TITLE OF COIN MODE
|
|||
|
.LONG DM_8 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG GERMAN_15 ;1 DM / 5 DM
|
|||
|
*
|
|||
|
* GERMAN 4 COINAGE IS 5 PLAYS FOR 5 DM
|
|||
|
* 2 TO START, 1 TO CONTINUE
|
|||
|
*
|
|||
|
.WORD 1,0,5,0,0,1,0,0,2,1 ;WILLY PRICING
|
|||
|
.WORD 1 ;DMS HAVE NO FRACTIONS
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,DM_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG GERMAN_4 ;TITLE OF COIN MODE
|
|||
|
.LONG DM_5 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG GERMAN_15 ;1 DM / 5 DM
|
|||
|
|
|||
|
*
|
|||
|
* GERMAN 5 COINAGE IS 6 PLAYS FOR 5 DM
|
|||
|
* 2 TO START, 1 TO CONTINUE
|
|||
|
*
|
|||
|
.WORD 6,0,30,0,0,5,0,0,2,1 ;WILLY PRICING
|
|||
|
.WORD 1 ;DMS HAVE NO FRACTIONS
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,DM_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG GERMAN_5 ;TITLE OF COIN MODE
|
|||
|
.LONG DM_6 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG GERMAN_15 ;1 DM / 5 DM
|
|||
|
|
|||
|
*
|
|||
|
* GERMAN ELECTRONIC
|
|||
|
* 2 TO START, 2 TO CONTINUE
|
|||
|
*
|
|||
|
.WORD 60,12,24,0,0,10,0,0,2,2 ; L,C,R,4,U/C,U/B,MINUNITS
|
|||
|
.WORD 1 ; COINS/DOLLAR
|
|||
|
.WORD 0 ; DISPLAY FRACTIONS
|
|||
|
.WORD 5,1,2,0,0 ; L,C,R,4
|
|||
|
.LONG NULL_ST,DM_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG GERMAN_ELECTRONIC ; SPECIAL MESSAGE
|
|||
|
.LONG GERMAN_ELECTITLE ; TITLE OF COIN MODE
|
|||
|
.LONG DM112265 ; SETTINGS DESCRIPTION
|
|||
|
.WORD SHOW_3 ; LINES TO SHOW ON
|
|||
|
.LONG GERMAN_ESLOT ; QUARTER
|
|||
|
|
|||
|
****************************************************************************
|
|||
|
****************************************************************************
|
|||
|
******* THE FOLLOWING NUMBERS ARE FIGURED FOR THE FRENCH SETTINGS
|
|||
|
******* REQUESTED BY DIMITRI K. OF P.S.D.
|
|||
|
*******
|
|||
|
******* 1F 5F 10F U/C U/B M/U
|
|||
|
******* --------------------------------
|
|||
|
******* 1/2F 3/5F 7/10F 3 15 30 5 30 0
|
|||
|
******* 1/3F 2/5F 5/10F 2 10 20 5 20 0
|
|||
|
******* 1/5F 3/10F 1 5 10 5 10 0
|
|||
|
******* 1/5F 3/10F 7/20F 3 15 30 10 60 15
|
|||
|
******* 2/5F 4/10F 9/20F 2 10 20 5 40 10
|
|||
|
******* 2/5F 5/10F 11/20F 1 5 10 2 20 5
|
|||
|
*******
|
|||
|
*
|
|||
|
*
|
|||
|
* FRENCH 1 2/5F 5/10F
|
|||
|
*
|
|||
|
*
|
|||
|
.WORD 2,0,4,0,0,1,4,0,2,2 ; 2/5F 5/10F
|
|||
|
.WORD 1 ;1 FRANC PER FRANC
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 5,0,10,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;WAIT TILL HE SAYS "IF IT IS NOT POSSIBLE"
|
|||
|
.LONG FRENCH_1 ;TITLE OF COIN MODE
|
|||
|
.LONG FIVE_10 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG FRENCH510
|
|||
|
|
|||
|
F1SEL EQU ($-CSELCT)/CS_SIZE ;COIN SELECT VALUE FOR FRENCH 1
|
|||
|
|
|||
|
*
|
|||
|
* FRENCH 2 2/5F 4/10F
|
|||
|
*
|
|||
|
*
|
|||
|
.WORD 2,0,4,0,0,1,0,0,2,1 ; 2/5F 4/10F
|
|||
|
.WORD 1 ;1 FRANC PER FRANC
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 5,0,10,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;WAIT TILL HE SAYS "IF IT IS NOT POSSIBLE"
|
|||
|
.LONG FRENCH_2 ;TITLE OF COIN MODE
|
|||
|
.LONG FOUR_10 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG FRENCH510
|
|||
|
*
|
|||
|
* FRENCH 3 1/5F 3/10F
|
|||
|
*
|
|||
|
*
|
|||
|
.WORD 1,0,2,0,0,1,2,0,2,1 ;1/5F 3/10F
|
|||
|
.WORD 1 ;1 FRANC PER FRANC
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 5,0,10,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;WAIT TILL HE SAYS "IF IT IS NOT POSSIBLE"
|
|||
|
.LONG FRENCH_3 ;TITLE OF COIN MODE
|
|||
|
.LONG THREE_10 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG FRENCH510
|
|||
|
*
|
|||
|
* FRENCH 4 1/5F 2/10F
|
|||
|
*
|
|||
|
*
|
|||
|
.WORD 1,0,2,0,0,1,0,0,2,1 ;1/5F 2/10F
|
|||
|
.WORD 1 ;1 FRANC PER FRANC
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 5,0,10,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;WAIT TILL HE SAYS "IF IT IS NOT POSSIBLE"
|
|||
|
.LONG FRENCH_4 ;TITLE OF COIN MODE
|
|||
|
.LONG TWO_10 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_1
|
|||
|
.LONG FRENCH510
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
|
|||
|
*
|
|||
|
*
|
|||
|
* FRENCH 5 2/5F 5/10F 11/2 X 10F
|
|||
|
*
|
|||
|
*
|
|||
|
.WORD 5,0,10,0,0,2,20,0,2,1 ;2/5F 5/10F 11/20F
|
|||
|
.WORD 1 ;1 FRANC PER FRANC
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 5,0,10,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;WAIT TILL HE SAYS "IF IT IS NOT POSSIBLE"
|
|||
|
.LONG FRENCH_5 ;TITLE OF COIN MODE
|
|||
|
.LONG FIVE_10_11 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_3 ;USE LINE 3 WHEN ONLY 1 WILL FIT
|
|||
|
.LONG FRENCH510
|
|||
|
*
|
|||
|
* FRENCH 6 2/5F 4/10F 9/2 X 10F
|
|||
|
*
|
|||
|
*
|
|||
|
.WORD 2,0,4,0,0,1,8,0,2,1 ;2/5F 4/10F 9/20F
|
|||
|
.WORD 1 ;1 FRANC PER FRANC
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 5,0,10,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;WAIT TILL HE SAYS "IF IT IS NOT POSSIBLE"
|
|||
|
.LONG FRENCH_6 ;TITLE OF COIN MODE
|
|||
|
.LONG FOUR_10_9 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_3 ;USE LINE 3 WHEN ONLY 1 WILL FIT
|
|||
|
.LONG FRENCH510
|
|||
|
*
|
|||
|
* FRENCH 7 1/5F 3/10F 7/2 X 10F
|
|||
|
*
|
|||
|
*
|
|||
|
.WORD 3,0,6,0,0,2,12,0,2,1 ;1/5F 3/10F 7/20F
|
|||
|
.WORD 1 ;1 FRANC PER FRANC
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 5,0,10,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;WAIT TILL HE SAYS "IF IT IS NOT POSSIBLE"
|
|||
|
.LONG FRENCH_7 ;TITLE OF COIN MODE
|
|||
|
.LONG THREE_10_7 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_3 ;USE LINE 3 WHEN ONLY 1 WILL FIT
|
|||
|
.LONG FRENCH510
|
|||
|
*
|
|||
|
* FRENCH 8 1/5F 2/10F 5/2 X 10F
|
|||
|
*
|
|||
|
*
|
|||
|
.WORD 1,0,2,0,0,1,4,0,2,1 ;1/5F 2/10F 5/20F
|
|||
|
.WORD 1 ;1 FRANC PER FRANC
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 5,0,10,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;WAIT TILL HE SAYS "IF IT IS NOT POSSIBLE"
|
|||
|
.LONG FRENCH_8 ;TITLE OF COIN MODE
|
|||
|
.LONG TWO_10_5 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_3 ;USE LINE 3 WHEN ONLY 1 WILL FIT
|
|||
|
.LONG FRENCH510
|
|||
|
|
|||
|
*
|
|||
|
* FRENCH 9 1/3 X 1F 2/5F
|
|||
|
*
|
|||
|
* COIN SLOTS ARE 1F -- 5F
|
|||
|
*
|
|||
|
*
|
|||
|
.WORD 2,0,10,0,0,5,0,0,2,1 ;1/3X1F 2/5F
|
|||
|
.WORD 1 ;1 FRANC PER FRANC
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;WAIT TILL HE SAYS "IF IT IS NOT POSSIBLE"
|
|||
|
.LONG FRENCH_9 ;TITLE OF COIN MODE
|
|||
|
.LONG F1325 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2 ;USE LINE 2 WHEN ONLY 1 WILL FIT
|
|||
|
.LONG FRENCH1F5F
|
|||
|
*
|
|||
|
* FRENCH 10 1/2 X 1F 3/5F
|
|||
|
*
|
|||
|
* COIN SLOTS ARE 1F -- 5F
|
|||
|
*
|
|||
|
*
|
|||
|
.WORD 3,0,15,0,0,5,0,0,2,1 ;1/2X1F 3/5F
|
|||
|
.WORD 1 ;1 FRANC PER FRANC
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;WAIT TILL HE SAYS "IF IT IS NOT POSSIBLE"
|
|||
|
.LONG FRENCH_10 ;TITLE OF COIN MODE
|
|||
|
.LONG F1235 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_2 ;USE LINE 2 WHEN ONLY 1 WILL FIT
|
|||
|
.LONG FRENCH1F5F
|
|||
|
*
|
|||
|
* FRENCH 11 1/3 X 1F 2/5F 5/2 X 5F
|
|||
|
*
|
|||
|
* COIN SLOTS ARE 1F -- 5F
|
|||
|
*
|
|||
|
*
|
|||
|
.WORD 2,0,10,0,0,5,20,0,2,1 ;1/3X1F 2/5F 5/10F
|
|||
|
.WORD 1 ;1 FRANC PER FRANC
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;WAIT TILL HE SAYS "IF IT IS NOT POSSIBLE"
|
|||
|
.LONG FRENCH_11 ;TITLE OF COIN MODE
|
|||
|
.LONG F13255 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_3 ;USE LINE 2 WHEN ONLY 1 WILL FIT
|
|||
|
.LONG FRENCH1F5F
|
|||
|
|
|||
|
*
|
|||
|
* FRENCH 12 1/2 X 1F 3/5F 7 / 2 X 5F
|
|||
|
*
|
|||
|
* COIN SLOTS ARE 1F -- 5F
|
|||
|
*
|
|||
|
*
|
|||
|
.WORD 3,0,15,0,0,5,30,0,2,1 ;1/2X1F 3/5F 7/10F
|
|||
|
.WORD 1 ;1 FRANC PER FRANC
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;WAIT TILL HE SAYS "IF IT IS NOT POSSIBLE"
|
|||
|
.LONG FRENCH_12 ;TITLE OF COIN MODE
|
|||
|
.LONG F12355 ;1 COIN PER CREDIT (SERIES OF STRINGS)
|
|||
|
.WORD SHOW_3 ;USE LINE 2 WHEN ONLY 1 WILL FIT
|
|||
|
.LONG FRENCH1F5F
|
|||
|
|
|||
|
.ENDIF
|
|||
|
|
|||
|
*
|
|||
|
* FRANCE ELECTRONIC
|
|||
|
*
|
|||
|
.WORD 1,15,6,0,0,3,0,0,2,2 ; L,C,R,4,U/C,U/B,MINUNITS
|
|||
|
.WORD 1 ; COINS/DOLLAR
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,10,5,0,0 ; L,C,R,4
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ; CHARACTER STRINGS.
|
|||
|
.LONG FRANCE_ELECTRONIC ; SPECIAL MESSAGE
|
|||
|
.LONG FRENCH_ELECTITLE ; TITLE OF COIN MODE
|
|||
|
.LONG F13255 ;COIN PAGE DESCRIPTION
|
|||
|
.WORD SHOW_3 ;THREE LINES FOR THIS BABY
|
|||
|
.LONG FRANCE_ESLOT ; QUARTER
|
|||
|
|
|||
|
*
|
|||
|
* CANADA COINAGE IS 50 CENT 3/$1.00
|
|||
|
*
|
|||
|
.WORD 1,0,4,0,4,2,4,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 4 ;4 COINS PER DOLLAR (FOR CALC)
|
|||
|
.WORD 1 ;DISPLAY COIN FRACTIONS
|
|||
|
.WORD 1,0,4,0,4 ;COIN VALUE
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST ;PRINT THE 2 THE OP SEES
|
|||
|
.LONG CANADA ;TITLE OF COIN MODE
|
|||
|
.LONG CAN_1503D ;1 PLAY 50, 3 FOR A DOLLAR
|
|||
|
.WORD SHOW_2 ;SHOW LINE 2
|
|||
|
.LONG CAN_QD ;QUARTER
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
|
|||
|
* SWISS 1 COINAGE IS 6 PLAYS FOR 5 FRANC
|
|||
|
|
|||
|
.WORD 6,0,30,0,0,5,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;FRANCS HAVE NO FRACTIONS
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIO
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG SWISS_1 ;TITLE OF COIN MODE
|
|||
|
.LONG SFRANC_6 ;1 COIN PER CREDIT (SERIES
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG SWISS15
|
|||
|
|
|||
|
* SWISS 2 COINAGE IS 7 PLAYS FOR 5 FRANC
|
|||
|
|
|||
|
.WORD 6,0,30,0,0,5,30,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;FRANCS HAVE NO FRACTIONS
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIO
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG SWISS_2 ;TITLE OF COIN MODE
|
|||
|
.LONG SFRANC_7 ;1 COIN PER CREDIT (SERIES
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG SWISS15
|
|||
|
|
|||
|
* SWISS 3 COINAGE IS 8 PLAYS FOR 5 FRANC
|
|||
|
|
|||
|
.WORD 7,0,35,0,0,5,35,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;FRANCS HAVE NO FRACTIONS
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIO
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG SWISS_3 ;TITLE OF COIN MODE
|
|||
|
.LONG SFRANC_8 ;1 COIN PER CREDIT (SERIES
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG SWISS15
|
|||
|
|
|||
|
* ITALY COINAGE IS 1 PLAYS FOR 500 LIRE
|
|||
|
|
|||
|
.WORD 1,0,1,0,0,1,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;LIRE HAVE NO FRACTIONS
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIO
|
|||
|
; .WORD 500,0,500,0,0 ;COIN VALUE
|
|||
|
.WORD 1,0,1,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,LIRE_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG ITALY_1 ;TITLE OF COIN MODE
|
|||
|
.LONG P1500L ;1 COIN PER CREDIT (SERIES OF ST
|
|||
|
.WORD SHOW_1
|
|||
|
.LONG ITALYLIRE
|
|||
|
|
|||
|
* U.K. ELECTRONIC 1
|
|||
|
|
|||
|
* CENTER = 20P XTRA = 10P LEFT = 1P RIGHT = 50P
|
|||
|
* 1 PLAY / 50 P
|
|||
|
* 3 PLAY / 1 POUND
|
|||
|
|
|||
|
* L, C, R, 4,DBV,U/C,U/B,MINUNITS /START /CONTINUE
|
|||
|
.WORD 10, 2, 5, 1, 0, 5, 10,0,1,1 ;NUMBERS FOR 1L/20P/50P/10P
|
|||
|
.WORD 10 ;PENCE SUCK!
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIO
|
|||
|
.WORD 10,2,5,1,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,POUND_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG UK_ELECTRONIC1 ;SPECIAL TITLE W/ POUND
|
|||
|
.LONG UK_1 ;TITLE OF COIN MODE
|
|||
|
.LONG UK_420 ;
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG UK_ELEC
|
|||
|
|
|||
|
* U.K. ELECTRONIC 2 (CCU)
|
|||
|
|
|||
|
* CREDITS ARE AWARDED 1 COIN / 1 PLAY.....
|
|||
|
|
|||
|
* CCU ACCUMULATES 4 COINS AND STROKES US AS FOLLOWS:
|
|||
|
|
|||
|
* 1 PLAY / 50 P
|
|||
|
* 2 PLAY / 1 POUND
|
|||
|
|
|||
|
* L, C, R, 4,DBV,U/C,U/B,MINUNITS /START /CONTINUE
|
|||
|
.WORD 10, 2, 5, 1, 0, 5, 0,0,1,1 ;NUMBERS FOR 1L/20P/50P/10P
|
|||
|
.WORD 10 ;PENCE ARE FRACTIONS!
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIO
|
|||
|
.WORD 10,2,5,1,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,COINS_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG UK_ELECTRONIC2 ;SPECIAL TITLE W/ POUND
|
|||
|
.LONG UK_2 ;TITLE OF COIN MODE
|
|||
|
.LONG UK_320 ;
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG UK_ELEC
|
|||
|
|
|||
|
* U.K. 3 COINAGE IS 1 PLAY FOR 30P 2 FOR 50P 5 FOR 1.00
|
|||
|
|
|||
|
.WORD 20,4,10,2,0,5,20,0,1,1 ;WILLY PRICING
|
|||
|
.WORD 10 ;PENCE ARE FRACTIONS!
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIO
|
|||
|
.WORD 10,2,5,1,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,POUND_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG UK_ELECTRONIC3 ;SPECIAL TITLE W/ POUND
|
|||
|
.LONG UK_3 ;TITLE OF COIN MODE
|
|||
|
.LONG UK_120 ;1 COIN PER CREDIT (SERIES OF ST
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG UK_ELEC
|
|||
|
|
|||
|
* U.K. 4
|
|||
|
|
|||
|
.WORD 10, 0, 5, 0, 0, 5, 10,0,1,1 ;NUMBERS FOR 1L/20P/50P/10P
|
|||
|
.WORD 10 ;PENCE SUCK!
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIO
|
|||
|
.WORD 10,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,POUND_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG UK_ELECTRONIC1
|
|||
|
.LONG UK_4 ;TITLE OF COIN MODE
|
|||
|
.LONG UK_220 ;
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG UK2050
|
|||
|
|
|||
|
* U.K. 5
|
|||
|
|
|||
|
|
|||
|
* 1 PLAY / 50 P
|
|||
|
* 2 PLAY / 1 POUND
|
|||
|
|
|||
|
* L, C, R, 4,DBV,U/C,U/B,MINUNITS /START /CONTINUE
|
|||
|
.WORD 10, 0, 5, 0, 0, 5, 0,0,1,1 ;NUMBERS FOR 1L/20P/50P/10P
|
|||
|
.WORD 10 ;PENCE ARE FRACTIONS!
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIO
|
|||
|
.WORD 10,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,COINS_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG UK_ELECTRONIC2
|
|||
|
.LONG UK_5 ;TITLE OF COIN MODE
|
|||
|
.LONG UK_520 ;
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG UK2050
|
|||
|
|
|||
|
* DONE BECAUSE WE LEARNED SOME NEW SPANISH SHIT!
|
|||
|
|
|||
|
* SPAIN 1 1 PLAY / 100 PESETA 6 PLAY / 500 PESETA
|
|||
|
|
|||
|
.WORD 1,0,5,0,0,1,5,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;NO FRACTIONS
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIO
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,PESETA_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG SP_1 ;TITLE OF COIN MODE
|
|||
|
.LONG SP_5100 ;1 COIN PER CREDIT (SERIES OF ST
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG PESETA100
|
|||
|
|
|||
|
|
|||
|
* SPAIN 2 1 PLAY / 25 PESETA 5 PLAY / 100 PESETA
|
|||
|
|
|||
|
.WORD 1,0,5,0,0,1,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;NO FRACTIONS
|
|||
|
.WORD 0 ;DON'T DISPLAY COIN FRACTIO
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,PESETA_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG SP_2 ;TITLE OF COIN MODE
|
|||
|
.LONG SP_4100 ;1 COIN PER CREDIT (SERIES OF ST
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG PESETA100
|
|||
|
|
|||
|
|
|||
|
* AUSTRALIA 1 1 PLAY / 3 X 20 CENTS 2 FOR $1.00
|
|||
|
|
|||
|
.WORD 2,0,10,0,0,5,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 5 ;DOLLARS
|
|||
|
.WORD 0 ;DON'T SHOW FRACTIONS FOR T
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG AUS_1 ;TITLE OF COIN MODE
|
|||
|
.LONG AU_60 ;1 COIN PER CREDIT (SERIES OF S
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG AUST20C
|
|||
|
*
|
|||
|
* AUSTRALIA 2 1 PLAY / $1.00 2 PLAYS FOR $2.00
|
|||
|
*
|
|||
|
.WORD 1,0,5,0,0,5,0,0,1,1 ; WILLY PRICING
|
|||
|
.WORD 5 ; DOLLARS
|
|||
|
.WORD 1 ; SHOW FRACTIONS FOR THE 3 C
|
|||
|
.WORD 1,0,5,0,0 ; COIN VALUE
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ; CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG AUS_2 ; TITLE OF COIN MODE
|
|||
|
.LONG AU_100 ; 1 COIN PER CREDIT (SERIES OF ST
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG AUST20C
|
|||
|
|
|||
|
.ENDIF
|
|||
|
|
|||
|
* JAPAN 1 1 PLAY / 100 YEN
|
|||
|
|
|||
|
.WORD 1,0,1,0,0,1,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;DOLLARS
|
|||
|
.WORD 1 ;FRACTIONS OK
|
|||
|
.WORD 1,0,1,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,YEN_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG JAP_1 ;TITLE OF COIN MODE
|
|||
|
.LONG JAP_100 ;1 COIN PER CREDIT (SERIES OF ST
|
|||
|
.WORD SHOW_1
|
|||
|
.LONG YEN100
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
* JAPAN 2 2 PLAY / 100 YEN
|
|||
|
|
|||
|
.WORD 2,0,2,0,0,1,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;DOLLARS
|
|||
|
.WORD 1 ;FRACTIONS OK
|
|||
|
.WORD 1,0,1,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,YEN_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG JAP_2 ;TITLE OF COIN MODE
|
|||
|
.LONG JAP_200 ;1 COIN PER CREDIT (SERIES OF ST
|
|||
|
.WORD SHOW_1
|
|||
|
.LONG YEN100
|
|||
|
|
|||
|
* AUSTRIA 1 1 PLAY / 5 SCHILLING 2 PLAY / 10 SCHILLING
|
|||
|
|
|||
|
.WORD 1,0,2,0,0,1,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;DOLLARS
|
|||
|
.WORD 1 ;FRACTIONS OK
|
|||
|
.WORD 5,0,10,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,SHILL_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG ASTA_1 ;TITLE OF COIN MODE
|
|||
|
.LONG ASTA_15 ;1 COIN PER CREDIT (SERIES OF ST
|
|||
|
.WORD SHOW_1
|
|||
|
.LONG SHILL510
|
|||
|
|
|||
|
* AUSTRIA 2 1 PLAY / 2 X 5 SCHILLING 3 PLAY / 10 SCHILLING
|
|||
|
|
|||
|
.WORD 1,0,2,0,0,2,4,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;DOLLARS
|
|||
|
.WORD 1 ;FRACTIONS OK
|
|||
|
.WORD 5,0,10,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,SHILL_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG ASTA_2 ;TITLE OF COIN MODE
|
|||
|
.LONG ASTA_10 ;1 COIN PER CREDIT (SERIES OF ST
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG SHILL510
|
|||
|
|
|||
|
* BELGIUM 1 1 PLAY / 20F
|
|||
|
|
|||
|
.WORD 1,0,1,0,0,1,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;DOLLARS
|
|||
|
.WORD 1 ;FRACTIONS OK
|
|||
|
.WORD 4,0,4,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG BEL_1 ;TITLE OF COIN MODE
|
|||
|
.LONG BEL_120 ;1 COIN PER CREDIT (SERIES OF ST
|
|||
|
.WORD SHOW_1
|
|||
|
.LONG FRANC20
|
|||
|
|
|||
|
* BELGIUM 2 3 PLAY / 20F
|
|||
|
|
|||
|
.WORD 3,0,3,0,0,1,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;DOLLARS
|
|||
|
.WORD 1 ;FRACTIONS OK
|
|||
|
.WORD 4,0,4,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG BEL_2 ;TITLE OF COIN MODE
|
|||
|
.LONG BEL_320 ;1 COIN PER CREDIT (SERIES OF ST
|
|||
|
.WORD SHOW_1
|
|||
|
.LONG FRANC20
|
|||
|
|
|||
|
* BELGIUM 3 2 PLAY / 20F
|
|||
|
|
|||
|
.WORD 2,0,2,0,0,1,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;DOLLARS
|
|||
|
.WORD 1 ;FRACTIONS OK
|
|||
|
.WORD 4,0,4,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG BEL_3 ;TITLE OF COIN MODE
|
|||
|
.LONG BEL_220 ;1 COIN PER CREDIT (SERIES OF ST
|
|||
|
.WORD SHOW_1
|
|||
|
.LONG FRANC20
|
|||
|
|
|||
|
*
|
|||
|
* BELGIUM ELECTRONIC
|
|||
|
*
|
|||
|
.WORD 10,1,4,0,0,4,0,0,2,2 ; L,C,R,4,U/C,U/B,MINUNITS
|
|||
|
.WORD 1 ; COINS/DOLLAR
|
|||
|
.WORD 1 ; DISPLAY FRACTIONS
|
|||
|
.WORD 10,1,4,0,0 ; L,C,R,4
|
|||
|
.LONG NULL_ST,FRANC_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG BELGIUM_ELECTRONIC ; SPECIAL MESSAGE
|
|||
|
.LONG BELGIUM_ELECTITLE ; TITLE OF COIN MODE
|
|||
|
.LONG BEL_ELEC ; SETTINGS DESCRIPTION
|
|||
|
.WORD SHOW_2 ; LINES TO SHOW ON
|
|||
|
.LONG BELGIUM_ESLOT ; QUARTER
|
|||
|
|
|||
|
* SWEDEN 1 PLAY / 3 X 1 KRONA 2 PLAY 5 KRONA
|
|||
|
|
|||
|
.WORD 2,0,10,0,0,5,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;DOLLARS
|
|||
|
.WORD 0 ;DON'T SHOW FRACTIONS
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,KRONA_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG SWED_1 ;TITLE OF COIN MODE
|
|||
|
.LONG SWED_2X5 ;1 COIN PER CREDIT (SERIES
|
|||
|
.WORD SHOW_1
|
|||
|
.LONG KRONA5
|
|||
|
|
|||
|
* NEW ZEALAND 1 1 PLAY / 3 X 20 CENT
|
|||
|
|
|||
|
.WORD 1,0,1,0,0,3,0,0,1,1 ;WILLY PRICING
|
|||
|
.WORD 5 ;FIVE PER
|
|||
|
.WORD 1 ;SHOW FRACTIONS
|
|||
|
.WORD 1,0,1,0,0 ;COIN VALUE
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG NZ_1 ;TITLE OF COIN MODE
|
|||
|
.LONG NZ_13 ;1 COIN PER CREDIT (SERIES OF S
|
|||
|
.WORD SHOW_1
|
|||
|
.LONG NZ20
|
|||
|
|
|||
|
|
|||
|
* NEW ZEALAND 2 1 PLAY / 2 X 20 CENT
|
|||
|
|
|||
|
.WORD 1,0,1,0,0,2,0,0,1,1 ;WILLY PRICING
|
|||
|
.WORD 5 ;FIVE PER
|
|||
|
.WORD 1 ;SHOW FRACTIONS
|
|||
|
.WORD 1,0,1,0,0 ;COIN VALUE
|
|||
|
.LONG DOLLAR_LEAD,NULL_ST ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG NZ_2 ;TITLE OF COIN MODE
|
|||
|
.LONG NZ_12 ;1 COIN PER CREDIT (SERIES OF S
|
|||
|
.WORD SHOW_1
|
|||
|
.LONG NZ20
|
|||
|
|
|||
|
* NETHERLANDS 1 PLAY / 1 HFL. 3 PLAY / 2.5 HFL.
|
|||
|
|
|||
|
.WORD 1,0,3,0,0,1,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;FIVE PER
|
|||
|
.WORD 0 ;DON'T SHOW FRACTIONS
|
|||
|
.WORD 2,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,HFL_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG NETH ;TITLE OF COIN MODE
|
|||
|
.LONG NETH_HF ;1 COIN PER CREDIT (SERIES OF ST
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG HFSLOT
|
|||
|
|
|||
|
|
|||
|
* FINLAND 1 PLAY / 1 MARKKA
|
|||
|
|
|||
|
.WORD 1,0,1,0,0,1,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;FIVE PER
|
|||
|
.WORD 0 ;DON'T SHOW FRACTIONS
|
|||
|
.WORD 1,0,1,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,MARKKA_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG FINLAND ;TITLE OF COIN MODE
|
|||
|
.LONG FINMKA ;1 COIN PER CREDIT (SERIES OF ST
|
|||
|
.WORD SHOW_1
|
|||
|
.LONG MKSLOT
|
|||
|
|
|||
|
* NORWAY 1 PLAY / 2 X 1 KRONE 3/ 5 X 1 KRONE
|
|||
|
|
|||
|
.WORD 3,0,3,0,0,5,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;FIVE PER
|
|||
|
.WORD 0 ;DON'T SHOW FRACTIONS
|
|||
|
.WORD 1,0,1,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,KRONE_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG NORWAY ;TITLE OF COIN MODE
|
|||
|
.LONG KR_LIST ;1 COIN PER CREDIT (SERIES OF STRI
|
|||
|
.WORD SHOW_2
|
|||
|
.LONG NKRSLOT
|
|||
|
|
|||
|
* DENMARK 1 PLAY / 2 X 1 KRONE 3/ 5 KRONE 7 / 10 KRONE
|
|||
|
|
|||
|
.WORD 3,0,15,0,0,5,30,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;FIVE PER
|
|||
|
.WORD 0 ;DON'T SHOW FRACTIONS
|
|||
|
.WORD 1,0,5,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,KRONE_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG DENMARK ;TITLE OF COIN MODE
|
|||
|
.LONG DKR_LIST ;1 COIN PER CREDIT (SERIES
|
|||
|
.WORD SHOW_3
|
|||
|
.LONG DKRSLOT
|
|||
|
|
|||
|
|
|||
|
* ANTILLES 1 PLAY / 25 CENTS 4 PLAYS / 1 GUILDER
|
|||
|
|
|||
|
.WORD 1,0,4,0,0,1,0,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 4 ;FIVE PER
|
|||
|
.WORD 0 ;DON'T SHOW FRACTIONS
|
|||
|
.WORD 1,0,4,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,GUILDER_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG ANTILLES ;TITLE OF COIN MODE
|
|||
|
.LONG ANT_LIST ;1 COIN PER CREDIT (SERIES
|
|||
|
.WORD SHOW_1
|
|||
|
.LONG ANTSLOT
|
|||
|
|
|||
|
* HUNGARY 1 CREDIT / 2X10 FORINT 3 CREDITS / 2X20 FORINT
|
|||
|
|
|||
|
.WORD 1,0,2,0,0,2,4,0,2,2 ;WILLY PRICING
|
|||
|
.WORD 1 ;1 TO 1
|
|||
|
.WORD 0 ;DON'T SHOW FRACTIONS
|
|||
|
.WORD 1,0,2,0,0 ;COIN VALUE
|
|||
|
.LONG NULL_ST,FORINT_TRAIL ;CHARACTER STRINGS.
|
|||
|
.LONG CSM_LIST
|
|||
|
.LONG HUNGARY ;TITLE OF COIN MODE
|
|||
|
.LONG HUNG_LIST ;1 COIN PER CREDIT (SERIES
|
|||
|
.WORD SHOW_1
|
|||
|
.LONG HUNGSLOT
|
|||
|
|
|||
|
.ENDIF
|
|||
|
|
|||
|
CS_ENTS EQU ($-CSELCT)/CS_SIZE ;NUMBER OF ENTRIES IN TABLE
|
|||
|
|
|||
|
|
|||
|
;
|
|||
|
; DIP SWITCH TABLES
|
|||
|
;
|
|||
|
|
|||
|
USABASE EQU 1
|
|||
|
GERBASE EQU G1SEL
|
|||
|
FRABASE EQU F1SEL
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
|
|||
|
USADIP .WORD USABASE+0, USABASE+1, USABASE+2, USABASE+3, USABASE+8
|
|||
|
.WORD USABASE+8, USABASE+8
|
|||
|
|
|||
|
GERDIP .WORD GERBASE+0, GERBASE+1, GERBASE+2, GERBASE+3, GERBASE+4
|
|||
|
.WORD GERBASE+4, GERBASE+4
|
|||
|
|
|||
|
FRADIP .WORD FRABASE+0, FRABASE+1, FRABASE+2, FRABASE+3, FRABASE+12
|
|||
|
.WORD FRABASE+12, FRABASE+12
|
|||
|
|
|||
|
.ELSE
|
|||
|
|
|||
|
USADIP .WORD USABASE+0, USABASE+1, USABASE+2, USABASE+3, USABASE+4
|
|||
|
.WORD USABASE+4, USABASE+4
|
|||
|
|
|||
|
GERDIP .WORD GERBASE+0, GERBASE+1, GERBASE+2, GERBASE+3, GERBASE+4
|
|||
|
.WORD GERBASE+4, GERBASE+4
|
|||
|
|
|||
|
FRADIP .WORD FRABASE+0, FRABASE+1, FRABASE+2, FRABASE+3, FRABASE+4
|
|||
|
.WORD FRABASE+4, FRABASE+4
|
|||
|
|
|||
|
.ENDIF
|
|||
|
|
|||
|
|
|||
|
DIPCOINTAB .LONG USADIP, GERDIP, FRADIP, USADIP
|
|||
|
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* COLLECTION MESSAGES *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
ME_ZERO .STRING "0"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
ME_DASH .string "-",0
|
|||
|
.even
|
|||
|
|
|||
|
ME_DECIMAL .STRING "."
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
ME_COLON .STRING ":"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
DOLLAR_LEAD .STRING "$ "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
POUND_LEAD
|
|||
|
.STRING FONT_EPOUND," ",0
|
|||
|
.EVEN
|
|||
|
POUND_TRAIL
|
|||
|
.STRING " PND",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
NULL_ST
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
DM_TRAIL .STRING " DM"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
FRANC_TRAIL .STRING " FRANC"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
LIRE_TRAIL .STRING " LIRE"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
PESETA_TRAIL .STRING " PESETA"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
.ENDIF
|
|||
|
|
|||
|
YEN_TRAIL
|
|||
|
.STRING " YEN"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
SHILL_TRAIL
|
|||
|
.STRING " SCHILLINGS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
KRONA_TRAIL
|
|||
|
.STRING " KRONA"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
.ENDIF
|
|||
|
|
|||
|
COINS_TRAIL
|
|||
|
.STRING " COINS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
HFL_TRAIL
|
|||
|
.STRING " HFI."
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MARKKA_TRAIL
|
|||
|
.STRING " MARKKA"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
KRONE_TRAIL
|
|||
|
.STRING " KRONE"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
GUILDER_TRAIL
|
|||
|
.STRING " GUILDER"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
FORINT_TRAIL
|
|||
|
.STRING " FT",0
|
|||
|
.ENDIF
|
|||
|
|
|||
|
*
|
|||
|
* FOR THE COINAGE ADJUSTMENT MODE:
|
|||
|
*
|
|||
|
*
|
|||
|
* THIS SET IS TITLES FOR THE CANNED MODES.
|
|||
|
*
|
|||
|
USA_1 .STRING "USA 1",0
|
|||
|
.EVEN
|
|||
|
USA_2 .STRING "USA 2",0
|
|||
|
.EVEN
|
|||
|
USA_3 .STRING "USA 3",0
|
|||
|
.EVEN
|
|||
|
USA_4 .STRING "USA 4",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
USA_5 .STRING "USA 5",0
|
|||
|
.EVEN
|
|||
|
USA_6 .STRING "USA 6",0
|
|||
|
.EVEN
|
|||
|
USA_7 .STRING "USA 7",0
|
|||
|
.EVEN
|
|||
|
USA_8 .STRING "USA 8",0
|
|||
|
.EVEN
|
|||
|
USA_9 .STRING "USA 9",0
|
|||
|
.EVEN
|
|||
|
USA_10 .STRING "USA 10",0
|
|||
|
.EVEN
|
|||
|
.ENDIF
|
|||
|
|
|||
|
USA_ELECTITLE
|
|||
|
.STRING "USA ECA",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
FRENCH_ELECTITLE
|
|||
|
.STRING "FRANCE ECA",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
GERMAN_ELECTITLE
|
|||
|
.STRING "GERMAN ECA",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
BEL_ELECTITLE
|
|||
|
.STRING "BELGUIM ECA",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
GERMAN_1 .STRING "GERMAN 1",0
|
|||
|
.EVEN
|
|||
|
GERMAN_2 .STRING "GERMAN 2",0
|
|||
|
.EVEN
|
|||
|
GERMAN_3 .STRING "GERMAN 3",0
|
|||
|
.EVEN
|
|||
|
GERMAN_4 .STRING "GERMAN 4",0
|
|||
|
.EVEN
|
|||
|
GERMAN_5 .STRING "GERMAN 5",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
FRENCH_1 .STRING "FRANCE 1",0
|
|||
|
.EVEN
|
|||
|
FRENCH_2 .STRING "FRANCE 2",0
|
|||
|
.EVEN
|
|||
|
FRENCH_3 .STRING "FRANCE 3",0
|
|||
|
.EVEN
|
|||
|
FRENCH_4 .STRING "FRANCE 4",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
FRENCH_5 .STRING "FRANCE 5",0
|
|||
|
.EVEN
|
|||
|
FRENCH_6 .STRING "FRANCE 6",0
|
|||
|
.EVEN
|
|||
|
FRENCH_7 .STRING "FRANCE 7",0
|
|||
|
.EVEN
|
|||
|
FRENCH_8 .STRING "FRANCE 8",0
|
|||
|
.EVEN
|
|||
|
FRENCH_9 .STRING "FRANCE 9",0
|
|||
|
.EVEN
|
|||
|
FRENCH_10 .STRING "FRANCE 10",0
|
|||
|
.EVEN
|
|||
|
FRENCH_11 .STRING "FRANCE 11",0
|
|||
|
.EVEN
|
|||
|
FRENCH_12 .STRING "FRANCE 12",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
CANADA
|
|||
|
.STRING "CANADA",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
SWISS_1 .STRING "SWISS 1"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
SWISS_2 .STRING "SWISS 2"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
SWISS_3 .STRING "SWISS 3"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
ITALY_1 .STRING "ITALY"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
UK_1 .STRING "U.K. 1 ECA"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
UK_2 .STRING "U.K. 2 ECA"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
UK_3 .STRING "U.K. 3 ECA"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
UK_4 .STRING "U.K. 4"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
UK_5 .STRING "U.K. 5"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
SP_1 .STRING "SPAIN 1"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
SP_2 .STRING "SPAIN 2"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
AUS_1 .STRING "AUSTRALIA 1"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
AUS_2 .STRING "AUSTRALIA 2"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
.ENDIF
|
|||
|
|
|||
|
JAP_1 .STRING "JAPAN 1"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
JAP_2 .STRING "JAPAN 2"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
ASTA_1 .STRING "AUSTRIA 1"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
ASTA_2 .STRING "AUSTRIA 2"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
BEL_1 .STRING "BELGIUM 1"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
BEL_2 .STRING "BELGIUM 2"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
BEL_3 .STRING "BELGIUM 3"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
BELGIUM_ELECTITLE
|
|||
|
.STRING "BELGIUM ECA",0
|
|||
|
.EVEN
|
|||
|
SWED_1 .STRING "SWEDEN"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
NZ_1 .STRING "NEW ZEALAND 1"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
NZ_2 .STRING "NEW ZEALAND 2"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
NETH .STRING "NETHERLANDS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
FINLAND .STRING "FINLAND"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
NORWAY .STRING "NORWAY"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
DENMARK .STRING "DENMARK"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
ANTILLES .STRING "ANTILLES"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
HUNGARY
|
|||
|
.STRING "HUNGARY",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
.ENDIF
|
|||
|
*
|
|||
|
* THIS SECTION IS A POINTER TO STRING LISTS
|
|||
|
* FOR THE "CURRENT SETTING" BOX.
|
|||
|
*
|
|||
|
USA_EL
|
|||
|
.LONG EC1
|
|||
|
.LONG DOLL4
|
|||
|
.LONG 0
|
|||
|
*
|
|||
|
* 1 COIN / 1 CREDIT
|
|||
|
Q_Q
|
|||
|
.LONG C11 ;THIS POINTS AT MESSAGE
|
|||
|
.LONG 0 ;THIS ENDS LIST
|
|||
|
*
|
|||
|
* 2 COINS / 1 CREDIT
|
|||
|
*
|
|||
|
F_F_1S1C
|
|||
|
.LONG C21
|
|||
|
.LONG 0
|
|||
|
|
|||
|
*************************************************************************
|
|||
|
|
|||
|
|
|||
|
*
|
|||
|
* 2 COINS / 1 CREDIT
|
|||
|
* 4 COINS / 3 CREDITS
|
|||
|
*
|
|||
|
DOLLAR_3 .LONG C21
|
|||
|
.LONG C43
|
|||
|
.LONG 0
|
|||
|
*
|
|||
|
* 2 COINS / 1 CREDIT
|
|||
|
* 4 COINS / 4 CREDITS
|
|||
|
*
|
|||
|
DOLLAR_4 .LONG C21
|
|||
|
.LONG C44
|
|||
|
.LONG 0
|
|||
|
|
|||
|
|
|||
|
********************************************************************
|
|||
|
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
|
|||
|
U1Q4D .LONG C11 ;THIS POINTS AT MESSAGE
|
|||
|
.LONG DOLL4 ;4 FOR A DOLLAR
|
|||
|
.LONG 0
|
|||
|
|
|||
|
;UFS2D .LONG C21 ; THIS POINTS AT MESSAGE
|
|||
|
; .LONG DOLL2 ; 2 FOR A DOLLAR
|
|||
|
; .LONG 0
|
|||
|
|
|||
|
UFS3D .LONG C21 ;THIS POINTS AT MESSAGE
|
|||
|
.LONG DOLL3 ;3 FOR A DOLLAR
|
|||
|
.LONG 0
|
|||
|
|
|||
|
UFS4D .LONG C21 ;THIS POINTS AT MESSAGE
|
|||
|
.LONG DOLL4 ;4 FOR A DOLLAR
|
|||
|
.LONG 0
|
|||
|
|
|||
|
.ENDIF
|
|||
|
|
|||
|
*
|
|||
|
* 1 PLAY 1/DM
|
|||
|
* 5 PLAY 5/DM
|
|||
|
*
|
|||
|
DM_5 .LONG DM11
|
|||
|
.LONG DM55
|
|||
|
.LONG 0
|
|||
|
|
|||
|
DM_6 .LONG DM11
|
|||
|
.LONG DM65
|
|||
|
.LONG 0
|
|||
|
|
|||
|
DM_7 .LONG DM11
|
|||
|
.LONG DM75
|
|||
|
.LONG 0
|
|||
|
|
|||
|
DM_8 .LONG DM11
|
|||
|
.LONG DM85
|
|||
|
.LONG 0
|
|||
|
|
|||
|
DM112265
|
|||
|
.LONG DM11
|
|||
|
.LONG DM22
|
|||
|
.LONG DM65
|
|||
|
.LONG 0
|
|||
|
|
|||
|
SFRANC_6 .LONG SFRANC11
|
|||
|
.LONG SFRANC65
|
|||
|
.LONG 0
|
|||
|
|
|||
|
CAN_1503D
|
|||
|
.LONG C15 ;THIS POINTS AT MESSAGE
|
|||
|
.LONG DOLL3 ;3 FOR A DOLLAR
|
|||
|
.LONG 0
|
|||
|
|
|||
|
SFRANC_7 .LONG SFRANC11
|
|||
|
.LONG SFRANC75
|
|||
|
.LONG 0
|
|||
|
|
|||
|
SFRANC_8 .LONG SFRANC11
|
|||
|
.LONG SFRANC85
|
|||
|
.LONG 0
|
|||
|
*
|
|||
|
* 2 PLAYS 5F / 5 PLAYS 10F
|
|||
|
*
|
|||
|
FIVE_10 .LONG F25
|
|||
|
.LONG F510
|
|||
|
.LONG 0
|
|||
|
|
|||
|
FIVE_10_11
|
|||
|
.LONG F25
|
|||
|
.LONG F510
|
|||
|
.LONG F1120
|
|||
|
.LONG 0
|
|||
|
|
|||
|
FOUR_10 .LONG F25
|
|||
|
.LONG F410
|
|||
|
.LONG 0
|
|||
|
|
|||
|
FOUR_10_9
|
|||
|
.LONG F25
|
|||
|
.LONG F410
|
|||
|
.LONG F4109
|
|||
|
.LONG 0
|
|||
|
|
|||
|
THREE_10 .LONG F15
|
|||
|
.LONG F310
|
|||
|
.LONG 0
|
|||
|
|
|||
|
THREE_10_7
|
|||
|
.LONG F15
|
|||
|
.LONG F310
|
|||
|
.LONG F4107
|
|||
|
.LONG 0
|
|||
|
|
|||
|
TWO_10 .LONG F15
|
|||
|
.LONG F210
|
|||
|
.LONG 0
|
|||
|
|
|||
|
TWO_10_5 .LONG F15
|
|||
|
.LONG F210
|
|||
|
.LONG F4105
|
|||
|
.LONG 0
|
|||
|
|
|||
|
F1325 .LONG F3X1F
|
|||
|
.LONG F2F5
|
|||
|
.LONG 0
|
|||
|
|
|||
|
F13255 .LONG F3X1F
|
|||
|
.LONG F2F5
|
|||
|
; .LONG F52X5
|
|||
|
.LONG F5X10F
|
|||
|
.LONG 0
|
|||
|
|
|||
|
F1235 .LONG F2X1F
|
|||
|
.LONG F3F5
|
|||
|
.LONG 0
|
|||
|
|
|||
|
F12355 .LONG F2X1F
|
|||
|
.LONG F3F5
|
|||
|
.LONG F72X5
|
|||
|
.LONG 0
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
|
|||
|
* 500 LIRE
|
|||
|
|
|||
|
P1500L .LONG P1500L_P
|
|||
|
.LONG 0
|
|||
|
|
|||
|
* 1 PLAY / 20 P 3 PLAYS 50 P
|
|||
|
|
|||
|
UK_120 .LONG UK_1201
|
|||
|
.LONG UK_1202
|
|||
|
.LONG UK_1203
|
|||
|
.LONG 0
|
|||
|
|
|||
|
;UK_220 .LONG UK_2201
|
|||
|
; .LONG UK_2202
|
|||
|
; .LONG 0
|
|||
|
|
|||
|
UK_520
|
|||
|
UK_320 .LONG UK_3201
|
|||
|
; .LONG UK_3202
|
|||
|
.LONG UK_3203
|
|||
|
.LONG 0
|
|||
|
|
|||
|
UK_220
|
|||
|
UK_420 .LONG UK_4201
|
|||
|
.LONG UK_4202
|
|||
|
; .LONG UK_4203
|
|||
|
.LONG 0
|
|||
|
|
|||
|
SP_4100 .LONG SP_11
|
|||
|
.LONG SP_44
|
|||
|
.LONG 0
|
|||
|
|
|||
|
SP_5100 .LONG SP_11
|
|||
|
.LONG SP_54
|
|||
|
.LONG 0
|
|||
|
|
|||
|
AU_60 .LONG AU_36
|
|||
|
.LONG AU_2D
|
|||
|
.LONG 0
|
|||
|
|
|||
|
AU_100 .LONG AU_520
|
|||
|
.LONG AU_1D
|
|||
|
.LONG 0
|
|||
|
|
|||
|
.ENDIF
|
|||
|
|
|||
|
JAP_100 .LONG JAP_101
|
|||
|
.LONG 0
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
|
|||
|
JAP_200 .LONG JAP_201
|
|||
|
.LONG 0
|
|||
|
|
|||
|
ASTA_10 .LONG ASTA101
|
|||
|
.LONG ASTA102
|
|||
|
.LONG 0
|
|||
|
|
|||
|
ASTA_15 .LONG ASTA151
|
|||
|
.LONG ASTA152
|
|||
|
.LONG 0
|
|||
|
|
|||
|
BEL_120 .LONG BEL_1201
|
|||
|
.LONG 0
|
|||
|
BEL_220 .LONG BEL_2201
|
|||
|
.LONG 0
|
|||
|
BEL_320 .LONG BEL_3201
|
|||
|
.LONG 0
|
|||
|
BEL_ELEC
|
|||
|
.LONG BEL_1201
|
|||
|
.LONG 0
|
|||
|
|
|||
|
SWED_2X5 .LONG SWED_S51
|
|||
|
.LONG SWED_S52
|
|||
|
.LONG 0
|
|||
|
|
|||
|
NZ_12 .LONG NZ_121
|
|||
|
.LONG 0
|
|||
|
|
|||
|
NZ_13 .LONG NZ_131
|
|||
|
.LONG 0
|
|||
|
|
|||
|
NETH_HF .LONG HF_11
|
|||
|
.LONG HF_32
|
|||
|
.LONG 0
|
|||
|
|
|||
|
FINMKA .LONG FIN_1
|
|||
|
.LONG 0
|
|||
|
|
|||
|
KR_LIST .LONG NOR_12
|
|||
|
.LONG NOR_35
|
|||
|
.LONG 0
|
|||
|
|
|||
|
DKR_LIST .LONG DEN_12
|
|||
|
.LONG DEN_35
|
|||
|
.LONG DEN_710
|
|||
|
.LONG 0
|
|||
|
|
|||
|
ANT_LIST .LONG ANT1P25
|
|||
|
.LONG ANT4DOL
|
|||
|
.LONG 0
|
|||
|
|
|||
|
HUNG_LIST
|
|||
|
.LONG HUNG2X10
|
|||
|
.LONG HUNG2X20
|
|||
|
.LONG 0
|
|||
|
|
|||
|
.ENDIF
|
|||
|
|
|||
|
EC1 .STRING "1 CREDIT / 25 CENTS",0
|
|||
|
.EVEN
|
|||
|
C11 .STRING "1 CREDIT / 1 COIN"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
C21 .STRING "1 CREDIT / 2 COINS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
C43 .STRING "3 CREDIT / 4 COINS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
C44 .STRING "4 CREDITS / 4 COINS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
C15
|
|||
|
.STRING "1 CREDIT / 2 X 25 CENTS",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
DOLL2 .STRING "2 CREDITS / $1.00"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
DOLL3 .STRING "3 CREDITS / $1.00"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
DOLL4 .STRING "4 CREDITS / $1.00"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
DM11 .STRING "1 CREDIT / 1 DM",0
|
|||
|
.EVEN
|
|||
|
DM22 .STRING "2 CREDITS / 2 DM",0
|
|||
|
.EVEN
|
|||
|
DM55 .STRING "5 CREDITS / 5 DM",0
|
|||
|
.EVEN
|
|||
|
DM65 .STRING "6 CREDITS / 5 DM",0
|
|||
|
.EVEN
|
|||
|
DM75 .STRING "7 CREDITS / 5 DM",0
|
|||
|
.EVEN
|
|||
|
DM85 .STRING "8 CREDITS / 5 DM",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
F3F5 .STRING "3 CREDITS / 5F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
F2F5
|
|||
|
F25 .STRING "2 CREDITS / 5F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
F15 .STRING "1 CREDIT / 5F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
F510 .STRING "5 CREDITS / 10F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
F1120 .STRING "11 CREDITS / 2 X 10F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
F4109 .STRING "9 CREDITS / 2 X 10F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
F4107 .STRING "7 CREDITS / 2 X 10F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
F4105 .STRING "5 CREDITS / 2 X 10F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
F410 .STRING "4 CREDITS / 10F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
F310 .STRING "3 CREDITS / 10F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
F210 .STRING "2 CREDITS / 10F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
F3X1F .STRING "1 CREDIT / 3 X 1F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
F2X1F .STRING "1 CREDIT / 2 X 1F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
F52X5 .STRING "5 CREDITS / 2 X 5F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
F5X10F .STRING "5 CREDITS / 10F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
F72X5 .STRING "7 CREDITS / 2 X 5F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
SFRANC11 .STRING "1 CREDIT / 1F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
SFRANC65 .STRING "6 CREDITS / 5F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
SFRANC75 .STRING "7 CREDITS / 5F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
SFRANC85 .STRING "8 CREDITS / 5F"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
P1500L_P .STRING "1 CREDIT / 500 LIRE"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
UK_1201 .STRING "1 CREDIT / 30 P"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
UK_1202 .STRING "2 CREDITS / 50 P"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
UK_1203 .STRING "5 CREDITS / L1.00"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
UK_2201 .STRING "2 CREDITS / 20 P"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
UK_2202 .STRING "5 CREDITS / 50 P"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
UK_3201 .STRING "1 CREDIT / 50 P"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
;UK_3202 .STRING "2 CREDITS / 50 P"
|
|||
|
; .BYTE 0
|
|||
|
; .EVEN
|
|||
|
UK_3203 .STRING "2 CREDITS / L1.00"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
UK_4201 .STRING "1 CREDIT / 50 P"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
UK_4202 .STRING "3 CREDITS / L1.00"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
;UK_4203 .STRING "7 CREDITS / L1.00"
|
|||
|
; .BYTE 0
|
|||
|
; .EVEN
|
|||
|
|
|||
|
SP_11 .STRING "1 CREDIT / 100 PESETA"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
SP_44 .STRING "5 CREDITS / 500 PESETA"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
SP_54 .STRING "6 CREDITS / 500 PESETA"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
NZ_131
|
|||
|
AU_36 .STRING "1 CREDIT / 3 X 20 CENTS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
AU_2D .STRING "2 CREDITS / $ 1.00"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
AU_520 .STRING "1 CREDIT / 5 X 20 CENTS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
AU_1D .STRING "1 CREDIT / $ 1.00"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
.ENDIF
|
|||
|
|
|||
|
JAP_101 .STRING "1 CREDIT / 100 YEN"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
|
|||
|
JAP_201 .STRING "2 CREDITS / 100 YEN"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
ASTA101 .STRING "1 CREDIT / 2 X 5 SCHILLING"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
ASTA102 .STRING "3 CREDITS / 2 X 10 SCHILLING"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
ASTA151 .STRING "1 CREDIT / 5 SCHILLING"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
ASTA152 .STRING "2 CREDITS / 10 SCHILLING"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
BEL_1201 .STRING "1 CREDIT / 2OF"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
BEL_2201 .STRING "2 CREDITS / 2OF"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
BEL_3201 .STRING "3 CREDITS / 2OF"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
SWED_S51 .STRING "1 CREDIT / 3 X 1 KRONA"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
SWED_S52 .STRING "2 CREDITS / 5 KRONA"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
NZ_121 .STRING "1 CREDIT / 2 X 20 CENTS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
HF_11 .STRING "1 CREDIT / 1 HFI"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
HF_32 .STRING "3 CREDITS / 2.5 HFI"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
FIN_1 .STRING "1 CREDIT / 1 MARKKA"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
DEN_12
|
|||
|
NOR_12 .STRING "1 CREDIT / 2 X 1 KRONE"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
NOR_35 .STRING "3 CREDITS / 5 X 1 KRONE"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
DEN_35 .STRING "3 CREDITS / 5 KRONE"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
DEN_710 .STRING "7 CREDITS / 2 X 5 KRONE"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
ANT1P25 .STRING "1 CREDIT / 25 CENTS"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
ANT4DOL .STRING "4 CREDITS / 1 GUILDER"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
HUNG2X10
|
|||
|
.STRING "1 CREDIT / 2 X 10 FORINT",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
HUNG2X20
|
|||
|
.STRING "3 CREDITS / 2 X 20 FORINT",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
.ENDIF
|
|||
|
|
|||
|
**************************************************************************
|
|||
|
* *
|
|||
|
* COIN SLOT TITLES *
|
|||
|
* *
|
|||
|
**************************************************************************
|
|||
|
|
|||
|
USA_ESLOT
|
|||
|
.STRING "$1.00 .10 .25 .5 $1.00 ",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
FRANCE_ESLOT
|
|||
|
.STRING "1F 5F 10F ",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
GERMAN_ESLOT
|
|||
|
.STRING " 5DM 2DM 1DM ",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
BELGIUM_ESLOT
|
|||
|
.STRING " 50F 20F 5F ",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
USA_QQ .STRING "25 CENT 25 CENT"
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
USA_QDQ
|
|||
|
.STRING ".25 .25 $1.00",0
|
|||
|
.EVEN
|
|||
|
.ENDIF
|
|||
|
|
|||
|
GERMAN_15 .STRING "1 DM 5 DM "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
FRENCH510 .STRING "5F 10F "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
FRENCH1F5F
|
|||
|
.STRING "1F 5F ",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
CAN_QD
|
|||
|
.STRING ".25 $1.00 $1.00",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
SWISS15
|
|||
|
.STRING "1F 5F ",0
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
ITALYLIRE .STRING "500L 500L "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
UK2050 .STRING "L1.00 50 P "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
UK_ELEC .STRING "L1.00 20P 50P 10P "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
UK_CCU .STRING "CCU ON LEFT SLOT "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
PESETA100
|
|||
|
.STRING "100 P 500 P ",0
|
|||
|
.EVEN
|
|||
|
AUST20C
|
|||
|
.STRING ".20 $ 1.00 ",0
|
|||
|
.EVEN
|
|||
|
|
|||
|
.ENDIF
|
|||
|
|
|||
|
YEN100 .STRING "100Y 100Y "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
SHILL510 .STRING "5 10 SCHILLING "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
FRANC20 .STRING "20F 20F "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
KRONA5 .STRING "1 KR 5 KR "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
NZ20 .STRING ".20 .20 "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
HFSLOT .STRING "1HFI 2.5HFI "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
MKSLOT .STRING "1 1 MARKKA "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
NKRSLOT .STRING "1 KR 1 KR "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
DKRSLOT .STRING "1 KR 5 KR "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
ANTSLOT .STRING ".25 1 GUILDER "
|
|||
|
.BYTE 0
|
|||
|
.EVEN
|
|||
|
|
|||
|
HUNGSLOT
|
|||
|
.STRING "10 20 FORINT ",0
|
|||
|
.EVEN
|
|||
|
.ENDIF
|
|||
|
|
|||
|
;;CP_CX EQU 200
|
|||
|
;;CP_11 EQU 11
|
|||
|
;;CP_13 EQU 13
|
|||
|
;;CP_23 EQU 23
|
|||
|
;;CP_33 EQU 33
|
|||
|
|
|||
|
|
|||
|
OCOP MESS_MAC RD7FONT,SPACING07,CP_CX,CP_11,ROBO_YELLOW,STRCNRM,0
|
|||
|
.STRING "1 COIN / 1 PLAY"
|
|||
|
.BYTE 0,0
|
|||
|
.EVEN
|
|||
|
|
|||
|
USA_ELECTRONIC:
|
|||
|
MESS_MAC RD7FONT,SPACING07,CP_CX,CP_13,ROBO_YELLOW,STRCNRM,0
|
|||
|
.STRING "1 CREDIT / 25 CENTS"
|
|||
|
.STRING "\n4 CREDITS / 1 DOLLAR",0,1
|
|||
|
.EVEN
|
|||
|
|
|||
|
FRANCE_ELECTRONIC:
|
|||
|
MESS_MAC RD7FONT,SPACING07,CP_CX,CP_13,ROBO_YELLOW,STRCNRM,0
|
|||
|
.STRING "1 CREDIT / 25 CENTS"
|
|||
|
.STRING "\n4 CREDITS / 1 DOLLAR",0,1
|
|||
|
.EVEN
|
|||
|
|
|||
|
GERMAN_ELECTRONIC:
|
|||
|
MESS_MAC RD7FONT,SPACING07,CP_CX,CP_13,ROBO_YELLOW,STRCNRM,0
|
|||
|
.STRING "1 CREDIT / 1 DM"
|
|||
|
.STRING "\n6 CREDITS / 5 DM",0,1
|
|||
|
.EVEN
|
|||
|
|
|||
|
.IF FULLPRICE
|
|||
|
BELGIUM_ELECTRONIC:
|
|||
|
MESS_MAC RD7FONT,SPACING07,CP_CX,CP_13,ROBO_YELLOW,STRCNRM,0
|
|||
|
.STRING "1 CREDIT / 20 FR"
|
|||
|
.EVEN
|
|||
|
|
|||
|
UK_ELECTRONIC1
|
|||
|
MESS_MAC RD7FONT,SPACING07,CP_CX,CP_13,ROBO_LF,STRCNRM,0
|
|||
|
.STRING "1 CREDIT / 50 P"
|
|||
|
.BYTE 0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,CP_CX,CP_33,ROBO_LF,STRCNRM,0
|
|||
|
.STRING "3 CREDITS / "
|
|||
|
.BYTE FONT_EPOUND
|
|||
|
.STRING "1.00"
|
|||
|
.BYTE 0,0
|
|||
|
.EVEN
|
|||
|
UK_ELECTRONIC2
|
|||
|
MESS_MAC RD7FONT,SPACING07,CP_CX,CP_13,ROBO_LF,STRCNRM,0
|
|||
|
.STRING "1 CREDIT / 50 P"
|
|||
|
.BYTE 0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,CP_CX,CP_33,ROBO_LF,STRCNRM,0
|
|||
|
.STRING "2 CREDITS / "
|
|||
|
.BYTE FONT_EPOUND
|
|||
|
.STRING "1.00"
|
|||
|
.BYTE 0,0
|
|||
|
.EVEN
|
|||
|
UK_ELECTRONIC3
|
|||
|
MESS_MAC RD7FONT,SPACING07,CP_CX,CP_13,ROBO_LF,STRCNRM,0
|
|||
|
.STRING "1 CREDIT / 30 P"
|
|||
|
.BYTE 0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,CP_CX,CP_23,ROBO_LF,STRCNRM,0
|
|||
|
.STRING "2 CREDITS / 50 P"
|
|||
|
.BYTE 0,1
|
|||
|
.EVEN
|
|||
|
MESS_MAC RD7FONT,SPACING07,CP_CX,CP_33,ROBO_LF,STRCNRM,0
|
|||
|
.STRING "5 CREDITS / "
|
|||
|
.BYTE FONT_EPOUND
|
|||
|
.STRING "1.00"
|
|||
|
.BYTE 0,0
|
|||
|
.EVEN
|
|||
|
.ENDIF
|
|||
|
|
|||
|
|
|||
|
|
|||
|
*
|
|||
|
* THE FOLLOWING 2 MESSAGES ARE GENERIC AND WILL
|
|||
|
* BE DISPLAYED IF THE MODE MATCHES AND NO
|
|||
|
* APPROPRIATE MESSAGE EXISTS
|
|||
|
*
|
|||
|
* THIS IS FOR THIS BEING THE ONLY MESSAGE DISPLAYED ON
|
|||
|
* THE SCREEN
|
|||
|
*
|
|||
|
TWO_TO_START
|
|||
|
MESS_MAC RD15FONT,SPACING20,CP_CX,CP_12,ROBO_LASER,STRCNRM,0
|
|||
|
.byte "2 CREDITS TO START",0,1
|
|||
|
.even
|
|||
|
MESS_MAC RD15FONT,SPACING20,CP_CX,CP_22,ROBO_LASER,STRCNRM,0
|
|||
|
.byte "1 CREDIT TO CONTINUE",0,0
|
|||
|
.even
|
|||
|
|
|||
|
TWO_TO_START_2C
|
|||
|
MESS_MAC RD15FONT,SPACING20,CP_CX,CP_12,ROBO_LASER,STRCNRM,0
|
|||
|
.byte "2 CREDITS TO START",0,1
|
|||
|
.even
|
|||
|
MESS_MAC RD15FONT,SPACING20,CP_CX,CP_22,ROBO_LASER,STRCNRM,0
|
|||
|
.byte "2 CREDITS TO CONTINUE",0,0
|
|||
|
.even
|
|||
|
*
|
|||
|
* THIS IS FOR LINES TWO AND 3 WITH AN ADDITIONAL LINE ABOVE
|
|||
|
*
|
|||
|
|
|||
|
TWO_TS MESS_MAC RD15FONT,SPACING20,CP_CX,CP_23,ROBO_LASER,STRCNRM,0
|
|||
|
.byte "2 CREDITS TO START",0,1
|
|||
|
.even
|
|||
|
MESS_MAC RD15FONT,SPACING20,CP_CX,CP_33,ROBO_LASER,STRCNRM,0
|
|||
|
.byte "1 CREDIT TO CONTINUE",0,0
|
|||
|
.even
|
|||
|
|
|||
|
TWO_TP MESS_MAC RD15FONT,SPACING20,CP_CX,CP_22,ROBO_LASER,STRCNRM,0
|
|||
|
.byte "2 CREDITS PER PLAYER",0,0
|
|||
|
.even
|
|||
|
|
|||
|
TWO_CRED_PER_PLAYER
|
|||
|
MESS_MAC RD15FONT,SPACING20,CP_CX,CP_11,ROBO_LASER,STRCNRM,0
|
|||
|
.byte "2 CREDITS PER PLAYER",0,0
|
|||
|
.even
|
|||
|
|
|||
|
MAX_C_M MESS_MAC RD15FONT,SPACING20,CP_CX,CP_11,ROBO_LF,STRCNRM,0
|
|||
|
.byte "MAXIMUM CREDITS!",0,0
|
|||
|
.even
|
|||
|
|
|||
|
******************************************************************************
|
|||
|
|
|||
|
.end
|
|||
|
|
|||
|
|