NORMEM == 4000H FIRSTC == 2000H SCREEN == 0 BYTEPL == 40 BITSPL == 160 STIMER == 200H CTIMER == 203H FNTSYS == 206H FNTSML == 20DH ALKEYS == 214H MENUST == 218H MXSCR == 21EH NOPLAY == 228H NOGAME == 235H PSWSGN == 7 PSWZRO == 6 PSWPV == 2 PSWCY == 0 GSBTIM == 0 GSBSCR == 1 GSBEND == 7 VBMR == 0 VBSTAT == 1 VBTIMB == 2 VBDXL == 3 VBDXH == 4 VBXL == 5 VBXH == 6 VBXCHK == 7 VBDYL == 8 VBDYH == 09H VBYL == 0AH VBYH == 0BH VBYCHK == 0CH VBOAL == 0DH VBOAH == 0EH VBDCL == 0 VBDCH == 1 VBCL == 2 VBCH == 3 VBCCHK == 4 VBSACT == 7 VBBLNK == 6 VBCLMT == 0 VBCREV == 1 VBCLAT == 3 FTBASE == 0 FTFSX == 1 FTFSY == 2 FTBYTE == 3 FTYSIZ == 4 FTPTL == 5 FTPTH == 6 MRFLOP == 6 MRXOR == 5 MROR == 4 MRXPND == 3 MRROT == 2 MRSHFT == 03H CHTRIG == 4 CHRIGH == 3 CHLEFT == 2 CHDOWN == 1 CHUP == 0 CBIYL == 0 CBIYH == 1 CBIXL == 2 CBIXH == 3 CBE == 4 CBD == 5 CBC == 6 CBB == 7 CBFLAG == 8 CBA == 9 CBL == 0AH CBH == 0BH SNUL == 0 SCT0 == 1 SCT1 == 2 SCT2 == 3 SCT3 == 4 SCT4 == 5 SCT5 == 6 SCT6 == 7 SCT7 == 8 SF0 == 9 SF1 == 0AH SF2 == 0BH SF3 == 0CH SF4 == 0DH SF5 == 0EH SF6 == 0FH SF7 == 10H SSEC == 11H SKYD == 13H SKYU == 12H SP0 == 1CH SP1 == 1DH SP2 == 1EH SP3 == 1FH ST0 == 14H SJ0 == 15H ST1 == 16H SJ1 == 17H ST2 == 18H SJ2 == 19H ST3 == 1AH SJ3 == 1BH COL0R == 0 COL1R == 1 COL2R == 2 COL3R == 3 COL0L == 4 COL1L == 5 COL2L == 6 COL3L == 7 COLBX == 0BH HORCB == 9 VERBL == 0AH TONMO == 10H TONEA == 11H TONEB == 12H TONEC == 13H VIBRA == 14H VOLAB == 16H VOLC == 15H VOLN == 17H SNDBX == 18H INFBK == 0DH INMOD == 0EH INLIN == 0FH CONCM == 8 MAGIC == 0CH XPAND == 19H INTST == 8 VERAF == 0EH HORAF == 0FH SW0 == 10H SW1 == 11H SW2 == 12H SW3 == 13H POT0 == 1CH POT1 == 1DH POT2 == 1EH POT3 == 1FH KEY0 == 14H KEY1 == 15H KEY2 == 16H KEY3 == 17H UPISTR == 0 INTPC == UPISTR XINTC == INTPC+2 RCALL == XINTC+2 MCALL == RCALL+2 MRET == MCALL+2 MJUMP == MRET+2 SUCK == MJUMP+2 SCHEDR == SUCK ACTINT == SCHEDR+2 DECCTS == ACTINT+2 MUZAK == DECCTS+2 BMUSIC == MUZAK EMUSIC == BMUSIC+2 SCRSTR == EMUSIC+2 SETOUT == SCRSTR COLSET == SETOUT+2 FILL == COLSET+2 RECTAN == FILL+2 VWRITR == RECTAN+2 WRITR == VWRITR+2 WRITP == WRITR+2 WRIT == WRITP+2 WRITA == WRIT+2 VBLANK == WRITA+2 BLANK == VBLANK+2 SAVE == BLANK+2 RESTOR == SAVE+2 SCROLL == RESTOR+2 CHRDIS == SCROLL+2 STRDIS == CHRDIS+2 DISNUM == STRDIS+2 RELABS == DISNUM+2 RELAB1 == RELABS+2 VECTC == RELAB1+2 VECT == VECTC+2 HUMANR == VECT+2 KCTASC == HUMANR SENTRY == KCTASC+2 DOIT == SENTRY+2 DOITB == DOIT+2 PIZBRK == DOITB+2 MENU == PIZBRK+2 GETPAR == MENU+2 GETNUM == GETPAR+2 PAWS == GETNUM+2 DISTIM == PAWS+2 INCSCR == DISTIM+2 MATH == INCSCR+2 INDEXN == MATH STOREN == INDEXN+2 INDEXW == STOREN+2 INDEXB == INDEXW+2 MOVE == INDEXB+2 SHIFTU == MOVE+2 BCDADD == SHIFTU+2 BCDSUB == BCDADD+2 BCDMUL == BCDSUB+2 BCDDIV == BCDMUL+2 BCDCHS == BCDDIV+2 BCDNEG == BCDCHS+2 DADD == BCDNEG+2 DSMG == DADD+2 DABS == DSMG+2 NEGT == DABS+2 RANGED == NEGT+2 QUIT == RANGED+2 SETB == QUIT+2 SETW == SETB+2 MSKTD == SETW+2 ; MUSIC NOTE VALUES G0 = 253 GS0 = 238 A0 = 225 AS0 = 212 B0 = 200 C1 = 189 CS1 = 178 D1 = 168 DS1 = 159 E1 = 150 F1 = 141 FS1 = 133 G1 = 126 GS1 = 119 A1 = 112 AS1 = 106 B1 = 100 C2 = 94 CS2 = 89 D2 = 84 DS2 = 79 E2 = 74 F2 = 70 FS2 = 66 G2 = 62 GS2 = 59 A2 = 55 AS2 = 52 B2 = 49 C3 = 46 CS3 = 44 D3 = 41 DS3 = 39 E3 = 37 F3 = 34 FS3 = 32 G3 = 31 GS3 = 29 A3 = 27 AS3 = 26 B3 = 24 C4 = 23 CS4 = 21 D4 = 20 DS4 = 19 E4 = 18 F4 = 17 FS4 = 16 G4 = 15 GS4 = 14 A4 = 13 C5 = 11 CS5 = 10 DS5 = 9 F5 = 8 G5 = 7 A5 = 6 C6 = 5 DS6 = 4 G6 = 3 C7 = 2 G7 = 1 G8 = 0 ; MASTER OSCILATOR OFFSETS OB0 = 254 OC0 = 241 OD1 = 214 OE1 = 191 OF1 = 180 OG1 = 160 OA1 = 143 OA2 = 71 OA3 = 35 OA4 = 17 OA5 = 8 URINAL = 0FFFH WASTER = URINAL ; ** LOU HARPS CLEAN AND WHOLESOME TAG ** ; THE FOLLOWING ORG SHOULD BE SET TO THE VALUE OF ; THE TAG 'SYSRAM', THIS WILL CAUSE SYSTEM RAM ; TO RESIDE AT THE HIGHEST POSSIBLE ADDRESS .LOC 4FC8H .BLKB 6 ; GOT SOME LEFT STILL BEGRAM = $ ; USED BY MUSIC PROCESSOR MUZPC: .BLKB 2 ; MUSIC PROGRAM COUNTER MUZSP: .BLKB 2 ; MUSIC STACK POINTER PVOLAB: .BLKB 1 ; PRESET VOLUME FOR TONES A AND B PVOLMC: .BLKB 1 ; PRESET VOLUME FOR MASTER OSC AND TONE C VOICES: .BLKB 1 ; MUSIC VOICES ; COUNTER TIMERS (USED BY DECCTS,ACTINT,CTIMER) CT0: .BLKB 1 ; COUNTER TIMER 0 CT1: .BLKB 1 ; 1 CT2: .BLKB 1 ; 2 CT3: .BLKB 1 ; 3 CT4: .BLKB 1 ; 4 CT5: .BLKB 1 ; 5 CT6: .BLKB 1 ; 6 CT7: .BLKB 1 ; 7 ; USED BY SENTRY TO TRACK CONTROLS CUNT: .BLKB 1 ;COUNTER UPDATE&NUMBER TRACKING SEMI4S: .BLKB 1 ; FLAG BITS OPOT0: .BLKB 1 ; POT 0 TRACKING OPOT1: .BLKB 1 ; POT 1 TRACKING OPOT2: .BLKB 1 ; POT 2 TRACKING OPOT3: .BLKB 1 ; POT 3 TRACKING KEYSEX: .BLKB 1 ; KEYBOARD TRACKING BYTE OSW0: .BLKB 1 ; SWITCH 0 TRACKING OSW1: .BLKB 1 ; SWITCH 1 TRACKING OSW2: .BLKB 1 ; SWITCH 2 TRACKING OSW3: .BLKB 1 ; SWITCH 3 TRACKING COLLST: .BLKB 2 ; COLOR LIST ADDRESS FOR P.B. AND TIMEOUT ; USED BY STIMER DURAT: .BLKB 1 ; NOTE DURAUTION TMR60: .BLKB 1 ; SIXTITHS OF SEC TIMOUT: .BLKB 1 ; BLAKOUT TIMER GTSECS: .BLKB 1 ; GAME TIME SECONDS GTMINS: .BLKB 1 ; GAME TIME MINUTES ; USED BY MENU RANSHT: .BLKB 4 ; RANDOM NUMBER SHIFT REGISTER NUMPLY: .BLKB 1 ; NUMBER OF PLAYERS ENDSCR: .BLKB 3 ; SCORE TO 'PLAY TO' MRLOCK: .BLKB 1 ; MAGIC REGISTER LOCK OUT FLAG GAMSTB: .BLKB 1 ; GAME STATUS BYTE PRIOR: .BLKB 1 ; MUSIC PROTECT FLAG SENFLG: .BLKB 1 ; SENTRY CONTROL SEIZURE FLAG UMARGT: .BLKB 2 USERTB: .BLKB 2 SYSRAM = (5000H-($-BEGRAM+1))