10 REM DOUBLE SURROUND
20 C=3:D=3:MODE 1:BORDER 14 30 GOSUB 560 40 SYMBOL 250,&3C,&3C,&D7,&EB,&D7,&EB,&3C,&3C 50 REM NEW WAVE START 60 X1=5:Y1=12 70 X2=35:Y2=12 80 A1=1:B1=0 90 A2=-1:B2=0 100 MODE 1 110 SOUND 1,0,4,10,0,0,15 120 IF INKEY(67)=0 THEN A1=0:B1=-1 130 IF INKEY(69)=0 THEN A1=0:B1=1 140 IF INKEY(71)=0 THEN A1=-1:B1=0 150 IF INKEY(63)=0 THEN A1=1:B1=0 160 LOCATE X1,Y1:PEN 3:PRINT CHR$(250); 170 X1=X1+A1:Y1=Y1+B1 180 XX=X1:YY=Y1 190 GOSUB 680 200 IF DD<>32 THEN GOTO 330 210 LOCATE X1,Y1:PEN 1:PRINT CHR$(250); 220 IF INKEY(39)=0 THEN A2=-1:B2=0 230 IF INKEY(31)=0 THEN A2=1:B2=0 240 IF INKEY(30)=0 THEN A2=0:B2=1 250 IF INKEY(28)=0 THEN A2=0:B2=-1 260 LOCATE X2,Y2:PEN 3:PRINT CHR$(250); 270 X2=X2+A2:Y2=Y2+B2 280 XX=X2:YY=Y2 290 GOSUB 680 300 IF DD<>32 THEN GOTO 360 310 LOCATE X2,Y2:PEN 2:PRINT CHR$(250); 320 GOTO 110 330 REM PLAYER ONE CRASHED 340 C=C-1 350 D=D+1 360 REM PLAYER TWO CRASHED 370 D=D-1 380 FOR L=10 TO 500 STEP 35 390 SOUND 1,L,30:SOUND 2,L+20,28 400 FOR Q=1 TO 20 410 INK 3,INT(RND(1)*15+5) 420 NEXT Q 430 NEXT L 440 INK 3,9 450 IF SQ(1)<>4 THEN GOTO 450 460 IF C*D<>0 THEN GOTO 50 470 REM SOMEONE HAS WON 480 LOCATE 8,12 490 PEN 1 500 PRINT " PLAYER "; 510 IF C=0 THEN PRINT "TWO "; ELSE PRINT "ONE "; 520 PRINT "WINS BY ";ABS(D-C);" "; 530 IF INKEY$<>"" THEN GOTO 530 540 IF INKEY$="" THEN GOTO 540 550 RUN 560 REM PUT MACHINE CODE INTO RAM 570 MEMORY &997F 580 MC=&A980 590 TA=&A9FF 600 POKE MC,&CD 610 POKE MC+1,&60 620 POKE MC+2,&BB 630 POKE MC+3,&32 640 POKE MC+4,&FF 650 POKE MC+5,&A9 660 POKE MC+6,&C9 670 RETURN 680 REM READ CHARACTER FROM SCREEN 690 IF XX<1 OR XX>40 OR YY<1 OR YY>25 THEN DD=-1:GOTO 730 700 LOCATE XX,YY 710 CALL MC 720 DD=PEEK(TA) 730 RETURN |