GN_Dei, Convert zoned, external format date to internal format

Register parameters

RST 20H, DEFW $1609
IN:
     B = month (1 = january, ..., 12 = december)
     C:
          C7 to C5: day of the week (0 to 7, 0 = unspecified)
          C4 to C0: day of the month (1 to 31)

     DE = signed year number (relative to 0 A.D.).
     B.C. years are negative.

OUT, if call successful:
     Fc = 0
     ABC = internal format date

OUT, if call failed:
     Fc = 1, invalid date given
          A = RC_SNTX, syntax error.

Registers changed after return:
     ....DEHL/IXIY same
     AFBC..../.... different 

Notes

For the "day of the week" parameter, 1 represents Monday, 2 Tuesday, etc. If you supply zero the routine will work out the day name for you. An invalid date error does not return an error code, just Fc=1.

A date is invalid if inconsistent, eg. you say it is Monday when it should be Tuesday, or if a parameter is out of range.

Related calls

GN_Die, convert internal format date to zoned format
GN_Gdt, convert an ASCII string to an internal binary date
GN_Gmd, Get (read) machine date in internal format
GN_Pdt, write internal date as ASCII string
GN_Pmd, put (set) machine date