Tom Jennings, updated 16 September 2004
15 February 2003
This is the documentation for my Librascope/General Precision LGP-21 computer restoration project. The LGP-21 is the transistorized "little brother" version of the LGP-30 computer, a very popular vacuum-tube machine first produced in 1954. Though only a third the speed of the LGP-30, the LGP-21 was very small and consumed only 300 watts of power.
This particular machine was originally purchased in September 1963 by the Los Alamos Scientific Laboratory (now the L.A. National L.) for $16,200 (or about the price of an average 2-bedroom house in the suburbs). It's got most of the processing power of a small five-dollar hand calculator, but it's a genuine stored-program computer. 31 bits wide, 4096 memory locations on its rotating memory (not "RAM", not disk, it's a rotating, mechanical/magnetic memory), an order ("instruction") time of 390 uS (that's 2564 instructions/second, or 20,000 times slower than the laptop I type this on), but a good example of a small, inexpensive computer for an engineering shop in 1963. You could do real work on this thing -- you might laugh, but consider how much fun it would be to create a big table of data by hand, with a slide rule and a desk calculator, and you'll begin to appreciate the convenience of a machine that might take all night what we now do instantly with a spreadsheet "recalc" command.
This machine was in the church at Ed Grothus' Black Hole in Los Alamos for the last 15 or so years. Everything is undamaged (and seems to be in pristine, new condition) though exposed to Los Alamos seasonal temperatures.
Progress on this project here sporadically. I believe I have all of the hardware needed, and the bootstrap and subroutines provided by the factory, though I'm still missing any of the ACT compilers and have yet to punch any tapes, certain to be a project unto itself.
(Thanks to William Voss for the flexowriter table.)
All LGP-21 documentation, factory-provided manuals and brochures.
All LGP-21 software, but see the Subroutine Manual in the Documentation section above..
Below are various items that may or may not become sections or move into other sections, or disappear entirely as things progress.
When I started looking at the LGP-xx machines some years ago, I immediately became confused by the swirl of overlapping and contradictory names involved. The answer is below. If you think the corporate merger-fever of the 1990's was unique, take a look at the early histories of computer manufacturers (or automobile maufacturers 1910-1960).
The "LGP" in LGP-21 and LGP-30 stood for two different things. When the LGP-30 was first produced (1954?) It meant "Librascope General Purpose" computer. Librascope got bought by General Precision, so G.P. later meant "General Precision"! But at least one LGP-30 (Computer Museum of America's) has a screwed-on metal escutcheon that says "Royal McBee LGP-30". Go figure.
"Librascope" was involved in machine computing components in the early 1950's; I don't know much about them, but they made a lot of rotating magnetic memories for Univac and others. I believe they have Defense roots, but don't quote me.
General Precision (808 Western Ave, or possibly 811 Sonora St, Glendale Calif; there's also a Burbank address) [it appears that Lockheed Martin Librascope is still at the Sonora Street address...] was the manufacturer of the LGP-21 computers.
Royal McBee Corporation, whose name appears more on LGP-30 documentation, was a/the marketing division of the Royal Typewriter manufacturer. Making stuff is not enough; you gotta stock it, ship it, push it, advertise and train for it. IBM knew all this decades before as is know obvious. Royal's penetration into American offices was probably deemed a good edge for the new office appliance -- the small computer. Royal McBee had exclusive marketing rights to the LGP computers.
If you have any facts that support or contradict, please send to me. Brochures etc preferable to hearsay, but I'll take what I can get.
There's often a lot of internal strife evident in these earliest days of computing machinery surrounding representations of numbers and symbols. More or less all early machines (except those most directly descended from the Turing lines, eg. EDVAC et al) state flatly that computers compute numbers, and go on in great detail about sign bits, integers, binary points, etc as if this were the whole story.
Of course today we realize that computer don't "compute" "numbers", they fiddle symbols, mainly (not that there isn't actual arithmetic occasionally).
The LGP computers' memory is, from a programmers view, 31 bits wide. The Programmers Manual (above) states that memory is 32 bits, but the 32nd is used internally as a "spacer". Well if the programmer can't see/use/hear/notice it, who cares?
William R. Arsenault writes, in Harry Huskey's COMPUTER HANDBOOK (McGraw-Hill, 1962), about the LGP-30 (the electron tube predecessor of the LGP-21): "The machine word is 30 bits long, plus a single bit for sign." There's that assumption of numerical computing again! Further, the LGP-21 Programmers Manual goes on about other olde-tyme ideas of a fixed binary point (it's of course anywhere you want it to be, as long as you are consistent) which really reflect just how new and boggling all this talk of programs as data, recursion, subroutining, and all that now-routine junk was.
(In fact sometimes the position of the binary point does matter; see the discussion of LGP arithmetic elsewhere in this page.)
Luckily, the LGP machines are also 2's complement, so there's only one zero. Whew!
Well this comparison is rather trivial, but it's probably within 10X. It's likely slower, since archictecturally this is a first-generation machine (eg. no index register),
But don't laugh at the old guys who made this stuff -- they made a real computer with 460 transistors and about 300 diodes back when a transistor cost a day's pay.
(It's interesting to note that the order of magnitude of both the transistor count (460 vs. 55 million for a Pentium 4) and processing power indicated by instructions/second (2564 vs. approx. 50M) is the same. It may simply be true that one transistor equals one Computron (the widely recognized basic unit of computing of course), putting to rest this important issue once and for all.)