10 REM ASTEROID STORM
20 GOSUB 410
30 REM NEW PLAYER
40 SCORE=0
50 MODE 1
60 BORDER 18
70 SHIPX=18
80 YY=1
90 SHIP$=" "+CHR$(245)+" "
100 PAPER 0
110 INK 0,13
120 CLS
130 REM MAIN LOOP
140 A=INT(RND(1)*39+1)
150 B=INT(RND(1)*(40-A)+1)
160 PEN 3
170 LOCATE A,25::PRINT"*";
180 LOCATE B,25:PRINT"*":LOCATE 40,25:PRINT" "
190 REM MOVE SHIP
200 SCORE=SCORE+15
210 IF INKEY(8)=0 AND SHIPX>1 THEN SHIPX=SHIPX-1
220 IF INKEY(1)=0 AND SHIPX<38 THEN SHIPX=SHIPX+1
230 XX=SHIPX+1
240 GOSUB 550
250 IF DD=42 THEN GOTO 300
260 LOCATE SHIPX,1
270 PEN 1
280 PRINT SHIP$
290 GOTO 130
300 REM KILLED BY A ASTEREORIC COLLISION 
310 PAPER 1
320 PEN 3
330 LOCATE 16,6:PRINT "Oh Dear,"
340 FOR Q=1 TO 1000: NEXT Q
350 LOCATE 8,10:PRINT "Another one bites the dust"
360 FOR Q=1 TO 1000:NEXT Q
370 LOCATE 10,14:PRINT "YOU SCORED : "; SCORE;"  "
380 IF INKEY$=" " THEN GOTO 380
390 IF INKEY$<>" " THEN GOTO 390
400 GOTO 30
410 REM PUT MACHINE CODE JUST ABOVE RE-ADJUSTED HIMEM
420 MEMORY FRE(0)-&80
430 MC=HIMEM+1
440 TA=HIMEM+&7F
450 TH=INT(TA/256)
460 TL=TA-256*TH
470 POKE MC,&CD
480 POKE MC+1,&60
490 POKE MC+2,&BB
500 POKE MC+3,&32
510 POKE MC+4,TL
520 POKE MC+5,TH
530 POKE MC+6,&C9
540 RETURN
550 LOCATE XX,YY
560 CALL MC
570 DD=PEEK(TA)
580 RETURN