home *** CD-ROM | disk | FTP | other *** search
- 10 REM PUT OUT THE FIRE BY SOLVEING THE MATH PROBLEMS.
- 20 POKE56,48:POKE55,0:CLR:POKE53280,15:POKE53281,15
- 30 PRINT"[147][144] PUT OUT THE FIRE BY SOLVEING THE"
- 40 PRINTTAB(10)"MATH PROBLEMS. FUN!"
- 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 DATA120,165,1,41,251,133,1,169,208,133
- 90 DATA252,169,48,133,254,169,0,133,251,133
- 100 DATA253,162,8,160,0,177,251,145,253,200
- 110 DATA208,249,230,252,230,254,202,208,242,165
- 120 DATA1,9,4,133,1,88,96
- 130 X=0:FORN=12288TO12298:X=X+PEEK(N):NEXT:IFX<>822THENGOSUB1460
- 140 DIMP%(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<TTTHEN1150
- 1160 RETURN
- 1170 REM BURN IT DOWN
- 1180 PRINTLEFT$(D$,22)"OOPS... TOO LONG!!!":POKES+4,129
- 1190 FORN=10TO1STEP-1:POKES+1,210-N*20
- 1200 PRINTLEFT$(D$,N+6)SPC(5)"[129]"BF$:POKES+1,0:NEXT:DE=60:GOSUB1140
- 1210 FORN=20TO0STEP-1:POKES+1,N*10
- 1220 PRINTLEFT$(D$,21-N)SPC(5)" ";:NEXT
- 1230 PRINTLEFT$(D$,17)SPC(5)"[152] [169][144] [152][223][146]"
- 1240 PRINTLEFT$(D$,18)SPC(5)"[152][169][144] [152] [223]"
- 1250 PRINTLEFT$(D$,19)SPC(5)"[144][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
- 1260 FORN=1TO8:X=INT(RND(1)*10)+8:Y=INT(RND(1)*11)+6
- 1270 PRINTLEFT$(D$,Y)SPC(X)"@":DE=10:GOSUB1140:NEXT:RETURN
- 1280 REM ALL 10
- 1290 POKES+4,65:FORN=1TOLEN(TU$)/2:P$=MID$(TU$,(N-1)*2+1,2)
- 1300 P=VAL(LEFT$(P$,1)):DE=VAL(RIGHT$(P$,1))*3
- 1310 P=P%(P):P1=INT(P/256):P2=P-256*P1
- 1320 POKES,P2:POKES+1,P1:FORP=1TODE*20:NEXT
- 1330 POKES,0:POKES+1,0:FORP=1TODE:NEXT:NEXT:POKES+4,64
- 1340 PRINTLEFT$(D$,5)SPC(20)""B$
- 1350 PRINTLEFT$(D$,6)SPC(21)"YAY!!!":POKES+4,129:FORN=0TO15STEP.1
- 1360 POKE54296,N:POKES+1,10:NEXT:FORN=15TO1STEP-.05:POKE54296,N:NEXT
- 1370 POKES+1,0:POKES+4,128:POKE54296,15:RETURN
- 1380 REM SHOW LEVEL
- 1390 PRINT""SPC(20)"[149]LEVEL:";
- 1400 IFWH$="1"THENPRINT" [129] BEGINNER "
- 1410 IFWH$="2"THENPRINT" [129] INTERMED. "
- 1420 IFWH$="3"THENPRINT" [129] EINSTEIN "
- 1430 PRINT""SPC(20)"[149]TIME LIMIT:";
- 1440 PRINT"[129]"WH"[157] SEC. ":RETURN
- 1450 REM DEFINE SPRITES & 2 CHARS
- 1460 FORN=0TO64*2-1:READA:POKE832+N,A:NEXT
- 1470 SYS679:FORN=0TO15:READA:POKE12288+1024+N,A:NEXT:RETURN
- 1490 DATA0,30,0,0,63,0,0,127
- 1500 DATA224,0,18,16,0,34,0,0
- 1510 DATA18,0,0,12,0,0,30,0
- 1520 DATA0,63,0,7,255,0,7,239
- 1530 DATA0,7,223,0,0,127,0,0
- 1540 DATA127,0,0,127,0,0,127,0
- 1550 DATA0,54,0,0,54,0,0,54
- 1560 DATA0,0,54,0,0,126,0,184
- 1570 DATA0,0,0,0,0,0,0,0
- 1580 DATA0,0,0,0,0,0,0,0
- 1590 DATA0,0,0,0,0,0,0,0
- 1600 DATA0,0,0,0,0,0,30,0
- 1610 DATA0,50,255,254,98,85,84,194
- 1620 DATA85,84,255,255,254,255,137,255
- 1630 DATA255,186,255,243,154,231,204,185
- 1640 DATA153,18,255,164,12,0,24,0
- 1650 REM CHAR DATA
- 1660 DATA146,214,215,247,247,254,252,060
- 1670 DATA255,129,129,129,129,129,129,255
-