3 ms·
Hah. I have memories of being a grad hire working on this project - mostly to fetch tea and follow the directions of my betters - but still, it was an impressiv
by colinb 5y ago
Hah. I have memories of being a grad hire working on this project - mostly to fetch tea and follow the directions of my betters - but still, it was an impressive thing to see.
I sat next to a guy who worked on something called Jacket & Tie. I don't remember which was which, but the essence of this was to compile VAX32->Alpha assembly, then run that on a big ass VAX (an 8000? It's been a while) that had loadable microcode(!) enabling it to emulate a very very slow Alpha. I think I recall hearing that the first successful boot to login prompt took ~24h on this hardware.
I ported the RAD50 6-bit character set library (so you could handle 6 characters in a 36 bit word file produced by ancient TOPS20 boxes from the Marlboro Computing Company), written in the even deeper past by my then boss when he had been a whippersnapper. It was in PL1 I think.
I ported (i.e. changed the build files to target Alpha rather than VAX32) the badblock utility, and tested it with an Alpha work station, a SCSI floppy drive, a box full of unused 3 1/2 disks, and a paperclip to scratch the surface of each one before initializing it.
I had some madly brilliant colleagues who ported millions of lines of hand-tuned VAX32 assembly, a boatload of BLISS32, and oddments of other languages.
I used to have a numbered super-secret copy of the project plan but I think it went in the dumpster decades ago.
I had a terrible time, and left with my self-confidence shattered having spent several years achieving not much, but watched some astoundingly competent colleagues do amazing things at a time when Intel's chips were topping out at 33MHz and Alphas were planned for 1GHz. I wish I had made more use of my time there, but boy, I'm glad I got to see some really top notch engineers at play.
- zoomablemind 5y agoFor the end-users the transition from VAX to Alpha rhymed with VEST, which was a command-line utility to produce an Alpha native binary from its VAX original binary. When successful, such image was considererd VESTed. In some (lucky) mismanaged cases this would be the only way forward in absence of the original source code. Similar process was in use during transition to IA and probably to x86-64 now. Pure magic, indeed!
- loph 5y agoI think an awful lot of the user-space utilities were VESTed, I'm thinking about EDT and TPU and who knows what else? This might be the ancient ancestor of the technology that Apple uses to run x86 binaries on their M1 ARM-based chips.
- bigbillheck 5y ago> This might be the ancient ancestor of the technology that Apple uses to run x86 binaries on their M1 ARM-based chips Surely such an ancestor would be based on Apple's 68k->PPC transition in the mid-90s or its PPC->x64 transition in the 00s.
- loph 5y agoPlease don't call me Shirley! Do you not think Apple looked at the prior art before writing that translator? Of course they did. "Great artists steal" -- indeed they do.
- chasil 5y agoApple used Rosetta. I remember a version of Rosetta that was advertised to run SPARC/Solaris binaries on x86 under some sort of iBCS. https://en.m.wikipedia.org/wiki/Rosetta_(software) https://en.m.wikipedia.org/wiki/Rosetta_(software) https://en.m.wikipedia.org/wiki/Intel_Binary_Compatibility_Standard https://en.m.wikipedia.org/wiki/Intel_Binary_Compatibility_S... I really wish they had done PA-RISC. I still have some orphaned software on that platform. It looks like Rosetta emerged from Quick Transit, and was eventually borged into IBM. https://en.m.wikipedia.org/wiki/QuickTransit https://en.m.wikipedia.org/wiki/QuickTransit
- spullara 5y agoI thought it was called mx. Turns out that there was one called 'mx' and it was based on the VEST codebase and was for Ultrix binaries. "ULTRIX MIPS Translation The translator that converts ULTRIX MIPS programs to DEC OSF/1 AXP programs is called mx. The mx project started after VEST was functional, and we took advantage of the VEST common code base for much of the analysis and Alpha AXP code assembly phases of the translator. In fact, about half of the code in mx is compiled from the same source files as those used for VEST, with some architectural specifics supplied by different include files. The C+ + language has proven quite valuable in this regard. "