Wednesday, February 2, 2022

Planning to rebuild the 1130 Extender Box

ABOUT THE 1130 EXTENDER BOX

The IBM 1130 had a feature called Storage Access Channel that allowed peripheral expandability. In most cases, it was connected to a large external chassis, the 1133 Multiplexor, which in turn could support a wide range of peripherals such as 1403 printers, 2310 and 2314 disk drives, even tape drives. It did this by remoting all the signals necessary for a peripheral controller to interface with the CPU.

It had signals to detect when an I/O instruction was executed, to see the addresses and values in key registers, to request and service interrupts, to access core memory via Cycle Stealing, the name IBM used for Direct Memory Access (DMA) back in the early 1960s, and others that were necessary for controller functionality. 

It provided this over a 160 pin cable that similar to the connectors for other peripherals or the IBM Bus and Tag channels of S/360. In addition to the signal cable, there was a standard power connector that brought AC, DC, Lamp Test and power sequencing signals to the attached box from the 1131 Processor. 

I developed a set of interface circuits to bridge between the 1130's SLT logic family (3V signals but not LVCMOS) and modern devices so that I could hook up an FPGA. The FPGA implemented every peripheral that could be attached to an 1130, by responding to the XIO instruction and behaving exactly as the real device would. 

These virtual devices were fed data from a Python program running on a PC, communicating with the FPGA over USB serial. My box implemented additional disk drives, 1132 and 1403 printers, 1442 and 2501 card readers, 1134 and 1055 paper tape devices, a 1627 plotter, and a shadow 1053 console printer to see what was being typed.

Since the box could perform cycle stealing, thus reading and writing to core memory in any location, I also used it to load and dump memory to files on the PC. This is very handy to inject large blocks of code into the machine, rather than toggling the CES switches and using load mode laboriously at the console. 

I had a switch to disable the attached physical 1132 printer, since the 1131 Processor had built in controllers for 1442, 1132, 1053 and keyboard. If I wanted to print to a virtual 1132, I blocked the controller for the real box from seeing its IO address during an XIO, a very simple modification done with a toggle switch mounted under the covers near the CE switch panel. 

PROTOTYPE-LIKE CONSTRUCTION IS UNSATISFACTORY

I did whip this up for my own purposes but completed it rapidly to take the 1130 system to exhibit at a Vintage Computer Festival West conference a number of years ago. As a result, this was more of a sloppy prototype than a solidly constructed box. I took an old PC case, hollowed it out and installed the  extender box.

It consisted of four PCBs with the SLT to TTL conversion circuits, two proto boards mounting seven open collector chips to replace my driver circuits, the FPGA board itself with connectors attached, power supply and powering sequencing relay, the connectors running to the 1131 Processor, and lots of foam rubber wedged between cards to hold them in the air without shorting to each other. In other words, not an elegant implementation, difficult to maintain, and not very suitable for transportation. Finally, having something that looks like a PC sitting near a 1960s mainframe is poor esthetics. 

IMPROVING MOUNTING

One requirement is that I have all the boards and connections firmly mounted to whatever case they will reside in. That may be via connectors to a new wide motherboard, or by redesign of everything on a single new PCB. 

IMPROVING CONNECTIONS

Some wires are soldered to header pins, others are clamped in ribbon cable connectors. It does not permit disconnection to service individual boards nor is it safe to move wires around. I want to implement this with reliable and secure connectors. 

CHOOSING ESTHETICS FOR THE CASE

The form factor and appearance of the box should be more consistent with the 1130 system. I have to find or build a case that meets this requirement. 

No comments:

Post a Comment