IBM System/23 Datamaster

Revision as of 19:16, 12 May 2024 by Retroand (talk | contribs)

Diagnostics port

 
System/23 diagnostics port

The System/23 datamaster has a dedicated diagnostics port. It is controlled by a single 8255 by using its port B, whereas ports A and C have no relation in function; for this reason it is deduced that port B is working in mode 0, without handshaking of any sort. This fact is confirmed by the eight data lines which conform the data port being directly connected only to port B and the remaining four signals are for supplying power to the probes.

After finding the pinout of the diagnostics port a simple probe containing a led per data line was built, and it showed a count when booting. Removing the RAM board(s) caused the count to stop at "00000100" (4 in decimal), which corresponds to a memory check test procedure of PID 1200. With those facts it was deduced that the port was outputting a two-digit hex code which was written just before the start of a test routine and would stop when the error was considered critical.

For most cases it is not necessary having the probe, as the same values that are outputted through the service port are also written in the video memory, displaying the passed tests and the errors encountered. However, as the same tests that check the video display controller are the same routines that initialize it, all the tests made before the initialization cannot be seen in the screen until passed. In case some of them failed the screen would not be initialized and therefore the results wouln't be seen. For this reason the probe is still needed.