Friday, June 5, 2026

Continued debugging of the 1053 Emulator - part 4

EMULATOR PLUGGED INTO THE 1130 AND TESTING RESUMES

I put the emulator through its paces, printing every character on the typeball and issuing every movement command - space, backspace, tab, line feed, and carrier return/line feed. I checked that the column displayed on the box matched where the typewriter would be. 

I wanted to verify that the box turned on the +TWR END OF LINE signal when it reached the right margin. This included changing the right margin and verifying that the behavior changed. The typewriter should issue bell characters each time it prints past the right margin. Further, when that signal is asserted, the typewriter should stay busy and automatically perform a carrier return and line feed.

The end of line signal did not work properly. I need to debug this further on the next session. As far as printing speed goes, the emulator did perform at about 16 characters per second if they are all on the same hemisphere. Where I ran into speed problems was in the performance of a carrier return and again with a tab. These took way too long to calculate the new column or complete the return operation. I need to work on the code in the Arduino to fix these speed issues. 

I used the space button to reach certain columns where I used the Tab Set and Tab Clear buttons then verified via the TABS = command typed over the serial link that the proper tabs were there. I used the tab command and the tab button to verify that the emulator reached those points, both in the column number and in the position on the screen of the remote terminal.

I issued Shift to Red and Shift to Black commands, to check that the characters 'printed' on the terminal were in the appropriate color. The ANSI Colors commands are being issued by the box and the terminal program running remotely should be honoring those as it displays the output that would have appeared on the paper if the 1053 were being used instead of the emulator. 

The colors did NOT change. I suspect this is an issue with the configuration of the Putty terminal program rather than a defect in the emulator. I will debug this further on the next session. 

Otherwise the emulator seemed to be performing properly. Once I address the issues I discovered with colors, the end of line signal and the performance doing tab or return, I will repeat the testing to finish this box off. 

Thursday, June 4, 2026

Continued debugging of the 1053 Emulator - part 3

NEW MOSFET SWITCHING BOARD BUILT AND WIRED IN

I had verified using LTspice that the circuit behaves correctly and achieves everything I want. In this approach, the MOSFETs pass the voltage through to the 1130 circuit almost identically to how a mechanical switch would. 

It did add a transistor to each of the four switched signals, in order to switch the gate of the MOSFET to a voltage lower than the source. Resistor voltage divider on the gate circuit lets me dial in the voltage differential, to ensure that the MOSFET fully switches on the channel from source to drain. 

The new switches were built with P channel MOSFETS driven by an NPN transistor, plus a number of resistors. A quick check on the breadboard verified the behavior with the exact components, then I soldered this together on a perf board just like the previous one. After replacing the prior switch board inside the emulator, I was ready to test again.


Due to the high voltage on the switch for the -TWR CB RESPONSE signal, +48V, I had to use a high voltage NPN transistor, BD139, as the usual NPN transistors typically break down with more than 40V across emitter and collector. I had to wait for the part to arrive before I had the entire board completed and wired in place. I was mildly concerned that the transistors were from China, as there is the risk that this is a lower voltage cheaper transistor relabeled as a BD139. This is based on the high rate of chip fraud coming from Asia particularly through outlets like Amazon. 

HOPE TO CONVERT ONE OF THE CABLES TO A FEMALE SMS SOCKET

If the 3D printed part arrives in the next couple of days, I will convert one of the two signal cables from a male SMS paddle card to the socket I designed. This will match the polarity of the cables coming from the 1052 typewriter into the 1130. I won't need to wait to begin testing on the system, as I do have a gender changer/adapter temporarily installed. 

Experimenting with method to support overtyped APL characters using the 1053 Emulator

THE PROBLEM - APL CREATES CHARACTERS WITH TWO TYPEBALL GLYPHS

The earliest APL (A Programming Language) implementations by IBM were for the S/360 and 1130 systems. These used a terminal based on the Selectric typewriter for user interaction. The original Selectric has a type ball that has a maximum of 88 characters that it can produce, spread over two hemispheres, originally hosting upper and lower case letters for the office product typewriters. 

The APL language has more than 88 characters thus IBM chose to create some of the APL characters by combining more than one typeball character. It would type the first, backspace to the same spot on the paper and then type the second. For example, the character  is typed, the carrier is backed up to the same spot and the character ' is typed over it to produce the composite character 

On any terminal emulator, all we would see is the character ' because the backspace would erase the first character before inserting the second one. We want one that combines the black pixels of both characters, as would happen if a type ball were printing on paper. 

IDEA FOR A TERMINAL EMULATOR RUNNING ON WINDOWS THAT SUPPORTS THIS

I envisioned a program that would produce results akin to what we see on paper with a Selectric typewriter. It would form lines of text graphically, updating positions if a second (or more) character were typed in the same column. When a line feed occurs, the next line is prepared in all white, waiting for characters to be typed. 

The Selectric typewriter mechanism for the 1053 console is 120 columns wide, which allows us just 16 pixels width per character in order to fit the entire line on a 1920x1080 monitor. This is sufficient for readability, although more would give a crisper image. Each character being typed is entered into a 16x16 image and then merged into the appropriate column of the 120 column wide line. 

EXPERIMENT WITH PYTHON PILLOW

I began to test ideas to make this happen, using the PILLOW library for Python. I was able to quickly achieve some combined characters by 'typing' the two typeball characters into their own 16x16 images, then merging them to produce the composite character. This combined a Quad symbol with a Divides symbol. 

I am thus comfortable that I can build the terminal emulator under Python, making use of the open source APL385 Unicode font to generate all the APL characters used on the 1130 system. Since this is Python based, the code may be portable enough to run on Mac, Unix and other systems as well, as long as they support the truetype font, PILLOW and Python3.

Wednesday, June 3, 2026

Building the new MOSFET switching board for the 1053 Emulator - almost done

MOSFET SWITCHING BOARD CONTROLS FOUR FEEDBACK SIGNALS TO THE 1130

The IO Selectric typewriter that is the basis of the 1053 console printer has microswitches that control four feedback signals - End of Line, End of Forms, CB Response and CR-LF-Tab Interlock. Three of these signals deliver +12V or are open circuits, while the CB Response signal delivers +48V or is open. 

My switching board design uses P channel MOSFETs to act as the microswitches, controlled by a 0 or 5V logic output from the Arduino inside my emulator. An NPN transistor controls the gate of each MOSFET, either leaving it at the supply voltage (12 or 48) or dropping it enough to switch on the MOSFET. 

For the three signals that are 12V level, I used an MPS2222A transistor but that won't work for the 48V signal. Every NPN transistor I had in my shop had a maximum voltage between emitter and collector of 40V or under. In operation, with the MOSFET turned off, the transistor will see the full 48 or 12V. 

I chose a BD139 transistor, which has an 80V maximum Vce rating, but had to order it. It will arrive tomorrow afternoon when I can add it to the board and wire this into the emulator.



Repaired Calcomp 565 power supply and pen up/down circuit

REPLACED DEFECTIVE PARTS AND RESTORED OPERATION

I wasn't ready to hook up the cabling that runs to the carriage and powers the pen solenoid, but I could insert a 10K resistor between the two terminal that feed the carriage cable ends. I first verified all the power supply voltages - +3, +1.5, -7.5, -9 and -24 - were correct. I then checked out the pen up/down circuit.

The circuit is a flipflop that can be triggered by commands from the IBM 1130 as well as from a switch on the front panel of the plotter. I verified that the switch is setting the flipflop to the condition being requested, and that the power flows through the 10K resistor when the flipflop is set to the on state. 

MECHANICAL ISSUES REMAIN TO BE SOLVED BEFORE THE PLOTTER IS RESTORED

The cables that pull the carriage, with the pen solenoid atop it, left and right are connected in the rear of the plotter by a spring that maintains the appropriate tension. I don't have the spring. Peers who have a working plotter measured the spring's size and force, which means that I can find a decent substitute. I have yet to do this.

The drum surface was dented and partially repaired, but it is still out of "round" and has a few high and low spots. I need to get this aluminum piece reshaped to an acceptable degree or I have to build or buy a substitute. It has pins on each side that provide tractor feed for the special paper rolls that are used with this unit. That is the hard part about finding a replacement.

I don't have the paper with pin holes that this uses. The roll is 12" wide, 120 feet long and has pin holes that are .375" center to center spaced down the sides of the paper, with holes that are .13" diameter. 

Finally, the Calcomp solenoid I have is for a cutter rather than a plotter. It used the same drum mechanism and carriage as the 565 but had a cutting tip that the solenoid would hold up or drop down onto the material being cut. Since the body of the solenoid and its electrical characteristics are identical between pen and plotter, I only have to design and machine a way to put a pen inside. Work still to be done on this aspect of the project.

When all of the above are resolved, I can wind the cables around the pulleys and attach the spring to allow the carriage to be moved left and right during operation. This sounds easy but the task of winding the pulley on the right side of the machine, as viewed from the front, is quite challenging. It is an operation that would require 4-5 hands working in close proximity to a pulley that is only about 2" diameter.