Check F1A24F0F
Auto 8224

# Run-time Variables

Var b: Num = 32768
Var c: Num = 201
Var x: Num = 6
Var y: Num = 10
Var l: Num = 58
Var m: Num = 56
Var lev: Num = 0
Var score: Num = 0
Var shotx: Num = 4
Var shoty: Num = 6
Var tick: Num = 1
Var dx: Num = -1
Var b1x: Num = 5
Var b2x: Num = 4
Var b1y: Num = 6
Var b2y: Num = 1
Var b1dx: Num = 1
Var b2dx: Num = 1
Var treex: Num = 16.6399841
Var treey: Num = 4.6538
Var n: NumFOR = 16, 15, 1, 120, 2
Var d: NumFOR = 32876, 32875, 1, 9000, 5
Var a: NumFOR = 3, 2, 1, 9000, 3

# End Run-time Variables

   1 CLEAR 32767: GO SUB 6000: GO SUB 7000: GO SUB 9000
  10 LET lev=0: LET x=15: LET score=0: LET shotx=x: LET shoty=0: LET tick=1
  50 LET dx=0: LET b1x=INT (RND*32): LET b2x=INT (RND*32): LET b1y=15: LET b2y=10: LET b1dx=0: LET b2dx=0
 100 CLS : LET y=20: LET b1y=15: LET b2y=10
 110 PRINT AT y,x; INK 0;"\a";AT y+1,x; INK 1;"\b"
 120 FOR n=1 TO 15+5*lev
 130 LET treex=RND*31: LET treey=RND*18: PRINT AT treey,treex; INK 4;"\c": IF ATTR (treey+1,treex)<>60 THEN PRINT AT treey+1,treex; INK 2;"\d":
 140 NEXT n: PRINT AT y,x;" ";AT y+1,x;" ": LET l=USR 32798: PRINT AT y,x; INK 0;"\a";AT y+1,x; INK 1;"\b"
 200 IF b1x>-1 AND b1y>-1 THEN PRINT AT b1y,b1x; INK 0;"\a";AT b1y+1,b1x; INK 3;"\b": LET b1dx=INT (RND*3)-1: IF b1x+b1dx<0 OR b1x+b1dx>31 THEN LET b1dx=-b1dx
 220 IF b2x>-1 AND b2y>-1 THEN PRINT AT b2y,b2x; INK 0;"\a";AT b2y+1,b2x; INK 3;"\b": LET b2dx=INT (RND*3)-1: IF b2x+b2dx<0 OR b2x+b2dx>31 THEN LET b2dx=-b2dx
 300 LET dx=-(INKEY$="1" AND x>0)+(INKEY$="2" AND x<31)
 301 PRINT #1;AT 1,0;"Level: ";lev,"Score: ";score
 305 IF tick=1 THEN POKE 32768,x: POKE 32769,y: LET l=USR 32810: LET x=x+dx: LET y=y-1
 310 POKE 32768,x: POKE 32769,y: LET l=USR 32770: IF l=60 OR l=58 THEN GO TO 1000
 311 IF shoty>0 THEN POKE 32768,shotx: POKE 32769,shoty: LET l=USR 32817: LET shoty=shoty-1: LET shotx=shotx+dx: IF shotx>31 OR shotx<0 THEN LET shoty=0
 312 PRINT AT y,x; INK 0;"\a";AT y+1,x; INK 1;"\b"
 320 IF y=0 THEN GO TO 100
 330 IF shoty=0 THEN LET shoty=y-1: LET shotx=x
 340 POKE 32768,shotx: POKE 32769,shoty: LET l=USR 32770: IF l=60 OR l=58 THEN LET shoty=0
 341 LET m=ATTR (shoty,shotx): IF m=59 THEN IF shotx=b1x AND shoty=b1y+1 THEN LET b1x=-1: LET score=score+1: POKE 32769,b1y: LET l=USR 32810: LET shoty=0
 345 IF shoty>0 AND m=59 THEN LET b2x=-1: LET score=score+1: POKE 32769,b2y: LET l=USR 32810: LET shoty=0
 350 IF shoty>0 THEN PRINT AT shoty,shotx; INK 5;"\e"
 360 IF tick=1 AND b1x>-1 AND b1y>-1 THEN POKE 32768,b1x: POKE 32769,b1y: LET l=USR 32810: LET b1x=b1x+b1dx: LET b1y=b1y-1
 370 IF tick=1 AND b2x>-1 AND b2y>-1 THEN POKE 32768,b2x: POKE 32769,b2y: LET l=USR 32810: LET b2x=b2x+b2dx: LET b2y=b2y-1
 380 IF b1x<0 AND b2x<0 THEN LET lev=lev+1: GO TO 50
 400 LET tick=-tick: GO TO 200
1000 PRINT AT 15,10;"You hit a tree!"
1001 STOP
6000 PRINT AT 10,10;"Deathchase 2D";AT 12,6;"Steer with 1 and 2"
6010 PRINT AT 13,6;"Shoot the enemy bikes"
6020 RETURN
7000 RESTORE 7000: FOR n=USR "a" TO USR "e"+7
7010 READ d: POKE n,d: NEXT n
7020 RETURN
7100 DATA 16,8,16,8,16,8,36,219
7110 DATA 153,126,60,24,36,60,24,24
7120 DATA 24,52,120,116,58,124,122,60
7130 DATA 52,56,24,24,24,24,24,24
7140 DATA 0,0,24,60,60,36,0,0
8000 FOR n=32768 TO 65000
8001 PRINT n;"  ";PEEK n
8002 NEXT n
9000 RESTORE 9010: FOR A=1 TO 2: READ B,C: FOR D=B TO B+C-1: READ C: POKE D,C: NEXT D: NEXT A
9010 DATA 65535,0
9020 DATA 32768,108,12,15,175,71
9030 DATA 58,1,128,111
9040 DATA 62,54,203,37
9050 DATA 203,37,203,37
9060 DATA 203,37,23,203
9070 DATA 37,23,103,58
9080 DATA 0,128,133,111
9090 DATA 78,201,33,0
9100 DATA 64,17,0,192
9110 DATA 1,0,27,237
9120 DATA 176,201,205,49
9130 DATA 128,33,1,128
9140 DATA 52,33,1,128
9150 DATA 62,24,150,71
9160 DATA 205,155,14,58
9170 DATA 0,128,133,111
9180 DATA 229,209,203,252
9190 DATA 6,8,126,235
9200 DATA 119,235,36,20
9210 DATA 16,248,175,58
9220 DATA 1,128,111,62
9230 DATA 54,203,37,203
9240 DATA 37,203,37,203
9250 DATA 37,23,203,37
9260 DATA 23,103,58,0
9270 DATA 128,133,111,126
9280 DATA 203,188,119,201
9290 DATA 201
9999 RETURN
