View Full Version : Friden SPD-V

February 26th, 2017, 03:44 PM
I have obtained a Friden Flexowriter and over the past month or so, have worked it over so that it is maybe 98% reliable in printing, punching and reading a paper tape. I would like to connect it to either my CPM 8080 machine or my PDP8E computer. I have seen where the Friden terminals were used on the really old computers as I/O device. Specifically I've seen a Friden on the Colossus code breaker machine. Anyway, I was thinking about how the interface would work. I am aware with how serial interfaces work, with the start and stops bits, Uarts, etc. I have made a number of these serial interfaces work. But the Friden seems to be a parallel device. When a character key is selected, the code selector actuates 8 code selector contacts that are available for export to another machine. My first question is how would this external machine know when or how to poll the Friden for this character?

Going the other way seems a little simpler. The external computer would output the proper code to the reader relays which would print the character. The external computer would have to wait 100 mSec or so before outputting another character.

Does anyone have any experience with interfacing a Friden Flexowriter as a terminal? Thanks, Mike.

February 26th, 2017, 04:44 PM
Not me, but bitsavers has a great manual from 1959 that explains everything in great detail: http://bitsavers.informatik.uni-stuttgart.de/pdf/friden/SP8591_Flexowriter_Technical_Manual_1959.pdf. It also helps you to determine exactly what model and options you have. It is a parallel device, using either 45 or 90 VDC for magnet control.

February 27th, 2017, 06:47 AM
I have seen and read quite a bit of those documents on Bitsavers, rather impressive. Although they are a treasure trove of information regarding repair, adjustment and maintenance (that really helped getting my unit to work) there is not much on how the Friden typing machine connects to other Friden machine or what they call Allied machines. I have looked over them, read all the documents on Bitsavers and a friend on Greenkeys provided me with a much needed schematic for the SPD model. This model has 90 volt magnets and I do see how I can retrieve the 8 bits of code for each key. What I'm most interested in is the handshaking between the Friden and another machine. After thinking about this last night, I thought that maybe I could use the code selector common contact SCC to alert the computer that someone has pressed a key. Each time the user operates a key, the code selector translates that key to a code through 8 contacts. And to try and synchronize this so that a punch unit would punch 8 holes together this SCC contact which is the other contacts common connection will apply all the code to a paper tape unit. I figure that maybe I could use the SCC as the Friden to computer handshaking bit. The computer would wait for the SCC contact, wait long enough for any bounce to clear, then sample the 8 selector code contacts. The computer would also have to wait for the SCC contact to clear before looking for it again.

Then for a read operation, the computer would send a 8 bit code in parallel to the reader contacts. Not exactly sure how I would detect whether or not the Friden is ready for the code, but maybe you just have to assume it is. Then the computer would have to wait for the Friden to type the character, prior to sending another.

I have checked my schematic and I believe I know how to get to these contacts. Next I have to make an interface that will protect my computer from the 90 volts, yet convey the information. And lastly, I would have to program an ASCII to Friden Code converter. I have read about how the Friden is flexible and can be used with other codes, but I do not see how this was done, unless it was done in the design at the factory. Meaning you would have to purchase it that way. Anyway, I have to think about an interface. I'll probably start out simple, most likely hand operated. But it should be interesting. Mike

February 28th, 2017, 07:39 AM
Well... I found that if the reader contacts are paralleled and then a 100 mSec pulse is applied, the character will be typed on the Friden. The 50 pin Canon plug JL1 on side of the Friden has these connections. The character bit #1 is pin #1, 2 is 2, etc to Bit #8 is pin 8. Pin #11 is the 90volt positive, which needs to jumpered to #27, the reader contacts common. Pin #27 is the connection that needs to be pulsed after the character code is applied to pin 1 thru 8. This pulse has to be long enough to pick the translator relay, yet short enough not to repeat the character. Seems 80 to 100 mSec works. I found the Friden SPD character code list on Bitsavers, but after checking the list against my machine I found that all the numbers and letters worked fine, but some of the punctuation either didn't work or was a different code. Then after closer inspection I found that my keyboard has a few extra characters that are not listed on the Friden document. So something is different. I'll have to try all the codes to see what my machines list is.

I have designed an interface circuit that I believe will work and have ordered some parts. Will have to wait for those.

Next I want to think about how my computer will translate the ASCII to the Friden character code. I figure I'd use a look up table. I have never coded anything like this and do not have an idea of how this may work. Does anyone have any clues or examples I can look at for ideas? Thanks Mike

March 5th, 2017, 06:56 AM
I'm still waiting for some parts to make an interface. I had thought that I should use some snubber diodes across the translator relay coils to protect the transistors I want to use to energize these coils. At first I thought of just placing the snubbers on the external circuit board I want to make. But after thinking about it and then investigating the Friden I found that I'd have more than 12 feet of wire between the snubber diodes and the relay coils. This would allow the inductive kick to run through all this wire and create some large voltages through the resistance. So, I took the time to remove the translator from the Friden, find the translator magnets and install the snubbers much nearer the coils. This also gave me an opportunity to clean and lube the translator, besides clean all the contacts in there. Mike

March 6th, 2017, 06:13 AM
While I was installing the snubber diodes I suffered a setback. Apparently I must have pulled a little too hard on one of the translator coil wires and pulled a lead out of the coil. So, I had to remove the coil can carefully dug into it in an attempt to find the wire stub of the coil. I found it and with the help of a couple GreenKey friends I think I have it repaired.36794
Today I have to secure the wiring, recover the coil and re assemble the magnet pack into the translator. Another two steps forward one step back saga. Mike

March 6th, 2017, 03:17 PM
Next I want to think about how my computer will translate the ASCII to the Friden character code. I figure I'd use a look up table. I have never coded anything like this and do not have an idea of how this may work. Does anyone have any clues or examples I can look at for ideas? Thanks Mike

Sorry for my late reply... but you can find the translation table in the simh source code for the LGP-30. Or recycle the C functions from simh, they are reasonably stand-alone code actually.



March 8th, 2017, 11:50 AM
Well... over the weekend I carefully opened up the translator coil that I had pulled a lead out of and I have successfully replaced the wire and reconnected it. Actually, that turned out to be the easy part. Alignment of the magnet pack so that it worked properly turned out to be the fussy part. After a day and a half, I finally found the sweet spot for the translator to work properly.

I also received my interface parts in the mail and have gotten it assembled. After a little testing on it's own. Making sure that the smoke stays in the wires, I wrote a small program that would either set the shift for upper case and then reset it to lower case. It worked! Although occasionally going back to the lower case would not work. This is an old problem that occurs by itself on the Friden. Something that needs repair later.

The next step is to improve the program to use the look up table and output real text to the typing machine. Two steps forward.


March 11th, 2017, 10:30 AM
Well.. at long last, I got the Friden Flexowriter to take ASCII characters from my CPM 2.2 machine. The Friden expects a Friden character applied to the translator magnets and then have the translator clutch released. Sounds easy, but I had a time with the timing. I tried a bunch of different thing, even doing it manually. The best timing (for maximum characters/second and the quietest operation) is to make sure that the translator clutch is reset (latched), and the shift is set to lower case. Then the Friden code is applied. I used a parallel port (uses an 8255 PPI). Then the CPM machine waits 45 Milliseconds. Next the Translator clutch magnet is released. The CPM machine then waits 10 Milliseconds. Next the Friden data is removed. If this is not done, there is a chance that the character will repeat. The CPM machine then waits another 45 Milliseconds. This allows the translator code magnets a chance to drop out and the translator slides to move and the typing machine to type the character. Then lastly the pulse to the translator clutch magnet is removed. This allows the translator latch to relatch for the next character. I then wait another 10 Milliseconds to allow everything to settle down.
My first program was to print out a string that was stored in the CPM program. This allowed adjusting the timing until it was optimized. Today I reprogrammed the code to allow text to be typed on my CPM console and it appeared on the Friden. Here is where I found all the errors I made in the look up table. Anyway, the Friden and the code works. I want to set the Friden up as a punch unit on the CPM machine and maybe later on my DEC PDP8E.
The next steps will be to take this code, which accepts an ASCII character in Register C from CPM and prints it out on the Friden and install it in my BIOS. There is no handshaking of any kind and the CPM machine will have to just wait until the interface code finishes. After that maybe look into entering keystrokes from the Friden to the CPM machine.
It's kind of neat. I still have to figure out what to do with all the ASCII characters the Friden doesn't recognize and how to handle the fact that the Friden only types on one sheet of paper at a time. There is no signals back to the CPM machine to tell it anything. Mike

March 11th, 2017, 10:45 AM
Good work! ISTR that timing for the FW was established at a bit below 10 cps--and it was a matter of finding what would consistently work.

March 15th, 2017, 03:38 PM
Today, I finished writing and debugging some code that will open an ASCII text file and send it to the Friden for printing. I had to make a few special characters in that the Friden does not have all the ASCII characters. For example, the exclamation point ! is an apostrophe then a back space then a period. And I had to add a wait after a carriage return is issued. The Friden carriage return takes more than 1/2 second for a full return. I learned about opening and reading files and a little more about the Friden and CPM. This is really neat! or should I say ' backspace . Mike

March 16th, 2017, 02:51 PM
Well, after horsing around with the mecanical tab stops and some of the computer timing, this ASCII to Friden code convertion works pretty good. At least it looks good. Problem is, it takes a LOT of time to complete a page of text. Mike37033

March 16th, 2017, 06:43 PM
Pretty cool, Mike!

But is the Flexowriter much slower than a TTY? My impression was that they were roughly the same speed.

What's next? Maybe you can find a computer-equipped IBM Model B typewriter. Wow, there's one on eBay! (http://www.ebay.com/itm/IBM-Model-B-typewriter-with-computer-control-IBM-1620-PDP-1-/232038777418)

March 17th, 2017, 05:53 AM
It's definitely slower than my ASR33. I may have made it that way some what. Most of the problem is in waiting for the mechanical equipment to move and then stop vibrating. I found that the carriage return takes more than 1/2 second to return and then maybe another 1/4 second to stop bouncing off the stop. I do not see a dash pot like the ASR33 has. Same thing happens with the tab stops. The carriage slams into the stops and really shakes the machine. I have the tab stop timing quite long and could be shorted some. Then there is the Shift, the upper and lower case. This to is a violent move. I had to make a rather long time here also, so that I would not see a half upper case and half lower case. Anyway, a reduction in time is not really important to my use of the Flexowriter. I most likely will not use it much. But it is neat. I was reading about the British Colossus code buster computer from 1942. There was a picture of a Friden being used with that machine. I think it was a model FL. I still would like to make an interface to be able to input from my Flexowriter, that's another day. Thanks for the help, Mike

Holy Cow! I just looked at the IBM $10k! ---- I got the Flexowriter for free. It fits into my monthy SSA check muich better.