Notes on the PC-3/PC-1251 programs
These are the files I found on a SANYO MC-60 tape that came with my Sharp CE-125 and Sharp PC-1251. These files are mainly for testing and experimenting with. With the WAV files I managed to generate two BAS files. The BAS files can be found under Tape Side A Program 1 and Tape side B program 3.
Tape side A
anchor: three
PROGRAM 2
PROGRAM 3
PROGRAM 4
PROGRAM 5
PROGRAM 7
PROGRAM 8
Tape side B
anchor: one
PROGRAM 1
PROGRAM 2
PROGRAM 4
PROGRAM 5
Code Listings (from BAS files)
10 DIM N(16),C(16),F(16),G(15),L(1),H(1),R(1),F$(1)*12,G$(1)*12
15 INPUT "PRINTOUT - 1Y/0N :";Y 20 IF Y=0 THEN 30 21 IF Y<>1 THEN 15 25 PRINT =LPRINT 30 WAIT 100: PRINT "ADM. METH. OF TIDE PRED." 40 INPUT "DATA 1,HEIGHTS 2,TAPE 3",P 45 ON P GOTO 100,200,950 50 IF P>3 THEN GOTO 40 52 IF P<0 THEN GOTO 40 100 INPUT "ST. PORT: ";G$(1) 101 INPUT "SPR. RANGE: ",G(7) 105 INPUT "NP. RANGE: ",G(8) 106 INPUT "SEC. PORT: ";F$(1) 133 INPUT "HT. DIFF (MHWS): ",G(9) 135 INPUT "HT. DIFF (MHWN): ",G(6) 147 INPUT "HT. DIFF (MLWN): ",G(14) 149 INPUT "HT. DIFF (MLWS): ",G(13) 154 PRINT "SPR. FACTORS" 155 FOR I=1 TO 8: PRINT =PRINT 156 PRINT "HW";I-9;"HRS ": INPUT N(I) 157 NEXT I 158 FOR I=9 TO 16 160 PRINT "HW+";I-8;"HRS ": INPUT N(I) 161 NEXT I 170 PRINT "NP. FACTORS" 175 FOR I=1 TO 8 176 PRINT "HW";I-9;"HRS ": INPUT F(I) 177 NEXT I 178 FOR I=9 TO 16 179 PRINT "HW+";I-8;"HRS ": INPUT F(I) 180 NEXT I 183 PRINT =LPRINT 187 INPUT "ST. PORT SEAS CORRN ? ",Z 189 INPUT "SEC PORT SEAS CORRN ? ",U 191 INPUT "RECORD DATA, Y1 N0: ";N 192 IF N=1 THEN GOTO 15 193 IF N<>0 THEN 161 200 PRINT "ST. PORT - ";G$(1): PRINT "TIDE PRED.- ";F$(1) 201 INPUT "NEW ST.PORT HW TIME ",G(3):G(3)=DEG G(3) 202 INPUT "NEW ST.PORT HW HT. ",G(4) 204 INPUT "NEW ST.PORT LW TIME ",G(10):G(10)=DEG G(10) 205 INPUT "NEW ST.PORT LW HT. ",G(11) 208 INPUT "HW TIME DIFF(HH.MM)? ",A 209 A=DEG A 210 INPUT "LW TIME DIFF(HH.MM)? ",C 211 C=DEG C 214 GOSUB 500 215 GOSUB 391 220 GOTO 201 310 END 391 INPUT "LW-HW / 1, HW-LW / 2",M 392 IF M=2 THEN GOSUB 600 393 IF M=2 THEN 201 394 IF M<>1 THEN 391 395 GOTO 404 396 GOTO 486 404 D=L+C:D=DMS D 405 B=H+A 406 PRINT USING "&&&&&&&&&&&&&&###.##";"TIME - LW ";D 407 D=DEG D 408 W=L(1)+U 409 PRINT USING "&&&&&&&&&&&&&&###.##";"HEIGHT(M) - LW ";W 410 K=B-D 411 IF K>0 THEN 413 412 B=B+24:K=B-D 413 K=INT K 414 FOR I=(9-K) TO 8 415 T=H-9+I+(C-(((C-A)*√(I*I))/K)) 416 IF T>0 AND T<24 THEN 469 417 IF T<0 THEN 419 418 IF T>24 THEN 420 419 T=T+24: GOTO 469 420 T=T-24 469 T=DMS T 470 PRINT USING "&&&&&&&&&&&&&&###.##";"TIME ";T 471 T=DEG T 472 W=C(I)*R(1)+L(1) 473 PRINT USING "&&&&&&&&&&&&&&###.##";"HEIGHT(M) ";W 474 NEXT I 475 B=H+A:B=DMS B 476 PRINT USING "&&&&&&&&&&&&&&###.##";"TIME - HW ";B 477 B=DEG B 479 W=H(1)+U 480 PRINT USING "&&&&&&&&&&&&&&###.##";"HEIGHT(M) - HW ";W 486 RETURN 500 H=G(3) 510 L=G(10) 525 R=G(4)-G(11) 531 IF G(7)<R THEN 550 532 IF G(8)>R THEN 554 535 FOR I=1 TO 16 540 C(I)=N(I)-(((G(7)-R)/(G(7)-G(8)))*(N(I)-F(I))) 545 NEXT I 547 GOTO 558 550 FOR I=1 TO 16 551 C(I)=N(I) 552 NEXT I 553 G=G(13):F=G(9): GOTO 574 554 FOR I=1 TO 16 555 C(I)=F(I) 556 NEXT I 557 G=G(14):F=G(6): GOTO 574 558 F=G(9)-(((G(7)-R)/(G(7)-G(8)))*(G(9)-G(6))) 565 G=G(14)-(((G(7)-R)/(G(7)-G(8)))*(G(14)-G(13))) 574 H(1)=G(4)-Z+U+F 575 L(1)=G(11)-Z+U+G 577 R(1)=H(1)-L(1) 580 RETURN |
10 INPUT "PRINTER CONNECTED 1Y 0N";P
20 IF P=0 THEN 40 30 PRINT =LPRINT 40 INPUT "SEMIMAJOR AXIS 1 ?";A 41 PRINT "SEMIMAJR AX1",A 50 INPUT "E SQUARED 1 ?";E 51 PRINT "E SQUARED 1",E 52 INPUT "ENTERING GEO 1 OR XYZ 2",B 53 IF B=1 THEN 68 54 INPUT "X ";X 55 PRINT "X ",X 56 INPUT "Y ";Y 57 PRINT "Y ",Y 58 INPUT "Z ";Z 59 PRINT "Z ",Z 60 L=ASN (Z/A) 61 P=A 62 Q=E 64 GOSUB 270 65 L=W 66 O=V 67 GOTO 125 68 INPUT "LATITUDE DEGS ?";D 69 INPUT "LATITUDE MINS ?";M 70 INPUT "LATITUDE SECS ?";S 71 L=D+M/60+S/3600 75 INPUT "NORTH(+1) OR SOUTH(-1)";K 76 L=L*K 77 IF K=1 THEN 80 78 PRINT "LATITUDE ";D;M;S;"S" 79 GOTO 81 80 PRINT "LATITUDE ";D;M;S;"N" 81 INPUT "LONGITUDE DEGS ?";D 85 INPUT "LONGITUDE MINS ?";M 90 INPUT "LONGITUDE SECS ?";S 91 O=D+M/60+S/3600 95 INPUT "EAST(+1) OR WEST(-1)";K 96 O=O*K 97 IF K=1 THEN 100 98 PRINT "LONGITUDE ";D;M;S;"W" 99 GOTO 110 100 PRINT "LONGITUDE ";D;M;S;"E" 110 INPUT "HT ABOVE SPHEROID ?";H 120 PRINT "HEIGHT",H 125 INPUT "ROTATION IN SECS +E -W ?",R 126 PRINT "ROT.N (SECS)",R 127 O=O+R/3600 129 V=O 133 INPUT "SCALING IN PARTS/MILLION",F 134 PRINT "SCALE (PPM)",F 135 H=H+F*A/1000000 136 PRINT "ADJUSTED VALUES" 137 W=L 138 B=2 140 GOSUB 352 141 B=1 150 F=1-E 151 M=√(1-E*SIN (L)^2) 160 X=(A/M+H)*COS (L)*COS (O) 170 Y=(A/M+H)*COS (L)*SIN (O) 180 Z=(A*F/M+H)*SIN (L) 181 PRINT "X",X 182 PRINT "Y",Y 183 PRINT "Z",Z 190 INPUT "SEMIMAJOR AXIS 2 ?";P 191 PRINT "SEMIMAJR AX2",P 200 INPUT "E SQUARED 2 ?";Q 201 PRINT "E SQUARED 2",Q 210 INPUT "X SHIFT ";I 211 PRINT "X SHIFT ",I 220 INPUT "Y SHIFT ";J 221 PRINT "Y SHIFT ",J 230 INPUT "Z SHIFT ";K 231 PRINT "Z SHIFT ",K 240 X=X+I 250 Y=Y+J 260 Z=Z+K 261 PRINT "NEW X",X 262 PRINT "NEW Y",Y 263 PRINT "NEW Z",Z 270 V=ACS (X/√(X*X+Y*Y))*SGN (Y) 280 IF Y=0 AND X<0 THEN LET V=180 290 W=L 291 F=1-Q 292 U=0 295 H=(Z-√(F*(P*P-X*X-Y*Y)))*COS (90-W) 296 H=H+√(P*P-(H*TAN (90-W))^2)-P 297 U=U+1 298 C=Z-H*SIN (W) 300 R=√(1-Q*(SIN (W))^2) 310 T=(P*F/R)*SIN (W) 321 IF ABS (T-C)<.0001 THEN 350 330 W=W+(C-T)*180/(P*Π*COS (W)) 340 GOTO 300 350 IF U<3 THEN 295 352 K=SGN (W) 355 W=W*K 356 D=INT (W) 360 R=(W-D)*60 370 M=INT (R) 380 S=(R-M)*60 385 S=.0001*INT (10000*S+.5) 386 W=W*K 390 IF K=1 THEN 395 391 PRINT "LATITUDE ";D;M;S;"S" 392 GOTO 400 395 PRINT "LATITUDE ";D;M;S;"N" 400 K=SGN (V) 405 V=V*K 410 D=INT (V) 420 R=(V-D)*60 430 M=INT (R) 440 S=(R-M)*60 445 S=.0001*INT (10000*S+.5) 446 V=V*K 450 IF K=1 THEN 460 455 PRINT "LONGITUDE ";D;M;S;"W" 456 GOTO 500 460 PRINT "LONGITUDE ";D;M;S;"E" 500 PRINT "HEIGHT",.001*INT (H*1000+.5) 501 IF B=1 THEN 999 502 RETURN 999 END |