Towering Inferno

Date: 1985
Type: Program
Platform(s): TS 2068

Fire rages through a block of flats, try to catch the people as they jump. Move the rescue boat to the right with key 0, and left with key 1.

Appears on

Library tape of the Indiana Sinclair Timex User’s Group.

Source Code

   10 REM INFERNO
   20 PAPER 6: BORDER 6: INK 0
   30 GO SUB 700
   40 PAPER 5: CLS 
   50 GO SUB 820
   60 GO SUB 880
   70 INK 0: PRINT AT 1,23;"SAVES ";AT 1,1;"POINTS"
   80 LET A$="\b\c\d"
   90 LET p=0: LET s=p: LET d=14
  100 PRINT PAPER 2; INK 0;AT 16,14;"\f"
  110 PRINT AT 19,d; PAPER 0; INK 7;a$
  120 FOR r=1 TO 7
  130 FOR x=1 TO 10
  140 PAUSE 25
  150 LET c=2*INT (RND*15)+1
  160 IF c=1 THEN LET b=4: LET t=50
  170 IF c=3 THEN LET b=13: LET t=150
  180 IF c=5 THEN LET b=9: LET t=75
  190 IF c=7 THEN LET b=6: LET t=50
  200 IF c=9 THEN LET b=10: LET t=50
  210 IF c=11 THEN LET b=3: LET t=25
  220 IF c=13 THEN LET b=9: LET t=25
  230 IF c=15 THEN LET b=8: LET t=25
  240 IF c=17 THEN LET b=5: LET t=25
  250 IF c=19 THEN LET b=7: LET t=25
  260 IF c=21 THEN LET b=4: LET t=25
  270 IF c=23 THEN LET b=11: LET t=50
  280 IF c=25 THEN LET b=5: LET t=25
  290 IF c=27 THEN LET b=9: LET t=75
  300 IF c=29 THEN LET b=13: LET t=150
  310 IF c=31 THEN LET b=8: LET t=100
  320 FOR b=b TO 18
  330 IF b=18 AND c=d+1 THEN LET s=s+1: PRINT PAPER 6; INK 0;AT 1,29;s: LET p=p+t: PRINT PAPER 6; INK 0;AT 1,8;p: BEEP .1,30
  340 PAPER 0: INK 7: PRINT AT b,c;"\a"
  350 IF INKEY$="0" AND d<29 THEN GO SUB 520
  360 BEEP .02,b
  370 IF INKEY$="1" AND d>0 THEN GO SUB 560
  380 IF b=18 AND c<>d+1 THEN PRINT INK 7; PAPER 1;AT 20,c;"\f": BEEP .1,-15: PRINT AT 20,c; PAPER 1; INK 7;" "
  390 INK 0: PRINT AT b,c;"\::"
  400 NEXT b
  410 NEXT x
  420 IF r=1 THEN LET z=24
  430 IF r=2 THEN LET z=15
  440 IF r=3 THEN LET z=11
  450 IF r=4 THEN LET z=13
  460 IF r=5 THEN LET z=7
  470 IF r=6 THEN LET z=4
  480 IF r=7 THEN LET z=3
  490 GO SUB 600
  500 NEXT r
  510 GO TO 640
  520 REM **MOVE RIGHT**
  530 PRINT PAPER 0;AT 19,d;"    "
  540 LET d=d+1
  550 PAPER 0: INK 7: PRINT AT 19,d;a$: RETURN 
  560 REM **MOVE LEFT**
  570 PRINT PAPER 0;AT 19,d;"     "
  580 LET d=d-1
  590 PAPER 0: INK 7: PRINT AT 19,d;a$: RETURN 
  600 REM **FIRE**
  610 FOR w=1 TO z
  620 READ x,y
  630 PRINT PAPER 2; INK 0;AT x,y;"\f": NEXT w: RETURN 
  640 PRINT INK 0; PAPER 6; FLASH 1;AT 1,8;p: FOR r=1 TO 10: LET t=8: FOR n=1 TO 5: BEEP .05,t: LET t=t+1: NEXT n: NEXT r: BEEP 2,-12
  650 PRINT INK 7; PAPER 1;AT 20,1;"**FINISH** Another go? (Y OR N)"
  660 PAUSE NOT PI
  670 LET x$=INKEY$
  680 IF x$="y" OR x$="Y" THEN PAPER 6: CLS : RUN 30
  690 CLS : PRINT AT 10,5; PAPER 6; INK 1;"THANK YOU FOR PLAYING": STOP 
  700 REM INSTRUCTIONS
  710 CLS : PAPER 6: INK 2: PRINT AT 5,8;"TOWERING INFERNO"
  720 INK 0: PRINT AT 7,10; "DAVID PEAT"
  730 PRINT AT 10,2;"Fire rages through a block of   flats,try to catch the people   as they jump. Move the rescue   boat to the right with key 0,   and left with key 1"
  740 PRINT #0;"    Press any key to continue"
  750 GO SUB 810
  760 PAPER 6: INK 0: PRINT AT PI,2;"The fire rises through the      building one level for every    10 jumps until the game ends    when the fire reaches the top        Points are awarded for     the difficulty of the catch.    25 Points for high and centr-   al windows, 50 Points for       left or right of center,and     75,100,150 for low and edge     windows"  
  770 PRINT #0;"    Press any key to continue"
  780 GO SUB 810
  790 PRINT AT PI,2;"The falls are from random        positions making it a gamble    to try to catch only those      falling from edge windows.      A catch must be in the middle   of the boat." 
  800 PRINT #0;"    PRESS ANY KEY TO START"
  810 PAUSE NOT PI: CLS : RETURN 
  820 REM Graphics
  840 FOR n=0 TO 55
  850 READ l: POKE USR "\a"+n,l
  860 NEXT n: RETURN 
  870 DATA 60,189,153,126,24,l,36,66,56,l,17,58,188,251,l,63,0,l,l,l,l,l,255,l,0,l,l,l,1,195,254,252,255,l,195,l,l,l,l,255,34,149,66,36,129,90,36,24,0,l,60,l,l,l,l,0
  880 REM Building
  890 LET b$="\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::"
  900 LET c$="\e\::\e\::\e\::\e\::\e\::\e\::\e\::\e\::\e\::\e\::\e\::\e\::\e\::\e\::\e\::\e\::"
  910 LET d$="\e\e"
  920 PRINT PAPER 5; INK 1;AT 20,0;"\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::"
  930 PRINT PAPER 5; INK 1;"\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::\::"
  940 PAPER 5: INK 0
  950 PRINT AT 19,0;b$;AT 18,0;b$
  960 PRINT AT 17,0;b$;AT 16,0;c$
  970 PRINT AT 15,0;b$;AT 14,0;c$
  980 PRINT AT 13,0;b$( TO PI);AT 13,PI;c$( TO 2);AT 13,5;b$( TO 24);AT 13,29;c$( TO 2);AT 13,31;b$(1)
  990 PRINT AT 12,0;c$( TO 2);AT 12,4;c$(5 TO 22);AT 12,23;c$(2 TO 7);AT 12,31;b$(1)
 1000 PRINT AT 11,0;b$( TO 2);AT 11,4;b$( TO 18);AT 11,23;c$( TO 2);AT 11,25;b$( TO 4);AT 11,31;b$(1)
 1010 PRINT AT 10,0;c$( TO 2);AT 10,4;c$( TO 18);AT 10,24;c$( TO 5);AT 10,31;b$(1)
 1020 PRINT AT 9,0;b$( TO 2);AT 9,4;c$(2 TO 4);AT 9,7;b$( TO 2);AT 9,10;b$( TO 2);AT 9,12;c$(2 TO 4);AT 9,15;b$( TO 7);AT 9,24;b$( TO PI);AT 9,27;c$( TO 2);AT 9,31;b$(1)
 1030 PRINT AT 8,0;c$( TO 2);AT 8,7;c$(2 TO PI);AT 8,10;c$( TO PI);AT 8,15;d$;AT 8,17;c$(2 TO 6);AT 8,24;c$( TO 2);AT 8,31;d$(1)
 1040 PRINT AT 7,0;b$( TO 2);AT 7,7;b$( TO 2);AT 7,10;b$( TO PI);AT 7,17;b$( TO 2);AT 7,19;c$( TO 2);AT 7,21;b$(1);AT 7,24;b$( TO 2);
 1050 PRINT AT 6,0;c$( TO 2);AT 6,7;d$;AT 6,10;c$( TO PI);AT 6,17;c$(2 TO PI);AT 6,20;c$( TO 2);AT 6,24;c$( TO 2);
 1060 PRINT AT 5,0;b$( TO 2);AT 5,10;b$( TO PI);AT 5,17;c$( TO 2);AT 5,20;b$( TO 2);AT 5,24;c$(2 TO PI);
 1070 PRINT AT 4,1;d$(1);AT 4,10;c$( TO PI);AT 4,20;d$
 1080 PRINT AT 3,10;c$(2 TO 4)
 1090 RETURN 
 1100 REM ** DATA for Fire**
 1110 DATA 16,0,16,2,14,2,16,4,16,6,14,6,16,8,16,10,14,10,16,12,16,14,14,14,16,16,16,18,14,18,16,20,16,22,14,22,16,24,16,26,14,26,16,28,16,30,14,30
 1120 DATA 14,0,14,4,12,4,14,8,12,8,14,12,12,12,14,16,12,16,14,20,12,20,14,24,12,24,14,28,12,28
 1130 DATA 12,0,12,6,10,6,12,10,10,10,12,14,10,14,12,18,10,18,12,26,10,26
 1140 DATA 10,0,10,4,10,8,8,8,10,12,8,12,10,16,8,16,10,20,8,20,10,24,8,24,10,28
 1150 DATA 8,0,6,8,8,10,6,12,8,18,6,20,8,31
 1160 DATA 6,0,6,10,6,18,6,24
 1170 DATA 4,10,4,12,4,20
 1180 SAVE "INFERNO" LINE 1

People

No people associated with this content.

Scroll to Top