Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10 5/3/83; site bmcg.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxj!ihnp4!zehntel!dual!amd!decwrl!decvax!ittvax!dcdwest!sdcsvax!bmcg!bprice From: bprice@bmcg.UUCP Newsgroups: net.arch Subject: Re: Global memory usage in the 1401 Message-ID: <1370@bmcg.UUCP> Date: Fri, 21-Sep-84 16:35:55 EDT Article-I.D.: bmcg.1370 Posted: Fri Sep 21 16:35:55 1984 Date-Received: Wed, 26-Sep-84 02:33:16 EDT References: loral.444, <1689@sun.uucp> Organization: Burroughs Corporation, San Diego Lines: 39 >Bill Price says: >> Actually, the designers of the 1401 did something even worse than hiding it: >> they used this global thing for a very local purpose. The cell addressed by >> the address zero was used as the row counter for the card reader! To which sun!gnu replies: >This was not especially bad, considering that locations 1-80 of memory >were permanently reserved for the card reader. The "read card" instruction >(opcode "1") would fill locs 1-80 with the contents of the next card in the >reader. >101-180 was the area that would get punched if you did a "2" opcode. >201-332 got printed if you did a "4" opcode. In context, it was even less annoying, because there was no simple way to use the value of location zero: every standard instruction accessed location (n-1) [or at least generated the address of (n-1)] when reading location n. Except for the "clear storage" instruction, underflowing the address register that way would make the processor stop dead in its tracks with a red light on. With the "advanced programming" special feature, you got an instruction you could use to read that address register, so that the sequence CS 0; SBR x; would store, into x, the highest address of memory. Location 100 did not have the (n-1) problem, though. This was the card-punch row counter, in which you could usually find a '9'--the code for the last row punched. These are just a couple of the many oddities of the 1401. I'm sure that sun!gnu would agree that the 1401 was a very interesting and entertaining architecture: since it was my first machine, I'm still pretty fond of it. However, I don't know whether that fondness is because of, or in spite of, the jokes that the designers played on its users. Speaking of entertaining machines: The 1401 had mixed-radix addressing--four bits binary & three digits BCD. What machine (series) had three different radices in its mixed-radix addresses? (Answer will be given on request) -- --Bill Price uucp: {decvax!ucbvax philabs}!sdcsvax!bmcg!bprice arpa:? sdcsvax!bmcg!bprice@nosc