Prints a full year calendar, two months at a time. Up to year 2000.
Content
Source Code
1 REM "\a"GRAPHICS-A
10 BORDER 4: PAPER 7: INK 9: POKE 23658,8: FOR X=USR "A" TO USR "A"+7: READ A: POKE X,A: NEXT X: DATA 249,0,126,0,159,0,231,0
20 DIM L(12): DIM M(12): DIM M$(12,9): FOR X=1 TO 12: READ M$(X),M(X): NEXT X: FOR X=1 TO 12: READ L(X): NEXT X
30 CLS : BEEP .5,0: BEEP .25,5: BEEP .25,10: PRINT PAPER 3,, PAPER 4;TAB 12; PAPER 7;"CALENDER"; PAPER 4; PAPER 5;TAB 8;"BY PUBLIC DOMAIN", PAPER 4,, PAPER 3,,
40 PRINT '' PAPER 5;"THIS WILL PRINT A CALENDER FOR ANY YEAR FROM 1901 TO 2000"
50 DATA "JANUARY",7,"FEBRUARY",8,"MARCH",5,"APRIL",5,"MAY",3,"JUNE",4,"JULY",4,"AUGUST",6,"SEPTEMBER",9,"OCTOBER",7,"NOVEMBER",8,"DECEMBER",8,31,28,31,30,31,30,31,31,30,31,30,31
60 INPUT "WHICH YEAR DO YOU WANT?";AA: IF AA>2000 OR AA<1901 THEN PRINT AT 8,0; FLASH 1; OVER 1;" ": BEEP 1,-30: GO TO 60
70 PRINT AT 8,0; OVER 1; PAPER 5;AT 13,7; PAPER 2;"CALENDER FOR ";AA;"."'': PRINT "DO YOU WANT A PRINTER COPY?(Y/N)"
80 LET P=0: IF INKEY$="N" THEN GO TO 110
90 IF INKEY$<>"Y" THEN GO TO 80
100 LET P=1: LPRINT " CALENDER FOR ";AA''"\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a"
110 LET MA=1: LET D1=0: IF AA/4=INT (AA/4) THEN LET L(2)=29
120 CLS : FOR X=0 TO 1: PRINT "\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a"
130 PRINT AT X*11,16-M(MA)/2; INVERSE 1;M$(MA, TO M(MA))
140 PRINT '" MO TU WE TH FR SA SU"
150 FOR Y=1 TO 7: PRINT "\a\a\a\a \a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a": NEXT Y: PRINT "\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a\a": LET MA=MA+1: NEXT X
160 DRAW 255,0: PLOT 0,88: DRAW 255,0: LET MA=MA-2: FOR Y=0 TO 1: LET N=0
170 FOR Z=1 TO L(MA): LET D=365*(AA-1901)+INT ((AA-1901)/4)+Z+D1
180 LET D=D-7*INT (D/7)+1: LET U=4+Y*11+N: IF D=7 THEN LET N=N+1
190 PRINT AT U,D*4-1;(" " AND Z<10);Z: NEXT Z: LET MA=MA+1: LET D1=0: FOR X=1 TO MA-1: LET D1=D1+L(X): NEXT X: NEXT Y
200 IF P=1 THEN COPY : IF MA=13 THEN LPRINT '''''
220 IF INKEY$<>CHR$ 13 THEN GO TO 220
230 IF MA<12 THEN GO TO 120