Home » Personal collection » Acorn tapes » Electron_User » Electron_User_tape25b_acorn_eu_1991_july.wav » Calendr

Calendr

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Personal collection » Acorn tapes » Electron_User » Electron_User_tape25b_acorn_eu_1991_july.wav
Filename: Calendr
Read OK:
File size: 1485 bytes
Load address: FFFF1A00
Exec address: FFFF8023
Duplicates

There are 3 duplicate copies of this file in the archive:

File contents
   10REM > $.Martyn.Calendr
   20REM by Martyn Fox
   30REM (c) The Micro User
   40ON ERROR PROCerror:END
   50*FX4,1
   60DIM month$(13),len%(12),start_day%(12)
   70FOR N=1 TO 12
   80READ month$(N),len%(N),start_day%(N):NEXT
   90MODE7:db$=CHR$141
  100c1$=CHR$131:c2$=CHR$(ASCc1$EOR6)
  110PRINT TAB(14,6)db$"CALENDAR"
  120PRINT TAB(14)db$"CALENDAR"
  130PROCinstructions
  140REPEAT
  150PROCdate
  160miss%=FALSE
  170REPEAT
  180IF year%<1752 PROCjulian
  190IF year%>1752 PROCgreg
  200IF year%=1752 PROCsept52
  210IF year%<1752 AND mon%<4 year$=FNyear_no(year%) ELSE year$=STR$(year%)
  220head$=month$(mon%)+"  "+year$
  230PROCcalendr(head$,length%,day%)
  240A=GET
  250IF A=46 OR A=62 OR A=137 PROCnext:UNTIL FALSE ELSE IF A=44 OR A=60 OR A=136 PROCprev:UNTIL FALSE ELSE IF A=139 year%=year%+1:UNTIL FALSE ELSE IF A=138 AND year%=1:UNTIL FALSE ELSE IF A=138 year%=year%-1:UNTIL FALSE
  260UNTIL TRUE
  270VDU23,1,1;0;0;0;
  280CLS
  290UNTIL FALSE
  300DATAJanuary,31,0,February,28,3,March,31,3,April,30,6
  310DATAMay,31,1,June,30,4,July,31,6,August,31,2
  320DATASeptember,30,5,October,31,0,November,30,3,December,31,5
  330:
  340DEFFNyear_no(year%)
  350LOCAL alt$
  360IF year% MOD 100=0 alt$=STR$(year%) ELSE IF year% MOD 10=0 alt$=STR$(year% MOD 100) ELSE alt$=STR$(year% MOD 10)
  370IF year%>1 year%=year%-1 ELSE =STR$(year%)
  380=STR$(year%)+"/"+alt$
  390:
  400DEFPROCjulian
  410leap%=year% DIV 4
  420day%=(year%+leap%+start_day%(mon%)+4) MOD 7
  430IF year%<4 day%=(day%+1) MOD 7
  440length%=len%(mon%)
  450IF year% MOD 4=0 AND year%<>4 PROCleap
  460ENDPROC
  470:
  480DEFPROCgreg
  490leap%=(year% DIV 4)-(year% DIV 100)+(year% DIV 400)
  500day%=(year%+leap%+start_day%(mon%)+6) MOD 7
  510length%=len%(mon%)
  520IF year% MOD 100 =0 AND year% MOD 400 <>0 C%=1 ELSE C%=0
  530IF year% MOD 4 =0 AND C%=0 PROCleap
  540ENDPROC
  550:
  560DEFPROCleap
  570IF mon%<3 day%=day%+6:day%=day% MOD 7
  580IF mon%=2 length%=29
  590ENDPROC
  600:
  610DEFPROCsept52
  620IF mon%<9 PROCjulian
  630IF mon%>9 PROCgreg
  640IF mon%=9 miss%=TRUE:PROCjulian
  650ENDPROC
  660:
  670DEFPROCcalendr(head$,length%,day%)
  680REM head$=heading,length%=no.of days in month,day%=start day (Mon=0,Sun=6).
  690miss2%=FALSE
  700CLS
  710VDU23,1,0;0;0;0;
  720PRINT'db$TAB(19-LENhead$/2)head$
  730PRINTdb$TAB(19-LENhead$/2)head$
  740PRINT'TAB(2)db$c1$"Mon "c2$"Tue "c1$"Wed "c2$"Thu "c1$"Fri "c2$"Sat "c1$"Sun"
  750PRINTTAB(2)db$c1$"Mon "c2$"Tue "c1$"Wed "c2$"Thu "c1$"Fri "c2$"Sat "c1$"Sun"
  760@%=2:day%=-day%
  770REPEAT PRINT
  780W%=0:colour%=131:PROCline
  790IFW%<7 W%=W%+1:day%=day%+1:GOTO790
  800W%=0:day%=day%-7:colour%=131
  810IF day%=10 AND miss% day%=-1:miss2%=TRUE
  820PROCline:miss%=FALSE:UNTILday%=length%
  830IF miss2% miss2%=FALSE:PRINT''TAB(4)CHR$(34)"Give Us Back Our Eleven Days!"CHR$(34)
  840ENDPROC
  850:
  860DEFPROCline
  870PRINTTAB(1)db$;
  880REPEAT day%=day%+1:W%=W%+1
  890IFday%=3 AND miss% day%=14:REM September 1752
  900PRINTCHR$(colour%)" ";:colour%=colour% EOR 6
  910IF day%<1PRINTSPC2;ELSEPRINTday%;
  920PRINT" ";
  930UNTILW%=7 OR day%=length%:PRINT:ENDPROC
  940:
  950DEFPROCdate
  960LOCAL date$,valid%
  970REPEAT
  980valid%=TRUE
  990PRINTTAB(0,10)SPC5"Please enter the month and year."'
 1000INPUTTAB(10)date$
 1010IF LENdate$<3 date$="0 0"
 1020mon%=FNdecode_month(date$)
 1030year%=FNdecode_year(date$)
 1040IF mon%=13 OR year%=0 CLS:PRINTTAB(5,7)"That does not make sense."'TAB(5)"Please try again":valid%=FALSE
 1050UNTIL valid%
 1060ENDPROC
 1070:
 1080DEFFNdecode_month(a$)
 1090IF ASC(LEFT$(a$,1))>&40 =FNdecode_letters(a$) ELSE =FNdecode_numbers(a$)
 1100:
 1110DEFFNdecode_letters(a$)
 1120LOCAL mon%,b$
 1130b$=CHR$(ASC(LEFT$(a$,1)) AND &DF)+CHR$(ASC(MID$(a$,2,1)) OR &20)+CHR$(ASC(MID$(a$,3,1)) OR &20)
 1140mon%=0
 1150REPEAT
 1160mon%=mon%+1
 1170UNTIL mon%=13 OR b$=LEFT$(month$(mon%),3)
 1180=mon%
 1190:
 1200DEFFNdecode_numbers(a$)
 1210LOCAL mon%
 1220mon%=EVAL(LEFT$(a$,2))
 1230IF mon%<1 OR mon%>12 mon%=13
 1240=mon%
 1250:
 1260DEFFNdecode_year(a$)
 1270LOCAL n%,ad%,y%
 1280IF (ASC(RIGHT$(a$,1)) AND &DF)=ASC("D") AND (ASC(MID$(a$,LENa$-1,1)) AND &DF)=ASC("A") THEN ad%=TRUE:a$=LEFT$(a$,LENa$-2) ELSE ad%=FALSE
 1290IF ASC(RIGHT$(a$,1))<&30 OR ASC(RIGHT$(a$,1))>&39 THEN =0
 1300n%=-1
 1310REPEAT
 1320n%=n%+1
 1330UNTILASC(MID$(a$,LENa$-n%,1))<&30 OR ASC(MID$(a$,LENa$-n%,1))>&39
 1340y%=EVAL(RIGHT$(a$,n%))
 1350IF y%<100 AND NOT ad% THEN =y%+1900 ELSE =y%
 1360:
 1370DEFPROCerror
 1380*FX4
 1390@%=&90A
 1400IF ERR<>17 REPORT:PRINT" at line ";ERL ELSE PRINT
 1410ENDPROC
 1420:
 1430DEFPROCnext:mon%=mon%+1
 1440IF mon%=13 mon%=1:year%=year%+1
 1450ENDPROC
 1460:
 1470DEFPROCprev:mon%=mon%-1
 1480IF mon%=0 mon%=12:year%=year%-1
 1490IF year%<1 year%=1:mon%=1:VDU7
 1500ENDPROC
 1510:
 1520DEFPROCinstructions
 1530PRINT''"Do you require instructions? (Y/N)"
 1540REPEAT
 1550A=GET
 1560UNTILA=78 OR A=110 OR A=89 OR A=121
 1570IF A=78 OR A=110 THEN ENDPROC
 1580CLS:PRINT
 1590PRINT"This program will display a calendar forany month from 1 AD onwards."
 1600PRINT'"Enter the month and year. The month may be entered as a number or letters (only the first 3 letters are required)."
 1610PRINT'"To display the next month, press > or"'"the right arrow key."''"To display the previous month, press <"'"or the left arrow key."
 1620PRINT'"To step forward or backward one year,"'"press the up or down arrow keys."
 1630PRINT'"To display any other month, press any"'"other key."
 1640PRINT'"Press any key to continue."
 1650A=GET:CLS
 1660PRINT TAB(0,5)"If the year entered is less than 100,"'"e.g. 91, it will be assumed to be in the20th century, i.e. 1991. If you want to enter a date in the 1st century AD, typeAD on the end of the year, e.g. NOV84AD or 11 84AD."
 1670PRINT'"Press any key to continue."
 1680A=GET:CLS
 1690PRINT'TAB(5)"Notes on the Julian Calendar"
 1700PRINT'"Before 1752, the calendar year began at the time of the Annunciation, about a"'"week before the end of March."
 1710PRINT"For January, February and March, the"'"calendar shows both the historical year"
 1720PRINT"(beginning on 1st January) and the"'"calendar year. For example, if you enter"CHR$34"JAN 1743"CHR$34", the historical year is 1743,but the calendar year is 1742."
 1730PRINT'"The calendar will show this as"'CHR$34"January 1742/3"CHR$34
 1740PRINT'"The date which you enter is always takento be the historical year."
 1750PRINT'"4 AD was not a leap year."
 1760PRINT'"I am indebted to Michael Leete of"'"Cheshire for the above information."
 1770PRINT'"Press any key to continue.";
 1780A=GET:CLS
 1790ENDPROC

� > $.Martyn.Calendr
� by Martyn Fox
� (c) The Micro User
(� � �error:�
2
*FX4,1
<(� month$(13),len%(12),start_day%(12)
F� N=1 � 12
P'� month$(N),len%(N),start_day%(N):�
Z�7:db$=�141
dc1$=�131:c2$=�(�c1$�6)
n� �14,6)db$"CALENDAR"
x� �14)db$"CALENDAR"
��instructions
��
�	�date
�miss%=�
��
�� year%<1752 �julian
�� year%>1752 �greg
�� year%=1752 �sept52
�@� year%<1752 � mon%<4 year$=�year_no(year%) � year$=�(year%)
�!head$=month$(mon%)+"  "+year$
� �calendr(head$,length%,day%)
�A=�
��� A=46 � A=62 � A=137 �next:� � � � A=44 � A=60 � A=136 �prev:� � � � A=139 year%=year%+1:� � � � A=138 � year%=1:� � � � A=138 year%=year%-1:� �
� �
�23,1,1;0;0;0;
�
"� �
,5�January,31,0,February,28,3,March,31,3,April,30,6
6-�May,31,1,June,30,4,July,31,6,August,31,2
@<�September,30,5,October,31,0,November,30,3,December,31,5
J:
Tݤyear_no(year%)
^
� alt$
h[� year% � 100=0 alt$=�(year%) � � year% � 10=0 alt$=�(year% � 100) � alt$=�(year% � 10)
r'� year%>1 year%=year%-1 � =�(year%)
|=�(year%)+"/"+alt$
�:
���julian
�leap%=year% � 4
�-day%=(year%+leap%+start_day%(mon%)+4) � 7
�� year%<4 day%=(day%+1) � 7
�length%=len%(mon%)
�"� year% � 4=0 � year%<>4 �leap
��
�:
�
��greg
�1leap%=(year% � 4)-(year% � 100)+(year% � 400)
�-day%=(year%+leap%+start_day%(mon%)+6) � 7
�length%=len%(mon%)
2� year% � 100 =0 � year% � 400 <>0 C%=1 � C%=0
� year% � 4 =0 � C%=0 �leap
�
&:
0
��leap
:&� mon%<3 day%=day%+6:day%=day% � 7
D� mon%=2 length%=29
N�
X:
b��sept52
l� mon%<9 �julian
v� mon%>9 �greg
�� mon%=9 miss%=�:�julian
��
�:
�!��calendr(head$,length%,day%)
�M� head$=heading,length%=no.of days in month,day%=start day (Mon=0,Sun=6).
�miss2%=�
��
��23,1,0;0;0;0;
��'db$�19-�head$/2)head$
��db$�19-�head$/2)head$
�J�'�2)db$c1$"Mon "c2$"Tue "c1$"Wed "c2$"Thu "c1$"Fri "c2$"Sat "c1$"Sun"
�I�2)db$c1$"Mon "c2$"Tue "c1$"Wed "c2$"Thu "c1$"Fri "c2$"Sat "c1$"Sun"
�@%=2:day%=-day%
� �
W%=0:colour%=131:�line
#�W%<7 W%=W%+1:day%=day%+1:�TVC
  W%=0:day%=day%-7:colour%=131
*&� day%=10 � miss% day%=-1:miss2%=�
4�line:miss%=�:�day%=length%
>E� miss2% miss2%=�:�''�4)�(34)"Give Us Back Our Eleven Days!"�(34)
H�
R:
\
��line
f�1)db$;
p� day%=day%+1:W%=W%+1
z,�day%=3 � miss% day%=14:� September 1752
�'�(colour%)" ";:colour%=colour% � 6
�� day%<1�2;��day%;
�	�" ";
��W%=7 � day%=length%:�:�
�:
�
��date
�� date$,valid%
��
�valid%=�
�0�0,10)�5"Please enter the month and year."'
��10)date$
�� �date$<3 date$="0 0"
�mon%=�decode_month(date$)
year%=�decode_year(date$)
Z� mon%=13 � year%=0 �:�5,7)"That does not make sense."'�5)"Please try again":valid%=�
� valid%
$�
.:
8ݤdecode_month(a$)
B?� �(�a$,1))>&40 =�decode_letters(a$) � =�decode_numbers(a$)
L:
Vݤdecode_letters(a$)
`
� mon%,b$
jCb$=�(�(�a$,1)) � &DF)+�(�(�a$,2,1)) � &20)+�(�(�a$,3,1)) � &20)
t
mon%=0
~�
�mon%=mon%+1
�#� mon%=13 � b$=�month$(mon%),3)
�	=mon%
�:
�ݤdecode_numbers(a$)
�
� mon%
�mon%=�(�a$,2))
�� mon%<1 � mon%>12 mon%=13
�	=mon%
�:
�ݤdecode_year(a$)
�� n%,ad%,y%
]� (�(�a$,1)) � &DF)=�("D") � (�(�a$,�a$-1,1)) � &DF)=�("A") � ad%=�:a$=�a$,�a$-2) � ad%=�

(� �(�a$,1))<&30 � �(�a$,1))>&39 � =0
	n%=-1
�
(n%=n%+1
20��(�a$,�a$-n%,1))<&30 � �(�a$,�a$-n%,1))>&39
<y%=�(�a$,n%))
F%� y%<100 � � ad% � =y%+1900 � =y%
P:
Z��error
d*FX4
n@%=&90A
x � �<>17 �:�" at line ";� � �
��
�:
���next:mon%=mon%+1
�"� mon%=13 mon%=1:year%=year%+1
��
�:
���prev:mon%=mon%-1
�"� mon%=0 mon%=12:year%=year%-1
�� year%<1 year%=1:mon%=1:�7
��
�:
���instructions
�+�''"Do you require instructions? (Y/N)"
�
A=�
 �A=78 � A=110 � A=89 � A=121
"� A=78 � A=110 � �
,�:�
6K�"This program will display a calendar forany month from 1 AD onwards."
@z�'"Enter the month and year. The month may be entered as a number or letters (only the first 3 letters are required)."
J��'"To display the next month, press > or"'"the right arrow key."''"To display the previous month, press <"'"or the left arrow key."
TP�'"To step forward or backward one year,"'"press the up or down arrow keys."
^:�'"To display any other month, press any"'"other key."
h"�'"Press any key to continue."
r	A=�:�
|�� �0,5)"If the year entered is less than 100,"'"e.g. 91, it will be assumed to be in the20th century, i.e. 1991. If you want to enter a date in the 1st century AD, typeAD on the end of the year, e.g. NOV84AD or 11 84AD."
�"�'"Press any key to continue."
�	A=�:�
�'�'�5)"Notes on the Julian Calendar"
�u�'"Before 1752, the calendar year began at the time of the Annunciation, about a"'"week before the end of March."
�U�"For January, February and March, the"'"calendar shows both the historical year"
���"(beginning on 1st January) and the"'"calendar year. For example, if you enter"�34"JAN 1743"�34", the historical year is 1743,but the calendar year is 1742."
�=�'"The calendar will show this as"'�34"January 1742/3"�34
�J�'"The date which you enter is always takento be the historical year."
�!�'"4 AD was not a leap year."
�O�'"I am indebted to Michael Leete of"'"Cheshire for the above information."
�#�'"Press any key to continue.";
�	A=�:�
��
�
00000000  0d 00 0a 18 f4 20 3e 20  24 2e 4d 61 72 74 79 6e  |..... > $.Martyn|
00000010  2e 43 61 6c 65 6e 64 72  0d 00 14 13 f4 20 62 79  |.Calendr..... by|
00000020  20 4d 61 72 74 79 6e 20  46 6f 78 0d 00 1e 18 f4  | Martyn Fox.....|
00000030  20 28 63 29 20 54 68 65  20 4d 69 63 72 6f 20 55  | (c) The Micro U|
00000040  73 65 72 0d 00 28 10 ee  20 85 20 f2 65 72 72 6f  |ser..(.. . .erro|
00000050  72 3a e0 0d 00 32 0a 2a  46 58 34 2c 31 0d 00 3c  |r:...2.*FX4,1..<|
00000060  28 de 20 6d 6f 6e 74 68  24 28 31 33 29 2c 6c 65  |(. month$(13),le|
00000070  6e 25 28 31 32 29 2c 73  74 61 72 74 5f 64 61 79  |n%(12),start_day|
00000080  25 28 31 32 29 0d 00 46  0e e3 20 4e 3d 31 20 b8  |%(12)..F.. N=1 .|
00000090  20 31 32 0d 00 50 27 f3  20 6d 6f 6e 74 68 24 28  | 12..P'. month$(|
000000a0  4e 29 2c 6c 65 6e 25 28  4e 29 2c 73 74 61 72 74  |N),len%(N),start|
000000b0  5f 64 61 79 25 28 4e 29  3a ed 0d 00 5a 0f eb 37  |_day%(N):...Z..7|
000000c0  3a 64 62 24 3d bd 31 34  31 0d 00 64 1a 63 31 24  |:db$=.141..d.c1$|
000000d0  3d bd 31 33 31 3a 63 32  24 3d bd 28 97 63 31 24  |=.131:c2$=.(.c1$|
000000e0  82 36 29 0d 00 6e 19 f1  20 8a 31 34 2c 36 29 64  |.6)..n.. .14,6)d|
000000f0  62 24 22 43 41 4c 45 4e  44 41 52 22 0d 00 78 17  |b$"CALENDAR"..x.|
00000100  f1 20 8a 31 34 29 64 62  24 22 43 41 4c 45 4e 44  |. .14)db$"CALEND|
00000110  41 52 22 0d 00 82 11 f2  69 6e 73 74 72 75 63 74  |AR".....instruct|
00000120  69 6f 6e 73 0d 00 8c 05  f5 0d 00 96 09 f2 64 61  |ions..........da|
00000130  74 65 0d 00 a0 0b 6d 69  73 73 25 3d a3 0d 00 aa  |te....miss%=....|
00000140  05 f5 0d 00 b4 18 e7 20  79 65 61 72 25 3c 31 37  |....... year%<17|
00000150  35 32 20 f2 6a 75 6c 69  61 6e 0d 00 be 16 e7 20  |52 .julian..... |
00000160  79 65 61 72 25 3e 31 37  35 32 20 f2 67 72 65 67  |year%>1752 .greg|
00000170  0d 00 c8 18 e7 20 79 65  61 72 25 3d 31 37 35 32  |..... year%=1752|
00000180  20 f2 73 65 70 74 35 32  0d 00 d2 40 e7 20 79 65  | .sept52...@. ye|
00000190  61 72 25 3c 31 37 35 32  20 80 20 6d 6f 6e 25 3c  |ar%<1752 . mon%<|
000001a0  34 20 79 65 61 72 24 3d  a4 79 65 61 72 5f 6e 6f  |4 year$=.year_no|
000001b0  28 79 65 61 72 25 29 20  8b 20 79 65 61 72 24 3d  |(year%) . year$=|
000001c0  c3 28 79 65 61 72 25 29  0d 00 dc 21 68 65 61 64  |.(year%)...!head|
000001d0  24 3d 6d 6f 6e 74 68 24  28 6d 6f 6e 25 29 2b 22  |$=month$(mon%)+"|
000001e0  20 20 22 2b 79 65 61 72  24 0d 00 e6 20 f2 63 61  |  "+year$... .ca|
000001f0  6c 65 6e 64 72 28 68 65  61 64 24 2c 6c 65 6e 67  |lendr(head$,leng|
00000200  74 68 25 2c 64 61 79 25  29 0d 00 f0 07 41 3d a5  |th%,day%)....A=.|
00000210  0d 00 fa 95 e7 20 41 3d  34 36 20 84 20 41 3d 36  |..... A=46 . A=6|
00000220  32 20 84 20 41 3d 31 33  37 20 f2 6e 65 78 74 3a  |2 . A=137 .next:|
00000230  fd 20 a3 20 8b 20 e7 20  41 3d 34 34 20 84 20 41  |. . . . A=44 . A|
00000240  3d 36 30 20 84 20 41 3d  31 33 36 20 f2 70 72 65  |=60 . A=136 .pre|
00000250  76 3a fd 20 a3 20 8b 20  e7 20 41 3d 31 33 39 20  |v:. . . . A=139 |
00000260  79 65 61 72 25 3d 79 65  61 72 25 2b 31 3a fd 20  |year%=year%+1:. |
00000270  a3 20 8b 20 e7 20 41 3d  31 33 38 20 80 20 79 65  |. . . A=138 . ye|
00000280  61 72 25 3d 31 3a fd 20  a3 20 8b 20 e7 20 41 3d  |ar%=1:. . . . A=|
00000290  31 33 38 20 79 65 61 72  25 3d 79 65 61 72 25 2d  |138 year%=year%-|
000002a0  31 3a fd 20 a3 0d 01 04  07 fd 20 b9 0d 01 0e 12  |1:. ...... .....|
000002b0  ef 32 33 2c 31 2c 31 3b  30 3b 30 3b 30 3b 0d 01  |.23,1,1;0;0;0;..|
000002c0  18 05 db 0d 01 22 07 fd  20 a3 0d 01 2c 35 dc 4a  |.....".. ...,5.J|
000002d0  61 6e 75 61 72 79 2c 33  31 2c 30 2c 46 65 62 72  |anuary,31,0,Febr|
000002e0  75 61 72 79 2c 32 38 2c  33 2c 4d 61 72 63 68 2c  |uary,28,3,March,|
000002f0  33 31 2c 33 2c 41 70 72  69 6c 2c 33 30 2c 36 0d  |31,3,April,30,6.|
00000300  01 36 2d dc 4d 61 79 2c  33 31 2c 31 2c 4a 75 6e  |.6-.May,31,1,Jun|
00000310  65 2c 33 30 2c 34 2c 4a  75 6c 79 2c 33 31 2c 36  |e,30,4,July,31,6|
00000320  2c 41 75 67 75 73 74 2c  33 31 2c 32 0d 01 40 3c  |,August,31,2..@<|
00000330  dc 53 65 70 74 65 6d 62  65 72 2c 33 30 2c 35 2c  |.September,30,5,|
00000340  4f 63 74 6f 62 65 72 2c  33 31 2c 30 2c 4e 6f 76  |October,31,0,Nov|
00000350  65 6d 62 65 72 2c 33 30  2c 33 2c 44 65 63 65 6d  |ember,30,3,Decem|
00000360  62 65 72 2c 33 31 2c 35  0d 01 4a 05 3a 0d 01 54  |ber,31,5..J.:..T|
00000370  14 dd a4 79 65 61 72 5f  6e 6f 28 79 65 61 72 25  |...year_no(year%|
00000380  29 0d 01 5e 0a ea 20 61  6c 74 24 0d 01 68 5b e7  |)..^.. alt$..h[.|
00000390  20 79 65 61 72 25 20 83  20 31 30 30 3d 30 20 61  | year% . 100=0 a|
000003a0  6c 74 24 3d c3 28 79 65  61 72 25 29 20 8b 20 e7  |lt$=.(year%) . .|
000003b0  20 79 65 61 72 25 20 83  20 31 30 3d 30 20 61 6c  | year% . 10=0 al|
000003c0  74 24 3d c3 28 79 65 61  72 25 20 83 20 31 30 30  |t$=.(year% . 100|
000003d0  29 20 8b 20 61 6c 74 24  3d c3 28 79 65 61 72 25  |) . alt$=.(year%|
000003e0  20 83 20 31 30 29 0d 01  72 27 e7 20 79 65 61 72  | . 10)..r'. year|
000003f0  25 3e 31 20 79 65 61 72  25 3d 79 65 61 72 25 2d  |%>1 year%=year%-|
00000400  31 20 8b 20 3d c3 28 79  65 61 72 25 29 0d 01 7c  |1 . =.(year%)..||
00000410  16 3d c3 28 79 65 61 72  25 29 2b 22 2f 22 2b 61  |.=.(year%)+"/"+a|
00000420  6c 74 24 0d 01 86 05 3a  0d 01 90 0c dd f2 6a 75  |lt$....:......ju|
00000430  6c 69 61 6e 0d 01 9a 13  6c 65 61 70 25 3d 79 65  |lian....leap%=ye|
00000440  61 72 25 20 81 20 34 0d  01 a4 2d 64 61 79 25 3d  |ar% . 4...-day%=|
00000450  28 79 65 61 72 25 2b 6c  65 61 70 25 2b 73 74 61  |(year%+leap%+sta|
00000460  72 74 5f 64 61 79 25 28  6d 6f 6e 25 29 2b 34 29  |rt_day%(mon%)+4)|
00000470  20 83 20 37 0d 01 ae 1f  e7 20 79 65 61 72 25 3c  | . 7..... year%<|
00000480  34 20 64 61 79 25 3d 28  64 61 79 25 2b 31 29 20  |4 day%=(day%+1) |
00000490  83 20 37 0d 01 b8 16 6c  65 6e 67 74 68 25 3d 6c  |. 7....length%=l|
000004a0  65 6e 25 28 6d 6f 6e 25  29 0d 01 c2 22 e7 20 79  |en%(mon%)...". y|
000004b0  65 61 72 25 20 83 20 34  3d 30 20 80 20 79 65 61  |ear% . 4=0 . yea|
000004c0  72 25 3c 3e 34 20 f2 6c  65 61 70 0d 01 cc 05 e1  |r%<>4 .leap.....|
000004d0  0d 01 d6 05 3a 0d 01 e0  0a dd f2 67 72 65 67 0d  |....:......greg.|
000004e0  01 ea 31 6c 65 61 70 25  3d 28 79 65 61 72 25 20  |..1leap%=(year% |
000004f0  81 20 34 29 2d 28 79 65  61 72 25 20 81 20 31 30  |. 4)-(year% . 10|
00000500  30 29 2b 28 79 65 61 72  25 20 81 20 34 30 30 29  |0)+(year% . 400)|
00000510  0d 01 f4 2d 64 61 79 25  3d 28 79 65 61 72 25 2b  |...-day%=(year%+|
00000520  6c 65 61 70 25 2b 73 74  61 72 74 5f 64 61 79 25  |leap%+start_day%|
00000530  28 6d 6f 6e 25 29 2b 36  29 20 83 20 37 0d 01 fe  |(mon%)+6) . 7...|
00000540  16 6c 65 6e 67 74 68 25  3d 6c 65 6e 25 28 6d 6f  |.length%=len%(mo|
00000550  6e 25 29 0d 02 08 32 e7  20 79 65 61 72 25 20 83  |n%)...2. year% .|
00000560  20 31 30 30 20 3d 30 20  80 20 79 65 61 72 25 20  | 100 =0 . year% |
00000570  83 20 34 30 30 20 3c 3e  30 20 43 25 3d 31 20 8b  |. 400 <>0 C%=1 .|
00000580  20 43 25 3d 30 0d 02 12  1f e7 20 79 65 61 72 25  | C%=0..... year%|
00000590  20 83 20 34 20 3d 30 20  80 20 43 25 3d 30 20 f2  | . 4 =0 . C%=0 .|
000005a0  6c 65 61 70 0d 02 1c 05  e1 0d 02 26 05 3a 0d 02  |leap.......&.:..|
000005b0  30 0a dd f2 6c 65 61 70  0d 02 3a 26 e7 20 6d 6f  |0...leap..:&. mo|
000005c0  6e 25 3c 33 20 64 61 79  25 3d 64 61 79 25 2b 36  |n%<3 day%=day%+6|
000005d0  3a 64 61 79 25 3d 64 61  79 25 20 83 20 37 0d 02  |:day%=day% . 7..|
000005e0  44 17 e7 20 6d 6f 6e 25  3d 32 20 6c 65 6e 67 74  |D.. mon%=2 lengt|
000005f0  68 25 3d 32 39 0d 02 4e  05 e1 0d 02 58 05 3a 0d  |h%=29..N....X.:.|
00000600  02 62 0c dd f2 73 65 70  74 35 32 0d 02 6c 14 e7  |.b...sept52..l..|
00000610  20 6d 6f 6e 25 3c 39 20  f2 6a 75 6c 69 61 6e 0d  | mon%<9 .julian.|
00000620  02 76 12 e7 20 6d 6f 6e  25 3e 39 20 f2 67 72 65  |.v.. mon%>9 .gre|
00000630  67 0d 02 80 1c e7 20 6d  6f 6e 25 3d 39 20 6d 69  |g..... mon%=9 mi|
00000640  73 73 25 3d b9 3a f2 6a  75 6c 69 61 6e 0d 02 8a  |ss%=.:.julian...|
00000650  05 e1 0d 02 94 05 3a 0d  02 9e 21 dd f2 63 61 6c  |......:...!..cal|
00000660  65 6e 64 72 28 68 65 61  64 24 2c 6c 65 6e 67 74  |endr(head$,lengt|
00000670  68 25 2c 64 61 79 25 29  0d 02 a8 4d f4 20 68 65  |h%,day%)...M. he|
00000680  61 64 24 3d 68 65 61 64  69 6e 67 2c 6c 65 6e 67  |ad$=heading,leng|
00000690  74 68 25 3d 6e 6f 2e 6f  66 20 64 61 79 73 20 69  |th%=no.of days i|
000006a0  6e 20 6d 6f 6e 74 68 2c  64 61 79 25 3d 73 74 61  |n month,day%=sta|
000006b0  72 74 20 64 61 79 20 28  4d 6f 6e 3d 30 2c 53 75  |rt day (Mon=0,Su|
000006c0  6e 3d 36 29 2e 0d 02 b2  0c 6d 69 73 73 32 25 3d  |n=6).....miss2%=|
000006d0  a3 0d 02 bc 05 db 0d 02  c6 12 ef 32 33 2c 31 2c  |...........23,1,|
000006e0  30 3b 30 3b 30 3b 30 3b  0d 02 d0 1b f1 27 64 62  |0;0;0;0;.....'db|
000006f0  24 8a 31 39 2d a9 68 65  61 64 24 2f 32 29 68 65  |$.19-.head$/2)he|
00000700  61 64 24 0d 02 da 1a f1  64 62 24 8a 31 39 2d a9  |ad$.....db$.19-.|
00000710  68 65 61 64 24 2f 32 29  68 65 61 64 24 0d 02 e4  |head$/2)head$...|
00000720  4a f1 27 8a 32 29 64 62  24 63 31 24 22 4d 6f 6e  |J.'.2)db$c1$"Mon|
00000730  20 22 63 32 24 22 54 75  65 20 22 63 31 24 22 57  | "c2$"Tue "c1$"W|
00000740  65 64 20 22 63 32 24 22  54 68 75 20 22 63 31 24  |ed "c2$"Thu "c1$|
00000750  22 46 72 69 20 22 63 32  24 22 53 61 74 20 22 63  |"Fri "c2$"Sat "c|
00000760  31 24 22 53 75 6e 22 0d  02 ee 49 f1 8a 32 29 64  |1$"Sun"...I..2)d|
00000770  62 24 63 31 24 22 4d 6f  6e 20 22 63 32 24 22 54  |b$c1$"Mon "c2$"T|
00000780  75 65 20 22 63 31 24 22  57 65 64 20 22 63 32 24  |ue "c1$"Wed "c2$|
00000790  22 54 68 75 20 22 63 31  24 22 46 72 69 20 22 63  |"Thu "c1$"Fri "c|
000007a0  32 24 22 53 61 74 20 22  63 31 24 22 53 75 6e 22  |2$"Sat "c1$"Sun"|
000007b0  0d 02 f8 13 40 25 3d 32  3a 64 61 79 25 3d 2d 64  |....@%=2:day%=-d|
000007c0  61 79 25 0d 03 02 07 f5  20 f1 0d 03 0c 1a 57 25  |ay%..... .....W%|
000007d0  3d 30 3a 63 6f 6c 6f 75  72 25 3d 31 33 31 3a f2  |=0:colour%=131:.|
000007e0  6c 69 6e 65 0d 03 16 23  e7 57 25 3c 37 20 57 25  |line...#.W%<7 W%|
000007f0  3d 57 25 2b 31 3a 64 61  79 25 3d 64 61 79 25 2b  |=W%+1:day%=day%+|
00000800  31 3a e5 8d 54 56 43 0d  03 20 20 57 25 3d 30 3a  |1:..TVC..  W%=0:|
00000810  64 61 79 25 3d 64 61 79  25 2d 37 3a 63 6f 6c 6f  |day%=day%-7:colo|
00000820  75 72 25 3d 31 33 31 0d  03 2a 26 e7 20 64 61 79  |ur%=131..*&. day|
00000830  25 3d 31 30 20 80 20 6d  69 73 73 25 20 64 61 79  |%=10 . miss% day|
00000840  25 3d 2d 31 3a 6d 69 73  73 32 25 3d b9 0d 03 34  |%=-1:miss2%=...4|
00000850  1f f2 6c 69 6e 65 3a 6d  69 73 73 25 3d a3 3a fd  |..line:miss%=.:.|
00000860  64 61 79 25 3d 6c 65 6e  67 74 68 25 0d 03 3e 45  |day%=length%..>E|
00000870  e7 20 6d 69 73 73 32 25  20 6d 69 73 73 32 25 3d  |. miss2% miss2%=|
00000880  a3 3a f1 27 27 8a 34 29  bd 28 33 34 29 22 47 69  |.:.''.4).(34)"Gi|
00000890  76 65 20 55 73 20 42 61  63 6b 20 4f 75 72 20 45  |ve Us Back Our E|
000008a0  6c 65 76 65 6e 20 44 61  79 73 21 22 bd 28 33 34  |leven Days!".(34|
000008b0  29 0d 03 48 05 e1 0d 03  52 05 3a 0d 03 5c 0a dd  |)..H....R.:..\..|
000008c0  f2 6c 69 6e 65 0d 03 66  0c f1 8a 31 29 64 62 24  |.line..f...1)db$|
000008d0  3b 0d 03 70 19 f5 20 64  61 79 25 3d 64 61 79 25  |;..p.. day%=day%|
000008e0  2b 31 3a 57 25 3d 57 25  2b 31 0d 03 7a 2c e7 64  |+1:W%=W%+1..z,.d|
000008f0  61 79 25 3d 33 20 80 20  6d 69 73 73 25 20 64 61  |ay%=3 . miss% da|
00000900  79 25 3d 31 34 3a f4 20  53 65 70 74 65 6d 62 65  |y%=14:. Septembe|
00000910  72 20 31 37 35 32 0d 03  84 27 f1 bd 28 63 6f 6c  |r 1752...'..(col|
00000920  6f 75 72 25 29 22 20 22  3b 3a 63 6f 6c 6f 75 72  |our%)" ";:colour|
00000930  25 3d 63 6f 6c 6f 75 72  25 20 82 20 36 0d 03 8e  |%=colour% . 6...|
00000940  17 e7 20 64 61 79 25 3c  31 f1 89 32 3b 8b f1 64  |.. day%<1..2;..d|
00000950  61 79 25 3b 0d 03 98 09  f1 22 20 22 3b 0d 03 a2  |ay%;....." ";...|
00000960  1c fd 57 25 3d 37 20 84  20 64 61 79 25 3d 6c 65  |..W%=7 . day%=le|
00000970  6e 67 74 68 25 3a f1 3a  e1 0d 03 ac 05 3a 0d 03  |ngth%:.:.....:..|
00000980  b6 0a dd f2 64 61 74 65  0d 03 c0 12 ea 20 64 61  |....date..... da|
00000990  74 65 24 2c 76 61 6c 69  64 25 0d 03 ca 05 f5 0d  |te$,valid%......|
000009a0  03 d4 0c 76 61 6c 69 64  25 3d b9 0d 03 de 30 f1  |...valid%=....0.|
000009b0  8a 30 2c 31 30 29 89 35  22 50 6c 65 61 73 65 20  |.0,10).5"Please |
000009c0  65 6e 74 65 72 20 74 68  65 20 6d 6f 6e 74 68 20  |enter the month |
000009d0  61 6e 64 20 79 65 61 72  2e 22 27 0d 03 e8 0e e8  |and year."'.....|
000009e0  8a 31 30 29 64 61 74 65  24 0d 03 f2 1a e7 20 a9  |.10)date$..... .|
000009f0  64 61 74 65 24 3c 33 20  64 61 74 65 24 3d 22 30  |date$<3 date$="0|
00000a00  20 30 22 0d 03 fc 1d 6d  6f 6e 25 3d a4 64 65 63  | 0"....mon%=.dec|
00000a10  6f 64 65 5f 6d 6f 6e 74  68 28 64 61 74 65 24 29  |ode_month(date$)|
00000a20  0d 04 06 1d 79 65 61 72  25 3d a4 64 65 63 6f 64  |....year%=.decod|
00000a30  65 5f 79 65 61 72 28 64  61 74 65 24 29 0d 04 10  |e_year(date$)...|
00000a40  5a e7 20 6d 6f 6e 25 3d  31 33 20 84 20 79 65 61  |Z. mon%=13 . yea|
00000a50  72 25 3d 30 20 db 3a f1  8a 35 2c 37 29 22 54 68  |r%=0 .:..5,7)"Th|
00000a60  61 74 20 64 6f 65 73 20  6e 6f 74 20 6d 61 6b 65  |at does not make|
00000a70  20 73 65 6e 73 65 2e 22  27 8a 35 29 22 50 6c 65  | sense."'.5)"Ple|
00000a80  61 73 65 20 74 72 79 20  61 67 61 69 6e 22 3a 76  |ase try again":v|
00000a90  61 6c 69 64 25 3d a3 0d  04 1a 0c fd 20 76 61 6c  |alid%=...... val|
00000aa0  69 64 25 0d 04 24 05 e1  0d 04 2e 05 3a 0d 04 38  |id%..$......:..8|
00000ab0  16 dd a4 64 65 63 6f 64  65 5f 6d 6f 6e 74 68 28  |...decode_month(|
00000ac0  61 24 29 0d 04 42 3f e7  20 97 28 c0 61 24 2c 31  |a$)..B?. .(.a$,1|
00000ad0  29 29 3e 26 34 30 20 3d  a4 64 65 63 6f 64 65 5f  |))>&40 =.decode_|
00000ae0  6c 65 74 74 65 72 73 28  61 24 29 20 8b 20 3d a4  |letters(a$) . =.|
00000af0  64 65 63 6f 64 65 5f 6e  75 6d 62 65 72 73 28 61  |decode_numbers(a|
00000b00  24 29 0d 04 4c 05 3a 0d  04 56 18 dd a4 64 65 63  |$)..L.:..V...dec|
00000b10  6f 64 65 5f 6c 65 74 74  65 72 73 28 61 24 29 0d  |ode_letters(a$).|
00000b20  04 60 0d ea 20 6d 6f 6e  25 2c 62 24 0d 04 6a 43  |.`.. mon%,b$..jC|
00000b30  62 24 3d bd 28 97 28 c0  61 24 2c 31 29 29 20 80  |b$=.(.(.a$,1)) .|
00000b40  20 26 44 46 29 2b bd 28  97 28 c1 61 24 2c 32 2c  | &DF)+.(.(.a$,2,|
00000b50  31 29 29 20 84 20 26 32  30 29 2b bd 28 97 28 c1  |1)) . &20)+.(.(.|
00000b60  61 24 2c 33 2c 31 29 29  20 84 20 26 32 30 29 0d  |a$,3,1)) . &20).|
00000b70  04 74 0a 6d 6f 6e 25 3d  30 0d 04 7e 05 f5 0d 04  |.t.mon%=0..~....|
00000b80  88 0f 6d 6f 6e 25 3d 6d  6f 6e 25 2b 31 0d 04 92  |..mon%=mon%+1...|
00000b90  23 fd 20 6d 6f 6e 25 3d  31 33 20 84 20 62 24 3d  |#. mon%=13 . b$=|
00000ba0  c0 6d 6f 6e 74 68 24 28  6d 6f 6e 25 29 2c 33 29  |.month$(mon%),3)|
00000bb0  0d 04 9c 09 3d 6d 6f 6e  25 0d 04 a6 05 3a 0d 04  |....=mon%....:..|
00000bc0  b0 18 dd a4 64 65 63 6f  64 65 5f 6e 75 6d 62 65  |....decode_numbe|
00000bd0  72 73 28 61 24 29 0d 04  ba 0a ea 20 6d 6f 6e 25  |rs(a$)..... mon%|
00000be0  0d 04 c4 12 6d 6f 6e 25  3d a0 28 c0 61 24 2c 32  |....mon%=.(.a$,2|
00000bf0  29 29 0d 04 ce 1e e7 20  6d 6f 6e 25 3c 31 20 84  |))..... mon%<1 .|
00000c00  20 6d 6f 6e 25 3e 31 32  20 6d 6f 6e 25 3d 31 33  | mon%>12 mon%=13|
00000c10  0d 04 d8 09 3d 6d 6f 6e  25 0d 04 e2 05 3a 0d 04  |....=mon%....:..|
00000c20  ec 15 dd a4 64 65 63 6f  64 65 5f 79 65 61 72 28  |....decode_year(|
00000c30  61 24 29 0d 04 f6 0f ea  20 6e 25 2c 61 64 25 2c  |a$)..... n%,ad%,|
00000c40  79 25 0d 05 00 5d e7 20  28 97 28 c2 61 24 2c 31  |y%...]. (.(.a$,1|
00000c50  29 29 20 80 20 26 44 46  29 3d 97 28 22 44 22 29  |)) . &DF)=.("D")|
00000c60  20 80 20 28 97 28 c1 61  24 2c a9 61 24 2d 31 2c  | . (.(.a$,.a$-1,|
00000c70  31 29 29 20 80 20 26 44  46 29 3d 97 28 22 41 22  |1)) . &DF)=.("A"|
00000c80  29 20 8c 20 61 64 25 3d  b9 3a 61 24 3d c0 61 24  |) . ad%=.:a$=.a$|
00000c90  2c a9 61 24 2d 32 29 20  8b 20 61 64 25 3d a3 0d  |,.a$-2) . ad%=..|
00000ca0  05 0a 28 e7 20 97 28 c2  61 24 2c 31 29 29 3c 26  |..(. .(.a$,1))<&|
00000cb0  33 30 20 84 20 97 28 c2  61 24 2c 31 29 29 3e 26  |30 . .(.a$,1))>&|
00000cc0  33 39 20 8c 20 3d 30 0d  05 14 09 6e 25 3d 2d 31  |39 . =0....n%=-1|
00000cd0  0d 05 1e 05 f5 0d 05 28  0b 6e 25 3d 6e 25 2b 31  |.......(.n%=n%+1|
00000ce0  0d 05 32 30 fd 97 28 c1  61 24 2c a9 61 24 2d 6e  |..20..(.a$,.a$-n|
00000cf0  25 2c 31 29 29 3c 26 33  30 20 84 20 97 28 c1 61  |%,1))<&30 . .(.a|
00000d00  24 2c a9 61 24 2d 6e 25  2c 31 29 29 3e 26 33 39  |$,.a$-n%,1))>&39|
00000d10  0d 05 3c 11 79 25 3d a0  28 c2 61 24 2c 6e 25 29  |..<.y%=.(.a$,n%)|
00000d20  29 0d 05 46 25 e7 20 79  25 3c 31 30 30 20 80 20  |)..F%. y%<100 . |
00000d30  ac 20 61 64 25 20 8c 20  3d 79 25 2b 31 39 30 30  |. ad% . =y%+1900|
00000d40  20 8b 20 3d 79 25 0d 05  50 05 3a 0d 05 5a 0b dd  | . =y%..P.:..Z..|
00000d50  f2 65 72 72 6f 72 0d 05  64 08 2a 46 58 34 0d 05  |.error..d.*FX4..|
00000d60  6e 0b 40 25 3d 26 39 30  41 0d 05 78 20 e7 20 9f  |n.@%=&90A..x . .|
00000d70  3c 3e 31 37 20 f6 3a f1  22 20 61 74 20 6c 69 6e  |<>17 .:." at lin|
00000d80  65 20 22 3b 9e 20 8b 20  f1 0d 05 82 05 e1 0d 05  |e ";. . ........|
00000d90  8c 05 3a 0d 05 96 16 dd  f2 6e 65 78 74 3a 6d 6f  |..:......next:mo|
00000da0  6e 25 3d 6d 6f 6e 25 2b  31 0d 05 a0 22 e7 20 6d  |n%=mon%+1...". m|
00000db0  6f 6e 25 3d 31 33 20 6d  6f 6e 25 3d 31 3a 79 65  |on%=13 mon%=1:ye|
00000dc0  61 72 25 3d 79 65 61 72  25 2b 31 0d 05 aa 05 e1  |ar%=year%+1.....|
00000dd0  0d 05 b4 05 3a 0d 05 be  16 dd f2 70 72 65 76 3a  |....:......prev:|
00000de0  6d 6f 6e 25 3d 6d 6f 6e  25 2d 31 0d 05 c8 22 e7  |mon%=mon%-1...".|
00000df0  20 6d 6f 6e 25 3d 30 20  6d 6f 6e 25 3d 31 32 3a  | mon%=0 mon%=12:|
00000e00  79 65 61 72 25 3d 79 65  61 72 25 2d 31 0d 05 d2  |year%=year%-1...|
00000e10  1f e7 20 79 65 61 72 25  3c 31 20 79 65 61 72 25  |.. year%<1 year%|
00000e20  3d 31 3a 6d 6f 6e 25 3d  31 3a ef 37 0d 05 dc 05  |=1:mon%=1:.7....|
00000e30  e1 0d 05 e6 05 3a 0d 05  f0 12 dd f2 69 6e 73 74  |.....:......inst|
00000e40  72 75 63 74 69 6f 6e 73  0d 05 fa 2b f1 27 27 22  |ructions...+.''"|
00000e50  44 6f 20 79 6f 75 20 72  65 71 75 69 72 65 20 69  |Do you require i|
00000e60  6e 73 74 72 75 63 74 69  6f 6e 73 3f 20 28 59 2f  |nstructions? (Y/|
00000e70  4e 29 22 0d 06 04 05 f5  0d 06 0e 07 41 3d a5 0d  |N)".........A=..|
00000e80  06 18 20 fd 41 3d 37 38  20 84 20 41 3d 31 31 30  |.. .A=78 . A=110|
00000e90  20 84 20 41 3d 38 39 20  84 20 41 3d 31 32 31 0d  | . A=89 . A=121.|
00000ea0  06 22 16 e7 20 41 3d 37  38 20 84 20 41 3d 31 31  |.".. A=78 . A=11|
00000eb0  30 20 8c 20 e1 0d 06 2c  07 db 3a f1 0d 06 36 4b  |0 . ...,..:...6K|
00000ec0  f1 22 54 68 69 73 20 70  72 6f 67 72 61 6d 20 77  |."This program w|
00000ed0  69 6c 6c 20 64 69 73 70  6c 61 79 20 61 20 63 61  |ill display a ca|
00000ee0  6c 65 6e 64 61 72 20 66  6f 72 61 6e 79 20 6d 6f  |lendar forany mo|
00000ef0  6e 74 68 20 66 72 6f 6d  20 31 20 41 44 20 6f 6e  |nth from 1 AD on|
00000f00  77 61 72 64 73 2e 22 0d  06 40 7a f1 27 22 45 6e  |wards."..@z.'"En|
00000f10  74 65 72 20 74 68 65 20  6d 6f 6e 74 68 20 61 6e  |ter the month an|
00000f20  64 20 79 65 61 72 2e 20  54 68 65 20 6d 6f 6e 74  |d year. The mont|
00000f30  68 20 6d 61 79 20 62 65  20 65 6e 74 65 72 65 64  |h may be entered|
00000f40  20 61 73 20 61 20 6e 75  6d 62 65 72 20 6f 72 20  | as a number or |
00000f50  6c 65 74 74 65 72 73 20  28 6f 6e 6c 79 20 74 68  |letters (only th|
00000f60  65 20 66 69 72 73 74 20  33 20 6c 65 74 74 65 72  |e first 3 letter|
00000f70  73 20 61 72 65 20 72 65  71 75 69 72 65 64 29 2e  |s are required).|
00000f80  22 0d 06 4a 87 f1 27 22  54 6f 20 64 69 73 70 6c  |"..J..'"To displ|
00000f90  61 79 20 74 68 65 20 6e  65 78 74 20 6d 6f 6e 74  |ay the next mont|
00000fa0  68 2c 20 70 72 65 73 73  20 3e 20 6f 72 22 27 22  |h, press > or"'"|
00000fb0  74 68 65 20 72 69 67 68  74 20 61 72 72 6f 77 20  |the right arrow |
00000fc0  6b 65 79 2e 22 27 27 22  54 6f 20 64 69 73 70 6c  |key."''"To displ|
00000fd0  61 79 20 74 68 65 20 70  72 65 76 69 6f 75 73 20  |ay the previous |
00000fe0  6d 6f 6e 74 68 2c 20 70  72 65 73 73 20 3c 22 27  |month, press <"'|
00000ff0  22 6f 72 20 74 68 65 20  6c 65 66 74 20 61 72 72  |"or the left arr|
00001000  6f 77 20 6b 65 79 2e 22  0d 06 54 50 f1 27 22 54  |ow key."..TP.'"T|
00001010  6f 20 73 74 65 70 20 66  6f 72 77 61 72 64 20 6f  |o step forward o|
00001020  72 20 62 61 63 6b 77 61  72 64 20 6f 6e 65 20 79  |r backward one y|
00001030  65 61 72 2c 22 27 22 70  72 65 73 73 20 74 68 65  |ear,"'"press the|
00001040  20 75 70 20 6f 72 20 64  6f 77 6e 20 61 72 72 6f  | up or down arro|
00001050  77 20 6b 65 79 73 2e 22  0d 06 5e 3a f1 27 22 54  |w keys."..^:.'"T|
00001060  6f 20 64 69 73 70 6c 61  79 20 61 6e 79 20 6f 74  |o display any ot|
00001070  68 65 72 20 6d 6f 6e 74  68 2c 20 70 72 65 73 73  |her month, press|
00001080  20 61 6e 79 22 27 22 6f  74 68 65 72 20 6b 65 79  | any"'"other key|
00001090  2e 22 0d 06 68 22 f1 27  22 50 72 65 73 73 20 61  |."..h".'"Press a|
000010a0  6e 79 20 6b 65 79 20 74  6f 20 63 6f 6e 74 69 6e  |ny key to contin|
000010b0  75 65 2e 22 0d 06 72 09  41 3d a5 3a db 0d 06 7c  |ue."..r.A=.:...||
000010c0  e0 f1 20 8a 30 2c 35 29  22 49 66 20 74 68 65 20  |.. .0,5)"If the |
000010d0  79 65 61 72 20 65 6e 74  65 72 65 64 20 69 73 20  |year entered is |
000010e0  6c 65 73 73 20 74 68 61  6e 20 31 30 30 2c 22 27  |less than 100,"'|
000010f0  22 65 2e 67 2e 20 39 31  2c 20 69 74 20 77 69 6c  |"e.g. 91, it wil|
00001100  6c 20 62 65 20 61 73 73  75 6d 65 64 20 74 6f 20  |l be assumed to |
00001110  62 65 20 69 6e 20 74 68  65 32 30 74 68 20 63 65  |be in the20th ce|
00001120  6e 74 75 72 79 2c 20 69  2e 65 2e 20 31 39 39 31  |ntury, i.e. 1991|
00001130  2e 20 49 66 20 79 6f 75  20 77 61 6e 74 20 74 6f  |. If you want to|
00001140  20 65 6e 74 65 72 20 61  20 64 61 74 65 20 69 6e  | enter a date in|
00001150  20 74 68 65 20 31 73 74  20 63 65 6e 74 75 72 79  | the 1st century|
00001160  20 41 44 2c 20 74 79 70  65 41 44 20 6f 6e 20 74  | AD, typeAD on t|
00001170  68 65 20 65 6e 64 20 6f  66 20 74 68 65 20 79 65  |he end of the ye|
00001180  61 72 2c 20 65 2e 67 2e  20 4e 4f 56 38 34 41 44  |ar, e.g. NOV84AD|
00001190  20 6f 72 20 31 31 20 38  34 41 44 2e 22 0d 06 86  | or 11 84AD."...|
000011a0  22 f1 27 22 50 72 65 73  73 20 61 6e 79 20 6b 65  |".'"Press any ke|
000011b0  79 20 74 6f 20 63 6f 6e  74 69 6e 75 65 2e 22 0d  |y to continue.".|
000011c0  06 90 09 41 3d a5 3a db  0d 06 9a 27 f1 27 8a 35  |...A=.:....'.'.5|
000011d0  29 22 4e 6f 74 65 73 20  6f 6e 20 74 68 65 20 4a  |)"Notes on the J|
000011e0  75 6c 69 61 6e 20 43 61  6c 65 6e 64 61 72 22 0d  |ulian Calendar".|
000011f0  06 a4 75 f1 27 22 42 65  66 6f 72 65 20 31 37 35  |..u.'"Before 175|
00001200  32 2c 20 74 68 65 20 63  61 6c 65 6e 64 61 72 20  |2, the calendar |
00001210  79 65 61 72 20 62 65 67  61 6e 20 61 74 20 74 68  |year began at th|
00001220  65 20 74 69 6d 65 20 6f  66 20 74 68 65 20 41 6e  |e time of the An|
00001230  6e 75 6e 63 69 61 74 69  6f 6e 2c 20 61 62 6f 75  |nunciation, abou|
00001240  74 20 61 22 27 22 77 65  65 6b 20 62 65 66 6f 72  |t a"'"week befor|
00001250  65 20 74 68 65 20 65 6e  64 20 6f 66 20 4d 61 72  |e the end of Mar|
00001260  63 68 2e 22 0d 06 ae 55  f1 22 46 6f 72 20 4a 61  |ch."...U."For Ja|
00001270  6e 75 61 72 79 2c 20 46  65 62 72 75 61 72 79 20  |nuary, February |
00001280  61 6e 64 20 4d 61 72 63  68 2c 20 74 68 65 22 27  |and March, the"'|
00001290  22 63 61 6c 65 6e 64 61  72 20 73 68 6f 77 73 20  |"calendar shows |
000012a0  62 6f 74 68 20 74 68 65  20 68 69 73 74 6f 72 69  |both the histori|
000012b0  63 61 6c 20 79 65 61 72  22 0d 06 b8 a2 f1 22 28  |cal year"....."(|
000012c0  62 65 67 69 6e 6e 69 6e  67 20 6f 6e 20 31 73 74  |beginning on 1st|
000012d0  20 4a 61 6e 75 61 72 79  29 20 61 6e 64 20 74 68  | January) and th|
000012e0  65 22 27 22 63 61 6c 65  6e 64 61 72 20 79 65 61  |e"'"calendar yea|
000012f0  72 2e 20 46 6f 72 20 65  78 61 6d 70 6c 65 2c 20  |r. For example, |
00001300  69 66 20 79 6f 75 20 65  6e 74 65 72 22 bd 33 34  |if you enter".34|
00001310  22 4a 41 4e 20 31 37 34  33 22 bd 33 34 22 2c 20  |"JAN 1743".34", |
00001320  74 68 65 20 68 69 73 74  6f 72 69 63 61 6c 20 79  |the historical y|
00001330  65 61 72 20 69 73 20 31  37 34 33 2c 62 75 74 20  |ear is 1743,but |
00001340  74 68 65 20 63 61 6c 65  6e 64 61 72 20 79 65 61  |the calendar yea|
00001350  72 20 69 73 20 31 37 34  32 2e 22 0d 06 c2 3d f1  |r is 1742."...=.|
00001360  27 22 54 68 65 20 63 61  6c 65 6e 64 61 72 20 77  |'"The calendar w|
00001370  69 6c 6c 20 73 68 6f 77  20 74 68 69 73 20 61 73  |ill show this as|
00001380  22 27 bd 33 34 22 4a 61  6e 75 61 72 79 20 31 37  |"'.34"January 17|
00001390  34 32 2f 33 22 bd 33 34  0d 06 cc 4a f1 27 22 54  |42/3".34...J.'"T|
000013a0  68 65 20 64 61 74 65 20  77 68 69 63 68 20 79 6f  |he date which yo|
000013b0  75 20 65 6e 74 65 72 20  69 73 20 61 6c 77 61 79  |u enter is alway|
000013c0  73 20 74 61 6b 65 6e 74  6f 20 62 65 20 74 68 65  |s takento be the|
000013d0  20 68 69 73 74 6f 72 69  63 61 6c 20 79 65 61 72  | historical year|
000013e0  2e 22 0d 06 d6 21 f1 27  22 34 20 41 44 20 77 61  |."...!.'"4 AD wa|
000013f0  73 20 6e 6f 74 20 61 20  6c 65 61 70 20 79 65 61  |s not a leap yea|
00001400  72 2e 22 0d 06 e0 4f f1  27 22 49 20 61 6d 20 69  |r."...O.'"I am i|
00001410  6e 64 65 62 74 65 64 20  74 6f 20 4d 69 63 68 61  |ndebted to Micha|
00001420  65 6c 20 4c 65 65 74 65  20 6f 66 22 27 22 43 68  |el Leete of"'"Ch|
00001430  65 73 68 69 72 65 20 66  6f 72 20 74 68 65 20 61  |eshire for the a|
00001440  62 6f 76 65 20 69 6e 66  6f 72 6d 61 74 69 6f 6e  |bove information|
00001450  2e 22 0d 06 ea 23 f1 27  22 50 72 65 73 73 20 61  |."...#.'"Press a|
00001460  6e 79 20 6b 65 79 20 74  6f 20 63 6f 6e 74 69 6e  |ny key to contin|
00001470  75 65 2e 22 3b 0d 06 f4  09 41 3d a5 3a db 0d 06  |ue.";....A=.:...|
00001480  fe 05 e1 0d ff                                    |.....|
00001485
Calendr.m0
Calendr.m1
Calendr.m2
Calendr.m4
Calendr.m5