1 REM +++++++++++++++++++++++++++++++++ 2 REM ! Program .... ASTROZIP.GAM 3 REM ! Utg}va 1983 4 REM ! av (c) Christer Hessling <1505> 7 REM ! Minne 16 Kbytes 9 REM +++++++++++++++++++++++++++++++++ 10 REM [nnu ett bra spel. 11 REM 12 REM Screening av 13 REM Allan Varcoe & G|ran Olsson 14 REM 16 REM +++++++++++++++++++++++++++++++++ 20 GOSUB 840 30 P1%=0% 40 H1%=0 50 ; CHR$(12) 60 P%=10% 70 DIM M1%(10%) 80 DIM M2%(10%) 90 FOR I%=0% TO 23% : ; CUR(I%,0%);CHR$(151%); : NEXT I% 100 ; CUR(23,0);CHR$(135);"PO[NG:";P1%;TAB(15);"HI-SCORE:";H1% 110 ; CUR(P%,1%);"s{y<" 120 RANDOMIZE 130 FOR X%=1% TO 10% 140 M1%(X%)=INT(20%*RND)+1% 150 M2%(X%)=INT(35%*RND)+2% 160 REM 170 REM 180 IF M1%(X%)=P% AND M2%(X%)<5% THEN 140 190 ; CUR(M1%(X%),M2%(X%));"/" 200 NEXT X% 210 FOR X%=1% TO 10% 220 IF M1%(X%)=P% AND M2%(X%)<5% THEN 540 230 IF M1%(X%)=100% THEN 320 240 ; CUR(M1%(X%),M2%(X%));" " 250 M2%(X%)=M2%(X%)-1% 260 IF M2%(X%)=10% THEN M1%(X%)=M1%(X%)+1% 270 IF M2%(X%)=1% THEN M2%(X%)=39% 280 IF M2%(X%)=1% THEN M1%(X%)=M1%(X%)+1% 290 IF M1%(X%)=21% THEN M1%(X%)=1% 300 ; CUR(M1%(X%),M2%(X%));"/" 310 IF M1%(X%)=P% AND M2%(X%)<5% THEN 540 320 NEXT X% 330 IF INP(56%)=188% THEN 370 340 IF INP(56%)=192% OR INP(56%)=224% THEN 380 350 IF INP(56%)=177% THEN 420 360 GOTO 210 370 ; CUR(P%,1%);" " : P%=P%+1% : ; CUR(P%,1%);"s{y<" : GOTO 390 380 ; CUR(P%,1%);" " : P%=P%-1% : ; CUR(P%,1%);"s{y<" : GOTO 390 390 IF P%>20% THEN 380 400 IF P%<1% THEN 370 410 GOTO 210 420 A%=0% 430 ; CUR(P%,6%);"__________________________________" 440 OUT 6,13 450 FOR X%=1% TO 10% 460 IF M1%(X%)=P% THEN M1%(X%)=100% 470 IF M1%(X%)=100% THEN A%=A%+1% 480 FOR T%=1% TO 10% : NEXT T% 490 NEXT X% 500 IF A%=10% THEN 790 510 OUT 6,0 520 ; CUR(P%,6%);" " : GOTO 210 530 OUT 6,0 540 FOR X=1 TO 20 550 OUT 6,13 560 ; CUR(P%,1%);"2vfx(!" 570 ; CUR(P%-1%,1%);')a12%"' 580 ; CUR(P%+1%,1%);"&21abd" 590 FOR T=1 TO 50 : NEXT T 600 OUT 6,0 610 ; CUR(P%,1%);" " 620 ; CUR(P%-1%,1%);' ' 630 ; CUR(P%+1%,1%);' ' 640 FOR T=1 TO 10 : NEXT T 650 NEXT X 660 ; CHR$(12) 670 P1%=0% 680 ; "SORRY, DU EXPLODERADE !!!" 690 DATA 50,50,25,20,50,30,50,30 700 RESTORE 690 710 FOR G%=1% TO 5% 720 READ M%,L% 730 GOSUB 1060 740 NEXT G% 750 ; : ; "VILL DU F\RS\KA IGEN ? (J/N) "; : GET S$ 760 IF S$="J" OR S$="j" THEN 50 770 IF S$="N" OR S$="n" THEN END 780 GET S$ : GOTO 760 790 OUT 6,0 800 ; CUR(P%,6%);" " 810 P1%=P1%+1000% 820 IF P1%>H1% THEN H1%=P1% 830 GOTO 50 840 ; CHR$(12) 850 ; " ************ * ASTROZIP * ************" 860 DATA 30,50,30,50,30,50,40,80 870 RESTORE 860 880 FOR G%=1% TO 4% 890 READ M%,L% 900 GOSUB 1060 910 NEXT G% 920 ; : ; "VILL DU HA INSTRUKTIONER ? (J/N) "; : GET S$ 930 IF S$="J" OR S$="j" THEN 960 940 IF S$="N" OR S$="n" THEN RETURN 950 GET S$ : GOTO 930 960 ; CHR$(12);" INSTRUKTIONER" 970 ; : ; 980 ; "Du befinner dig mitt i ett asteroid- b{lte som hotar att krossa dig." 990 ; "F|r att klara dig igenom b{ltet s} m}ste du skjuta s|ner alla asteroiderna med din laserkanon." 1000 ; "Du f}r 1000 po{ng f|r varje asteroid- b{lta du klarar." 1010 ; 1020 ; : ; "DU STYR MED DESSA TANGENTER:" 1030 ; "@ : UPP < : NER 1 : LASER" 1040 ; : ; "TRYCK P] RETURN F\R START" 1050 IF INP(56)=141 THEN RETURN ELSE 1050 1060 REM ** MUSIK RUTIN ** 1070 FOR Z%=1% TO L% 1080 OUT 6%,121% : FOR B%=1% TO M% : NEXT B% 1090 OUT 6%,0% : NEXT Z% : RETURN