5 REM L[MNAT AV AMAT\RRADIOSEKT. M.G. 10 REM ***************************************** 20 REM * LUXOR AB AVD.ABC 80 800131 * 30 REM * AMAT\RADIO-LOGGBOK vers.2.1 * 40 REM * QSL-KORT, KLOCKA OCH DATUM * 50 REM * 32KB VERSION = CA.380 QSO'n * 60 REM * AV BERNT LINDGREN SM0DPA * 70 REM * DATOR=ABC80 PRINTER=CENTRONICS 779 * 80 REM ***************************************** 90 T1%=65008% : M=300 : DIM A$(M)=55,G$=1 : W%=PEEK(30720) 100 DIM ]$=2,M$=2,D$=2,S$=10,R$=3,F$=7,E$=3,N$=20,C$=8,X$=1,X1$=26,X2$=38,D1$=25,D2$=2,M1$=25,U1$=27,U2$=30,T$=9 110 D1$="312831303130313130313031" : M1$="010203040506070809101112" 120 X$="" : X1$="DATUM GMT RST FREKV MODE" : X2$=STRING$(38,45) 130 ; CHR$(12,7)"Dagens datum (]]MMDD)"; : INPUT ]1$ 140 IF LEN(]1$)<>6 THEN 130 150 ]$=LEFT$(]1$,2) 160 M$=MID$(]1$,3,2) : IF M$<"01" OR M$>"12" THEN 130 170 D$=RIGHT$(]1$,5) : IF D$<"01" OR D$>"31" THEN 130 180 ; "Vill du st{lla klockan (J/N)"; : GET G$ 190 IF G$="J" OR G$="j" THEN ; CUR(1,0)SPACE$(30) : GOSUB 950 200 REM ***** FUNKTIONS-LISTA ***** REM 210 ; CHR$(12,7) 220 ; CUR(3,6)"1.SKRIVA IN QSO'n"TAB(29)"DATUM" 230 ; : ; TAB(6)"2.S\KA ANROPSIGNAL" 240 ; TAB(29)"TID" : ; TAB(6)"3.PRINTA ALLA QSO'n" 250 ; : ; TAB(6)"4.LAGRA QSO'n"TAB(29)"QSO'n" 260 ; : ; TAB(6)"5.H[MTA QSO'n" 270 ; : ; TAB(6)"6.RADERA MINNET" 280 ; : ; TAB(6)"7.AVSLUTA PROGRAMMET" 290 FOR I=4 TO 36 : ; CUR(1,I)X$CUR(17,I)X$; : NEXT I 300 ; CUR(0,10)" AMAT\RADIO-LOGGBOK " 310 FOR I=1 TO 17 : ; CUR(I,4)X$CUR(I,36)X$CUR(I,27)X$ : NEXT I 320 IF I1=M THEN POKE 32325,717,713,718,718,709,724 330 IF I1=M THEN POKE 32453,710,725,716,716,724 340 ; CUR(18,11)"V[LJ EN SIFFRA (1-7)" 350 ; CUR(7,29)T$+RIGHT$(NUM$(100+S%),3) 360 ; CUR(4,29)]$+M$+D$ : ; CUR(10,29)I1 370 G%=INP(56)-128% 380 IF G%=49 OR G%=50 OR G%=51 OR G%=52 OR G%=53 OR G%=54 OR G%=55 THEN 400 ELSE GOSUB 1000 390 GOTO 350 400 G%=G%-48% : ; CUR(2%*G%+1%,7)X$ 410 ; CUR(18,10)"TRYCK P] RETURN "; : INPUT G$ : ; CUR(18,10)SPACE$(22) 420 ON G% GOSUB 450,620,710,810,860,1220,430 : GOTO 210 430 ; CHR$(12)"TACK F\R IDAG" : CHAIN "" : END 440 REM **** INMATNING AV QSO' **** REM 450 IF I1=M THEN 210 460 ; CHR$(12,7)TAB(1)"(M) Anger max tecken" 470 ; TAB(1)"ANROPSIGNAL (6):"; : INPUT S$ 480 ; TAB(1)"GMT :"T$ 490 ; TAB(1)"RST (3):"; : INPUT R$ 500 ; TAB(1)"FREKVENS (7):"; : INPUT F$ 510 ; TAB(1)"MODE (3):"; : INPUT E$ 520 ; TAB(1)"NAMN-QTH (20):"; : INPUT N$ 530 U1$=]$+M$+D$+"-"+T$+"-"+R$+"-"+F$+"-"+E$ : U2$=" "+S$+"-"+N$ 540 IF LEN(U1$+SPACE$(R%))<36 THEN R%=R%+1 : GOTO 540 550 IF LEN(S$)<6 THEN S$=S$+" " 560 ; "Vill du printa ett QSL-kort (J/N)"; : GET G$ 570 IF G$="J" OR G$="j" THEN GOSUB 1260 580 FOR I1=I1 TO M : A$(I1)=U1$+U2$ : U1$="" : U2$="" : IF A$(I1)="" THEN 600 590 NEXT I1 600 RETURN 610 REM ****** S\KER I MINNET ******REM 620 ; "Vad vill du s|ka." : ; "ex.Namn,Datum,Signal osv."; : INPUT S$ 630 IF S$="" THEN 690 640 ; CHR$(12)X1$ : ; X2$ 650 FOR I=0 TO M 660 C%=INSTR(1,A$(I),S$) : C1%=INSTR(1,A$(I)," ") 670 IF C%>=1 THEN IF MID$(A$(I),C%,LEN(S$))=S$ THEN ; LEFT$(A$(I),C1%) : ; RIGHT$(A$(I),C1%+1) : ; X2$ : GET G$ 680 NEXT I 690 ; "Vill du fors{tta s|ka (J/N)"; : GET G$ 700 IF G$<>"J" THEN RETURN ELSE ; CHR$(12,7) : GOTO 620 710 REM ***** PRINTA QSO'n ***** REM 720 IF NOT W%=195 THEN 210 730 OPEN "PR:" ASFILE 1 : ; #1,X1$ : ; #1,X2$ 740 FOR I=0 TO M : C2%=INSTR(1,A$(I)," ") 750 ; #1,LEFT$(A$(I),C2%) : ; #1,RIGHT$(A$(I),C2%+1) 760 IF A$(I)="" THEN 790 770 ; #1,X2$ 780 NEXT I 790 CLOSE 1 : RETURN 800 REM ***** LAGRAR QSO'n ***** REM 810 ; "S{tt kassetminnet i l{ge REC/PLAY" 820 ; "Vilken m}nad (ex.FEB79)"; : INPUT C$ 830 PREPARE "CAS:"+C$+".TXT" ASFILE 2 840 FOR I2=0 TO M : ; #2,A$(I2) : NEXT I2 : CLOSE 2 : C$="" : RETURN 850 REM ***** H[MTAR QSO'n ***** REM 860 ONERRORGOTO 210 : OPEN "CAS:"+C$+".TXT" ASFILE 3 870 ONERRORGOTO 930 880 FOR I1=I1 TO M : ; CUR(10,29)I1 890 IF I1=M THEN CLOSE 3 : GOTO 210 900 INPUTLINE #3,A$(I1) : A$(I1)=LEFT$(A$(I1),LEN(A$(I1))-2) 910 IF A$(I1)="" THEN 900 920 NEXT I1 930 CLOSE 3 : C$="" : RETURN 940 REM ****** S[TTER TIDEN ****** REM 950 ONERRORGOTO 950 : ; CUR(1,13)"hh,mm,ss"; : INPUT H%,M%,S% 960 Z=H%*3600+M%*60+S% : Z1%=Z*50/256 970 Z%= NOT (50*(Z-Z1%/50*256)) 980 Z1%= NOT Z1% 990 POKE 65008%,Z%,Z1%,SWAP%(Z1%) : RETURN 1000 REM ***** L[SER TIDEN ***** REM 1010 D%=0 1020 IF (PEEK(T1%) AND 4%)=0 THEN 1010 1030 FOR I%=0% TO 2% : Z%(I%)=255% XOR PEEK(T1%+I%) : NEXT I% 1040 Z=((Z%(2)*256)+Z%(1))*5.12+Z%(0)/50 1050 IF Z>86400 THEN Z=Z-86400 : D%=D%+1 : GOTO 1050 1060 H%=Z/3600 : Z=Z-3600*H% : M%=Z/60 : S%=Z-60%*M% 1070 IF D%<>0 THEN GOSUB 960 1080 T$=RIGHT$(NUM$(100+H%),3)+RIGHT$(NUM$(100+M%),3) 1090 IF H%=0 AND M%=0 AND S%=0 THEN GOSUB 1120 1100 RETURN 1110 REM ***** L[SER DATUM ***** REM 1120 D$=ADD$(D$,"1",0) : FOR I=1 TO 2000 : NEXT I 1130 S1%=INSTR(1,M1$,M$) 1140 D2$=ADD$(MID$(D1$,S1%,2),"1",0) 1150 IF INT(VAL(]$)/4)=VAL(]$)/4 THEN IF D2$="29" THEN D2$=ADD$(MID$(D1$,3,2),"2",0) 1160 IF D$=D2$ THEN M$=ADD$(M$,"1",0) : D$="1" 1170 IF M$="13" THEN ]$=ADD$(MID$(]$,1,2),"1",0) : M$="1" : D$="1" : S1%=1 1180 IF LEN(]$)<2 THEN ]$=]$+"0" 1190 IF LEN(M$)<2 THEN M$="0"+M$ 1200 IF LEN(D$)<2 THEN D$="0"+D$ 1210 RETURN 1220 ; TAB(6)"[r du s{ker p} det (J/N)"; : GET G$ 1230 IF G$<>"J" THEN 210 1240 FOR I3=0 TO M : A$(I3)="" : I1=0 : NEXT I3 : RETURN 1250 REM ***** PRINTA QSL-KORT *****REM 1260 IF NOT W%=195 THEN 580 1270 OPEN "PR:" ASFILE 1 1280 ; #1,"***************************************" 1290 ; #1,"* COMPUTERIZED Q S L-CARD BY ABC80 *" 1300 ; #1,"* *" 1310 ; #1,"* F R O M *" 1320 ; #1,"* SM0DPA *" 1330 ; #1,"* SSS *" 1340 ; #1,"* S S M M 000 DDDD PPPP AAA *" 1350 ; #1,"* S M M 0 0 D D P P A A *" 1360 ; #1,"* S M M 0 00 D D P P A A *" 1370 ; #1,"* S KK 0 0 0 AAAAA Y *" 1380 ; #1,"* S K K 00 0 A A Y *" 1390 ; #1,"* S S K K 0 0 A A Y *" 1400 ; #1,"* SSS K K 000 A A Y *" 1410 ; #1,"* *" 1420 ; #1,"* T O *" 1430 ; #1,"* *" 1440 ; #1,"* "S$" *" 1450 ; #1,"* *" 1460 ; #1,"* DATE GMT RST FREQ MODE *" 1470 ; #1,"* ----------------------------------- *" 1480 ; #1,"* "U1$SPACE$(R%)"*" 1490 ; #1,"* ----------------------------------- *" 1500 ; #1,"* *" 1510 ; #1,"* BERNT LINDGREN 777777 333333 *" 1520 ; #1,"* 7 3 *" 1530 ; #1,"* 7 3 *" 1540 ; #1,"* 7 3 *" 1550 ; #1,"* S W E D E N 7 3 *" 1560 ; #1,"* 7 3 *" 1570 ; #1,"* QRA-LOC. IT 51 j 7 3 3 *" 1580 ; #1,"* 7 333 *" 1590 ; #1,"***************************************" 1600 CLOSE 1 : RETURN