Path: utzoo!attcan!uunet!munnari!basser!boyd From: boyd@basser.oz (Boyd Roberts) Newsgroups: comp.unix.wizards Subject: Re: Joy of Joys (porting C-shell) Message-ID: <1296@basser.oz> Date: 8 Jul 88 01:27:00 GMT References: <3522@hcr.UUCP> Reply-To: boyd@basser.oz (Boyd Roberts) Organization: Dept of Comp Sci, Uni of Sydney, Australia Lines: 41 Those coders who believe all the world is a VAX are just wrong-wrong-wrong. There's a machine in the UK called an Orion made by some people called High Level Hardware. It has TWO (count them) stacks and is word (32 bit) addressed. Miss-aligned byte references don't fault and the byte offset is in the HIGH order address bits. So you get a byte address space that looks something like this: 0x00000000 0x10000000 0x20000000 0x30000000 0x00000001 0x10000001 0x20000001 0x30000001 etc... But then the two stacks come in. A high order bit (in fact two) select which stack you're referencing. Either, the ``scalar'' or the ``vector'' stack. The address space is NOT contiguous. Stick to K&R and you're fine. Somehow High Level Hardware ported 4.2BSD to their box. They must have been crazy!! I used it & it worked. Hats off to HLH, but their hardware people should've been shot. Worse still I think I heard rumours about them releasing NFS on it. Now if XDR ain't VAX dependant, I don't know what is. SysV NFS 2.0 XDR has some real cuties for non VAX byte order machines. Puke! One Sunday afternoon & a lot of printf's later I found it. Assuming how unions/structures are packed & passed to function calls as their constituent elements is NO way to write a ``portable'' piece of code. Boyd Roberts boyd@basser.cs.su.oz boyd@necisa.necisa.oz ``When the going gets wierd, the weird turn pro...''