9 Nov 03
The LGP computers use a Friden Flexowriter with a wacky custom code as the console and primary program input/storage device using the integral reader/punch.
The Flexowriter is not a discrete console device as in modern machines, but quite intermeshed with the computer operation. It is quite alien to anyone who grew up with moderm machines (eg. third generation or newer, basically minicomputers or newer). The LGP computers are honestly first-generation machines; though the LGP-21 was made in the 1960's, it was 100% binary compatible with the LGP-30, which is an early 1950's design: for example, the letter "B" is the actual opcode for the Bring command, implemented in hardware.
I'm building a Flexowriter simulator. PIC-based, it will directly handle the Flexo interface control signals under control of a host computer via a serial interface. Software on the host interface will direct the PIC.
LGP-21 Flexowriter InterfaceFlexowriter uses a six-bit code. Tape reader/punch uses 1" tape, but punches/reads only 6 LSBs. Bit 6 and 7 remain unpunched and unread. (Punch has solenoids and pins, but they are unused.)
PRINT: Output blocks if the Flexo is not ready at time of order; will wait in Phase 1 until Flexo asserts Xs. No way to test Xs it seems; maybe unused IO addresses?
INPUT: Input blocks until ready. Input is "block read"; eg. it will read all characters until Flexo "STOP" signal or input buffer detect stop code (unfortunately character ' I believe). (p 3-40)
GLOSSARY OF LOGICAL FUNCTION NAMES: p3-45.
Flexowriter connector J19 on LGP-21 chassis rear | ||
signal | pin | |
Tp5 | 1 | --> print data bit |
Tp4 | 2 | --> print data bit |
Tp3 | 3 | --> print data bit |
Tp2 | 4 | --> print data bit |
Tp1 | 5 | --> print data bit |
Tp6 | 6 | --> print data bit |
Tx | 7 | --> print data strobe |
8 | <-- -60V from Flexo (unused) | |
Sr | 9 | --> Ready Flexo for input (input strobe) |
/Bq | 10 | --> "Manual input mode" switch |
JL11 | 11 | <-- Flexo end-of-input timing signal |
JL12 | 12 | <-- Flexo end-of-input timing signal |
P5* | 13 | <-- input data bit |
/P5* | 14 | <-- input data bit (inverse) |
P4* | 15 | <-- input data bit |
/P4* | 16 | <-- input data bit (inverse) |
P3* | 17 | <-- input data bit |
/P3* | 18 | <-- input data bit (inverse) |
P2* | 19 | <-- input data bit |
/P2* | 20 | <-- input data bit (inverse) |
P1* | 21 | <-- input data bit |
/P1* | 22 | <-- input data bit (inverse) |
P6* | 23 | <-- input data bit |
/P6* | 24 | <-- input data bit (inverse) |
SIG GND | 25 | <-- |
SPARE | 26 | |
Xs | 27 | <-- Flexo signals end of print (p3-45) |
JL28 | 28 | --> |
JL29 | 29 | <-- |
SIG GND | 30 | |
SIG GND | 31 | |
JL32 | 32 | --> |
JL33 | 33 | <-- |
SIG GND | 34 | |
117 VAC | 35 | --> |
117 VAC | 36 | --> |
Tally connector J20 on LGP-21 chassis rear | ||
signal | pin | |
tr | 2 | |
7 | -48V from Tally | |
/Rs6 | 9 | |
/Dt | 11 | |
Rs6 | 12 | |
/Rs1 | 13 | |
chassis | 34 | |
/Rs1 | 16 | |
/Rs2 | 17 | |
GRD. | 19 | |
Rs2 | 20 | |
/Rs3 | 21 | |
Rs3 | 24 | |
/Rs4 | 25 | |
Rs4 | 28 | |
/Rs5 | 29 | |
Rs5 | 32 | |
117vac | 35 | |
117vac | 36 |
|