Porting Doom to a/UX
katelibc.medium.com
katelibc.medium.com
https://twitter.com/id_aa_carmack/status/1340794861050605568
> AFAIK, nobody ever ported Doom to run on a Cray 1. The scalar CPU should be fast enough (in 1976!) to draw 320x200, but memory would be an issue because it wasn't byte addressable -- you could only load and store aligned 64 bit values, and a max of 1M elements would be a pinch.
> You could burn instructions to shift and mask on the low order address bits, but a faster path would be to interleave 8 independent textures at different bit positions in the words, and have specialized texture mapping routines with a constant shift and mask. I don't recall ever considering that arrangement, but there may have been relevant consumer systems where doing it for 2 or 4 bit textures packed in bytes would have been helpful.
> Figuring out how to best exploit chained vector instructions for texture mapping on the Cray would be phase two.
The memory thing might be an issue, but I remember Doom was ported to the SNES which only had 128kB of RAM and a 3.5Mhz CPU. While that was a heroic hack, it leaves a lot of possible overhead for a Crey-1 port with 1 million words addressable and an 80Mhz clock.
A/UX 1.0 ~ A/UX 2.0
[ 68020 w/PMMU, 68030 ] Macintosh II, Rev B, with a 68851 PMMU
Macintosh SE/30
Macintosh IIx, IIcx, IIsi, IIci, IIfx
A/UX 3.0 ~ A/UX 3.1.1 [ 68040 ] Centris 610, Centris 650
Quadra 605, 610, 650, 700, 800, 900, 950.
AWG 60, 80, 95(Source: I have a quadra with a/ux i haven't touched in about 10 years)
I seem to recall seeing doom on a Mac in the system 7 era, but i guess it was 7.1 or later.
https://github.com/viti95/FastDoom
There is also the official SNES port for the faster Super FX GSU-2 chip running at 21 Mhz.
I think Rebecca Heineman ported this back to C for the official 3DO port. https://github.com/Olde-Skuul/doom3do/blob/master/source/pha...
Unless you are talking about running Mac programs as separate processes directly on Unix, protected from one another.
They certainly could have worked, but would have been as different from regular Mac programs as what they did end up with. Ultimately, they had to "fail" a bunch of times before they admitted that what worked was what should ship, and shipped one of them.
(Briefly: licensing costs for UNIX System V.)
She should have imported the source code unmodified as a first commit and tracked her work.