5 PRINT"************************************************" 10 PRINT"*******U-BOOTJAGT*******" 11 PRINT"************************************************" 20 PRINT:PRINT"########################" 30 INPUT"WILLST DU SPIELANWEISUNGEN";A$:IFLEFT$(A$,1)="J"THEN700 49 REMK VARIABLES ARE KEYBOARD VALUES-LC=LINE LENGTH:P=POKE KEYBRD VAL 50 GP=53247:GI=3:LC=64:W=32:K1=5:K2=3:K3=65:K4=33:P=1 59 REM SEE WICH SYSTEM THIS IS BY PEEKING KEYBOARD 60 VB=600:IFPEEK(KB)>128THENVB=540:GOTO90 80 P=254:LC=32 89 REMT1+T2=TORPEDOE POSITIONS:G1=TUBE POSITION 90 G1=INT(GP+26*LC+0.5*W):T=G1+1:T2=T:MP=GP+21*LC 98 REM ID(X) STORES ORIGINAL SHIP DISPLAY VALUE FOR RESETING AFTER HIT 99 REM(X)=CURRENT DISPLAY VALUE FOR SHIP 100 FORX=1TO5:READG(X),ID(X):D(X)=ID(X):NEXT 109 REM S1,S2,S3 ARE ORIGINAL SHIP POSITIONS S(X)=CURRENT POSITIONS 110 S1=GP+15*LC:S3=GP+11*LC+W:S(1)=S1:S(2)=S1+1:S(3)=S3:S(4)=S3-1 120 INPUT"BLOEDES(1)ODER SUPERBLOEDES(2)SPIEL";G:POKE530,1:POKE57088,P 130 MN=MP:POKE56900,0:SD=GP+6*LC+8:S5=GP+7*LC+W+6:S(5)=S5:FM=-2 139 REM GP=CORNER OF SCREEN-DRAW SCREEN 140-180 140 FORX=1TO32:PRINT:NEXT:FORX=1TO32:POKEGP+3*LX+X,233 150 POKEGP+29*LC+X,233 160 IFVB=540THENPOKEGP+X*LC,233:POKEGP+32+X*LC,233 170 POKEGP+X+13*LC,191:POKEGP+X+32*LC,233:NEXT 180 POKEGP+14*LC+20,193:POKEGP+14*LC+21,193:POKEGP+13*LC+21,13 189 REM POLL KYBRD-GI=TUBE'S DIRECTION 190 P=PEEK(57088):IFVB=600THENP=255-P 200 IFP=K1ANDGI<5THENGI=GI+1 210 TURN=TURN+1:IFTURNS>300THEN660 220 IFP=K2ANDGI>1THENGI=GI-1 229 REM DISPLAY TIME 230 S$=STR$(300-TU) 240 FORX=2TOLEN(S$):POKESD+10+X,ASC(MID$(S$,X,1)) 250 NEXT 260 POKESD+10+X,32 270 POKEG1,G(GI):POKEG1+2,G(GI) 279 REM MOVE TORP IF NOT IN TUBE 280 IFP=K3ANDDT=G1+1THENPOKET,32:MF=2*LC-3+GI:T=T-MF:POKET,16:GOTO300 290 IFP=K3ANDT2=G1+1THENPOKET2,32:M2=2*LC-3+GI:T2=T2-M2:POKET2,16 300 IFP=K4THENPOKE530,0:POKE56900,1:GOTO120 310 IFG=1THENFORX=1TO75:NEXT 319 REM MOVE SHIPS 320 POKES(1),32:POKES(3),32:POKES(5),32:S(1)=S(1)+1:S(5)=S(5)+FM 329 REM RESET SHIPS IF AT EDGE OF SCREEN 330 IFS(1)=S1+WTHENS(1)=S1:D(1)=ID(1):D(2)=ID(2) 340 S(2)=S(1)+1:S(3)=S(3)-1 350 IFS(3)=S3-WTHENS(3)=S3:D(3)=ID(3):D(4)=ID(4) 359 REM COUNT MINE MOVES-MOVE'M EVERY FIFTH TIME 360 MC=MC+1:IFMC=5THENMC=1:GOSUB505 370 IFS(5)=S5ORS(5)=(S5-W-6)THENFM=-FM:D(5)=ID(5) 380 S(4)=S(3)-1:FORX=1TO5:POKES(X),D(X):NEXT 390 IFT=G1+1THENFORX=1TO50:NEXT:GOTO450 399 REM LOOK FOR TOPEDO HIT 400 P=PEEK(T-LC):IFP<10THENGOSUB550:GOTO450 409 REM SECOND CHANCE FOR HIT IF GAME 1 410 IFG=1THENP=PEEK(T-LC-1):IFP<10THENGOSUB550 419 REM SEE IF YOU HIT A MINE 420 IFP=127THENGOSUB550:GOTO450 429 REM BLANK TORP AND RESTART IT IF BEYOND EDGE OF SCREEN 430 IFT10THENPOKEMN+8,127:IFSC>30THENPOKEMN+16,127:RETURN 540 RETURN 549 REM EXPLOSION ROUTINEDISPLAY AND MOVE TORP BACK 550 POKET,32:Q=T-LC-3:T=G1+1:POKET,16:GOTO570 560 POKET2,32:Q=T2-LC-3:T2=G1+1:POKET2,16 570 D=42 580 FORX=1TO5:POKEQ+X,D:NEXT:IFD=42THEND=32:GOTO580 589 REM BLANK SHIP THAT GOT HIT (CHANGE IT TO 32s) 590 IFP=7ORP=8THEND(1)=32:D(2)=32 600 IFP=5ORP=6THEND(3)=32:D(4)=32 610 IFP=4THEND(5)=32:SC=SC+5 619 REM SCORE HIT-IF NOT A MINE (127) 620 IFP=127THENRETURN 629 REM POKE UP SCORE 630 SC=SC+1:POKEG1+1,16:PS=SC:OS=0 640 IFSC>9THENOS=INT(SC/10):PS=(SC-10*OS) 650 POKESD+2,48:POKESD+1,PS+48:POKESD+2,48:POKESD+3,48:RETURN 660 PRINT"PUNKTZAHL "SC*100:A$="FUCKER":IFSC>9THENA$="ARSCHLOCH" 670 IFSC>15THENA$="OBERARSCH":IFSC>20THENA$="WIXER" 680 IFSC>25THENA$="HEHNERFICKER":IFSC>30THENA$="HEHNERFICKER TOTAL" 690 PRINT"DU BIST EIN "A$" AUFGRUND DIESER PUNKTE":SC=0:TU=0:GOTO120 699 PRINT$$$$$$$$$$$$$$$$$$$$$$$$" 700 PRINT:PRINT:PRINT:PRINT"DER BLAUE KNOPF ZIELT NACH LINKS" 705 PRINT"$$$$$$$$$$$$$$$$$$$$$$$$" 710 PRINT"DER GELBE KNOPF ZIELT NACH RECHTS" 715 PRINT"$$$$$$$$$$$$$$$$$$$$$$$$" 720 PRINT"DER RECHTE KIPPSCHALTER FEUERT DIE TORPEDOS" 725 PRINT"$$$$$$$$$$$$$$$$$$$$$$$$" 740 PRINT"DAS OBERE KLEINE SCHIFF ERGIBT 500 PUNKTE" 741 PRINT"JEDES ANDERE SCHIFF ERGIBT 100 PUNKTE" 745 PRINT"$$$$$$$$$$$$$$$$$$$$$$$$" 750 PRINT"DER ROTE KNOPF BRICHT DAS SPIEL AB" 755 PRINT"$$$$$$$$$$$$$$$$$$$$$$$$" 760 INPUT"DRUECK EINE ZAHL UND DER SCHEISS BEGINNT!";X:GOTO50 769 REM DATA LINE COULD BE RELOCATED EARLIER IN PROGRAM 770 DATA189,7,201,8,140,6,200,5,190,4 OK POKE515,0 ?OM ERROR OK POKE515,0 OK