Demolition

Type: Program
Platform(s): TS 2068

Get them before they get you.

Appears on

Source Code

   10 BEEP .5,10
  100 POKE 23658,0
  110 GO SUB 9000
  120 PAPER 7: INK 0: BORDER 7: CLS 
  200 PRINT #1;AT 0,0; FLASH 1;TAB 8;"PRESS ANY KEY",
  210 PAUSE 0
  220 LET s=0: LET b=0: LET c=-1: LET a=48
  300 GO TO 8000
  500 INK 0: PAPER 6: BORDER 7: CLS 
  510 GO SUB 7000
  520 PRINT #1;AT 0,0;"SCORE:0","HIGH SCORE:";s(d*2-1)
 1000 LET r=INT (RND*10+1)
 1005 LET dx=(r>5)-(r<=5): LET x=31*(r<=5)
 1010 LET x1=x
 1020 LET k$=INKEY$
 1030 LET x=x+dx
 1040 IF x>31 OR x<0 THEN LET dx=-dx: GO TO 1030
 1050 PRINT AT 0,x;"\c";AT 0,x1;" "
 1060 IF k$<>"" THEN LET b=b+1: GO TO 1100
 1070 GO TO 1010
 1100 IF b<d THEN GO TO 2000
 1105 LET b=0: LET c=c+1: IF c>=10 THEN LET c=0
 1110 IF c=5 THEN LET w$="\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a"
 1115 IF c=0 THEN LET w$=CHR$ 17+CHR$ 6+CHR$ 16+CHR$ 0+CHR$ 6+CHR$ 6
 1120 POKE 23692,255: PRINT #1;AT 0,0,,#2;AT 21,0' PAPER 0; INK INT (RND*6+1);w$;#1;AT 0,0;"SCORE:";s,"HIGH SCORE:";s(d*2-1)
 1125 PRINT AT 0,x;"\c"
 1130 LET t=USR USR "d": IF t<>65535 THEN GO TO 6000
 2000 BEEP .03,12
 2005 LET y=0
 2010 LET y1=y
 2020 LET y=y+1
 2025 IF y>21 THEN PRINT AT y1,x;" ": GO TO 1000
 2030 IF ATTR (y,x)<>a THEN GO TO 3000
 2040 PRINT AT y,x;"\c";AT y1,x;" "
 2050 GO TO 2010
 3000 PRINT AT y1,x;" "
 3010 LET lx=x: LET rx=x
 3020 LET l=ATTR (y,lx)
 3025 LET r=ATTR (y,rx)
 3030 IF l=a AND r=a THEN GO TO 1000
 3035 IF l<>a AND lx<>rx THEN LET s=s+5: BEEP .01,10+x-lx
 3036 IF r<>a THEN LET s=s+5: BEEP .01,10+rx-x
 3037 PRINT #1;AT 0,6;s
 3040 PRINT AT y,lx;" ";AT y,rx;" "
 3050 LET lx=lx-(lx>0): LET rx=rx+(rx<31): LET y=y-1
 3060 IF y<0 THEN GO TO 1000
 3070 GO TO 3020
 6000 FOR i=0 TO 31-t
 6010 PRINT INK 0; PAPER 7; BRIGHT 1;AT 0,i; OVER 0;"\b"
 6020 BEEP .05,31-i
 6030 NEXT i
 6040 PRINT AT 0,i; BRIGHT 1; OVER 1; INK 8; FLASH 1;" "
 6500 LET x=d*2: LET y=x-1
 6505 IF s<s(x) THEN GO TO 6540
 6508 POKE 23658,8
 6510 INPUT PAPER 7; INK 0;AT 0,0;"You made it to the SCORE TABLE","ENTER NAME: ?                   ",AT 1,12; LINE w$
 6512 IF LEN w$>10 THEN PRINT AT 7,4; FLASH 1;"ONLY 10 Letters PLEASE!": GO TO 6510 
 6515 POKE 23658,0
 6520 IF s>=s(y) THEN LET s$(x)=s$(y): LET s(x)=s(y): LET s$(y)=w$: LET s(y)=s: GO TO 6540
 6530 IF s>=s(x) THEN LET s$(x)=w$: LET s(x)=s
 6540 CLS 
 6550 PRINT AT 1,10;"HIGH SCORES:"
 6560 PRINT AT 4,0;
 6570 FOR i=1 TO 5: PRINT TAB 5;"LEVEL ";i''': NEXT i
 6580 PRINT AT 3,0
 6590 FOR i=1 TO 10 STEP 2: PRINT OVER 1;TAB 14; BRIGHT 1;s$(i);TAB 25;s(i)''': NEXT i
 6595 PRINT AT 4,0
 6600 FOR i=2 TO 10 STEP 2: PRINT OVER 1;TAB 14;s$(i);TAB 25;s(i)''': NEXT i
 6710 GO TO 200
 7000 LET w$="\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a"
 7010 FOR i=17 TO 21
 7020 PRINT PAPER 0; INK INT (RND*6+1);AT i,0;w$
 7030 NEXT i
 7040 RETURN 
 8000 PAPER 7: INK 0: BORDER 7: CLS 
 8010 PRINT AT 1,11; FLASH 1; BRIGHT 1; INK 0; PAPER 7;"DEMOLITION"
 8020 PRINT ''"  Try to gain points as you"''" DEMOLISH the advancing wall"''"    before it reaches you."
 8030 PRINT '''"     To launch the ball-"
 8040 PRINT '"      PRESS the SPACEBAR"
 8050 PRINT #1;AT 0,0; INK 0; PAPER 6;"SELECT DIFFICULTY ? (1-5):1=HARD"
 8055 LET w$=INKEY$
 8060 IF w$<"1" OR w$>"5" THEN GO TO 8050
 8070 LET d=VAL w$(1)
 8080 PRINT #1;AT 0,0; INK 0; PAPER 6;"  PRESS ANY KEY TO START GAME   ": PAUSE 1: PAUSE 0
 8090 GO TO 500
 9000 RESTORE 9200: FOR i=USR "a" TO USR "d"+17: READ x: POKE i,x: NEXT i
 9010 DIM s$(10,10): DIM s(10)
 9020 FOR i=1 TO 10: LET s$(i)="..........": NEXT i
 9030 RETURN 
 9200 DATA 0,126,126,126,126,126,126,0
 9210 DATA 96,24,06,255,255,06,24,96
 9212 DATA 24,36,24,60,126,126,60,24
 9300 DATA 33,0,65,1,32,0,126,254,126,200,35,13,32,-8,1,255,255,201
 9998 CLEAR : SAVE "Demolition" LINE 1: BEEP .2,15

People

No people associated with this content.

Scroll to Top