2008/7/23 William H. Blair <[EMAIL PROTECTED]>: > Tony Harminc wrote: > >> Do you mean an algorithm? ... I'm not sure there is an overall >> algorithm, though obviously there are certain patterns to be >> seen. > > Of course there is an algorithm. Card readers implement it. In > fact, it can be deduced (or reverse engineered) simply by use > of Boolean algebra.
I didn't mean that there is no algorithm for converting holes punched to 8-bit values; there is a table, and obviously it can be implemented in logic. I meant that I doubt there is an algorithm for assigning all the values in the first place, or predicting them if you don't have the green card handy. The 2540 reader predates, and the 80-column card long predates both System/360 and the general use of an 8-bit byte, and so while mapping the then common characters from their pre-8-bit punchings to 8-bit encodings is easy, deciding what 8-bit value should result from say a 0-8-2 punch, as originally asked, is not, because the general pattern has exceptions. > The goal, of course, was to (painfully) lay out the de facto logic exactly > that transformed the binary card row values (given on > the green card) to yield the corresponding S/360 byte values, > then reduce all that to the simplest possible circuit using > Boolean algebra. The simplest implementation in the class was > about 70 Sheffer strokes, although Dr. Brooks said that the > (even then-old) 2540 did it with a much simpler circuit (if > one ignored the parity bit that got generated, and all the > internal self-checking logic, which was critical, and all of > the extra logic to detect invalid hole punch combinations). The 2540 was quite happy to read so-called column binary cards, that is cards with any 12-bit combination of holes punched. (Well, happy may be the wrong word, but the problems were mechanical rather than logical, and it was mostly the punching rather than the reading that gave trouble.) Later readers also had an optional column binary feature, and the mark sense and later OMR features used the same scheme. The S/360 interface (implemented in the 2821 control unit rather than the reader itself) could deliver the 2x6 bits embedded in two 8-bit bytes. I imagine a 2540 connected to a pre S/360 machine, would deliver 6-bit characters across the interface. Tony H. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html

