Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!cornell!uw-beaver!blake!Tomobiki-Cho!mrc From: mrc@Tomobiki-Cho.CAC.Washington.EDU (Mark Crispin) Newsgroups: comp.arch Subject: Re: DECSYSTEM 20 Message-ID: <3050@blake.acs.washington.edu> Date: 1 Aug 89 19:44:53 GMT References: <3256@wpi.wpi.edu> <4173@ima.ima.isc.com> <1698@salgado.Solbourne.COM> Sender: news@blake.acs.washington.edu Organization: Mendou Zaibatsu, Tomobiki-Cho, Butsumetsu-Shi Lines: 63 In article <1698@salgado.Solbourne.COM> dworkin@Solbourne.com (Dieter Muller) writes: >BTW, there were 16 (decimal) registers, numbered 0-17 (octal). DEC had >this thing about octal. Back in days long by, people would actually *do work* in a power-of-2-based number counting system. You would not believe how much easier it is to do arithmetic in octal instead of hex -- not to mention translating between octal and the values displayed in the lights or that you key in the switches! >One of the more amusing `features' of the early processors was that the >indirect bit was handled purely in microcode, and wasn't interruptable. >Translation: a indirection loop meant you got to power cycle the CPU >to get it back. There was new version of microcode distributed to fix >this eventually. Made for a few interesting nights when the MACRO-20 >class had a project due. Of course, by "early processors" you mean "early KL processors"; the PDP-6, KA, and KI processors were not microcoded. I seem to remember some details about this KL bug, but I think it was more complicated than simply an @. kind of reference; I think page faults were involved. Also, wasn't it fixed by the time the 20's were released? I thought only the 10 sites got bit by it. The early versions of microcode for the KS processor had some amusing bugs in which certain floating point instructions with outrageous arguments could hang the processor. >My favorite language was and still is MACRO-20. But then, I kinda liked >TECO ;-) Me too. There are any number of times in which I would *kill* to get a version of TECO that ran on Unix. >>They put a >>truly stupendous addressing crock into the DEC-20 but it was too incompatible >>with the regular addressing, and by then it was clear that 32-bit byte >>addressed machines, e.g. the Vax, would dominate. It isn't clear that the VAX dominance over the DEC-20's was due to any technological reason. DEC tried damn hard for over 5 years to push the VAX over the -20 since everybody was to have a single architecture (VAX) and a single operating system (VMS). What of course happened is that all the DEC-20 people got driven into Unix. >Not much worse than the contortions involved in some of the PDP-11 segment- >ation schemes. And after all, the segments themselves were quite reasonably >sized (18 bits worth of 36-bit words was a fair amount of address space back >in those days). To think there are Unix kernels these days that wouldn't >fit into the memory the -20 I played on had.... I am perhaps the only programmer who wrote a large program using extended addressing in true -20 native mode (= was designed to be that way from the beginning). It was a lot more pleasant to program for than the PC or the Mac, both of which segment in ways that even impact C programmers. Unlike most segmented architectures, the DEC-20 30-bit segmented addressing mode had pointers which would cross segment boundaries so you could have data structures greater than a megabyte without worrying about it being split across segments. Try having a string greater than 64K on a PC sometime! The ultimate DEC-20 lover (who personally owns two), Mark Crispin / 6158 Lariat Loop NE / Bainbridge Island, WA 98110-2020 mrc@CAC.Washington.EDU / MRC@WSMR-SIMTEL20.Army.Mil / (206) 842-2385 Atheist & Proud / 450cc Rebel pilot -- a step up from 250cc's!!! tabesaserarenakerebanaranakattarashii...kisha no kisha ga kisha de kisha-shita sumomo mo momo, momo mo momo, momo ni mo iroiro aru uraniwa ni wa niwa, niwa ni wa niwa niwatori ga iru