David James Polewka <joseywales@outlaw.nospam> wrote:
+---------------
| rpw3@rpw3.org (Rob Warnock) wrote:
| > code char
| > 0 Z Stop [conditional on console switches & track addr]
| > 1 B Bring [load]
| > 2 Y Yank(?) [store AC<addr_field> ==> mem<addr_field>]
| > 3 R Return address store [nextPC + 1 ==> mem<addr_field>]
| >
| > 4 I Input [shift one 4-/6-bit char from KBD/tape into AC]
| > 5 D Divide
| > 6 N Multiply [saves lower half of result, usually an integer]
| > 7 M Multiply [saves upper half of result, usually a fraction]
| >
| > 8 P Print [shift one char out of AC to typewriter/tape]
| > 9 E Extract [logical-AND memory to AC]
| > f U Unconditional branch
| > g T Test and branch if AC negative
| >
| > j H Hold [store AC, leaving AC unchanged]
| > k C Clear [store & clear accumulator (AC)]
| > q A Add [memory to AC]
| > w S Subtract
| >
| >Note: The LGP-30 used hex digits, but *not* the ASCII-based hex we all
| >know today, 0123456789abcdef, since it used Flexowriter code, not ASCII.
| >Instead, it used 0123456789fgjkqw. (Really.)
|
| So, L, O, V and X were not used?
+---------------
Well, the Flexowriter code used by the LGP-30 was a bit weird, at least
to modern sensibilities. The Flexowriter was an "old-style" typewriter,
and like many typewriters of its day, didn't have a separate "1" key --
it used lowercase-L ("l") for that purpose instead. Also, with only a
6-bit code available, it used "stateful" shifts for alphabetic case,
as had been the case with Baudot telegraph code. That is, "l" & "L"
read as, and were printed with, the *same* code, differing only by
whether there had been a preceding "shift-lock-upper" character sent
or not. And since normally input was done in 4-bit mode, all of "l",
"L", "B", and "b" read as the same thing, decimal 1. Likewise,
"@", "2", "Y" and "y" read as the same thing, decimal 2, and so on.
That said, to finally answer your question:
- "L" was used as the digit 1 (as above).
- The low-order 4 bits of V, O, & X duplicated the codes used by
{<pi>,"7","M","m"}, {<sigma>",8","P","p"}, and {"(",9","E","e"},
respectively, so while they were available for output, they had
no particular defined input function.
-Rob
-----
Rob Warnock <rpw3@rpw3.org>
627 26th Avenue <URL:http://rpw3.org/>
San Mateo, CA 94403 (650)572-2607