Home » Recent acquisitions » Commodore_16 » tape009b_c16_commodore_16_games_pack_1.wav » penetrator
penetrator
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
| Tape/disk: | Home » Recent acquisitions » Commodore_16 » tape009b_c16_commodore_16_games_pack_1.wav |
| Filename: | penetrator |
| Read OK: | ✔ |
| File size: | 0BE3 bytes |
| Load address: | 1001 |
| Exec address: | 0000 |
File contents
10 REM PENETRATOR
20 COLOR4,6,3
30 B$="<cursor left>":D$="<cursor down>":S$="╱🮂╲"+D$+B$+B$+B$+"▎ 🮇"+D$+B$+B$+B$+"╲▂╱"
40 T$=" "+D$+B$+B$+B$+B$+" "+D$+B$+B$+B$+B$+" " :BE=3072:GOSUB570
50 GOSUB450:G$="<reverse on> <rev off>":M$="○"+D$+B$+"┼"
60 V$=" "+D$+B$+" "
70 FORI=1TO40:CC$=CC$+"<cursor right>":NEXT:FORI=1TO25:RR$=RR$+"<cursor down>":NEXT:POKE208,12:Q=208
80 C(1)=0:C(2)=12:C(3)=24
90 C1(1)=8:C1(2)=20:C1(3)=32
100 C=C(1):R=3:POKE202,C:POKE205,R:PRINT" ";S$;:C1=C1(1):E=0:LV=LV-.1
110 FORI=4032TO4032+39:POKEI,160:NEXT
120 PRINT"<home>";LEFT$(CC$,2);LEFT$(RR$,22);M$;
130 FORI=1TO2STEP0
140 A=PEEK(Q):IFA=62THENGOSUB330
150 IFA=12THENGOSUB350:ELSEIFA=60THENGOSUB430
160 IFETHENGOTO190
170 GOSUB380:SOUND2,4,4
180 Q=198:NEXT
190 C=C(2):C1=C1(2):E=0:CN=0:R=3
200 PRINT"<home>";LEFT$(CC$,14);LEFT$(RR$,22);M$;:POKE4004,77:Q=208
210 FORI=1TO2STEP0:A=PEEK(Q):IFA=62THENGOSUB330
220 POKE4004,77
230 IFA=12THENGOSUB350:ELSEIFA=60THENGOSUB430
240 Q=198:IFETHEN260
250 GOSUB380:SOUND2,4,4:NEXT
260 C=C(3):C1=C1(3):E=0:CN=0:R=3:Q=208
270 PRINT"<home>";LEFT$(CC$,26);LEFT$(RR$,22);M$;
280 FORI=1TO2STEP0:A=PEEK(Q):IFA=62THENGOSUB330
290 IFA=12THENGOSUB350:ELSEIFA=60THENGOSUB430
300 IFETHEN100
310 Q=198:GOSUB380:SOUND2,4,4:NEXT
320 STOP
330 IFR=1THENRETURN
340 POKE202,C:POKE205,R:PRINTT$;:R=R-1:POKE205,R:POKE202,C:PRINT" "S$;:RETURN
350 IFR=18THENIFCN<=5THENGOSUB610
360 IFR=18THENRETURN
370 POKE202,C:POKE205,R:PRINTT$;:R=R+1:POKE205,R:POKE202,C:PRINT" ";S$;:RETURN
380 N=5+INT(RND(1)*LV*10):IFN<5THEN380
390 IFN>18THENRETURN
400 PO=BE+(N*40)+C1:IFPEEK(PO)=32THENPOKEPO,81:CN=CN+1:GOSUB420:SOUND1,5,5:RETURN
410 RETURN
420 POKE205,0:POKE202,0:PRINT" ";:PRINTUSING"<reverse on>##<rev off>";CN;:RETURN
430 PE=BE+(R*40)+C1:IFPEEK(PE)=81THENPOKEPE,32:CN=CN-1:RETURN
440 RETURN
450 PRINT"<clr>";
460 PRINT" <reverse on>PENETRATOR<rev off> <reverse on>SCORE<rev off> "
470 PRINT:PRINT:PRINT
480 PRINT
490 FORHU=1TO13:PRINT" ▎ ▎ ▎ ▎ ▎ ▎":NEXT
500 PRINT" ╱ ╲ ╱ ╲ ╱ ╲"
510 PRINT" <reverse on> <rev off> <reverse on> <rev off> <reverse on> <rev off>"
520 PRINT" <reverse on> <rev off> <reverse on> <rev off> <reverse on> <rev off>"
530 PRINT" <reverse on> <rev off> <reverse on> <rev off> <reverse on> <rev off>"
540 PRINT" <reverse on> <rev off> <reverse on> <rev off> <reverse on> <rev off>"
550 PRINT" ╱ ╲ ╱ ╲ ╱ ╲"
560 RETURN
570 SCNCLR:PRINT"DIFFICULTY LEVEL 1-HARDEST 9-EASIEST";
580 GETWE$:IFWE$=""THEN580
590 IFWE$<"1"ORWE$>"9"THEN580
600 LV=VAL(WE$):RETURN
610 REM
620 IFC1=8THENPRINT"<home>";LEFT$(CC$,2);LEFT$(RR$,22);V$;
630 IFC1=20THENPOKE3966,32:POKE4006,32
640 IFC1=32THENPRINT"<home>";LEFT$(CC$,26);LEFT$(RR$,22);V$;
650 PRINT"<home>";LEFT$(CC$,10);LEFT$(RR$,2);"PILOT RESCUED";
660 FORHJ=1TO999:NEXT
670 PRINT"<home>";LEFT$(CC$,10);LEFT$(RR$,2);" ";
680 SC=SC+100
690 PRINT"<home>";LEFT$(CC$,33);LEFT$(RR$,0);"<reverse on>";:PRINTUSING"####";SC;:PRINT"<rev off>";
700 VE=1:FORI=1TO3
710 PRINT"<home>";LEFT$(CC$,VE);LEFT$(RR$,R);T$;:CN=0:E=1:VE=VE+12
720 NEXT
730 FORBV=5TO18:DF=BE+(BV*40)+C1:POKEDF,32:NEXT
740 RETURN
62000 T= PEEK(62)*256+PEEK(61)+1:FORI=1TO10:SP$=SP$+CHR$(254):NEXT
62005 INPUT "FROM LINE ";FROM
62010 INPUT"TO PRINTER (Y/N)";Q$
62011 IF Q$<>"Y"THEN62020
62015 CLOSE4:OPEN4,4:CMD4
62020 LINK=PEEK(44)*256+PEEK(43):E=740
62120 T=LINK
62130 LINK=PEEK(T+1)*256+PEEK(T)
62135 LN=PEEK(T+3)*256+PEEK(T+2):IFLN<FROMTHEN62120
62136 IFLN>ETHENGOSUB62550:PRINT#4:CLOSE4:END
62137 S$=STR$(LN):L=LEN(S$)-1:D$=MID$(S$,2,L)+MID$(SP$,1,6-L)
62140 CS=0:N=0:C=0
62150 FORP=T+4TOLINK-2:PK=PEEK(P)
62160 IFPK=143THENP=LINK-2:GOTO62190
62165 IFPK=34THENC=(C=0)
62170 IFC=0ANDPK=32THEN62190
62180 IFPK=137THENN=N+1:CS=CS+(203ORN):PK=164
62185 N=N+1:CS=CS+(PKORN)
62190 NEXT:CH=CH+CS
62192 H$=STR$(CS):Y=LEN(H$):H$=MID$(H$,2,Y):H$=MID$(SP$,1,5-(Y-1))+H$
62194 D$=D$+"="+CHR$(254)+H$:GOSUB62500:D$="":GOTO62120
62196 REM
62500 GT=49152
62505 PRINTCHR$(27);"K";
62507 JK=LEN(D$)*8:PRINTCHR$(JK);CHR$(0);
62510 FORI=1TOLEN(D$)
62520 C=ASC(MID$(D$,I,1)):P=GT+(C*8)
62530 FORJ=PTOP+7:PRINTCHR$(PEEK(J));:NEXT
62540 NEXT:PRINTCHR$(10):RETURN
62550 D$="TOTAL"+CHR$(254)+"="+CHR$(254)+MID$(STR$(CH),2,9):GOSUB62500:RETURN
� PENETRATOR �4,6,3 \ B$�"�":D$�"":S$�"η�"�D$�B$�B$�B$�"� �"�D$�B$�B$�B$�"ͯ�"