1 ' Rally
2 ' by Frederick & Jensen Akinlawon
3 ' Amstrad Action   June 87
50 SYMBOL 255,24,219,219,24,60,165,231,189
60 ' **COLOUR**
70 MODE 1
80 INK 1,9:INK 2,12:INK 3,18:BORDER 18:PAPER 3:CLS:INK 0,6:roadx=10:carx=12
90 ' * ARROW POINTING UPWARDS=CTRL+K*
100 A$=" "
110 REM **MILEAGE**
120 PEN 1:PRINT "You Drove ";miles;" Miles"
130 PRINT:PEN 0:PRINT"On Track";track
140 miles=0
150 ' * MAIN PROGRAM *
160 LOCATE 1,10:PEN 2:INPUT"TRACK 1 OR 2";track
170 IF track=1 THEN CLS:choice=1:SYMBOL 254,28,62,127,62,255,127,154,255:ELSE 180
180 IF track=2 THEN CLS:choice=2:SYMBOL 254,255,129,191,191,191,191,191,255:ELSE 190
190 IF track>2 OR track<1 THEN GOTO 160
200 IF choice=1 THEN INK 2,12:INK 1,9:INK 3,18:BORDER 18:INK 0,6:SYMBOL 254,28,62,127,62,255,127,154,255
210 FOR n=1 TO 40:PEN 1:LOCATE n,1:PRINT CHR$(254);:NEXT
220 IF choice=2 THEN INK 2,10:INK 1,3:INK 3,15:INK 0,0:BORDER 15:SYMBOL 254,255,129,191,191,191,191,191,255
230 IF choice=1 THEN LOCATE roadx,1:PEN 1:PRINT CHR$(254)+CHR$(254);:PEN 2:PRINT CHR$(143)+CHR$(143)+CHR$(143);:PEN 1:PRINT CHR$(254)+CHR$(254)
240 IF choice=2 THEN LOCATE roadx,1:PEN 1:PRINT CHR$(254)+CHR$(254);:PEN 2:PRINT CHR$(143)+CHR$(143)+CHR$(143)+CHR$(143);:PEN 1:PRINT CHR$(254)+CHR$(254)
250 LOCATE 1,2:PRINT A$:LOCATE carx-1,25:PEN 2:PRINT CHR$(143)+CHR$(143)+CHR$(143)
260 d=INT(RND*3)+1
270 IF d=1 THEN roadx=roadx
280 IF d=2 THEN roadx=roadx-1
290 IF d=3 THEN roadx=roadx+1
300 LOCATE carx,24:PEN 0:PRINT CHR$(255)
310 IF roadx=1 THEN roadx=2
320 IF roadx=25 THEN roadx=24
330 IF INKEY(1)=0 THEN carx=carx+1
340 IF INKEY(8)=0 THEN carx=carx-1
350 miles=miles+1
360 '**COLLISION DETECTION**
370 IF miles=1000 THEN GOTO 460
380 aa=carx*16-8:bb=400-(24*16-17)
390 IF choice=2 AND miles=500 THEN choice=1:GOTO 200
400 t=TEST(aa,bb)
410 IF t=1 THEN 440
420 SOUND 129,3000,200,5:SOUND 132,3000+20,200,5
430 GOTO 230
440 '** CRASH **
450 SOUND 129,so,35,5:SOUND 132,so+20,35,5:SOUND 130,3,50,7,0,0,7:FOR N=1 TO 100:NEXT:CLS:GOTO 110
460 CLS:LOCATE 1,1:PEN 1:PRINT"congratulations"
470 LOCATE 1,5:PEN 2:PRINT"You have one the race"
480 FOR n=1 TO 100:LOCATE 1,20:PEN 3:PRINT n;:NEXT:GOTO 50