23-Dec-08: More Wang 370

In the last post, I talked about getting the recently-received Wang 370 keyboard unit running as a standard keyboard/display unit (equivalent to a Wang 360K).  The next step is to check out the programming functionality of the 370.

The 370’s programming capabilities are a function of local logic within the 370 that provides the interface to the 371 card reader that provides the source for the program steps; the test and branch logic; the interface between the 370 and the conencted electronics package; and interfacing of the 370 to peripheral devices.  The logic is contined on nine Logiblocs that are the same form-factor as those used in the 300-Series calculators.  The Logiblocs utilize the same Germanium transistor logic as the 300-Series calculators, primarily PNP 2N404 transistors made by RCA.

The 370 has a toggle switch that selects the mode of the display.  The two positions of this switch are DISP PROG, and DISP WREG.  When the switch is in the DISP WREG mode, the working register of the calculator is displayed.  With the switch in the DISP PROG position, the display is changed to show the current program step number (represented as two decimal digits 00 through 79), and the program code punched into the card at that step number (displayed as two octal digits (00 through 77).  Without the 371 card reader connected, I expected that the program code would display either as 00 or 77, if things were working properly.

The 370 was powered up connected to the 360E, and the display mode switch was set to “DISP PROG”.  The display immediately changed from the calculator-mode display of “+0.000000000″ to ”   00  00 “.  This indicates that the program counter (step number) was 00, and the program code at this step is 00.  This was a good sign that at least the logic that switches the display from the calculator’s working register to the internal program counter and code read from the (not-connected) 371 was operating properly.

A key on the 370 keyboard labeled [DISP PROG] allows the display to be momentarily (as long as the key is held down) switched from showing the calculator working register to the program mode.  This key’s function was tested, and it too seemed to function properly.

Another toggle switch on the 370 controls whether the programer automatically advances program steps when a program is run, or puts the machine in single-step mode.  This switch as two positions, “AUTO” and “STEP”. When this switch is in “STEP” mode, the [STEP] keyboard key is supposed to step through the program one instruction at a time with each depression.  With the display mode toggle switch in the “DISP PROG” position, I tried pressing the [STEP] button.  Nothing happened.  I tried a few more depressions, and the display still read ”   00  00 “.  I had expected for the program step counter to advance.  When I switched the display mode switch back to the “DISP WREG” position, the display showed “+0.000000000” asa expected.  But, when I tried entering some digits, there was no response. Pressing the [PRIME] key reset the 370’s logic, and then I could enter numbers and perform math just fine. 

To me, this indicated that either the 371 must be connected for the programming features to work properly, or that there was some kind of problem with the 370’s logic that caused the machine to hang when programming-related operations were attempted.

To answer this question, it would be necessary to get the 371 card reader tested out.  As with any vintage electronics, a thorough visual check is needed before attempting to power up the device.   The 371 was somewhat grubby, but looked to be in OK physical condition.  Mr. Allen (the donor of the 370/371 system) had indicated that there were some problems with the 371 based on his observations, so was going to make sure that a complete inspection was done before attempting to hook it up to the 370. I took the front cover off of the 371, and it immediately became obvious that some form of amateur repair had been attempted to the 371 (not by Mr. Allen, but by some previous owner).  The circuit board was not secured by mounting screws into the case, and the holes in the circuit board did not even match up with the mounting bosses cast into the case.  The only thing securing the circuit board inside the 371 was the connector that allows daisy-chaining of other 371s (the 370 can control up to four 371’s).  It appears that the original connector had been damaged at some point, and someone attempted to replace it with a new connector.  The problem was that when the new connector was soldered in place, it was mis-positioned such that the circuit board was not able to be aligned properly.  The connector is secured to the cabinet with two screws, which are all that was holding the circuit board in place.  While this is a problem that needs to be corrected, inspection revealed that the mis-positioning of the circuit board did not cause any potential short circuits or other problems. 

The next thing to look at is the connector and cable that connects the 371 to the 370.  The connector was inspected, and it looked to be in usable shape, but there were some signs of deterioration of the plastic material that the contacts in the connector are embedded in, but not to the extent where any contacts could short to others.  The cable goes through a grommet in the cabinet of the 371, and terminates in a bunch of individual wires soldered to points on the circuit board.  Each wire was checked, and one wire was found that was not connected to anything.  From there, an ohmmeter was used to check continuity from every contact in the connector to its mate on the circuit board.  It was found that this un-connected wire was simply an “extra” wire that isn’t used.  All of the other connections tested good.  One other thing noted on the 371 circuit board is that an incandescent lamp that lights (shining through a white plastic lens protruding through a hole in the cabinet) was missing.  This indicator lights to show that the 371 is actively being controlled by the 370.  Not knowing what kind of lamp is needed, it was decided to not worry about this problem at this point.

It was decided at this point to button the 371 up, and try connecting it to the 370.  The cover on the 371 was replaced, and the 371 plugged in the “READER” connector on the back panel of the 370.  A few of program cards were prepared with codes “77”, “52” and “25” codes (alternating patterns of 0’s and 1’s) punched in step number 00.

The system was powered up, and tested in calculator mode, with everything operating properly. The punched card with code “77” (all 1’s) was inserted into the card reader, and the reader clamshell closed. The display mode toggle switch was set to “DISP PROG”, and low and behold, the display read ”   00  77 “.  The “77” punched card was removed, and the “52” installed, with the display showing ”   00  52 “.  Then the “25” card was inserted in the 371, and likewise, the display showed that the code was being properly read.  The program run mode switch was set to “STEP”, and the [STEP] button was pressed.  The display didn’t budge, still showing ”   00  25 “.  The display mode switch was set back to “DISP W REG” to put the 370 back in calculator mode, and it was found that the 370 was again hung.  Pressing the [PRIME] key unfroze the 370, allowing it to operate as a calculator keyboard/display unit again.

The assumption at this stage was that the 371 seemed to be working properly, at least being able to read the card code punched into step 0.  It was also assumed that something was amiss with the programming logic of the 370, causing it to hang when operations relating to the programming functions were attempted.

Fortunately, the museum has an original copy of the Wang 300-Series Service Manual.  This document includes schematics of nealy all of the Logiblocs used in the 300-Series calculators, keyboard/display units, and peripheral devices, as well as the Model 370 and 380 programmers.   It was time to sit down and study the logic of the 370, and try to figure out what might be the cause of the system hanging when attempts were made to step the program counter.

In perusing the schematics, it was found that, like most sequential logic systems, the 370’s logic relies on a master clock circuit.  The clock generator, consisting of a transistorized oscillator circuit, drives a chain of three flip flops that are connected as a binary counter.  The clock steps the counter through eight different combinations of outputs.  The outputs of the counter are applied to diode gating networks that decode the counter outputs into various states that control the operation of the 370.

With this information in hand, the first place to check would be the clock generator and the timing counter flip flops.  That will be something for the next posting.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: