1 'Club 100 Library (415) 939-1246 BBS, 937-5039 Newsletter, 932-8856 Voice 2 'This program prints full-page monthly calendars on the printer. Left margin (LM) can be adjusted in line 20 from 0 to 9 on an 80-column printer. 3 ' YOU CAN CHOOSE BETWEEN REPEAT SAME MONTH OR MOVE FORWARD IN MONTHS MODES. 4 ' CALENDARS LEFT TO PRINT ARE ALSO COUNTED DOWN ON SCREEN.REVISED 3/31/91 BY JOHN RUSSO. 5 E$=CHR$(27) 10 CLS:IF(INP(187)AND6)<>2THENPRINT"Printer not ready!":BEEP:GOTO10 20 LM=3:CLS:DIMDN$(7),MN$(12),MS(12) 30 FORCT=1TO7:READDN$(CT) :NEXT:DATASunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday 40 FORCT=1TO12:READMN$(CT),MS(CT) :NEXT:DATAJANUARAY,31,FEBRUARY,28,MARCH,31,APRIL,30,MAY,31,JUNE,30,JULY,31,AUGUS T,31,SEPTEMBER,30,OCTOBER,31,NOVEMBER,30,DECEMBER,31 45 GOSUB 200 50 PRINT:PRINT"What are the starting month and year?","Please separate them with a comma.":INPUTMM,YY:IFYY<100THENYY=YY+1900 53 IFMM=0ORMM>12THENGOTO50 57 IFYY>32000THENGOTO50 60 PRINT:INPUT"How many monthly calenders should I make Each one takes approx 1 min:15 sec";NM 63 IFNM<1THENGOTO60 67 CL=NM 70 FORLP=1TONM:IFMM>2THENWD=365*YY+1+31*(MM-1)-INT(.4*MM+2.3)+INT(YY/4)-INT(3/4* INT((YY/100)+1))ELSEWD=365*YY+1+31*(MM-1)+INT((YY-1)/4)-(INT(3/4*INT(((YY-1)/100 )+1))) 80 WD=WD-INT(WD/7)*7:IFWD<1THENWD=7 90 DY=MS(MM):IFMM=2ANDYYMOD4=0ANDYYMOD100<>0THENDY=29 100 TT$=MN$(MM)+" "+STR$(YY):SP=(71-LEN(TT$))/2+LM:LPRINTSPACE$(SP) ;TT$:LPRINT:LPRINT 110 FORDC=1TO7:SP=(9-LEN(DN$(DC)))/2+LM+1+(DC-1)*10:LPRINTTAB(SP);DN$(DC) ;:NEXT:LPRINT 115 PRINT @ 570,E$"p Calenders left:"CL;E$"q" 120 SD=2-WD:WK=INT(((MS(MM)+WD-8)/7)+2):FORWD=1TOWK:GOSUB170:LPRINTSPACE$(LM); 130 FORDC=1TO7:LPRINT"|";:IFSD>=1ANDSD< =DYTHENLPRINTUSING"#########";SD;ELSELPRINT" "; 140 SD=SD+1: NEXT:LPRINT"|":FORBC=1TO7:LPRINTSPACE$(LM);:FORDC=1TO7:LPRINT"| ";:NEXT:LPRINT"|":NEXT:NEXT 147 IF SS = 2 THEN GOTO 155 150 GOSUB170:LPRINTCHR$(12):CL=CL-1 153 GOTO 160 155 GOSUB170:LPRINTCHR$(12):CL=CL-1:MM=MM+1:IFMM>12THENYY=YY+1:MM=12 160 NEXT:MENU 170 LPRINTSPACE$(LM);:FORDC=1TO7:LPRINT"+---------";:NEXT:LPRINT"+":RETURN 200 PRINT,E$"p WHAT MODE: ???";:PRINT E$"q" 210 PRINT"1. REPEAT SAME MONTH" 220 PRINT"2. MOVE FOWARD IN MONTHS" 230 PRINT " SELECTION: ???"; 240 INPUT SS 250 IF SS>2 THEN GOTO 230 260 ON SS GOTO 300,350 300 PRINT,E$"p REPEAT MODE";:PRINT E$"q" 310 RETURN 350 PRINT,E$"p MOVE FORWARD MODE";:PRINT E$"q" 360 RETURN