Some info on using Dragon/CoCo OS9 L1 in the 21st century.
The OS9 kernel (modules os9p1 & os9p2) has no time or date functions built in. However, it does provide user configurable date & time 'stubs' which are implemented via the clock module:
System Calls: os9f$SetTime & os9f$GetTime INPUT: X = Address of time packet OUTPUT: Time is date set Packet structure is as follows: 0 : Year 1 : Month 2 : Day 3 : Hours 4 : Minutes 5 : SecondsThe packet is 6 bytes wide and as such operates with 2 digit date codes. How these are interpreted when the year code is '00' is software dependent and generally the standard os9 utilities such as 'dir' don't make any assumptions about the leading two digits so for most part the 2 digit format is all that is displayed.
mm (mailmerge, part of the Stylograph Word processing package), when the DATE variable is used with no options ie. date displayed in the form 'July 4, 1776', the year 2000 is translated into '190' ie. '5 January, 190'
Most other commands just display the 2 digit form ie. 05/01/00 which is acceptable. I didn't find anything which attempted to display the day of the week.
OS9 appears to be happily functioning okay this millennium, my RTC rolled over successfully, as I mentioned most date related functions only display the 2-digit format anyway. Most annoying is the 'date' (and the extended date display from 'mailmerge') function which insists it's 1900. I downloaded some Y2k 'fixed' modules from RTSI which do appear to work, however they represent '2000' by storing a value of '100' in the 'Year' field of the OS9 time packet. Whilst my RTC appears to store it okay, the data sheet does give a range 0-99 so it's not liable to be happy with it long term, plus of course short forms tend to be displaying nn/mm/100 so it's not an entire success. For the time being, I think it's worth putting up with it 'as is'. Might pursue it some point.
JRB, Feb 2000