ANSWER TO THE BIT 15 MISBEHAVIOR
With the card out of the machine, I checked the pins on the backplane at slot M4 to check for shorts or unusual connections of the pin B05 that drops to 0V during an XIO Sense Device if pin B08 does not have -24V connected through a 3.9K resistor.
I checked the card as well, testing the connections between the FPGA board, the inverter gate and the output pin. I also looked for shorts to adjacent pins. I then plugged the card into the 1130 at M4 and M5, then tested whether B05 is now shorted to B04 or B06, the likely issue if a mechanical short exists inside my connector.
The first issue I observed with the card was that the contact seemed a bit mis-shaped. I swapped a better contact and resumed testing. I discovered that with the -24V applied, bit 15 would turn on, the opposite of what should occur. That was a simple fix to apply to my Verilog code.
CONTINUING TESTING IN THE 1130
I had to wire up a -24V source to the 3.9K resistor on the cable in order for the controller to see the plotter as ready for commands. If that voltage isn't present, the machine sets bit 15 of the Device Status Word (DSW) to 1 and simply presents an immediate interrupt with operation completion without attempting any control of the plotter.
I switched on the Interrupt Delay switch under the top cover of the 1130. This blocks the machine from jumping into an interrupt handler even though interrupt requests may be present. This made the testing more straightforward.
A short program that I hand toggled into memory fired off XIO Write commands to trigger the different movements - Drum Up, Drum Down, Carriage Left, Carriage Right, Pen Raised and Pen Lowered. It could be stepped in single instruction mode to watch the interrupt level 3 request (IL3), then to look at the outputs of XIO Sense Device.
I hooked up the scope to the output pins on the backplane of the 1130 where the plotter outputs exit the card. What I was looking for was a 12V output steady state while idle and then a 1.9ms or 50ms dip to ground when the pen movement or pen lift/lower commands were issued. The machine should also trigger an interrupt on level 3 and respond appropriately to XIO Sense Device commands.
I also watched the interrupt level 3 request pin to verify that timing from the issuance of the XIO Write and the assertion of the interrupt request. This too passed correctly. Redoing this with -24V off showed virtually zero delay between the XIO Write and the interrupt request.
I verified that the interrupt was requested on level 3 after a command was issued. The DSW status bits were correct after the command - Bit 0 on indicating plotter response and bit 15 off showing that -24V is present from the plotter. Turning off -24V and repeating, I saw Bit 0 and Bit 15 both set. These were the expected results.
Running a program that issues the XIO Write and immediately performed an XIO Sense Device and stops at a Halt instruction allowed me to see if the busy bit 14 would be turned on in the DSW while the controller was active, without having to code an interrupt handler routine to run under level 3. The busy bit was set.
The hardest test to perform was to verify if bit 14 of the device status would be turned on while the card was actively requesting a movement command and for the succeeding duration where the plotter is expected to be busy completing the task. The easier to detect was the pen raise or pen lower commands, as these should be busy for 100 milliseconds. This too was correct.
Everything worked perfectly now. I checked the timing of when the interrupt is requested compared to the length of the plotter drive signal and that was spot on as well. I checked all six movement commands just to be certain. The card now operates exactly as the IBM built 5806223 card does, with the same signal timing, levels and behaviors.
![]() |
| Purple trace is pen movement (1.9ms), yellow is Int L3 Req |
USING USB SERIAL LINK TO CAPTURE MOVEMENT COMMANDS FROM CARD
The CMOD S7 daughtercard has a USB connector that can be used for both loading the FPGA configuration information onto the board and for serial communications with an external device such as a PC. It runs at 38,400 baud and emits a short line with six ASCII characters, either 0 or 1, based on the first six bits of the data word written by the XIO Write instruction. Each line is followed by a newline and a carrier return character.
In order to protect the power supply on my controller card when the USB cable is being used for this purpose, we have to disable having the USB power drive the card; only the 12V from the 1130 into my card will power up the CMOD S7 board. There is a diode (D17) on the CMOD S7 board that connects the +5V from the USB port to the remainder of the board's power circuitry. Opening this connection ensures that the USB cable won't feed any power into the CMOD board or the rest of my controller card.
![]() |
| Diode D17 is circled in red |
From the point that you remove the diode, the way you can flash new code into the FPGA configuration memory device is to apply 12V to pin G02 of the card, ground to D08 and J08, then plug in the USB cable and use Vivado as usual. The card must be out of the IBM 1130, of course.
INSTALLING A CABLE FROM SLOT N5 TO THE PLOTTER CONNECTOR
I built a cable with SLT connector to fit into slot N5 of the same compartment. That brings out the six signals that drive the plotter - pen left, pen right, drum up, drum down, raise pen and lower pen. This cable also carries the signal ground and brings the -24 supply from the plotter, through a 3.9K resistor, to be sensed by the controller card to determine that the plotter is attached and powered on.
In order to exhaustively prove out the card, I had to verify that what it emits over the cable to the 1627 Plotter is sufficient to cause it to move the drum up/down, move the pen left/right, and raise or drop the pen onto the surface. The cable needed to be completed that took the signals from Gate A, Compartment C1, Slot N5 and out to the plotter.
The IBM approach connected a bundle of wires from the SLT connector in Slot N5 and routed them to the Standard Modular System (SMS) connector PF6 inside the 1130. An SMS paddle card inserted into PF6 is wired to the cable that ends in a 19 pin connector (Cannon SK19-23C) which plugs into the plotter. A few wires from the 19 pin connector are hooked to an SMS power paddle card that plugs into SMS connector PP6 inside the 1130, primarily to provide 115VAC to the plotter.
An alternate approach wires an SLT connector from slot N5 out to the 19 pin connector, with only the SMS power paddle card plugged into the original PP6 slot of the 1130. I chose this first as a faster implementation in order to complete some plotter testing.











