10 REM MOTOCROSS
20 REM PAUL STANLEY.
25 REM PAN BOOKS 1984
30 MODE 1:INK 0,0:INK 1,24:INK 2,20:INK 3,6:WINDOW #1,1,40,1,25:PAPER #1,0:PEN #1,1:CLS #1
40 GOSUB 930
50 HS=0: WR=4
60 GOSUB 670
70 GOSUB 790
80 CLS #1:WINDOW #0,5,36,1,25:PAPER #0,0:PEN #0,1:CLS #0
90 GOSUB 330
100 TIM=TIME
110 SOUND 1,120,3
120 PEN 3:TS=INT((TIME-TIM)/300):LOCATE 27,1:PRINT MID$(STR$(TS),2);:LOCATE X+1,Y+1:PEN 3:PRINT" ";CHR$(231);:PEN 1
130 FOR F=1 TO S:NEXT
140 X=X+1:IF X=31 THEN LOCATE 32,Y+1:PRINT" ":X=0:Y=Y+5:IF Y=25 THEN GOTO 270
150 LOCATE X+2,Y+1:CALL 360:K=PEEK(367):IF K<>32 THEN GOSUB 210
160 IF INKEY(9)=0 THEN 220
170 IF INKEY(1)=0 THEN S=S+1
180 IF INKEY(8)=0 THEN S=S-1
190 IF S<1 THEN S=1
200 GOTO 120
210 IF INKEY(9)=0 THEN GOTO 240
220  C=231:FOR F=X TO 30:TS=INT((TIME-TIM)/300):LOCATE 27,1:PRINT MID$(STR$(TS),2);:LOCATE F+1,Y+1:PRINT" ";CHR$(C):FOR Z=1 TO 100:NEXT:C=C-(C<234)-(3 AND C=234):SOUND 1,90,3:NEXT F
230 CLS:PEN 2:PRINT"Bad luck! You crashed.":PEN 1:GOTO 840
240 LOCATE X+1,Y+1:PRINT" ";:LOCATE X+2,Y:PEN 3:PRINT CHR$(231);:PEN 1
250 FOR f=-15 TO 15:SOUND 1,(f+100),3:NEXT
260 LOCATE X+2,Y:PRINT" ";:LOCATE X+3,Y+1:PEN 3:PRINT CHR$(231):X=X+2:PEN 1:RETURN
270 REM
280 CLS
290 LOCATE 1,2:PEN 2:PRINT"Your time was";:PEN 3:PRINT ts;:PEN 2:PRINT"seconds":PEN 1
300 IF TS>HS THEN PRINT:PRINT"That is a new fast time!":HS=TS
310 PEN 3:PRINT:PRINT"The best time is";:PEN 1:PRINT HS;:PEN 3:PRINT"Seconds.":PEN 1
320 GOTO 840
330 FOR G=21 TO 6 STEP -5:LOCATE (RND*20+7),G:PRINT CHR$(235);:LOCATE (RND*20+7),G:PRINT CHR$(235);:FOR F=0 TO 31:LOCATE F+1,G+1:PRINT" ":NEXT F,G
340 Y=5:X=0:S=20
350 RETURN
360 CLS #1:WINDOW #0,5,36,1,25:PAPER #0,0:PEN #0,1:BUSES =5:CLS #0
370 Y=5:X=0:S=10
380 LOCATE 12,1:PEN 3:PRINT BUSES;"BUSES":PEN 1
390 GOSUB 640
400 LOCATE X+1,Y+1:PEN 3:PRINT" ";CHR$(231);:PEN 1:SOUND 1,180,1
410 FOR F=1 TO S:NEXT
420 X=X+1:IF X=31 THEN LOCATE 32,Y+1:PRINT" ":X=0:Y=Y+5
430 LOCATE X+2,Y+1:CALL 360:K=PEEK(367):IF K<>32 THEN 490
440 IF INKEY(9)=0 THEN 490
450 IF INKEY(1)=0 THEN S=S+1
460 IF INKEY(8)=0 THEN S=S-1
470 IF S<1 THEN S=1
480 GOTO 400
490 LOCATE X+1,Y+1:PRINT" ";:LOCATE X+2,Y:PEN 3:PRINT CHR$(231);:PEN 1:SOUND 1,(S+100),4
500 LOCATE X+2,Y:PRINT" ";:LOCATE X+3,Y-1:PEN 3:PRINT CHR$(231):PEN 1:SOUND 2,(S+70),4
510 X=X+2:FOR F=X TO (X+20-S):SOUND 2,(S+100),4:LOCATE F+1,Y-1:PEN 3:PRINT " ";CHR$(231):PEN 1:NEXT F
520 LOCATE F+1,Y-1:PRINT" ";:LOCATE F+2,Y:PEN 3:PRINT CHR$(231):PEN 1:SOUND 1, (S+75),4
530 IF TEST((F+2)*16+62,65) <> 1 THEN 600
540 FOR X=F+1 TO 30:LOCATE X+1,Y:PEN 3:PRINT " ";CHR$(231);:PEN 1
550 SOUND 2,(S+100),4
560 LOCATE X+2,Y+1:CALL 360:K=PEEK(367):IF K=32 THEN LOCATE X+2,Y:PRINT " ";
570 NEXT X
580 CLS:BUSES=BUSES+1
590 GOTO 370
600 LOCATE F+2,Y:PRINT" ":C=231:FOR X=F+1 TO 31:SOUND 1,120,3:LOCATE X+1,Y+1:PRINT" ";CHR$(C):C=C-(C<234)-(3 AND C=234):NEXT
610 CLS:LOCATE 1,1:PEN 2:PRINT"You failed in your attempt at";:PEN 3:PRINT BUSES;:PEN 2:PRINT"BUSES.":PEN 1
620 IF BUSES-1>WR THEN PRINT:PRINT"However, your successeful jump  over";:PEN 3:PRINT BUSES-1;:PEN 1:PRINT"Buses is a new world";:PRINT"record!!!!!":WR=BUSES-1
630 GOTO 840
640 FOR F=21 TO 6 STEP -5:FOR G=0 TO 31:LOCATE G+1,F+1:PRINT" ":SOUND 2,(F*2+150),2: NEXT G,F
650 LOCATE 5,21:PRINT CHR$(236);:FOR F=1 TO BUSES:PEN 2:PRINT CHR$(237);:PEN 1:NEXT F:PRINT CHR$(238);CHR$(239);CHR$(240)
660 RETURN
670 SYMBOL AFTER 230
680 SYMBOL 231,32,62,50,254,152,90,231,66
690 SYMBOL 232,2,119,82,92,124,242,23,26
700 SYMBOL 233,66,231,90,25,127,76,124,4
710 SYMBOL 234,88,232,79,62,58,74,238,64
720 SYMBOL 235,0,0,0,0,0,32,112,248
730 SYMBOL 236,1,3,7,15,31,63,127,255
740 SYMBOL 237,126,66,126,126,66,126,126,36
750 SYMBOL 238,224,252,255,255,255,255,255,255
760 SYMBOL 239,0,0,128,240,254,255,255,255
770 SYMBOL 240,0,0,0,0,0,192,248,255
780 RETURN
790 A$="MOTOCROSS":LOCATE 16,25:PEN 3:PRINT A$;:PEN 1:FOR F=1 TO 9:FOR G=24 TO 1 STEP -1:SOUND 2,(G*F*3),3:LOCATE F+15,G:PEN 2:PRINT MID$(A$,F,1):PEN 1:LOCATE F+15,G+1:PRINT" ":NEXT G,F
800 FOR F=1 TO 39:SOUND 1,120,3:SOUND 1,90,5:SOUND 1,180,4:SOUND 1,220,4:LOCATE F+1,3:PRINT " ";CHR$(231);:NEXT:LOCATE 1,4:PRINT"  "
810 LOCATE 1,5:PRINT"This program consists of two Motorbike  games."
820 PEN 3:PRINT:PRINT"For [Moto-cross],jump with COPY key onlywhen you reach the obstacle":PEN 1
830 PRINT:PRINT"For  both  programs, acceleration  and  deceleration  are  both  possible  by   holding left and right cursor arrow keys"
840 PEN 3:LOCATE 1,16:PRINT CHR$(24);" 1....Moto-cross  ";CHR$(24):PEN 1
850 LOCATE 1,18:PRINT CHR$(24);" 2....Stunt-cycle ";CHR$(24):PEN 1
860 PEN 3:LOCATE 1,20:PRINT CHR$(24);" 3....To quit     ";CHR$(24):PEN 1
870 PEN 2:LOCATE 1,23:PRINT CHR$(24);" SELECT YOUR OPTION (1-3)";CHR$(24);:PEN 1
880 A$=INKEY$:IF A$<"1"OR A$>"3" THEN 880
890 IF A$="1" THEN 80
900 IF A$="2" THEN 360
910 IF A$="3" THEN STOP
920 GOTO 880
930 RESTORE 940:FOR X=360 TO 366:READ A:POKE X,A:NEXT:RESTORE:RETURN
940 DATA 205,96,187,50,111,1,201