10 ! SPITFIRE.BAC 20 ! Spel f|r ABC806 30 ! Program av Magnus <8042> 1991 40 INTEGER : NO EXTEND : ATTRIBUTE 1 50 ; CHR$(12) 60 FGCTL BLK+RED+GRN+YEL+BLU+MAG+CYA+WHT : GOSUB 850 70 FGPOINT 0,0,0 : FGFILL 255,239 80 ; CUR(2,30);GRN DBLE "SPITFIRE" 90 ; CUR(5,15);RED EL "Spel program f|r ABC806" 100 ; CUR(7,15);RED EL "Av Magnus <8042> 1991" 110 ; CUR(15,16);"Spelet g}r utt p} att skjuta s} m}nga 0or" 120 ; TAB(17);"som m|jlig innan du kommer fram till kanten." 130 ; TAB(17);"Du styr med 8(upp), 2(ner), mellanslag(Skott)." 140 X=100 : Y=110 : GOSUB 330 150 IF SYS(5)=0 THEN 150 160 GET A$ 170 ; CHR$(12) 180 FGCTL BLK+RED+GRN+YEL+BLU+MAG+CYA+WHT : GOSUB 850 190 X=200 : Y=100 : Q=13 : P=0 200 PRINT CHR$(12) 210 GOSUB 770 220 ! 230 FGPOINT 0,0,0 : FGFILL 255,239 240 FGPICTURE 0,0,2 : X=X-2 : GOSUB 640 : FGPICTURE 1,0,2 250 FGPOINT 0,0,0 : FGFILL 255,239 260 GOSUB 330 270 FGPICTURE 0,1,2 280 FGPOINT 0,0,0 : FGFILL 255,239 290 FGPICTURE 1,1,2 300 X=X-2 : GOSUB 640 : FGPICTURE 0,1,2 : GOSUB 330 310 IF X<5 THEN 820 320 GOTO 240 330 FGPOINT X+23,Y+16,8 : FGLINE X+23,Y+9 340 FGLINE X+15,Y+9 : FGPOINT X+15,Y+10 350 FGLINE X+7,Y+10 : FGPOINT X+6,Y+9 360 FGPOINT X+5,Y+9 : FGLINE X+5,Y+5 370 FGPOINT X+4,Y+8 : FGPOINT X+3,Y+7 380 FGPOINT X+4,Y+6 : FGPOINT X+6,Y+4 390 FGPOINT X+7,Y+3 : FGLINE X+9,Y+3 400 FGPOINT X+10,Y+2 : FGLINE X+32,Y+2 410 FGPOINT X+33,Y+3 : FGLINE X+43,Y+3 420 FGPOINT X+44,Y+4 : FGLINE X+47,Y+4 430 FGPOINT X+48,Y+5 : FGPOINT X+48,Y+6 440 FGPOINT X+49,Y+7 : FGLINE X+49,Y+13 450 FGPOINT X+48,Y+14 : FGPOINT X+47,Y+15 460 FGLINE X+45,Y+15 : FGPOINT X+44,Y+14 470 FGPOINT X+43,Y+13 : FGLINE X+43,Y+10 480 FGPOINT X+42,Y+9 : FGPOINT X+41,Y+9 490 FGPOINT X+40,Y+10 : FGLINE X+35,Y+10 500 FGPOINT X+34,Y+11 : FGLINE X+31,Y+11 510 FGPOINT X+30,Y+12 : FGLINE X+17,Y+12 520 FGPOINT X+16,Y+11 : FGPOINT X+19,Y+11 530 FGPOINT X+19,Y+10 : FGPOINT X+25,Y+11 540 FGPOINT X+24,Y+10 : FGPOINT X+14,Y+3 550 FGPOINT X+15,Y+4 : FGPOINT X+15,Y+5 560 FGPOINT X+16,Y+6 : FGPOINT X+17,Y+6 570 FGPOINT X+18,Y+7 : FGLINE X+21,Y+7 580 FGPOINT X+21,Y+6 : FGLINE X+23,Y+6 590 FGPOINT X+24,Y+5 : FGPOINT X+25,Y+4 600 FGPOINT X+26,Y+4 : FGPOINT X+27,Y+3 610 FGPAINT X+29,Y+7,9 : FGPAINT X+19,Y+4,8 620 FGPOINT X+24,Y+11,10 : FGPAINT X+18,Y+10 : FGPAINT X+20,Y+10 630 RETURN 640 IF SYS(5)=128 THEN 650 ELSE RETURN 650 GET A$ 660 IF A$="4" THEN X=X-1 670 IF A$="6" THEN X=X+1 680 IF A$="8" THEN Y=Y+10 : Q=Q-1 690 IF A$="2" THEN Y=Y-10 : Q=Q+1 700 IF A$=" " THEN 730 710 IF X=0 THEN 820 720 RETURN 730 FGPOINT X+15,Y+4,3 : FGLINE 0,Y+4 : FOR Z=0 TO 10 : OUT 34,9 : NEXT Z 740 FOR Z=0 TO 1000 : NEXT Z 750 IF Q=W THEN ; CHR$(12) : GOSUB 770 : P=P+10 760 RETURN 770 RANDOMIZE 780 PRINT TAB(30) EL GRN "PO[NG ";P 790 W=INT(RND*16)+3 800 ; CUR(W,1);RED;"O" 810 RETURN 820 ; CHR$(12) 830 ; MAG EL TAB(20);P;" po{ng !" 840 END 850 RESTORE 930 : EXTEND 860 ; CHR$(12) 870 FGPOINT 0,0,0 : FGFILL 255,239 880 READ V : READ F 890 IF V=99 THEN 940 900 POKE 49152,14,7,6,V,62,F,237,121,201 910 Z=CALL(49152) 920 GOTO 880 930 DATA 8,18,9,19,10,103,99,99 940 RETURN