IBM PCjr From 1984 Keeps Today’s Clocks Running in Sync

We’ve gotten used to the fact that the clocks on our internet-connected computers and smartphones are always telling the right time. Time servers, provided by a variety of government agencies as well as tech giants, provide them with the exact time and date thanks to accurate atomic clocks and the clever Network Time Protocol (NTP). But it wasn’t always like this: back in the 1990s when many computers didn’t have an internet connection, we had to adjust our computers’ clocks manually. Go back one more decade, and many PCs didn’t even have a battery-backed clock at all; you either set the proper date and time when the computer booted, or just lived with the fact that all new files were timestamped 01-01-1980.


[Michael Brutman] decided to mix today’s world of network time synchronization with the old world of batteryless PCs, and built an SNTP Time Server that runs on a DOS PC. He tried it with two different hardware setups: a 40 MHz 386 PC from 1993, and the (in)famous IBM PCjr from 1984. A standard GPS module serves as an accurate time reference; these units can often be directly connected to old hardware thanks to the eternal RS-232 standard.



Simply having an accurate clock was not enough though: the original IBM hardware had its internal clock only updated every 55 milliseconds, which is not fast enough for a proper NTP server. [Michael] therefore had to tweak the hardware clock’s update rate, taking care not to overload the CPU with too many interrupts. The slow CPU and limited memory anyway required him to implement the Simple Network Time Protocol (SNTP), a stripped-down version of the more commo ..

Support the originator by clicking the read the rest link below.