AppleTalk and Time

ProDOS GET_TIME Behavior

Under some circumstances1), the Apple II Workstation Card will respond to the ProDOS GET_TIME call with a response retrieved from the server, but only if MACHID bit 0 does not indicate clock is installed. This has the effect that regularly calling GET_TIME will keep the ProDOS time/date updated.

Unfortunately, there are many programs that check MACHID bit 0 and if it is unset, don't call GET_TIME before prompting the user to enter the date and time. Thus the benefit is possibly erased if GET_TIME hasn't been called yet.

Time Zone

The Workstation Card firmware provides a system call to set a relative time zone offset from the AFP server. However, none of the Workstation Card software allows setting this.

AppleTalk ConvertTime Call Behavior

The AppleTalk ConvertTime Call (call $34) remembers the seconds when converting from AFP format to ProDOS (which does not have a field for seconds). A subsequent call to convert from ProDOS to AFP format will use the seconds to generate the AFP time. If you thought, as I did, that you might try to get the number of seconds by doing a convert, then a convert back, and subtracting… well you have to have an intervening conversion that is exactly 0 seconds into the minute.

Note that Jan 1, 2000 12:00 AM is 0x00000000 in AFP time, so converting that to P8 time makes for a nice easy way to do it.

1)
at the very least, when booted over AppleTalk, maybe other times