10 REM * LOGIT.BA QSL LOG PROGRAM 20 REM * COPYRIGHT 1988 BY THOMAS L. GILCHRIST N7KHU, ALL RIGHTS RESERVED 30 REM * COMPUSERVE 76010,1273 PBBS: N7KHU @ KE7OM (SEATTLE, WA) 40 REM * FOR USE WITH ULTRASCREEN 60X10 SCREEN 50 REM * PROGRAM INFO IN FILE LOGIT.DOC 60 CLEAR 2000:DIM A$(27),V$(14),P%(14) 70 SCREEN 1:GOSUB 310 80 ONERROR GOTO 10:CLS:GOSUB 350:PRINT @120,"ENTER NAME OF FILE:";:LINE INPUT F$ 90 GOSUB 2290 100 ONERROR GOTO 10:GOTO 140 110 CLOSE:PRINT@120,CHR$(27);CHR$(75);"FILE NOT FOUND ( TO CREATE):";:LINE INPUT AN$ 120 IF AN$<>"" THEN CLOSE:GOTO 80 130 GOSUB 760:MENU 140 CLS 220 GOSUB 2230:GOSUB350:GOSUB500:GOSUB 510:GOSUB 570 250 X%=1:GOSUB 580:KEY ON 260 ON KEY GOSUB 610,870,890,910,640,650,660,655 270 REM * MAIN LOOP 280 PRINT@P%(X%),;:TP$=V$(X%):LINEINPUT V$(X%):IF V$(X%)="" THEN V$(X%)=TP$:PRINT@P%(X%),V$(X%); 290 IFX%=13 THEN X%=1:GOTO280 292 IF X%<>1 THEN GOTO 300 294 IF V$(1)=C$ THEN 300 296 C$=V$(1):PRINT@P%(1),CHR$(27);CHR$(75);V$(1);" - ";:GOSUB400 300 X%=X%+1:GOTO 280 310 FOR X%=1TO26:READ A$(X%):NEXTX% 320 FOR X%=1TO13:READ P%(X%):NEXT X% 330 CALL16959 340 S1$=CHR$(27)+CHR$(112):S2$=CHR$(27)+CHR$(113):RETURN 350 PRINT@6,"NOV 7 KING HENRY UNIFORM - QSL PROGRAM VER 1.0":LINE(0,9)-(236,12),1,B:LINE(0,21)-(236,24),1,B:RETURN 360 DATA "ALPHA","BRAVO","CHARLIE","DELTA","ECHO","FOXTROT","GOLF","HOTEL","INDIA" 370 DATA "JULIETTE","KILO","LIMA","MIKE","NOV","OSCAR","PAPA","QUEBEC","ROMEO" 380 DATA "SIERRA","TANGO","UNIFORM","VICTOR","WHISKEY","XRAY","YANKEE","ZULU" 390 DATA 127,247,263,279,290,307,319,331,345,354,367,427,487 400 REM BUILD WORD STRING 410 L%=LEN(C$):IF L%=0 THEN RETURN 420 CA$="" 430 FOR Z%=1 TO L% 440 FOR Y%=1 TO 26 450 IF ASC(MID$(C$,Z%,1))= ASC(A$(Y%)) THEN CA$=CA$+A$(Y%)+" ":Y%=1:GOTO 480 460 IF Y%=26 THEN CA$=CA$+MID$(C$,Z%,1)+" " 470 NEXT Y% 480 NEXT Z% 490 PRINT CA$:RETURN 500 PRINT@120,S1$;" CALL:";S2$;" ";V$(1);" - ";:RETURN 510 PRINT@240,S1$;" Date:";S2$:PRINT@256,S1$;" Time:";S2$; 520 PRINT@272,S1$;" Mode:";S2$;:PRINT@283,S1$;" Freq:";S2$; 530 PRINT@300,S1$;" Sent:";S2$:PRINT@313,S1$;" Rec:";S2$; 540 PRINT@325,S1$;" 10X:";S2$;:PRINT@338,S1$;" QSLS:";S2$; 550 PRINT@347,S1$;" QSLR:";S2$;:PRINT@360,S1$;" Name:";S2$; 560 PRINT@420,S1$;" QTH:";S2$;:PRINT@480,S1$;" Note:";S2$;:RETURN 570 PRINT@247,V$(2);:PRINT@263,V$(3);:PRINT@279,V$(4);:PRINT@290,V$(5);:RETURN 580 PRINT@540,"Info1";:PRINT@548,"Info2":PRINT@557,"CW":PRINT@563,"Q-SIG"; 590 PRINT@570,"Clear";:PRINT@578,"ReDr";:PRINT@586,"Save";:PRINT@593,"Menu"; 600 RETURN 610 GOSUB1030 620 IN$="INFO1.DO":GOSUB 930 630 CLS:GOSUB350:GOSUB500:GOSUB 490:GOSUB 510:GOSUB 570:GOSUB 720:GOSUB 580:X%=5:KEY ON:RETURN 640 KEY OFF:GOTO140 650 GOSUB1030:GOSUB630:RETURN 655 CLS:GOSUB350:PRINT@120,"ARE YOU SURE (Y/N)?";:LINE INPUT AN$ 657 IF AN$="Y" THEN MENU ELSE GOSUB 630:GOTO 250 660 GOSUB1030 670 CLS:PRINT@300,"ADDING TO FILE..." 680 OPEN F$ FOR APPEND AS 1 690 FOR X%=1 TO 13:PRINT #1,V$(X%):NEXT 700 CLOSE 1:GOTO 140 710 RETURN 720 FOR X%=2 TO 13 730 PRINT@P%(X%),V$(X%); 740 NEXT X% 750 RETURN 760 PRINT@180,"WRITING HEADER ON FILE..." 770 CLOSE:OPEN F$ FOR APPEND AS 1 780 PRINT#1," 13 " 790 PRINT#1,"CALL: ":PRINT#1," 0 ":PRINT#1,"DATE: ":PRINT#1," 40 " 800 PRINT#1,"TIME: ":PRINT#1," 55 ":PRINT#1,"MODE: ":PRINT#1," 70 " 810 PRINT#1,"FREQ: ":PRINT#1," 80 ":PRINT#1,"SENT: ":PRINT#1," 95 " 820 PRINT#1,"REC: ":PRINT#1," 107 ":PRINT#1,"10X: ":PRINT#1," 121 ":PRINT#1,"QSLS: ":PRINT#1," 135 " 830 PRINT#1,"QSLR: ":PRINT#1," 146 ":PRINT#1,"NAME: ":PRINT#1," 160 ":PRINT#1,"QTH: ":PRINT#1," 201 " 840 PRINT#1,"NOTE: ":PRINT#1," 240 " 850 CLOSE 1 860 RETURN 870 GOSUB1030 880 IN$="INFO2.DO":GOSUB 930:GOSUB630:RETURN 890 GOSUB1030 900 IN$="CW.DO":GOSUB930:GOSUB630:RETURN 910 GOSUB1030 920 IN$="QSIG.DO":GOSUB930:GOSUB630:RETURN 930 REM DISPLAY INFO FILES.... 940 CLS:ONERROR GOTO 1020 950 OPEN IN$ FOR INPUT AS 1:X%=0 960 IF EOF(1)THEN CLOSE:RETURN 970 LINE INPUT #1,AN$:PRINT AN$ 980 IF EOF(1) THEN PRINT" TO CONTINUE...";:AN$=INPUT$(1):CLOSE:RETURN 990 X%=X%+1:IF X%<9 THENGOTO 970 1000 PRINT" TO CONTINUE, TO QUIT...";:AN$=INPUT$(1):IF AN$=CHR$(27) THEN CLOSE:RETURN 1010 CLS:X%=0:GOTO970 1020 ONERROR 10:PRINT"ERROR AT 5500":RETURN 1030 KEYOFF:CLS:V$(X%)=TP$:RETURN 2230 C$="":TP$="":V$(1)="":V$(2)=DATE$:V$(3)=TIME$:V$(6)="":V$(7)="":V$(8)="" 2232 CA$="":V$(9)="":V$(10)="":V$(11)="":V$(12)="":V$(13)="":RETURN 2290 ONERROR GOTO 110:OPENF$FOR INPUT AS 1:CLOSE:RETURN