In the last post concerning the Wang 370, the 371 punched card reader was checked out and appears to be generally healthy. In spite of this, the 370 still has problems with hanging when simple program-related functions are attempted. After looking through the logic, the first place to check is the master clock and timing chain.
The bottom cover of the 370 was taken off, providing access to the backplane connectors. This would be the best place to connect an oscilloscope to monitor signals on the backplane.
One Logiblock (#571 – System Control) contains the master clock oscillator and the three timing chain flip flops connected as a simple three bit binary counter. A scope probe was placed on the backplane pin containing the master clock signal. The 370 was disconnected from the 360E electronics package, and the 370 powered up. Immediately, the oscilloscope showed a reasonably clean, symmetrical square wave at a frequency of about 36KHz. It was clear that the master oscillator was running just fine. Next, the probe was moved to the output of the first stage of the timing chain. Interestingly, the output was static, with only tiny (a few millivolts) transients occurring occasionally. If the flip flop was working properly, this output should be a square wave running at half the frequency of the master clock. Clearly, it wasn’t. This in itself was a big clue. If the timing chain isn’t running, the logic states that sequence the 370’s logic can’t operate properly. This could well be the reason why the 370 hangs when trying to perform a simple single-step operation.
Just out of curiosity, the outputs of the two other timing chain flip flops were checked, and they too were static, which would make sense, as these flip flops are clocked by the action of the first flip flop.
The outputs of the timing chain flip flops are passed across the backplane to another Logibloc (#570 – System Timer) that contains, among other things, combinatorial logic that decodes the outputs of the timing chain flip flops into a series of timing signals that choreograph the operations of the 370’s functions. To see if perhaps there might be a fault on this board, the board was removed from the backplane, and the 370 powered back up. This time, each of the three timing chain flip flop outputs (T1, T2, and T3) were wiggling the way they should, with the first stage output at half the speed of the master clock, the second stage at one quarter the rate of the clock, and the last stage at 1/8th the master clock frequency.
It seems that something in the System Timer Logibloc was interfering with the output of the first stage of the timing chain. The combinatorial logic on the System Timer board consists of diode-resistor networks configured as AND gates, with transistor stages providing inversion and/or buffering of the gate outputs. There are a number of these logic networks that decode various states of the timing chain flip flops. All of the diodes in the gating networks were tested in-circuit using the diode check mode of the DVM, and they all appeared to be OK. Resistors were measured for proper resistance values, and all were within spec. So, attention was turned to the transistors. A shorted transistor could easily drag down the output(s) of the timing chain flip flops.
Testing transistors in-circuit can be a hit or miss proposition. It is much better to remove the transistors from the circuit, and test them individually. The difficulty with this is that the Wang Logiblocs were hand-assembled. At the time this 370 was manufactured (1969), automated component insertion equipment was very rare. Thus, components were manually inserted into the circuit boards, with the leads bent over on the wire side of the circuit boards to temporarily secure the parts on the board. Once all of the components were installed, the boards were flow-soldered. This makes component removal a little difficult, because with the component leads bent over, the solder needs to be removed, then the leads unbent carefully, and then any residual solder removed while the component is very carefully extracted from the circuit board. A high quality temperature controlled soldering iron, combined with a vacuum solder-removal system makes it possible to remote components, but even with these tools, component extraction is still tedious and time-consuming.
It was decided to remove the seven transistors involved in the timing chain decoding logic and test each of the transistors using a transistor tester.
All seven transistors (RCA-made 2N404 Germanium PNP transistors) were carefully removed from the circuit board, and each was tested. As it turned out, one transistor was found to be bad. It had a short between collector and base that applied -11V to the output of the diode gating network. This served to drag the output of the T1 timing chain flip flop down to near -11V. This was certainly the reason why the timing chain flip flops weren’t running properly. The defective transistor was replaced with a known-good one (the museum has a stock of spare parts for the Wang 300-Series calculators) and all of the transistors re-soldered back in place on the 571 board.
The 571 board was replaced in the backplane, and the scope set up to monitor both the master clock signal, along with the T1, T2, and T3 timing chain flip flop outputs. Power was applied, and low and behold, all three flip flops were flipping and flopping exactly as they should be. To double check, the outputs of each of the logic networks that decode the various states of the timing chain flip flops into timing phases that sequence the operations of the 370 were tested, and each output was as-expected, depending on the state of the three timing chain flip flops at any given point in time.
Now that the timing chain was running properly, it was time to see if programming operations would function properly without hanging the 370.
The 371 Card Reader was connected up to the 370, and the 370 plugged into a Wang 360E electronics package. When powered up, the display showed “+0.000000000” as expected. A program card had been prepared, punched with codes to perform keypresses of , , , followed by a STOP instruction. This program, if it ran, should result in “+123.0000000” being shown on the display.
The card was loaded into the reader, the [PRIME] key pressed to initialize the calculator and the 370, and then the [CONTINUE] key was pressed, which should start the program executing. Nothing happened. The display still read “+0.000000000”. Pressing the [DISP PROG] key showed that the program counter was at “00”, and the step at that location was as it should be. It appeared that the program did not run, as if it had, the program counter should have been something other than “00″. The [DISP PROG] key was released, and the display reverted back to “+0.000000000” as expected. Then the [STEP] key was pressed (with no apparent response by the machine), followed by again holding the [DISP PROG] key. The machine still said that the program counter was still at “00”. If the STEP function worked properly, I would have expected the program counter to have incremented to step “01″. It didn’t.
It appeared that some problems still exist. Just out of curiosity, the [PRIME] key was pressed, followed by the  key, just to make sure that the 370 was still talking to the electronics package. Nothing happened. A number of different key-presses were attempted, and none of them had any effect – the display just kept reading “+0.000000000″. Pressing the [PRIME] key resulted only in a slight dimming of the Nixie tubes – not a good sign. I powered everything down and powered it back up, and tried using the 370 as a plain old calculator keyboard/display unit — functionality which was known to work in the past. Sadly, there was no response to any keypresses on the 370. It appears that in the process of trying to figure out what was up with the timing circuitry, some other problems have cropped up.
Just to make sure that the 360E electronics package didn’t have a problem, a 360K keyboard unit was connected up to it, and it worked fine. So, the problem is definitely something new that has developed with the 370. It seems that I had made one step forward then taken two steps back.
This isn’t the first time that such a situation has occurred when working with old electronics like this. With equipment that is nearing 40 years old, there is much potential for problems. Sometimes just the physical shock of unplugging circuit boards can cause components that were marginal to fail completely. Sometimes no matter how carefully old circuit boards are manipulated, just the act of moving them can create other types of non-component-related problems such as solder joints that were perhaps weak to begin with suddenly failing. Such things are a simple fact of life when it comes to working with electronics that are this old.
While this is a bit of a setback, it isn’t a disaster. It just means that it’s going to take a little more digging to get to the bottom of the problems that this Wang 370 has. Of course, I will make update postings here as time presents itself to do more troubleshooting.