Quickly avoid the obstacles using Z for left, . for right, X for down, and M for up.
PROG : 16509
D-FILE: 19927
VARS : 20720
E-LINE: 20721
STKBOT: 20721
STKEND: 20721
9999 means line number
PRINT means treat as KEYWORD P
10 REM **TUNNEL DODGE*SLR/1985
20 LET S=0
30 LET A$="<=>"
40 LET X=15
50 LET Y=2
60 LET R=INT (RND*8)
70 FOR A=1 TO 5
80 PRINT AT 0,0;"!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!";AT Y,X;A$
90 GOSUB 160+(R*40)
95 PRINT AT Y,X;A$
100 LET L$=INKEY$
110 LET Y=(2 AND L$="M")+(3
AND L$="X")+(Y AND (L$<>"M"
AND L$<>"X"))
120 LET X=X-(L$="Z" AND X>13)+(
L$="." AND X<16)
130 NEXT A
140 LET S=S+10
150 GOTO 60
160 PRINT AT 0,15;"÷´" AND A=1;
AT 0,15;" " AND A=2;AT 1,14;"
" AND A=3;AT 2,13;" "
AND A=4
170 IF A=4 AND Y=2 THEN GOTO 50
0
180 LET S=S+5
190 RETURN
200 PRINT AT 1,15;"÷´" AND A=1;
AT 1,15;" " AND A=2;AT 2,14;"
" AND A=3;AT 3,13;" "
AND A=4
210 IF A=4 AND Y=3 THEN GOTO 50
0
220 LET S=S+5
230 RETURN
240 PRINT AT 0,13;"´" AND A=1;
AT 1,13;"µ" AND A=1;AT 0,13;" "
AND A=2;AT 1,13;" " AND A=2;AT
1,13;" " AND A=3;AT 2,13;" "
AND A=3;AT 2,13;" " AND A=4;
AT 3,13;" " AND A=4
250 IF A=4 AND X<16 THEN GOTO 5
00
260 LET S=S+5
270 RETURN
280 PRINT AT 0,18;"÷" AND A=1;
AT 1,18;"õ" AND A=1;AT 0,18;" "
AND A=2;AT 1,18;" " AND A=2;AT
1,17;" " AND A=3;AT 2,17;" "
AND A=3;AT 2,16;" " AND A=4;
AT 3,16;" " AND A=4
290 IF A=4 AND X>13 THEN GOTO 5
00
300 LET S=S+5
310 RETURN
320 PRINT AT 0,13;"µ" AND A=1;
AT 1,13;"µ" AND A=1;AT 0,13;" "
AND A=2;AT 1,13;" " AND A=2;AT
1,13;" " AND A=3;AT 2,13;" "
AND A=3;AT 2,13;" " AND A=
4;AT 3,13;" " AND A=4
330 IF A=4 AND (Y=2 OR X<16)
THEN GOTO 500
340 LET S=S+5
350 RETURN
360 PRINT AT 0,18;"ó" AND A=1;
AT 1,18;"õ" AND A=1;AT 0,17;" "
AND A=2;AT 1,18;" " AND A=2;AT
1,15;" " AND A=3;AT 2,17;" "
AND A=3;AT 2,13;" " AND A=
4;AT 3,16;" " AND A=4
370 IF A=4 AND (Y=2 OR X>13)
THEN GOTO 500
380 LET S=S+5
390 RETURN
400 PRINT AT 0,13;"´" AND A=1;
AT 1,13;"ò" AND A=1;AT 0,13;" "
AND A=2;AT 1,13;" " AND A=2;
AT 1,13;" " AND A=3;AT 2,13;"
" AND A=3;AT 2,13;" " AND A=
4;AT 3,13;" " AND A=4
410 IF A=4 AND (Y=3 OR X<16)
THEN GOTO 500
420 LET S=S+5
430 RETURN
450 PRINT AT 0,18;"÷" AND A=1;
AT 1,18;"ñ" AND A=1;AT 0,18;" "
AND A=2;AT 1,17;" " AND A=2;
AT 1,17;" " AND A=3;AT 2,15;"
" AND A=3;AT 2,16;" " AND A=
4;AT 3,13;" " AND A=4
460 IF A=4 AND (Y=3 OR X>13)
THEN GOTO 500
470 LET S=S+5
480 RETURN
490 REM ******GAME OVER********
500 PRINT AT 0,0;"!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!";AT Y,X;A$
510 FOR A=1 TO 10
520 FOR B=1 TO 10
530 FAST
540 SLOW
550 NEXT B
560 NEXT A
570 PRINT AT Y,X;"¶ò±";AT 10,0;
"GAME OVER.....SCORE:";S
580 PRINT AT 16,0;"PRESS ENTER
TO PLAY AGAIN*******"
590 PRINT AT Y,X;"ö²ñ"
600 IF INKEY$<>"" THEN GOTO 640
610 PRINT AT Y,X;"¶ò±"
620 IF INKEY$<>"" THEN GOTO 640
630 GOTO 590
640 CLS
650 RUN
700 SAVE "TD"
710 RUN