7 ms·
Windows NT for GameCube/Wii
- sillywalk 2y agoThe same person did NT for PowerMacs[0], which was discussed earlier[1]. [0] https://github.com/Wack0/maciNTosh 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 https://news.ycombinator.com/item?id=40945076
- deleted 2y ago[deleted]
- cloudbonsai 2y agoIt 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.
- roywashere 2y agoThere 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 :-)
- jasongill 2y agoWindows NT for Alpha was quite popular, second only to Windows NT for x86
- mc32 2y ago500Mzh 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.
- zdw 2y agoThat 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.
- asveikau 2y agoPeople 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.
- trentnelson 2y agoI 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.
- wcfields 2y agoIIRC: 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/ http://www.obsolyte.com/dec/multia/
- themadturk 2y agoI 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.
- sumtechguy 2y agoThe NT PE executable format supports quite a few processors families. https://learn.microsoft.com/en-us/windows/win32/debug/pe-format#machine-types 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.
- RajT88 2y agoAnd why? We can see that a number of those architectures eventually got a WindowsCE release. Notably the Dreamcast ran WinCE on SH4 CPU.
- deleted 2y ago[deleted]
- dfox 2y agoMostly 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).
- asveikau 2y agoInternally, 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.
- sumtechguy 2y agoThat is controlled by this bit in the subsystem field. https://learn.microsoft.com/en-us/windows/win32/debug/pe-format#optional-header-windows-specific-fields-image-only https://learn.microsoft.com/en-us/windows/win32/debug/pe-for... Subsystems https://learn.microsoft.com/en-us/windows/win32/debug/pe-format#windows-subsystem 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.
- hawflakes 2y agoIirc 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-on-pa-risc-and-a-hp-ux-port-to-x86/ https://www.osnews.com/story/139479/windows-nt-and-netware-o...
- mavhc 2y agoNT 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
- bombcar 2y agoAt 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.
- toast0 2y ago> 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.
- ndiddy 2y agoAfter 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-alpha-axp/ https://virtuallyfun.com/2023/05/15/windows-2000-64-bit-for-...
- my123 2y ago2210 isn't a Windows 2000 build even, but a Windows XP prerelease
- roytam87 2y agoyeah, but 64bit versions are called "Windows 2000" in the moment. see https://msfn.org/board/topic/183599-windows-2000-x64/ https://msfn.org/board/topic/183599-windows-2000-x64/ for screenshots.
- yjftsjthsd-h 2y ago> 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.
- kridsdale1 2y agoDid MSFT use this as a basis for The Xbox360 kernel?
- twoodfin 2y agoChatGPT 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.
- philistine 2y agoAt 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_system_software https://en.wikipedia.org/wiki/Xbox_system_software#Xbox_360_...
- Mogzol 2y agoIt 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.
- philistine 2y agoGaming 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.
- twoodfin 2y agoThe 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.
- ge96 2y agocrazy no image in the readmes
- ChrisRR 2y agoYou can always submit a pull request
- rickdeckard 2y ago[flagged]
- aussieguy1234 2y agoBecause they could
- rickdeckard 2y agoAnd I like that, I'm just literally missing a small intro on the motivation at the GitHub page. Either way, always nice to read the chain of thought which drove someone to do something- :)
- ljf 2y agoHackers got to hack? While my technical exploits are no where near this - I love reading about people doing odd and difficult things for fun. (As a young teen who was obsessed with Road Rash on the Sega Game Gear, I wrote down every single save code, after every game I played, along with what I had (bike, level and cash) - after a week or so of doing this I worked out the save code and was able to give myself any level, bike or money by manually tweaking the code. I am sure that I am not the only person that discovered this, but at the time I felt like a god and enjoyed racing the later levels with the worst bikes etc. - sometimes it's just fun to do something because you can.)
- rickdeckard 2y agoSee, that's what I actually mean :) I expanded in a sub-comment: I am not challenging that it was done, I would like to hear about the motivation to do it. There's no purpose for the result described on Github, and also no background why it was done. I have no value to run Windows NT on a Gamecube, but I would surely enjoy the story on why it came to be :)
- goosedragons 2y agoTo run Office 4.2 and browse the web in Internet Explorer?
- dark-star 2y agoHas anyone tried this on real hardware? I've searched for videos on YouTube but haven't found any. Would love to see it running before I go searching for my old GameCube to try it myself :)
- dark-star 2y agoTo answer my own question: This looks like it is being run on real hardware (with some sort of SD card adapter/loader): https://www.youtube.com/watch?v=BrcZ2-I0CbQ https://www.youtube.com/watch?v=BrcZ2-I0CbQ
- unleaded 2y agoIt doesn't work on Dolphin—probably won't for quite a while https://github.com/dolphin-emu/dolphin/pull/12426 https://github.com/dolphin-emu/dolphin/pull/12426
- rvnx 2y agoNobody asked for that, I love it, this is brilliant, and like art.
- michh 2y agoI think not just like art, it is art. Making something for the sake of making it, not because it serves a practical need or purpose. Perhaps even because it doesn't.
- qingcharles 2y agoObligatory Jeff Goldblum: https://bennadel-cdn.com/resources/uploads/2018/jurrasic-park-jeff-goldblum-meme.jpg https://bennadel-cdn.com/resources/uploads/2018/jurrasic-par...
- jakupovic 2y agoGreat work!
- anaisbetts 2y agoThis is an insane amount of work, holy crap
- jchw 2y agoHeard about this recently. Extremely fun and interesting. Would really like to try it, not sure if I should try it on a GameCube or Wii. I believe non-x86 versions of Windows NT came with MS-DOS emulation in the form of SoftPC, at least in NT4. If anyone happens to have an appropriate copy of SoftWindows to try, that sounds like potentially even more fun.
- unixhero 2y agoSoftWindows is located here https://winworldpc.com/product/softwindows/30 https://winworldpc.com/product/softwindows/30
- jchw 2y agoThat seems to be a version for Mac. However, the Windows NT version does seem to be on Archive.org at least: https://archive.org/details/softwindows-32-powerpc-v1.01 https://archive.org/details/softwindows-32-powerpc-v1.01
- hawflakes 2y agoDEC made fx!32 to allow x86 emulation on alpha only. They didn’t tackle ppc or mips. https://en.wikipedia.org/wiki/FX!32 https://en.wikipedia.org/wiki/FX!32
- fredoralive 2y agoAll 32 bit versions of NT had support for x86 DOS and Win16 programs, which on non-x86 systems was implemented with an emulator. FX!32 was for x86 Win32 apps, which was indeed a DEC specific thing, they seemed to be far more interested in pushing NT than IBM or SGI/MIPS, and clearly realised that they needed to run all this software being written for Windows 95 to be taken seriously as a Windows system.
- hawflakes 2y agoBoth DEC and HP were pushing for NT. (I interned at dec and worked briefly at HP while both were still pushing Alpha and PA) HP foodnote: HP had this vision of NT at the desktop and HP/UX server iron. Folks preferred Solaris over HP/UX so that was their idea to adopt windows. The guy at hp pushing that agenda, Belluzo, eventually left and went to Microsoft.
- badgersnake 2y agoDid they implement the whole USB stack? If I remember correctly NT4 had no usb stack - USB was one of the new things in Windows 2000.
- fredoralive 2y agoOn the Wii I believe USB is mostly handled by the ARM "starlet" processor and it's IOS software, rather than the PowerPC.
- LetsGetTechnicl 2y agoI know what I'm doing later today!
- bsimpson 2y ago<but-why.gif> For those that don't remember the Dreamcast, it was Sega's final system before they left the hardware business. It was based on Windows CE, another Microsoft OS without the NT kernel.
- pdntspa 2y agoThis isn't quite accurate... some games were based on Windows NT, but many others did not use that abstraction layer. The console itself didn't have an OS in the 'Windows' sense of the word.
- p_ing 2y agoHere's the list of Windows CE games on Dreamcast: https://gamefaqs.gamespot.com/boards/916412-dreamcast/79453073 https://gamefaqs.gamespot.com/boards/916412-dreamcast/794530... A short list out of 556 games developed for the console per https://www.mobygames.com/platform/dreamcast/ https://www.mobygames.com/platform/dreamcast/.
- bsimpson 2y agoI'm surprised it's a relatively low percentage, considering the thing came with a Windows sticker (and might have shown the logo while it turned on).
- p_ing 2y agoCE came on the game disc rather than the console and developers mostly preferred Sega's tooling/API. This is a decent review of what happened with CE on Dreamcast: https://www.youtube.com/watch?v=QKHSlBi5qok https://www.youtube.com/watch?v=QKHSlBi5qok
- toast0 2y agoThe wince logo showed up while booting a wince game. There's a field in the boot file where you can drop a logo that gets inserted in the boot splash animation. Of Sega licensed games, I think it's just blank or WinCE; but for unlicensed games there's more variation, it's a nice place to acknowledge the developer OS you used. A sticker on the front is just branding. Image search says it shows 'compatible with Windows CE' which is true. Doesn't mean it was built around it, and doesn't mean it was a good idea, but certainly some games used it. I'm sure Microsoft could have put together Windows CE for gamecube or ps2 if they wanted to, and wouldn't have needed a sticker on the front... ps1 and saturn could probably swing it too; you really just need to put drivers around the hardware and the bios functions, and maybe structure memory properly if bios functions make assumptions.
- whalesalad 2y agoI can finally live my dream of running a domain controller on my gamecube
- mdaniel 2y agoI would guess Linux + samba4 will be a much more full featured domain controller than any copy of NT anything. So, in that way, you always could
- jeffbee 2y agoIt's amusing to me that I am reading this readme and I know just what they mean about this not working with NT build 944, but then I wonder whether when they say "RTM" it would work with the build 1037 that was common warez are the time. It was the version everyone had, and if I had to rummage through closets I am sure that is the only CD I would find.
- rambojohnson 2y agowhy
- tombert 2y agoNot the person who made this, but I suspect the reason is "because it's cool". I personally think that's a perfectly valid reason to do anything. Why does everything we do with coding have to be for a practical purpose? When I play a video game for fun, it's not like I'm getting anything out of it. Sometimes it's fun to code up something just because you can.
- plun9 2y agocause
- wicket 2y agoPossible HN bug here. This URL was posted 3 times[1]. Aren't reposts normally marked automatically as duplicates? [1] https://hn.algolia.com/?query=Windows%20NT%20for%20GameCube%2FWii&type=story&dateRange=all&sort=byDate&storyText=false&prefix&page=0 https://hn.algolia.com/?query=Windows%20NT%20for%20GameCube%...
- mdaniel 2y agoYou/I wish; no, it's just some posts that win the front-page lottery and the rest get flagged, and if flagged enough times (or by enough karma?) they get marked [dupe] by (presumably) dang In the case of split lottery, someone emails hn@ycombinator.com and one setq [or update statement] later the threads get merged
- nwroot 2y agoThis is pretty awesome