10 REM COPYRIGHT 1988 COMPUTE! PUBLICATIONS, INC. - ALL RIGHTS RESERVED 20 POKE56,48:POKE55,0:CLR:POKE53280,15:POKE53281,15 30 PRINT"[147][144] COPYRIGHT 1988 COMPUTE! PUB., INC." 40 PRINTTAB(10)"ALL RIGHTS RESERVED" 50 FORI=1TO191:READA:X=X+A:NEXT 60 IFX<>17240THENPRINT"ERROR IN DATA STATEMENTS.":STOP 70 RESTORE:FORI=679TO725:READA:POKEI,A:NEXT:X=RND(-TI) 80 DATA 120,165,1,41,251,133,1,169,208,133 90 DATA 252,169,48,133,254,169,0,133,251,133 100 DATA 253,162,8,160,0,177,251,145,253,200 110 DATA 208,249,230,252,230,254,202,208,242,165 120 DATA 1,9,4,133,1,88,96 130 X=0:FORN=12288TO12298:X=X+PEEK(N):NEXT:IFX<>822THENGOSUB1460 140 DIM P%(9):POKE53272,29 150 D$="":TU$="020102019352517271727126" 160 BF$="@@@@@@@@@@@@@@@":FL$="AAAAAAAAAAAAAAA" 170 UU$="WHOOPS...UH-OH... EEK!!! OH, NO! OUCH!!! LOOK OUT!STOP! " 180 UU$=UU$+"DROP! ROLL! HELP!!! " 190 B$="[213][192][192][192][192][192][192][192][192][192][201][157][157][157][157][157][157][157][157][157][157][157][221] [221][157][157][157][157][157][157][157][157][157][157][157][202][192][178][192][192][192][192][192][192][192][203]" 200 B$=B$+"[157][157][157][157][157][157][157][157][157][157][157][192][192][203]" 210 BS$=" [157][157][157][157][157][157][157][157][157][157][157] [157][157][157][157][157][157][157][157][157][157][157] " 220 BS$=BS$+"[157][157][157][157][157][157][157][157][157][157][157] " 230 S=54272:FORN=STO54295:POKEN,0:NEXT:POKEN,15:REM SETUP SOUND 240 POKES+2,0:POKES+3,8:POKES+5,15:POKES+6,255 250 PP=4000:FORN=0TO9:P%(N)=PP:PP=PP*2^(1/12):NEXT 260 REM INIT SPRITES 270 X1=53248:Y1=53249:X2=53250:Y2=53251 280 POKEX1,0:POKEY1,170:POKEX2,0:POKEY2,184:POKE53264,3 290 POKE53287,15:POKE53288,15:POKE53277,1:POKE53271,1:POKE2040,14:POKE2041,13 300 REM PICK TYPE 310 PRINT"[147][144]PICK THE TYPE OF PROBLEMS YOU WANT:" 320 PRINT"(1) ADDITION":PRINT"(2) SUBTRACTION" 330 PRINT"(3) MULTIPLICATION":PRINT"(4) DIVISION":POKE198,0 340 GETT$:IFT$<"1"ORT$>"4"THEN340 350 REM PICK LEVEL 360 PRINT"[147]PICK THE LEVEL OF DIFFICULTY:" 370 PRINT"(1) BEGINNER":PRINT"(2) INTERMEDIATE" 380 PRINT"(3) EINSTEIN":POKE198,0 390 GETWH$:IFWH$<"1"ORWH$>"3"THEN390 400 WH=15+(4-VAL(WH$))*15 410 PRINT"[147]YOU WILL HAVE"WH"SECONDS TO PUT OUT THE FIRE...." 420 PRINT"PRESS RETURN[146] TO START....":POKE198,0 430 GETA$:IFA$<>CHR$(13)THEN430 440 REM MAIN LOOP 450 PRINT"[147]":GOSUB570:TI$="000000":PR=1 460 GOSUB810 470 PRINTLEFT$(D$,6+PR)SPC(9)"[144] "X$" "O$" "Y$" " 480 FL=0:GOSUB980 490 IFFL=1THENGOSUB1180:GOTO520 500 PR=PR+1:IFPR<11THEN460 510 GOSUB1290 520 PRINT"[129]PLAY AGAIN? (Y/N)":POKE198,0 530 GETA$:IFA$="N"THENPOKE53269,0:PRINT"[147]":END 540 IFA$<>"Y"THEN530 550 POKE53269,0:PRINT"[147]":GOTO260 560 REM INIT SCENE 570 GOSUB1390:PRINTLEFT$(D$,17)SPC(5)"[151] A " 580 PRINTLEFT$(D$,7);:FORN=1TO10:PRINTSPC(5)"[151]"FL$:NEXT:DE=60:GOSUB1140 590 FORN=10TO1STEP-1:POKES+4,129:FORZ=4TO20:POKES+1,Z:NEXT 600 PRINTLEFT$(D$,N+6)SPC(5)"[129]"BF$:POKES+1,0:DE=5:GOSUB1140 610 PRINTLEFT$(D$,N+3)SPC(20)"[144]"B$ 620 PRINTLEFT$(D$,N+4)SPC(21)"[149]"MID$(UU$,(11-N-1)*9+1,9):DE=20:GOSUB1140 630 PRINTLEFT$(D$,N+3)SPC(20)BS$:NEXT 640 REM ENTER TRUCK 650 POKES+4,65:POKE53264,3:POKE53269,3:POKEX1,140:POKEX2,140:POKE53287,7 660 POKE53288,2:FORX=400TO200STEP-2:XX=X:IFXX>255THENXX=XX-255 670 IFXX>=254THENPOKE53264,2 680 POKEX1,XX:XX=X+32:IFXX>255THENXX=XX-255 690 IFXX>=254THENPOKE53264,0 700 POKEX2,XX:SN=SN+1:IFSN<7THENPOKES+1,30 710 IFSN>6THENPOKES+1,23 720 IFSN>12THENSN=0 730 NEXT:POKES+1,0 740 REM LADDER UP 750 FORN=18TO7STEP-1:PRINTLEFT$(D$,N)SPC(24)"[152]A":POKES+1,240-10*N:NEXT 760 POKES+1,0:POKES+4,16 770 REM FIREMAN UP 780 POKEX2,208:FORN=164TO92STEP-1:POKEY2,N:POKES+1,180-N:NEXT:POKES+1,0 790 POKES+4,16:RETURN 800 REM GENERATE PROBLEM 810 ONVAL(T$)GOSUB840,860,890,910 820 X$=MID$(STR$(X),2):Y$=MID$(STR$(Y),2):RETURN 830 REM ADDITION 840 GOSUB940:O$="+":AQ$=STR$(X+Y):GOSUB960:RETURN 850 REM SUBTRACTION 860 GOSUB940:IFY>XTHEN860 870 K=X+Y:AQ$=STR$(X):GOSUB960:X=K:O$="-":RETURN 880 REM MULTIPLICATION 890 GOSUB940:O$="X":AQ$=STR$(X*Y):GOSUB960:RETURN 900 REM DIVISION 910 GOSUB940:IFX=0ORY=0THEN910 920 K=X*Y:AQ$=STR$(X):GOSUB960:X=K:O$="/":RETURN 930 REM GENERATE TWO VALUES 940 X=INT(RND(1)*10):Y=INT(RND(1)*10):RETURN 950 REM PRUNE STRING 960 AQ$=MID$(AQ$,2):RETURN 970 REM GET ANSWER 980 AN$="":POKE198,0 990 GETA$:PRINTLEFT$(D$,22)"TIME: "RIGHT$(TI$,2) 1000 IFVAL(RIGHT$(TI$,3))>WHTHENFL=1:RETURN 1010 IFA$=CHR$(13)THEN1040 1020 IFA$<"0"ORA$>"9"THEN990 1030 AN$=AN$+A$:PRINTLEFT$(D$,PR+6)SPC(21)"[129]"AN$:IFLEN(AN$)<3THEN990 1040 IFAN$=AQ$THENGOSUB1090:RETURN 1050 PRINTLEFT$(D$,PR+6)SPC(30)"[144]NO!!!":POKES+4,33:POKES+1,10:DE=20:GOSUB1140 1060 POKES+1,0:POKES+4,32:PRINTLEFT$(D$,PR+6)SPC(30)" " 1070 PRINTLEFT$(D$,PR+6)SPC(21)" ":GOTO980 1080 REM RIGHT 1090 PRINTLEFT$(D$,PR+6)SPC(20)"[154][192][192][192][192]" 1100 POKES+4,129:POKES+1,90:DE=20:GOSUB1140:POKES+4,128:POKES+1,0 1110 PRINTLEFT$(D$,PR+6)SPC(20)" " 1120 PRINTLEFT$(D$,PR+6)SPC(5)"[151]"FL$:POKEY2,PEEK(Y2)+8:RETURN 1130 REM DELAYS 1140 TT=TI 1150 IFTI-DE