10 REM SUBMARINE MAIN PROGRAM **************************************** & !NEEDS 4 SUBPROGRAMS: SUBSTA,SUBRUN,SUBINS,SUBFIL & 1 DATA FILE, SUB.DAT 20 30 COMMON (A1) !MAP ARRAYS & A(18,22), F(18,22) !CURRENT AND OLD POSITIONS & , D(9) !DAMAGE & , S(9),SD(9) !STATUS & , AZ(8) !AZIMUTH INFO 40 COMMON (A2) !VARIABLES AND COUNTERS & IND !FUNCTION INDICATOR & ! 1=RESTART, 2=INST, 3=REPAINT, 4=START & , Z1,ZOLD !TURN COUNTER & , P,POLD !POWER & , D,DOLD !DEPTH & , S1,S2 !SUBMARINE COORDINATES & , S3,S4, S5,S6 !HEADQUARTERS COORDINATES & , Q5 !DIFFICULTY & , Q6 !ISLAND CUTS COUNTER & , S,S7 !SHIP COUNTERS & , C !CREW & , F !FUEL & , D2 !REARM COUNTER & , T,M !TORPEDO & MISSLE COUNTERS & , D8,D9 !UNIT VECTOR FOR SHIPS & , M1,M2 !UNIT VECTOR FOR HAZZARDS & , RNG !DEPTH CHARGE RANGE & , N$ !NAME 45 E$=CHR$(155%) 50 IND =4 !BEGINING MARKER 60 CALL SUBSTA !SET UP GAME 70 CALL SUBRUN !RUNNING GAME 80 ON IND GOTO 110,90,60,60,60 90 CALL SUBINS !OPS MANUAL 95 IND=3 !REPAINT 100 GOTO 60 110 SLEEP 2% !WAIT A BIT 115 CALL SUBFIL !FIND HIGHEST SCORES 141 PRINT UL$;\INPUT A$\IF LEFT$(A$,1)="Y" THEN 60 !RESTART GAME 150 PRINT E$;"c" !RESET TERMINAL 160 END