0 'Club 100 Library - 415/939-1246 BBS 937-5039 NEWSLETTER, 932-8856 VOICE 2 ' APTCAL.BM HAS THE FOLLOWONG FEATURES CURRENT MONTH DISPLAY WITH TIME 4 ' Inkey <6> or <7> to view files or to make entries 6 ' Menus for view and entry routines which enable switching from view to entry routine without going back to main program 8 ' Perpetual calendar with Inkey from main program:return to current month 9 ' next month;

previous month;other month/year-prompted for input 10 ' current configuration allows for NOTE.DO;APPT.DO;AND ADRS.DO files 12 MAXFILES=2:CLEAR2000:DEFSTRA-G:DEFINTH-T:DEFDBLJ,U-Z 14 D=DATE$ 16 L=VAL(MID$(D,4,2)):D=LEFT$(D,3)+RIGHT$(D,2):I=INSTR(D,"/") 18 W=VAL(LEFT$(D,I-1)):V=VAL(RIGHT$(D,LEN(D)-I)):X=1:V=V+1900:G=CHR$(27)+CHR$(112):E=CHR$(27)+CHR$(113):F=SPACE$(1) 20 GOSUB32:FORI=1TOW:READB,N:NEXT:IFW=2THENN=N-(0=VMOD4)+(0=VMOD100)-(0=VMOD400) 22 CLS:PRINTTAB(3);B;:PRINT@18,V:PRINT" Su Mo Tu We Th Fr Sa":J%=J-7*INT(J/7):PRINTTAB(2);SPACE$(3*J%); 24 FORI=1TON:IFI=LTHENPRINTF;:PRINTG;ELSEPRINTF; 26 PRINTUSING"##";I;:IFI=LTHEN PRINTE; 28 J%=J%+1:IFJ%>6ANDI<>NTHENPRINT:PRINTTAB(2);:J%=0 30 NEXT:GOTO40 32 Y=-INT((14-W)/12):Z=X-32074+INT(1461*(V+4800+Y)/4) 34 Z=Z+INT(367*(W-2-12*Y)/12):J=Z-INT(3*INT((V+4900+Y)/100)/4):RETURN 36 DATAJanuary,31,February,28,March,31,April,30,May,31,June,30 38 DATAJuly,31,August,31,September,30,October,31,November,30,December,31,EOF,-1 40 LINE(157,4)-(219,58),1,B:LINE(159,6)-(217,16),1,B:LINE(159,18)-(217,56),1,BF 42 PRINT@149,G"-"DAY$"-"E:A=LEFT$(TIME$,5):PRINT@187,G"<6> view"E:PRINT@227,G"<7> enter"E:PRINT@267,G" menu"E 44 LINE(166,10)-(168,12),1,BF:LINE(208,10)-(210,12),1,BF:PRINT@69,LEFT$(TIME$,5) 46 B1=INKEY$:IFB1=CHR$(54)THEN64ELSEIFB1="m"THEN172ELSEIFB1=CHR$(55)THEN94ELSEIFB1="n"THEN166 47 IFB1="p"THEN162ELSEIFB1="t"THEN12ELSEIFB1="o"THEN154 48 D1=LEFT$(DATE$,5):D2=LEFT$(TIME$,5) 50 CLOSE:OPEN"APPT.DO"FORINPUTAS1 52 IFEOF(1)THEN44ELSELINEINPUT#1,A1 54 IFINSTR(A1,D1)=0THEN52ELSEIFINSTR(A1,D2)=0THEN52 56 CLS:NF=LEN(A1)-12:A1=RIGHT$(A1,NF):Z=LEN(A1):IFZ>39THEN64 58 U=40:U=U-Z:K=U/2:PRINT@80,SPACE$(K);:PRINTA1:PRINT@248,"Press any key to silence" 60 B1=INKEY$:BEEP:FORY=1TO20:NEXT 62 J=J+1:IFJ=300THENPRINTPRINT110PRINTPRINTELSEIFB1=""THEN60ELSEFORY=1TO25000:NEXT:GOTO12 64 CLS:PRINT@40,"FILE TO BE VIEWED":PRINT@92,"<1> NOTE.DO":PRINT@132,"<2> APPT.DO":PRINT@172,"<3> ADRS.DO" 65 PRINT@201,">>> OR >>> <4> Make Entries":PRINT@252,"<5> RUN 66 B1=INKEY$:T=VAL(B1) 68 IFT=1THEN70ELSEIFT=2THEN74ELSEIFT=3THEN72ELSEIFT=4THEN94ELSEIFT=5THEN12ELSE66 70 CLOSE:OPEN"NOTE.DO"FOR INPUT AS1:GOTO76 72 CLOSE:OPEN"ADRS.DO"FOR INPUTAS1:GOTO76 74 CLOSE:OPEN"APPT.DO"FORINPUTAS1 76 OPEN"TEMP.DO"FORAPPENDAS2:CLS:PRINT@87,"Enter search string_________":PRINT@136,"OR" 78 PRINT@167," to view each entry":PRINT@287,;:LINEINPUT"";A2 80 IFEOF(1)THEN130ELSELINEINPUT#1,A1 82 IFINSTR(A1,A2)<>0THEN84ELSEPRINT#2,A1:GOTO80 84 CLS:Z=LEN(A1):IFZ>39THEN88ELSEU=40 86 U=U-Z:Y=U/2:PRINT@80,SPACE$(Y);:PRINTA1:BEEP:GOTO90 88 PRINT@80,A1:BEEP 90 PRINT@248,"Delete this entry (Y/N)" 92 B1=INKEY$:IFB1=""THEN92ELSEIFB1="Y"ORB1="y"THEN80ELSEPRINT#2,A1:CLS:GOTO80 94 CLEAR2000:DEFSTRA-L:DEFINTM-Z:K=CHR$(27)+CHR$(75):L=CHR$(138) 96 CLS:PRINT@40,"FILE TO BE ENTERED":PRINT@92,"<1> Message entry":PRINT@132,"<2> Appointment entry" 97 PRINT@172,"<3> Adresss entry":PRINT@201,">>> OR >>> <4> View Files":PRINT@252,"<5> Run 98 I=INKEY$:T=VAL(I):IFT=1THEN138ELSEIFT=2THEN100ELSEIFT=3THEN146ELSEIFT=4THEN64ELSEIFT=5THEN12ELSE98 100 CLOSE:OPEN"APPT.DO"FOR APPEND AS 1:CLS:PRINT@4,CHR$(27);CHR$(112)" APPT DATE(MM/DD) "CHR$(27);CHR$(113):LINE INPUT"";H 102 CLS:PRINT@4,CHR$(27);CHR$(112)" APPT TIME(HH/MM) "CHR$(27);CHR$(113):LINE INPUT"";A 104 CLS:PRINT@4,CHR$(27);CHR$(112)" Appt=.... "CHR$(27);CHR$(113):INPUT"";B:C=H+" "+A+" "+B 106 PRINT #1,C:CLS:PRINT@81,"Do You Want Another Appt Entered?" 108 I=INKEY$:IF I=""THEN108ELSEIFI="y"ORI="Y"THEN100 110 CLS:PRINT@134,"Reorganizing":PRINT@178,"File":CLOSE:OPEN"appt.do"FORINPUTAS1:U=1:V=11:N=0 112 N=N+1:LINEINPUT#1,D:IFEOF(1)THEN114ELSE112 114 CLOSE:DIME(N):OPEN"APPT.DO"FORINPUTAS1:FORY=1TON:LINEINPUT#1,E(Y):NEXT:CLOSE1:GOSUB118 116 KILL"APPT.DO":OPEN"APPT.DO"FOROUTPUTAS1:FORY=1TON:PRINT#1,E(Y):NEXT:CLOSE:GOTO96 118 O5=N 120 O5=INT(O5/2):IFO5=0THENRETURNELSEO2=1:O3=N-O5 122 O1=O2 124 O4=O1+O5:IF(MID$(E(O1),U,(V-U)+1))<(MID$(E(O4),U,(V-U)+1))THEN128 126 F=E(O1):E(O1)=E(O4):E(O4)=F:O1=O1-O5:IFO1<1THEN128ELSE124 128 O2=O2+1:IFO2>O3THEN120ELSE122 130 IFT=1THEN136ELSEIFT=3THEN134 132 CLOSE:KILL"APPT.DO":NAME"TEMP.DO"AS"APPT.DO":GOTO 64 134 CLOSE:KILL"adrs.DO":NAME"TEMP.DO"AS"adrs.DO":GOTO64 136 CLOSE:KILL"NOTE.DO":NAME"TEMP.DO"AS"NOTE.DO":GOTO64 138 CLS 140 CLOSE:OPEN"NOTE.DO" FOR APPEND AS 1 142 CLS:PRINT@4,CHR$(27);CHR$(112)" Enter TO-DO Message "CHR$(27);CHR$(113):INPUT"";G:PRINT @4,K 144 PRINT#1,">>> ";G:GOTO96 146 CLS 148 CLOSE:OPEN"ADRS.DO" FOR APPEND AS 1 150 CLS:PRINT@4,CHR$(27);CHR$(112)" Enter Name,Phone,etc. "CHR$(27);CHR$(113):LINEINPUT"";G 152 PRINT#1,G:GOTO96 154 RESTORE36:CLS:PRINT@170," ";:INPUT"mm/yy";D:GOTO16 162 TD$=STR$(VAL(LEFT$(D,2))-1):TD$=RIGHT$(TD$,2)+"/"+RIGHT$(D,2):D=TD$:L=0 164 IFVAL(LEFT$(D,2))=0THENTD$=STR$(12)+"/"+RIGHT$(STR$(VAL(RIGHT$(D,2))-1),2):D=RIGHT$(TD$,5):GOTO170ELSEGOTO170 166 TD$=STR$(VAL(LEFT$(D,2))+1):TD$=RIGHT$(TD$,2)+"/"+RIGHT$(D,2):D=TD$:L=0 168 IFVAL(LEFT$(D,2))=13THENTD$=STR$(1)+"/"+RIGHT$(STR$(VAL(RIGHT$(D,2))+1),2):D=RIGHT$(TD$,5) 170 RESTORE36:GOTO16 172 MAXFILES=0:MENU