Hacker News new | past | comments | ask | show | jobs | submit login

The same person did NT for PowerMacs[0], which was discussed earlier[1].

[0] https://github.com/Wack0/maciNTosh

[1] Windows NT for Power Macintosh (github.com/wack0)

298 points by TazeTSchnitzel 7 months ago | hide | past | favorite | 215 comments

https://news.ycombinator.com/item?id=40945076




It seems that Windows NT naitively supported IBM's PowerPC processors (in addition to IA-32/x86). The "PowerPC Edition" did not sell much, so Micorosft discontinued the support in 1997.

Because Wii and GameCube were PowerPC-based, both can technically run Windows NT. This seems to be the main reason why this project was doable.

I think we are witnessing a historical accident materialized by obscure hardware legacies.


> The "PowerPC Edition" did not sell much

NT4 included all the supported architectures on the cd-rom. You didn't buy an x86 version or a PPC version or a MIPS version or an Alpha version... You just bought NT4 client or server and it was all there. Microsoft may have had analytics of use on ppc, but not specifically sales. OEM sales, sure.

More likely, no PPC oems were interested in selling NT5 (Windows 2000) bundled with their hardware, and so Microsoft gave up on that. Alpha was supported into the release candidates (and I've seen comments that builds continued but were no longer distributed outside Microsoft), but Alpha imploded during the release time frame.


Worse than that: other than Apple and the clones, there were hardly any PPC OEMs at all, and Old World Power Mac hardware wasn't PReP (which is why it couldn't run it). Largely only IBM's hardware could, like the rare as hen's teeth Power Series ThinkPads, or the unobtainium Power Series workstations, and some of Motorola's equally rare stuff. Those landed with a thud in the market and were extremely expensive, and it made sense for Microsoft to jettison it.

Apple was going to get NT on at least the Apple Network Server (Ellen Hancock once claimed there would be upgrade ROMs that could boot it), but that never happened.

Alpha, at least, had vendors, and existed in some numbers. My AlphaPC 164LX [0] was made by Samsung.

[0] http://oldvcr.blogspot.com/2023/03/refurb-weekend-dec-alphap...


FWIW I had one of those IBM Power Series workstations, and Windows NT was installable via CD-ROM.

Considering I had no idea how to use AIX then it was nice to have a machine with a Sound Recorder application (probably to hook up to a cd player and play to a tape recorder), the ability to play canyon.mid, run MS Paint, and change the cursor to an animated horse. That's what workstations are for right?


After Compaq decided they wouldn't support Windows on Alpha, Microsoft continued using the hardware for developing 64-bit Windows (the previous Alpha releases were all 32-bit) until Itanium hardware became available. Here's a blogpost where someone goes over an Alpha 64-bit version of Windows 2000: https://virtuallyfun.com/2023/05/15/windows-2000-64-bit-for-...


> After Compaq decided they wouldn't support Windows on Alpha, Microsoft continued using the hardware for developing 64-bit Windows

I seem to recall hearing that Linux also developed its 64-bit support on Alpha.


A (dual?) Alpha workstation was Linus’ daily driver for a while, IIRC.


2210 isn't a Windows 2000 build even, but a Windows XP prerelease


yeah, but 64bit versions are called "Windows 2000" in the moment. see https://msfn.org/board/topic/183599-windows-2000-x64/ for screenshots.


There was also Windows NT for Alpha and RISC, neither were popular. And now we have yet again Windows for ARM. Everything old is new again :-)


The NT PE executable format supports quite a few processors families.

https://learn.microsoft.com/en-us/windows/win32/debug/pe-for...

I just like the valid MSDOS stub header executable on the front of every DLL and executable.


And why? We can see that a number of those architectures eventually got a WindowsCE release.

Notably the Dreamcast ran WinCE on SH4 CPU.


Internally, NT first targeted Intel i860, not x86. This was a deliberate decision to break old assumptions. It was designed to be multiplatform from the beginning. The fact that it had an NT syscall layer but also a Win32 one, then formerly an OS/2 subsystem, also reflected this heritage of adaptability, multi-platform, portability etc.


Mostly because that format is not strictly speaking Windows-specific but comes from Unix System V release 4. Also various oddball embedded platforms use the full NT-style PE COFF as their native object/image format (but these usually either specify i386 as machine type or place some invalid value there).


That is controlled by this bit in the subsystem field. https://learn.microsoft.com/en-us/windows/win32/debug/pe-for...

Subsystems https://learn.microsoft.com/en-us/windows/win32/debug/pe-for...

There are also a few others usually NE for older win16 and LE for OS2 and other interesting win16 overlay types.


Wait, does that mean there's a risc-v version of windows?


If there is, it isn't public. .NET does apparently have RISC-V architecture support in some sense due to a pull request by a Samsung engineer.

https://github.com/dotnet/runtime/pull/82382

From a technical standpoint, there's no reason Windows couldn't be brought to RISC-V in some form or fashion. It's designed for that portability.


It was almost certainly added in order to support EFI which uses PE/COFF format binaries.


Windows NT for Alpha was quite popular, second only to Windows NT for x86


500Mzh vs 233Mhz, if you could afford the cooling. Maybe exaggerating the gap, but I think it was pretty big which contributed to the enthusiasm for DEC alpha.


That or more was the gap.

Also, "cooling" is relative - the highest power draw of a 21164 Alpha is around 40-60w, which is normal to low these days, but was huge back then.


I remember a law firm I worked at buying an Alpha server running NT to host a SQL Server database system in the mid-90s. I was network admin, but we ran Netware at the time an I didn't touch that machine, we had an Alpha sysadmin/dba for it. I left a few months later to a firm that was already running NT on its servers; learning a new network OS in a stable environment was much preferable to converting from Netware to NT.


People forget the excitement around alpha from the mid 90s. It was the first Linux port to non-x86 for example. It was a little bit before the AMD vs Intel wars and race to 1ghz kicked off, so it represented a challenge to Intel's monopoly.


IIRC: There was a bonanza of DEC Multia Alpha's[1] that made it's way to some salvage seller in the late 90's for like $100-ish. The catch was they didn't include RAM and it had to be True Parity RAM which was fairly expensive.

[1] http://www.obsolyte.com/dec/multia/


I remember my first job in 2000, straight out of 1.5 years of college, getting to play directly with Digital UNIX and Alpha processors! The Alpha 21264 was a beast at the time.


Iirc MIPS was on the installation CD and possibly what the team used. There was also a pa-risc port that never shipped…

https://www.osnews.com/story/139479/windows-nt-and-netware-o...


NT was designed to be CPU and OS level API independent, of course mainly being used with closed source software meant hardly anything supported non x86 CPUs, and if you wanted Unix you could just run Linux by then


At the time it was in no way certain that x86 was long for the world, let alone that it would take the world by storm and eat almost every other CPU architecture.

The OS-level was much more CPU agnostic at the time and programs would aim for an OS rather than an OS/CPU combo.

Linux preserved that for much, much longer than many others (the only other big name was NeXT into MacOS).

Now with ARM finally "catching up" we see it growing again; nothing is new.


Did MSFT use this as a basis for The Xbox360 kernel?


ChatGPT confirms my recollection: No, Microsoft developed a novel kernel and hypervisor for the 360, before moving back to a Windows kernel for the Xbox One.


At some point, the people like me will stop answering you dumb-dumbs who insist on trusting a machine whose purpose is spouting believable nonsense. Today is not that day, for it took me two minutes to get an answer, but instead of the couple of seconds yours took, mine is fucking RIGHT: The Xbox 360 is a heavily modified Windows 2000 kernel.

https://en.wikipedia.org/wiki/Xbox_system_software#Xbox_360_...


It blows my mind that somebody would get an answer from ChatGPT and post it here as a fact without doing the bare minimum to verify that it is actually true. It's insane, thanks for correcting them.


Gaming history is already filled with half-truths and straight up misunderstood things turned into lies because no one cares to write about anything but the players' perspective. Of fucking course the useless LLMs are going to start hallucinating bullshit when they try to navigate that.


The question was whether Microsoft reused their NT 3.5 era PowerPC kernel (& presumably some modification of the HAL).

If you can find evidence that’s the case, I’m intrigued.


> If you can find evidence that’s the case, I’m intrigued.

If you can find evidence supporting the useless information you posted, I'm intrigued.

LLMs are not sources of information and never will be. No one cares what ChatGPT thinks about anything. It's not helpful to post that, and especially not to then act like it's correct unless someone else has proof otherwise.


Why would I engage with you? You trust Large Language Models! I gave you a bit of time earlier, but that was more than enough. I don't suffer fools twice.


I dunno, this write-up both seems a lot more detailed than Wikipedia re: the hypervisor & kernel and agrees with my recollection as foolishly confirmed by an LLM:

https://www.copetti.org/writings/consoles/xbox-360/#operatin...

Appreciatively discussed on hn!

https://news.ycombinator.com/item?id=31678045

Doesn’t sound at all like the NT/2000 kernel/HAL/Executive.


crazy no image in the readmes


You can always submit a pull request




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: