10 CALL CLEAR ! amended for XB V110 on a 4A- 2021 20 PRINT "SPEEDRACE":"COPYRIGHT 1981":"BY STEPHEN SHAW":"10,ALSTONE ROAD,STOCKPORT":"CHESHIRE SK4 5AH": : : 30 PRINT "USE S & D TO MOVE ":"LEFT & RIGHT":" ":"USE KEYS 1,2,3,&4 TO":"SELECT GEAR" 40 PRINT "TIME & DISTANCE ARE ":"DISPLAYED.":"DISTANCE SUFFERS IF YOU":"CRASH" 50 PRINT "PRESS ANY KEY TO CONTINUE" 60 CALL KEY(0,V,M) 70 IF M<1 THEN 60 80 CALL SCREEN(2) 90 FOR X=1 TO 100 :: NEXT X 100 CALL CLEAR 110 CALL MAGNIFY(2) 120 M=1 130 CALL CHAR(100,"96FEBA3838BAFEBA"&RPT$("0",48)) 135 CALL CHAR(110,"5A5A5A5A5A5A5A5A") 140 CALL CHAR(105,"FF000000000000FF") 150 CALL SCREEN(4) 160 CALL SPRITE(#6,110,13,80,1,90,0) 170 CALL SPRITE(#7,105,13,75,17,90,0) 180 CALL SPRITE(#8,105,13,70,30,90,0) 190 CALL SPRITE(#9,110,13,65,1,90,0) 200 CALL SPRITE(#10,105,13,60,17,90,0) 210 CALL SPRITE(#11,105,13,55,30,90,0) 220 CALL SPRITE(#12,105,13,50,1,90,0) 230 CALL SPRITE(#13,105,13,45,17,90,0) 240 CALL SPRITE(#14,105,13,40,30,90,0) 250 CALL SPRITE(#15,105,13,85,145,90,0) 260 CALL SPRITE(#16,105,13,80,157,90,0) 270 CALL SPRITE(#17,110,13,75,176,90,0) 280 CALL SPRITE(#18,105,13,70,145,90,0) 290 CALL SPRITE(#19,105,13,65,157,90,0) 300 CALL SPRITE(#20,105,13,60,173,90,0) 310 CALL SPRITE(#21,105,13,55,145,90,0) 320 CALL SPRITE(#22,105,13,55,157,90,0) 325 CALL COLOR(8,3,4) 330 CALL SPRITE(#23,110,13,45,173,90,0) 332 CALL VCHAR(1,8,140,216) 333 CALL COLOR(14,12,12) 334 CALL VCHAR(1,7,95,24) :: CALL VCHAR(1,17,95,24) :: CALL CHAR(96,"5555555555555555") 340 FOR CT=1 TO 4 350 CALL SPRITE(#CT,100,CT+6,CT*47-45,93-CT*8,0,0) 360 NEXT CT 370 CALL SPRITE(#5,100,16,160,74,0,0) 400 CALL SOUND(-1000,-2,30-7*SPEED) 410 CALL COINC(ALL,D) :: IF D<0 THEN GOSUB 900 420 CALL KEY(0,A,B) :: IF A=ASC("S")THEN CALL MOTION(#5,0,-10) 430 IF A=ASC("D")THEN CALL MOTION(#5,0,10) 440 IF A<30 THEN CALL MOTION(#5,0,0) 450 CALL COINC(ALL,D) :: IF D<0 THEN GOSUB 900 460 IF A>48 AND A<53 THEN SPEED=(A-48)/3 461 CALL COINC(ALL,D) :: IF D<0 THEN GOTO 521 470 T=T+1 :: S=S+6*SPEED :: DISPLAY AT(10,18)SIZE(10):STR$(S)&" "&STR$(T) 480 CALL COINC(ALL,D) :: IF D<0 THEN 521 490 IF T/5=INT(T/5)THEN M=-M 500 CALL MOTION(#1,SPEED*40,M*5,#1,SPEED*40,M*5,#1,SPEED*40,M*5,#1,SPEED*40,M*5) 501 CALL COINC(ALL,D) :: IF D<0 THEN GOSUB 900 520 GOTO 400 521 GOSUB 900 522 GOTO 400 900 CALL SOUND(-900,-6,0) 910 CALL MOTION(#1,0,0,#2,0,0,#3,0,0,#4,0,0,#5,0,0) 920 SPEED=1/3 930 S=S-50 931 IF S<0 THEN S=0 932 CRASH=CRASH+1 933 IF CRASH=15 OR T>200 THEN 2000 935 M=1 936 T=T-(5*(T/5-INT(T/5))) 940 FOR CT=1 TO 4 950 CALL SPRITE(#CT,100,CT+6,CT*47-45,93-CT*8,0,0) 960 NEXT CT 965 SPEED=0 970 RETURN 2000 CALL CLEAR 2010 PRINT "YOU HAVE TRAVELLED A":"A DISTANCE OF ";S 2020 PRINT "AND HAD ";CRASH;" CRASHES!" 2030 IF S>500 THEN PRINT "YOU ARE NOT A BAD DRIVER" 2040 IF S<100 THEN PRINT "YOU SHOULD NOT BE ON THE":"ROAD" 2050 PRINT "TO TRY AGAIN,ENTER 'RUN'"