1
0
mirror of https://github.com/PDP-10/its.git synced 2026-01-28 04:57:43 +00:00
Files
PDP-10.its/bin/librm4/timfcn.fbin

164 lines
6.3 KiB
Plaintext

'<PCODE "5TIMFC">
<PACKAGE "TIMFCN">
<ENTRY DAYS SECONDS SECS-DTNORM DTSECS GOOD-DTSECS TIME-STRING TIMEST REL-TIMEST
TIME-STR TIME-DIF SPDATE PTIME PDATE GOOD-DTNORM DTNORM DTADD DTADD-2NORM DTDIFF
DTPRINT SINCE60 TZDIFF TIMEZONE BEFORE? PAST? DTNOW INMONTH DAYS-BETWEEN
DATE-DOW HOLIDAY? NON-MIT-HOLIDAY? DST? ZONSTR>
<GDECL (ZONSTR) <OR STRING FALSE>>
<USE "DATIME">
<SETG BASE-YEAR 60>
<SETG SECS-P-MIN 60>
<SETG MINS-P-HOUR 60>
<SETG HOURS-P-DAY 24>
<SETG DAYS-P-YEAR 365>
<SETG SECS-P-HOUR <* ,SECS-P-MIN ,MINS-P-HOUR>>
<SETG SECS-P-DAY <* ,SECS-P-HOUR ,HOURS-P-DAY>>
<SETG SECS-P-YEAR <* ,DAYS-P-YEAR ,SECS-P-DAY>>
<SETG SECS-P-4YEAR <+ <* ,SECS-P-YEAR 4> ,SECS-P-DAY>>
<MANIFEST BASE-YEAR SECS-P-MIN MINS-P-HOUR HOURS-P-DAY DAYS-P-YEAR SECS-P-HOUR
SECS-P-DAY SECS-P-YEAR SECS-P-4YEAR>
<SETG SECONDS %<RSUBR!- '[ %<PCODE!- "5TIMFC" 0> SECONDS #DECL ("VALUE" FIX FIX
FIX FIX "OPTIONAL" FIX FIX FIX) TIMEST DAYS RTIME DATE GETTIMEZONE FIX-DATE ![0
31 60 91 121 152 182 213 244 274 305 335!] ![0 31 59 90 120 151 181 212 243 273
304 334!] ("") " " "s " " hour" "and " "" " minute" " second" T " year" " month"
" day" OUTCHAN ["JAN" "FEB" "MAR" "APR" "MAY" "JUN" "JUL" "AUG" "SEP" "OCT"
"NOV" "DEC"] "0" "/" ![0 31 59 90 120 151 181 212 243 273 304 334 365!] ![0 31
60 91 121 152 182 213 244 274 305 335 366!] (CHANNEL) %<RGLOC ZONES T>
UNKNOWN-TIME-ZONE %<RGLOC ZONSTR T> ![31 28 31 30 31 30 31 31 30 31 30 31!]
"New Year's Day" "New Year's Day observed" "Martin Luther King Day"
"Presidents' Day" "Patriots' Day" "Memorial Day" "Independence Day"
"Independence Day observed" "Labor Day" "Columbus Day" "Veterans' Day"
"Veterans' Day observed" "Thanksgiving Day" "Christmas Day"
"Christmas Day observed" "HOLIDAY" "DSK" "COMBAT" "ad-hoc holiday"
"[Setting sun is aligned with M.I.T. main corridor.]" "[Ground-hog Day]"
"[St. Valentine's Day]" "[Leap Day]" "[St. David's Day]" "[St. Patrick's Day]"
"[All Fools' Day]" "[St. George's Day]" "[May Day]" "[Mothers' Day]"
"[Childrens' Day]" "[Flag Day]" "[Fathers' Day]" "[Canadian Dominion Day]"
"[Bastille Day]" "[U.N. Childrens' Day]" "[All Hallows' Eve]" "[Election Day]"
"[St. Andrew's Day]" "[St. Nicholas's Day]" "[Mardi Gras]" "[Ash Wednesday]"
"[Palm Sunday]" "[Good Friday]" "[Easter Sunday]" "[Whitsunday]" ((74 1 6) (1 0
0) "EST") ((74 10 1) (1 0 0) "EST") ((75 2 23) (1 0 0) "EST") ((75 10 26) (1 0 0
) "EST")]>>
<AND <ASSIGNED? GLUE> .GLUE <PUT ,SECONDS PGLUE ![715915263 -1 -1 -1 -16384 0!]>
>
<SETG DAYS %<RSUBR-ENTRY '[SECONDS DAYS #DECL ("VALUE" FIX FIX FIX FIX
"OPTIONAL" FIX FIX)] 92>>
<SETG TIME-STRING %<RSUBR-ENTRY '[SECONDS TIME-STRING #DECL ("VALUE" STRING <
LIST FIX FIX FIX>)] 130>>
<SETG TIMEST %<RSUBR-ENTRY '[SECONDS TIMEST #DECL ("VALUE" STRING FIX <OR FIX
FLOAT> <OR FIX FLOAT>)] 151>>
<SETG REL-TIMEST %<RSUBR-ENTRY '[SECONDS REL-TIMEST #DECL ("VALUE" STRING <LIST
LIST <LIST [3 FIX]>>)] 315>>
<SETG TIME-STR %<RSUBR-ENTRY '[SECONDS TIME-STR #DECL ("VALUE" STRING <OR FIX
FLOAT>)] 513>>
<SETG TIME-DIF %<RSUBR-ENTRY '[SECONDS TIME-DIF #DECL ("VALUE" STRING <LIST FIX
FIX FIX> <LIST FIX FIX FIX> <LIST FIX FIX FIX> <LIST FIX FIX FIX>)] 558>>
<SETG SPDATE %<RSUBR-ENTRY '[SECONDS SPDATE #DECL ("VALUE" FIX <LIST FIX FIX FIX
> "OPTIONAL" CHANNEL)] 632>>
<SETG PTIME %<RSUBR-ENTRY '[SECONDS PTIME #DECL ("VALUE" ANY <LIST FIX FIX FIX>
"OPTIONAL" CHANNEL)] 703>>
<SETG PDATE %<RSUBR-ENTRY '[SECONDS PDATE #DECL ("VALUE" FIX <LIST FIX FIX FIX>
"OPTIONAL" CHANNEL)] 806>>
<SETG SECS-DTNORM %<RSUBR-ENTRY '[SECONDS SECS-DTNORM #DECL ("VALUE" <LIST [2 <
LIST FIX FIX FIX>] STRING> FIX "OPTIONAL" <LIST [2 <LIST FIX FIX FIX>] STRING>)]
870>>
<SETG GOOD-DTSECS %<RSUBR-ENTRY '[SECONDS GOOD-DTSECS #DECL ("VALUE" FIX <LIST [
2 <LIST FIX FIX FIX>] STRING>)] 1120>>
<SETG DTSECS %<RSUBR-ENTRY '[SECONDS DTSECS #DECL ("VALUE" FIX <LIST LIST LIST>)
] 1170>>
<SETG GOOD-DTNORM %<RSUBR-ENTRY '[SECONDS GOOD-DTNORM #DECL ("VALUE" <LIST [2 <
LIST FIX FIX FIX>] STRING> ANY "OPTIONAL" ANY)] 1307>>
<SETG DTNORM %<RSUBR-ENTRY '[SECONDS DTNORM #DECL ("VALUE" <LIST [2 <LIST FIX
FIX FIX>] STRING> <LIST <LIST [REST FIX]> <LIST [REST FIX]>> "OPTIONAL" ANY)]
1386>>
<SETG DTADD %<RSUBR-ENTRY '[SECONDS DTADD #DECL ("VALUE" <LIST [2 <LIST [3 FIX]>
] STRING> <LIST [OPTIONAL LIST]> <LIST [OPTIONAL LIST]> "OPTIONAL" <LIST [2 <
LIST [3 FIX]>]>)] 1465>>
<SETG DTADD-2NORM %<RSUBR-ENTRY '[SECONDS DTADD-2NORM #DECL ("VALUE" <LIST [2 <
LIST [3 FIX]>]> <LIST [REST LIST]> "OPTIONAL" <LIST [2 <LIST [3 FIX]>]>)] 1628>>
<SETG DTDIFF %<RSUBR-ENTRY '[SECONDS DTDIFF #DECL ("VALUE" FLOAT LIST "OPTIONAL"
LIST)] 1836>>
<SETG DTPRINT %<RSUBR-ENTRY '[SECONDS DTPRINT #DECL ("VALUE" ATOM LIST
"OPTIONAL" CHANNEL)] 1883>>
<SETG SINCE60 %<RSUBR-ENTRY '[SECONDS SINCE60 #DECL ("VALUE" FLOAT <LIST <LIST
FIX FIX FIX> <LIST FIX FIX FIX> STRING>)] 2021>>
<SETG ZONES '["GMT" 4 "AST" 0 "ADT" 1 "EST" -1 "EDT" 0 "CST" -2 "CDT" -1 "MST"
-3 "MDT" -2 "PST" -4 "PDT" -3 "YST" -5 "YDT" -4 "HST" -6 "HDT" -5 "BST" -7 "BDT"
-6 "A" 3 "B" 2 "C" 1 "D" 0 "E" -1 "F" -2 "G" -3 "H" -4 "I" -5 "K" -6 "L" -7 "M"
-8 "N" 5 "O" 6 "P" 7 "Q" 8 "R" 9 "S" 10 "T" 11 "U" 12 "V" 13 "W" 14 "X" 15 "Y"
16 "Z" 4]>
<GDECL (ZONES) <VECTOR [REST STRING FIX]>>
<SETG TZDIFF %<RSUBR-ENTRY '[SECONDS TZDIFF #DECL ("VALUE" FIX ANY "OPTIONAL"
ANY)] 2077>>
<SETG ZONSTR <>>
<SETG TIMEZONE %<RSUBR-ENTRY '[SECONDS TIMEZONE #DECL ("VALUE" STRING)] 2169>>
<SETG BEFORE? %<RSUBR-ENTRY '[SECONDS BEFORE? #DECL ("VALUE" <OR ATOM FALSE> ANY
ANY)] 2188>>
<SETG PAST? %<RSUBR-ENTRY '[SECONDS PAST? #DECL ("VALUE" <OR ATOM FALSE> ANY)]
2211>>
<SETG DTNOW %<RSUBR-ENTRY '[SECONDS DTNOW #DECL ("VALUE" <LIST [2 <LIST FIX FIX
FIX>] STRING> "OPTIONAL" <LIST LIST LIST STRING>)] 2227>>
<SETG INMONTH %<RSUBR-ENTRY '[SECONDS INMONTH #DECL ("VALUE" FIX FIX FIX)] 2322>
>
<SETG DAYS-BETWEEN %<RSUBR-ENTRY '[SECONDS DAYS-BETWEEN #DECL ("VALUE" FIX <LIST
<LIST FIX FIX FIX>> <LIST <LIST FIX FIX FIX>>)] 2368>>
<SETG DATE-DOW %<RSUBR-ENTRY '[SECONDS DATE-DOW #DECL ("VALUE" FIX "OPTIONAL" <
LIST [3 FIX]>)] 2406>>
<SETG HOLIDAY? %<RSUBR-ENTRY '[SECONDS HOLIDAY? #DECL ("VALUE" <OR FALSE STRING>
"OPTIONAL" <LIST [3 FIX]>)] 2504>>
<SETG NON-MIT-HOLIDAY? %<RSUBR-ENTRY '[SECONDS NON-MIT-HOLIDAY? #DECL ("VALUE" <
OR FALSE STRING> "OPTIONAL" <LIST [3 FIX]>)] 2770>>
<SETG DST? %<RSUBR-ENTRY '[SECONDS DST? #DECL ("VALUE" <OR ATOM FALSE>
"OPTIONAL" LIST)] 3174>>
<ENDPACKAGE>