OpenBCM V1.07b12 (Linux)

Packet Radio Mailbox

DB0FHN

[JN59NK Nuernberg]

 Login: GUEST





  
DB1ZF  > MSX      28.10.95 15:42l 335 Lines 8374 Bytes #-10430 (0) @ EU
BID : 28A50BDB0GV
Read: DG2MMV DL9SED DL1MAC DK6SV DK1KMR DL5RAZ GUEST
Subj: qth-Kenner
Path: DB0AAB<DB0SL<DB0RGB<DB0ABH<DB0SRS<DB0SIF<DB0GV
Sent: 951028/1214z @:DB0GV.#HES.DEU.EU [Maintal-Ffm SYSOP: DF5FF] $:28A50BDB0GV
de DB1ZF @ DB0GV.#HES.DEU.EU   (Kurt)

to MSX @ EU

1 REM **************************
2 REM *                        *
3 REM * QTH-LOCATOR BEREKENING *
4 REM *                        *
5 REM * DOOR R.H.FLOKSTRA      *
6 REM *                        *
7 REM * PA3DRQ                 *
8 REM *                        *
9 REM **************************
10 REM ** HOOFDPROGRAMMA **
20 KEYOFF:CLS:CLEAR:POKE 64683!,255:OUT 170,26
30 S$="Q T H - B E R E C H N U N G"
40 LOCATE 6,1:PRINT S$
50 LOCATE 1,3:PRINT "GIB DEN QTH LOCATOR WIE FOLGT EIN:"
60 LOCATE 1,5:PRINT "1: ALTES SYSTEM"
70 LOCATE 1,7:PRINT "2: WELTWEITES SYSTEM"
80 LOCATE 1,9:PRINT "3: DEC. GRAD"
90 LOCATE 1,11:PRINT "4: DEC. GRAD"
100 LOCATE 1,13:PRINT "5: GRD. MIN. SEC."
110 LOCATE 1,15:PRINT "6: GRD. MIN. SEC."
120 LOCATE 25,5:PRINT "DM02D"
130 LOCATE 25,7:PRINT "JO32EV"
140 LOCATE 25,9:PRINT "52.90 NB"
150 LOCATE 25,11:PRINT "06.37 OL"
160 LOCATE 25,13:PRINT "052.53.44 NB"
170 LOCATE 25,15:PRINT "006.22.00 OL
180 LOCATE 4,18:PRINT "OL(NB) KANN AUCH WL(ZB) SEIN"
190 LOCATE 4,21:PRINT "DRUECKE EINE BELIEBIGE TASTE"
200 A$=INKEY$:IF A$="" THEN 200
210 CLS
220 INPUT "DER EIGENE LOCATOR IST ";Q$
230 T$=Q$
240 IF LEN(Q$) <6 THEN 440
250 IF LEN(Q$) >9 THEN 270
260 IF LEN(Q$) >6 THEN 310 ELSE 370
270 GOSUB 1430
280 GOSUB 2370
290 T$=QQ$
300 GOTO 350
310 GOSUB 1270
320 GOSUB 2050
330 GOSUB 2370
340 T$=QQ$
350 GOSUB 500
360 GOTO 530
370 ZZ$=Q$
380 GOSUB 1150
390 GOSUB 2050
400 GOSUB 2370
410 T$=QQ$
420 GOSUB 500
430 GOTO 550
440 IF MID$(Q$,3,2)>"80" THEN GOTO 220
450 IF MID$(Q$,5,1)>"J" THEN GOTO 220
460 GOSUB 1820
470 GOSUB 1880
480 GOSUB 500
490 GOTO 530
500 M=L:MD=LD:MM=LM:MS=LS
510 NR=BR:ND=BD:NM=BM:NS=BS
520 RETURN
530 GOSUB 2250
540 ZZ$=Z$
550 PRINT:INPUT "LOCATOR DER GEGENSTATION ";Q$
560 IF LEN(Q$) <6 THEN 760
570 IF LEN(Q$) >9 THEN 590
580 IF LEN(Q$) >6 THEN 630 ELSE 680
590 GOSUB 1430
600 GOSUB 2370
610 Q$=QQ$
620 GOTO 800
630 GOSUB 1270
640 GOSUB 2050
650 GOSUB 2370
660 Q$=QQ$
670 GOTO 800
680 Z$=Q$
690 GOSUB 1150
700 GOSUB 2050
710 GOSUB 2370
720 Q$=QQ$
730 RM=L:RR=BR
740 GOSUB 2170
750 GOTO 830
760 IF MID$(Q$,3,2)>"80" THEN GOTO 550
770 IF MID$(Q$,5,1)>"J" THEN GOTO 550
780 GOSUB 1820
790 GOSUB 1880
800 RM=L:RR=BR
810 GOSUB 2170
820 GOSUB 2250
830 CLS
840 LOCATE 5,0:PRINT S$
850 LOCATE 0,2:PRINT "EIGENSTATION"
860 LOCATE 20,2:PRINT "GEGENSTATION"
870 LOCATE 0,4:PRINT T$
880 LOCATE 20,4:PRINT Q$
890 LOCATE 0,6:PRINT ZZ$
900 LOCATE 20,6:PRINT Z$
910 LOCATE 0,8:PRINT USING "###.##x";ABS(M);
920 IF SGN(M)=-1 THEN PRINT " WL" ELSE PRINT " OL"
930 LOCATE 20,8:PRINT USING "###.##x";ABS(RM);
940 IF SGN(RM)=-1 THEN PRINT " WL" ELSE PRINT " OL"
950 LOCATE 0,10:PRINT USING "###.##x";ABS(NR);
960 IF SGN(NR)=-1 THEN PRINT " ZB" ELSE PRINT " NB"
970 LOCATE 20,10:PRINT USING "###.##x";ABS(RR);
980 IF SGN(RR)=-1 THEN PRINT " ZB" ELSE PRINT " NB"
990 LOCATE 0,12:PRINT USING "###x##'##''";INT(MD);INT(MM);INT(MS);
1000 IF SGN(M)=-1 THEN PRINT " WL" ELSE PRINT " OL"
1010 LOCATE 20,12:PRINT USING "###x##'##''";INT(LD);INT(LM);INT(LS);
1020 IF SGN(RM)=-1 THEN PRINT " WL" ELSE PRINT " OL"
1030 LOCATE 0,14:PRINT USING "###x##'##''";INT(ND);INT(NM);INT(NS);
1040 IF SGN(NR)=-1 THEN PRINT " ZB" ELSE PRINT " NB"
1050 LOCATE 20,14:PRINT USING "###x##'##''";INT(BD);INT(BM);INT(BS);
1060 IF SGN(RR)=-1 THEN PRINT " ZB" ELSE PRINT " NB"
1070 LOCATE 1,17:PRINT "DER ABSTAND ZWISCHEN DEN STATIONEN:"
1080 LOCATE 13,20:PRINT USING "####.#";W;:PRINT " KM."
1090 LOCATE 2,22:PRINT "NEUE BERECHNUNGEN AUSFUEHREN? J/N"
1100 AA$=INKEY$:IF AA$="" THEN 1100
1110 IF AA$=CHR$(74) THEN 550
1120 KEYON
1130 END
1140 REM ** MAIDENHAID SYSTEEM **
1150 GOSUB 1820
1160 F$=MID$(Q$,6,1)
1170 A=ASC(A$)
1180 B=ASC(B$)
1190 C=ASC(C$)
1200 D=ASC(D$)
1210 E=ASC(E$)
1220 F=ASC(F$)
1230 L=-180+(A-65)*20+(C-48)*2+(E-64.5)/12
1240 BR=-90+(B-65)*10+D-48+(F-64.5)/24
1250 RETURN
1260 REM ** GRADEN SYSTEEM **
1270 A$=MID$(Q$,7,2)
1280 IF A$="NB" THEN BR=VAL(Q$)
1290 IF A$="ZB" THEN BR=-VAL(Q$)
1300 IF A$="OL" THEN L=VAL(Q$)
1310 IF A$="WL" THEN L=-VAL(Q$)
1320 IF A$="NB" OR A$="ZB" THEN A$="OL OF WL"
1330 IF A$="OL" OR A$="WL" THEN A$="NB OF ZB"
1340 PRINT:PRINT "ERGAENZE UNGENAUEN LOCATOR ";
1350 PRINT A$;
1360 INPUT Y$
1370 A$=MID$(Y$,7,2)
1380 IF A$="NB" THEN BR=VAL(Y$)
1390 IF A$="ZB" THEN BR=-VAL(Y$)
1400 IF A$="OL" THEN L=VAL(Y$)
1410 IF A$="WL" THEN L=-VAL(Y$)
1420 RETURN
1430 A$=RIGHT$(Q$,2)
1440 B$=MID$(Q$,1,3)
1450 C$=MID$(Q$,5,2)
1460 D$=MID$(Q$,8,2)
1470 Q=VAL(B$)+(VAL(C$)/60)+(VAL(D$)/3600)
1480 IF A$="NB" THEN BR=Q:GOTO 1560
1490 IF A$="ZB" THEN BR=-Q:GOTO 1560
1500 IF A$="OL" THEN L=Q
1510 IF A$="WL" THEN L=-Q
1520 LD=VAL(B$)
1530 LM=VAL(C$)
1540 LS=VAL(D$)
1550 GOTO 1590
1560 BD=VAL(B$)
1570 BM=VAL(C$)
1580 BS=VAL(D$)
1590 IF A$="NB" OR A$="ZB" THEN A$="OL OF WL"
1600 IF A$="OL" OR A$="WL" THEN A$="NB OF ZB"
1610 PRINT "ERGAENZE UNGENAUEN LOCATOR ";
1620 PRINT A$;
1630 INPUT Y$
1640 A$=RIGHT$(Y$,2)
1650 B$=MID$(Y$,1,3)
1660 C$=MID$(Y$,5,2)
1670 D$=MID$(Y$,8,2)
1680 Y=VAL(B$)+(VAL(C$)/60)+(VAL(D$)/3600)
1690 IF A$="NB" THEN BR=Y:GOTO 1770
1700 IF A$="ZB" THEN BR=-Y:GOTO 1770
1710 IF A$="OL" THEN L=Y
1720 IF A$="WL" THEN L=-Y
1730 LD=VAL(B$)
1740 LM=VAL(C$)
1750 LS=VAL(D$)
1760 RETURN
1770 BD=VAL(B$)
1780 BM=VAL(C$)
1790 BS=VAL(D$)
1800 RETURN
1810 REM ** OUDE SYSTEEM **
1820 A$=MID$(Q$,1,1)
1830 B$=MID$(Q$,2,1)
1840 C$=MID$(Q$,3,1)
1850 D$=MID$(Q$,4,1)
1860 E$=MID$(Q$,5,1)
1870 RETURN
1880 IF E$="A" THEN E=3:F=1
1890 IF E$="B" THEN E=1:F=1
1900 IF E$="C" THEN E=1:F=3
1910 IF E$="D" THEN E=1:F=5
1920 IF E$="E" THEN E=3:F=5
1930 IF E$="F" THEN E=5:F=5
1940 IF E$="G" THEN E=5:F=3
1950 IF E$="H" THEN E=5:F=1
1960 IF E$="J" THEN E=3:F=3
1970 IF ASC(A$)<85 THEN A=ASC(A$)-59 ELSE A=ASC(A$)-85
1980 IF ASC(B$)<85 THEN B=ASC(B$)-59 ELSE B=ASC(B$)-85
1990 C=VAL(C$)
2000 D=VAL(D$)
2010 IF D=0 THEN C=C-1
2020 IF D=0 THEN D=10
2030 L=(2*A+.2*D-E/30-12)
2040 BR=(B+35-C/8-F/48)
2050 U=L
2060 IF SGN(L)=-1 THEN U=ABS(L)
2070 LD=INT(U)
2080 LM=(U-INT(U))*60
2090 LS=(LM-INT(LM))*60
2100 UU=BR
2110 IF SGN(BR)=-1 THEN UU=ABS(BR)
2120 BD=INT(UU)
2130 BM=(UU-INT(UU))*60
2140 BS=(BM-INT(BM))*60
2150 RETURN
2160 REM ** BERECHNUNG **
2170 PI=3.1415926535898#
2180 P=180/PI
2190 BP=BR/P:NP=NR/P
2200 LP=L/P:MP=M/P
2210 V=SIN(NP)*SIN(BP)+COS(NP)*COS(BP)*COS(MP-LP)
2220 W=ATN(SQR(1-V*V)/V)*111.12*P
2230 RETURN
2240 REM ** MAIDENHAID LOCATOR **
2250 L=(L+180)/20
2260 BR=(BR+90)/10
2270 F=INT(L)
2280 G=INT(BR)
2290 L=(L-F)*10
2300 BR=(BR-G)*10
2310 H=INT(L)
2320 I=INT(BR)
2330 Z$=CHR$(F+65)+CHR$(G+65)+CHR$(H+48)+CHR$(I+48)
2340 Z$=Z$+CHR$(INT((L-H)*24)+65)+CHR$(INT((BR-I)*24)+65)
2350 RETURN
2360 REM ** OUDE LOCATOR **
2370 DL=0:ML=0:AM=0:AK=0
2380 DB=0:DD=0:MB=0:CN=0:CM=0
2390 IF BD<34 OR BD>60 THEN 3200
2400 IF RM<-12 OR RM>40 THEN 3200
2410 DL=BD-34
2420 IF DL<6 THEN DL=DL+85 ELSE DL=DL+59
2430 LY(1)=7
2440 LY(2)=6
2450 LY(3)=5
2460 LY(4)=4
2470 LY(5)=3
2480 LY(6)=2
2490 LY(7)=1
2500 LY(8)=0
2510 FOR I = 1 TO 8
2520 ML=ML+7.5
2530 IF ML>=BM THEN 2550
2540 NEXT I
2550 LY=LY(I)
2560 AW$(1)="H,A,B"
2570 AW$(2)="G,J,C"
2580 AW$(3)="F,E,D"
2590 AM=ML-BM
2600 FOR I = 1 TO 3
2610 AK=AK+2.5
2620 IF AK>AM THEN 2640
2630 NEXT I
2640 AW$=AW$(I)
2650 IF SGN(L)=-1 THEN LD=-LD
2660 IF SGN(L)=-1 THEN PP=5 ELSE PP=6
2670 DB=LD/2+PP
2680 IF DB<6 THEN DB=DB+85 ELSE DB=DB+59
2690 BY(1)=1
2700 BY(2)=2
2710 BY(3)=3
2720 BY(4)=4
2730 BY(5)=5
2740 BY(6)=6
2750 BY(7)=7
2760 BY(8)=8
2770 BY(9)=9
2780 BY(10)=10
2790 DD=DB-INT(DB)
2800 IF SGN(L)=-1 AND DD>=.5 THEN DB=DB+1
2810 IF SGN(L)=-1 AND DD>=.5 THEN I=5 ELSE 2830
2820 GOTO 2840
2830 IF DD>=.5 THEN I=6 ELSE 2890
2840 IF SGN(L)=-1 THEN 2850 ELSE 2870
2850 X=I:Y=1:Z=-1
2860 GOTO 2930
2870 X=I:Y=10:Z=1
2880 GOTO 2930
2890 IF SGN(L)=-1 THEN 2900 ELSE 2920
2900 X=10:Y=1:Z=-1
2910 GOTO 2930
2920 X=1:Y=10:Z=1
2930 FOR I = X TO Y STEP Z
2940 MB=MB+12
2950 IF MB>=LM THEN 2970
2960 NEXT I
2970 BY=BY(I)
2980 IF BY=10 THEN LY=LY+1:BY=0
2990 BW$(1)="B,C,D"
3000 BW$(2)="A,J,E"
3010 BW$(3)="H,G,F"
3020 CN=MB-LM
3030 IF SGN(L)=-1 THEN 3040 ELSE 3060
3040 X=3:Y=1:Z=-1
3050 GOTO 3070
3060 X=1:Y=3:Z=1
3070 FOR I = X TO Y STEP Z
3080 CM=CM+4
3090 IF CM>CN THEN 3110
3100 NEXT I
3110 BW$=BW$(I)
3120 FOR I = 1 TO 5 STEP 2
3130 FOR II = 1 TO 5 STEP 2
3140 IF MID$(AW$,I,1)=MID$(BW$,II,1) THEN 3170
3150 NEXT II
3160 NEXT I
3170 QQ$=CHR$(DB)+CHR$(DL)+CHR$(LY+48)+CHR$(BY+48)+MID$(AW$,I,1)
3180 LD=ABS(LD)
3190 RETURN
3200 QQ$=""
3210 RETURN



Read previous mail | Read next mail


 19.05.2024 01:36:55lGo back Go up