IBM System/23 Datamaster: Difference between revisions

Content deleted Content added
Added explanation about probe not displaying results, added explanation that stock 8275s fail test 05h.
(3 intermediate revisions by the same user not shown)
Line 89:
|}
[[File:ROS Memories.jpg|thumb|left|alt=Some of the sixteen ROS memories|Some of the sixteen ROS memories]]
The ROM Operating System or simply ROS is the firmware of the System/23. It consists in a set of fourteen to sixteen ROMs of 8KB each, for a total of 112KB/128KB, although the service manual states 112KB which means they did not countupdate the non-pagedcapacity after adding ROMs 10h ROMand memory11h<ref>SY34-0171-0 IBM 5322 Computer Service Manual, page 74</ref>. Each ROS ROM has a unique diagnostics identification code, which is determined by the outputs of two 74LS138 3:8 decoders. ROMs 02h and 09h are fixed in the memory map, where the rest are paged in the memory range 4000h-7FFFh. ROMs 0Eh and 0Fh are not present but the logic to select them is implemented even if there is no place to place them in the board; still, with an appropriate ROM adapter their space could be enabled to inject code into the system.
 
ROMs paged 0-7 are present in the board while ROMs paged 8-15 are expected to be provided by expansion cards on their corresponding slots. Therefore, the maximum theoretical ROM capacity for the Datamaster consists of 272KB if the 0Eh-0Fh gap and pages 8-15 are used.
Line 124:
 
A common cause of failure for this board and subsequently the whole computer is by having faulty capacitors in shortcircuit in the RAM power supply lines<ref name=":0" />. By simply removing them the issue is solved. In case of 4132 failure, each 4132 upper and lower packages must be separated in order to run the tests.
 
=== Video Subsystem ===
The video subsystem is almost copied verbatim from the Intel 8275 Datasheet. It consists in a 8275 variant plus a 8257 DMA device. The 4178629 made by Intel is the CRTC chip and it behaves slightly different from stock 8275s when activating the interrupts. This small difference makes the test 05 fail with standard 8275s without a patch on ROS 02h. Otherwise, the Datamaster's CRTC has the same pinout and accepts the same commands and parameters than the regular components.
 
=== Diagnostics port ===
Line 237 ⟶ 240:
 
=== Diagnostics ===
The System/23 Datamaster implements a set of self-test routines identified as "PID-1200". With them it tests the CPU, the memory and the different peripherals of the computer. Usually the results of the tests are written to the screen at start-up but if an error occurs before the initialization of the screen a probe is needed. Faulty CPU, ROM or 8255 (units 2 and 3) will prevent any diagnostics to be displayed, even with a probe. The tests are identified by an hexadecimal value and can be presented unstyled, underlined or inverted. In the case of being underlined it means that the feature tested wasn't found by the system, whereas if it is inverted it has been detected but was tested and found faulty. If the text is left unstyled, it means the test passed. The test routines and their tested areas are the following<ref>6841631 System/23 Diagnostic User Guide, page 87</ref>:
 
{| class="wikitable"
! Test !! Description !! Notes
|-
| 00/FF (uninitialized) || Data bus test (undocumented) || writes and reads to port 0x4C (8255 managing keyboard#3, port A).
|-
| 01 || CPU || 8085 self-test.
Line 252 ⟶ 255:
| 04 || RAM || Test for the first unpaged 16KB. Lecture of register 0x2e.
|-
| 05 || CRTC, DMA || Interrupt test; initialization of 8275, 8257; light pen test. It fails with standard 8275s.
|-
| 06 || CRTC || Sync and video data tests.