From coff at tuhs.org Wed Dec 14 06:58:59 2022 From: coff at tuhs.org (Warren Toomey via COFF) Date: Wed, 14 Dec 2022 06:58:59 +1000 Subject: [COFF] Clever code In-Reply-To: References: <20221213175811.C1E8118C098@mercury.lcs.mit.edu> <20221213185109.663zv3usi5ey5jx6@illithid> Message-ID: <582d2a37-d86a-960d-e830-e37f38310925@tuhs.org> I think we might move the discussion on memory technologies, CPU architectures etc. to COFF šŸ˜ Thanks, Warren From e5655f30a07f at ewoof.net Wed Dec 14 22:08:21 2022 From: e5655f30a07f at ewoof.net (Michael =?utf-8?B?S2rDtnJsaW5n?=) Date: Wed, 14 Dec 2022 12:08:21 +0000 Subject: [COFF] (TUHS -> COFF?) [TUHS] Re: Clever code In-Reply-To: References: <202212140749.2BE7nWE2012686@freefriends.org> Message-ID: On 14 Dec 2022 06:54 -0500, from brad at anduin.eldar.org (Brad Spencer): > [...] but you needed to know 6809 or 68000 assembly to create anything > new for the OS itself, Wasn't that the norm at the time, though? As I recall one of the things that really set UNIX apart from other operating systems up until about the early 1990s was precisely how machine-independent it was by virtue of (with the exception of the early versions) having been written in something other than assembler. -- āœĀ Ā Michael Kjƶrling šŸ”Ā https://michael.kjorling.se ā€œRemember when, on the Internet, nobody cared that you were a dog?ā€ From brad at anduin.eldar.org Thu Dec 15 01:39:59 2022 From: brad at anduin.eldar.org (Brad Spencer) Date: Wed, 14 Dec 2022 10:39:59 -0500 Subject: [COFF] Microware's OS-9 (was: [TUHS] Clever code) In-Reply-To: <20221214151444.niv5xtnxlmoifbrm@illithid> (g.branden.robinson@gmail.com) Message-ID: "G. Branden Robinson" writes: [migrating to COFF] [snip] >> In that time frame there was a number of microkernel designs. One >> that has not been mentioned was OS-9 for the 6809/68000 processor. I >> used it pretty extensively. OS-9 was very unix like from the userland >> POV, when you consider something like V5 unix, however it didn't share >> any of the same command names, just many of the same concepts. > > This is emphatically true. I used this system as a kid on a 64KiB > machine, and I don't remember even a mention of Unix in the doorstop of > a manual by Dale Puckett and Peter Dibble (who gave you something like 6 > chapters of architectural background before introducing the shell > prompt). Maybe they did mention Unix , but since it had no meaning to > me at the time, it didn't sink in. I think it is also possible they > avoided any names that they thought might draw legal ire from AT&T. That is more or less me too... However, in later years when I was familiar with Unix I looked at some of the OS-9 books and the block diagrams in the books about the OS-9 OS could have described early Unix pretty well. >> It was close enough that if you had the C compiler, a very basic K&R >> compiler, you could get some of the unix command to compile without >> too much trouble. > > Years later I went to college, landed on Sun IPC workstations, and > quickly recognized OS-9's "T/S Edit" as a vi clone, and its "T/S Word" > as a version of nroff. There was also a "T/S Spell" product but I don't > recall it clearly enough to venture whether it was a clone of ispell. Ya, I think I even had a patch that turned T/S Edit into a much closer vi clone. But, I think by then I had another vi clone already on hand. One of the other things I did with OS-9/6809 was worked on UUCP. I didn't write the original OS-9 UUCP code, but I did modify it quite a bit and had it talking UUCP g protocol to UUnet via a phone line. I did write a 'rn' Usenet news reader clone and was pulling down a few news groups as well as email every day. In the last days of that system, I also logged into the system via a serial port complete with Username and password prompts. This was all on a Color Computer 3 with 512K. [snip] >> and nothing like Mach or even Minix. > > With the source of all three available, a technical paper analyzing and > contrasting them would be a worthwhile thing to have. (It's unclear to > me if even a historical version of QNX is available for study.) The source to OS-9/6809 would have been released by Microware a long time ago had it not been for a particular person in the user community. Got mucked up. I fell out of following it after the BSD Unixs became available. >> It was also very much positioned to real time OS needs of the time and >> was not really marketed generally and unless you happened to have a >> Color Computer from Radio Shack > > Lucky me! How I yearned for a 128KiB Color Computer 3 so I could > upgrade to OS-9 Level 2 and the windowing system. (512KiB was > preferred, but there had been a spike in RAM prices right about the time > the machine was released. Not that greater market success would have > kept Tandy from under-promoting and eventually killing the machine.[1]) Level II was nice. It was able to use bank switching and would allow a set of random 8k memory blocks out of the 128k or 512k present in the CC3 system to be mapped into the 6809 64k address space. The Color Computer didn't support memory protection, so no paging or any real process protection, but this banking allowed for a lot of possibilities. I know that there was other OS-9 systems around that ran Level II but I don't really know how they managed memory. I would suspect it to be simular to the CC3, but that is just a guess on my part. [snip] > Regards, > Branden > > [1] Here's a story you may have to sit down for from Frank Durda IV (now > deceased) about how the same company knifed their m68k-based > line--which ran XENIX--in the gut repeatedly. It's hard to find > this story via Web search so I've made a Facebook post > temporarily(?) public. I'd simply include it, but it's pretty long. > > https://www.facebook.com/g.branden.robinson/posts/pfbid0F8MrvauQ6KPQ1tytme9uDiWGvprXft5dsxUzABYtdTKA9viZhB6Q2nadvtP1aDNQl > > [2] https://www.cnn.com/2000/TECH/computing/03/21/os9.suit.idg/index.html > [3] https://appleinsider.com/articles/10/06/08/cisco_licenses_ios_name_to_apple_screenshot_shows_iwork_on_iphone > [4] https://sourceforge.net/projects/nitros9/ -- Brad Spencer - brad at anduin.eldar.org - KC8VKS - http://anduin.eldar.org From rudi.j.blom at gmail.com Thu Dec 15 13:22:18 2022 From: rudi.j.blom at gmail.com (Rudi Blom) Date: Thu, 15 Dec 2022 10:22:18 +0700 Subject: [COFF] Fwd: Re: DevOps/SRE [was Re: [TUHS] Re: LOC [was Re: Re: Re.: Princeton's "Unix: An Oral History": who was in the team in "The Attic"?] In-Reply-To: References: Message-ID: Forwarded separately as original bounced due to use of old 'minnie' address. Sorry :-( ---------- Forwarded message --------- From: Rudi Blom Date: Thu, 15 Dec 2022 at 10:18 Subject: [COFF] Re: DevOps/SRE [was Re: [TUHS] Re: LOC [was Re: Re: Re.: Princeton's "Unix: An Oral History": who was in the team in "The Attic"?] To: Cc: coff Our basic tooling is github enterprise for source and saltstack is our config management/automation framework. Their work-flow is supposed to basically be: Makes me wonder how current twitter deadlines are affecting 'quality', of the code that is. Twits and tweets are a different matter :-) Cheers, uncle rubl -- The more I learn the better I understand I know nothing. -- The more I learn the better I understand I know nothing. -------------- next part -------------- An HTML attachment was scrubbed... URL: From davida at pobox.com Sat Dec 17 18:28:06 2022 From: davida at pobox.com (David Arnold) Date: Sat, 17 Dec 2022 19:28:06 +1100 Subject: [COFF] tvtwm Message-ID: <50980A95-92AB-45B6-93C0-5639C531AECB@pobox.com> Iā€™m wondering if anyone here is able to assist ā€¦ tvtwm is Tom LaStrangeā€™s modified version of the twm window manager: Tomā€™s Virtual TWM. Somewhat unusually, tvtwm modelled the screen as a single large window and the display was a viewport that could be shifted around it, rather than the now-standard model of distinct virtual desktops. Iā€™m trying to rebuild the history of its releases. I have the initial release, and the first 6 patches Tom published via comp.sources.x, the 7th patch from the X11R5 contrib tape, the 10th patch from the X11R6 contrib tape, the widely available patch 11, and an incomplete patch 12 via personal email from Chris Ross, who took over maintenance from Tom at some point. So, Iā€™m looking for patch 8 and/or patch 9 (either one would do, since I can reconstruct the other from what I have plus one). Iā€™ve failed to find either of them. Iā€™m not sure how they were distributed, and my searches have proven fruitless so far. Does anyone here happen to have a trove of X11 window manager source code tucked away? Thanks in advance, d From imp at bsdimp.com Sun Dec 18 03:34:41 2022 From: imp at bsdimp.com (Warner Losh) Date: Sat, 17 Dec 2022 10:34:41 -0700 Subject: [COFF] tvtwm In-Reply-To: <50980A95-92AB-45B6-93C0-5639C531AECB@pobox.com> References: <50980A95-92AB-45B6-93C0-5639C531AECB@pobox.com> Message-ID: On Sat, Dec 17, 2022, 1:28 AM David Arnold wrote: > Iā€™m wondering if anyone here is able to assist ā€¦ > > tvtwm is Tom LaStrangeā€™s modified version of the twm window manager: Tomā€™s > Virtual TWM. Somewhat unusually, tvtwm modelled the screen as a single > large window and the display was a viewport that could be shifted around > it, rather than the now-standard model of distinct virtual desktops. > > Iā€™m trying to rebuild the history of its releases. I have the initial > release, and the first 6 patches Tom published via comp.sources.x, the 7th > patch from the X11R5 contrib tape, the 10th patch from the X11R6 contrib > tape, the widely available patch 11, and an incomplete patch 12 via > personal email from Chris Ross, who took over maintenance from Tom at some > point. > Tom doesn't have anything from yhis time period.... So, Iā€™m looking for patch 8 and/or patch 9 (either one would do, since I > can reconstruct the other from what I have plus one). > > Iā€™ve failed to find either of them. Iā€™m not sure how they were > distributed, and my searches have proven fruitless so far. > > Does anyone here happen to have a trove of X11 window manager source code > tucked away? > During this era there were a dozen or five Internet CDROM collections of sources, etc. You may have to scrounge them to find these... I'll see of any of my images have anything useful... but the initial search isn't looking great... Warner Thanks in advance, > > > > > d > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From coff at tuhs.org Sun Dec 18 13:41:04 2022 From: coff at tuhs.org (Grant Taylor via COFF) Date: Sat, 17 Dec 2022 20:41:04 -0700 Subject: [COFF] tvtwm In-Reply-To: <50980A95-92AB-45B6-93C0-5639C531AECB@pobox.com> References: <50980A95-92AB-45B6-93C0-5639C531AECB@pobox.com> Message-ID: <6100f708-8f61-6533-1b8d-d688fcdaa093@spamtrap.tnetconsulting.net> On 12/17/22 1:28 AM, David Arnold wrote: > Does anyone here happen to have a trove of X11 window manager source > code tucked away? Have you seen the following versions? Indexed & searchable content from (some of) the Internet Archive via DiscMaster? http://discmaster.textfiles.com/search?q=tvtwm Sorry, I don't know what I'm looking at beyond guessing at one of which that looks like patch 10 or 11. -- Grant. . . . unix || die -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 4017 bytes Desc: S/MIME Cryptographic Signature URL: From davida at pobox.com Mon Dec 19 09:45:22 2022 From: davida at pobox.com (David Arnold) Date: Mon, 19 Dec 2022 10:45:22 +1100 Subject: [COFF] tvtwm In-Reply-To: <6100f708-8f61-6533-1b8d-d688fcdaa093@spamtrap.tnetconsulting.net> References: <50980A95-92AB-45B6-93C0-5639C531AECB@pobox.com> <6100f708-8f61-6533-1b8d-d688fcdaa093@spamtrap.tnetconsulting.net> Message-ID: <091A9494-EB25-4F89-A77D-7BA5EF4322FB@pobox.com> > On 18 Dec 2022, at 14:41, Grant Taylor via COFF wrote: Hi Grant, > Have you seen the following versions? Indexed & searchable content from (some of) the Internet Archive via DiscMaster? > > http://discmaster.textfiles.com/search?q=tvtwm > > Sorry, I don't know what I'm looking at beyond guessing at one of which that looks like patch 10 or 11. I hadnā€™t found that index, which was certainly a great improvement on manually searching a bunch of ISOs! Unfortunately, it appears that the patches Iā€™m hunting arenā€™t there either. I suspect itā€™s likely that they were not very widely distributed: there are plenty of the X11R5 version (pl7) and then the X11R6 version (pl10), but the intermediate changes have proven elusive. If anyone is in contact with Chris P. Ross, formerly cross at eng.md.edu, who seems to have been the maintainer during this period, Iā€™d appreciate an intro: I suspect heā€™s my last hope. Thanks for the pointer though! d From ralph at inputplus.co.uk Mon Dec 19 19:48:20 2022 From: ralph at inputplus.co.uk (Ralph Corderoy) Date: Mon, 19 Dec 2022 09:48:20 +0000 Subject: [COFF] Instruction Density. (Was: Clever code) In-Reply-To: <20221213185109.663zv3usi5ey5jx6@illithid> References: <20221213175811.C1E8118C098@mercury.lcs.mit.edu> <20221213185109.663zv3usi5ey5jx6@illithid> Message-ID: <20221219094820.EF45721FC2@orac.inputplus.co.uk> Hi, Branden wrote: > the amount of space in the instruction for encoding registers seems to > me to have played a major role in the design of the RV32I/E and C > (compressed) extension instruction formats of RISC-V. Before RISC-V, the need for code density caused ARM to move away from the original, highly regular instruction format of one 32-bit word per instruction to Thumb and then Thumb-2 encoding. IIRC, Thumb moved to 16-bit per instruction which was expanded by Thumb-2 to also have some 32-bit instructions. The mobile market was getting going and the storage options and their financial and power costs meant code density mattered more. The original ARM instructions had the top four bits hold the ā€˜condition codeā€™ which decided if the instruction was executed, thus the top hex nibble was readable. 0 f eq ne cs cc mi pl vs vc hi ls ge lt gt le al nv Data processing instructions, like and rd, rn, rm ; d = n & m aligned each of the four-bits to identify which of the sixteen registers were used on nibble boundaries so again it was readable as hex. xxxx000a aaaSnnnn ddddcccc ctttmmmm The ā€˜a aaaā€™ above wasn't aligned, but still neatly picked which of the sixteen data-processing instructions was used. and eor sub rsb add adc sbc rsc tst teq cmp cmn orr mov bic mvn And so it went on. A SoftWare Interrupt had an aligned 1111 to select it and the low twenty-four bits as the interrupt number. xxxx1111 yyyyyyyy yyyyyyyy yyyyyyyy I assume this neat arrangement helped keep the decoding circuitry small leading to a simpler design and lower power consumption. The latter was important because Acorn, the ARM chip's designer, wanted a cheaper plastic case rather than ceramic so they set a design limit of 1Ā W. Due to the poor tooling available, it came in at 0.1Ā W after allowing for a margin of error. This was so low that Acorn were surprised when an early board ran without power connected to the ARM; they found it was clocking just from the leakage of the surrounding support chips. Also, Acorn's Roger Wilson who designed the ARM's instruction set was an expert assembly programmer, e.g. he wrote the 16Ā KiB BASIC ROM for 6502, so he approached it from the programmer's viewpoint as well as the chip designer he became. Thumb and Thumb-2 naturally had to destroy all this so instructions are now not orthogonal. Having coded swtch() in assembler for various ARM CortexĀ M-..., it's a pain to have to keep checking what instructions are available on this model and what registers can it access. On ARMĀ 2, there were few rules to remember and writing assembler was fun. -- Cheers, Ralph. From e5655f30a07f at ewoof.net Mon Dec 19 22:10:17 2022 From: e5655f30a07f at ewoof.net (Michael =?utf-8?B?S2rDtnJsaW5n?=) Date: Mon, 19 Dec 2022 12:10:17 +0000 Subject: [COFF] Instruction Density. In-Reply-To: <20221219094820.EF45721FC2@orac.inputplus.co.uk> References: <20221213175811.C1E8118C098@mercury.lcs.mit.edu> <20221213185109.663zv3usi5ey5jx6@illithid> <20221219094820.EF45721FC2@orac.inputplus.co.uk> Message-ID: And while we're on the subject of the ARM, Ars Technica did a writeup on its early history recently that may be of interest to people here. https://arstechnica.com/gadgets/2022/09/a-history-of-arm-part-1-building-the-first-chip/ -- Michael Kjƶrling šŸ”Ā https://michael.kjorling.se ā€œRemember when, on the Internet, nobody cared that you were a dog?ā€ From coff at tuhs.org Thu Dec 22 10:50:06 2022 From: coff at tuhs.org (segaloco via COFF) Date: Thu, 22 Dec 2022 00:50:06 +0000 Subject: [COFF] Trove of Digital PDP Manuals, Tektronix Literature, OSU CompSci Historical Docs Message-ID: Sharing because I can't justify this sort of purchase but perhaps someone is in with or knows someone who works at a museum or well-funded research outfit that might be keen on this sort of thing: https://www.biblio.com/book/extraordinary-archive-original-house-publications-manuscripts/d/1507352423#gallery-1 Many books from OSU, lots of Digital literature for various PDPs, NBS reports, some Tektronix stuff, and a host of OSU-produced computing literature, plus more. This came up while I was searching for UNIX docs but I don't actually see anything UNIX there besides a mention that the PDP-11 ran it. There is no explicit mention of no cherry picking, so via contact the seller may be amenable to working on a subset. Either way, figured this would pique the interest of a few folks around. I also have to wonder if this bears any relation to my acquisition of the UNIX System V literature set this past year. That was likewise sourced from OSU. A professor who was retiring and mentioned oodles of old tech materials they were going to be auctioning off over the next few years, this very well could be from that same stash. - Matt G. From ralph at inputplus.co.uk Sat Dec 31 21:57:19 2022 From: ralph at inputplus.co.uk (Ralph Corderoy) Date: Sat, 31 Dec 2022 11:57:19 +0000 Subject: [COFF] fmt Strings. (Was: A few comments on porting the Bourne shell) In-Reply-To: <20221231044049.GI5825@mcvoy.com> References: <52FB6638-AEFF-4A4F-8C2E-32089D577BA0@planet.nl> <464819f0-d2f6-2a60-6481-a194f4428b4d@case.edu> <20221230200246.GW5825@mcvoy.com> <88f83b4c-b3f9-ed87-b2fa-560fb369742a@makerlisp.com> <20221231035931.GG5825@mcvoy.com> <20221231044049.GI5825@mcvoy.com> Message-ID: <20221231115719.B97EE21FB4@orac.inputplus.co.uk> Hi Larry, > I hate Python because there is no printf in the base language. There's print() with the format-string part being promoted into the language as the ā€˜%ā€™ operator when the left operand is a string. It returns a string. >>> '%10d' % (6*7) ' 42' >>> '%s %s!\n' % ('hello', 'world') 'hello world!\n' >>> '%10d' % 6*7 ' 6 6 6 6 6 6 6' >>> print('foo') foo >>> print('%.3s' % 'barxyzzy') bar >>> So similar to AWK or Perl's sprintf() and Go's fmt.Sprintf() in that it returns a dynamically-allocated string. -- Cheers, Ralph.