I ported Mac OS X to the Nintendo Wii

797 points - today at 3:40 PM

Source

Comments

NetOpWibby today at 4:36 PM

  Before figuring out how to tackle this project, I needed to know whether it would even be possible. According to a 2021 Reddit comment:

    There is a zero percent chance of this ever happening.

  Feeling encouraged, I started with the basics: what hardware is in the Wii, and how does it compare to the hardware used in real Macs from the era.
I LOL'd
rayiner today at 4:53 PM
Not only is this an insanely cool project, the writeup is great. I was hooked the whole way through. I particularly love this part:

> At this point, the system was trying to find a framebuffer driver so that the Mac OS X GUI could be shown. As indicated in the logs, WindowServer was not happy - to fix this, I’d need to write my own framebuffer driver.

I'm surprised by how well abstracted MacOS is (was). The I/O Kit abstraction layers seemed to actually do what they said. A little kudos to the NeXT developers for that.

samtheDamned today at 8:23 PM
This was an incredible read! Especially for what looks like the first post to this blog too? I wanted to subscribe to the RSS feed but unfortunately it gives a 404 error.
frakt0x90 today at 4:30 PM
If all the AI stories on this site were replaced with amazing stuff like this, the world would be a better place.
guyzero today at 4:29 PM
In addition to the incredible engineering work here the OP casually flexes by showing the development happening _in an economy class airplane seat_.
k38f today at 6:10 PM
Debugging kernel panics on a Wii in an economy seat is a level of focus I can't even imagine. Most people can't read a book on a plane without losing their place every 5 minutes.
raincole today at 7:24 PM
> As for RAM, the Wii has a unique configuration: 88 MB total

TIL Wii has only 88MB of RAM. Fortunately games weren't electron-based.

soci today at 4:19 PM
Back in the day I was a hardcore Mac nerd and became a professional at it too. My best reverse-engineering trophy was building one of the first "iOS" apps when there was not an official appstore for the iPhone.

But man, this is way ahead of what I could do. What this dude accomplished blew my mind. Not only the output (running MacOS on a Wii), but the detailed post itself. A-MA-ZING.

lampiaio today at 6:29 PM
As someone who's been trying to do something VERY similar (port Mac OS 9 to the Nintendo Wii U), all I can say is I'm 1) absolutely impressed, and 2) absolutely encouraged, as my project keeps telling me "this is impossible" at every opportunity.
bsimpson today at 7:06 PM
This is excellent.

YUV appears to be a PAL-specific color space. I wonder how off an NTSC Wii would be. Presumably it would have the wrong color space until an equivalent conversion scheme was devised for NTSC.

I was surprised to see regional color spaces leak into the project, but I presume that Nintendo's iOS (the coincidentally-named system this is replacing) could handle that abstraction for game developers.

djsavvy today at 8:07 PM
I'm shocked that the Wii only has 88mb of RAM. The programmers of that era really knew how to make a lot from a little!
khernandezrt today at 8:19 PM
Unrelated to the article but please compress your images. Why is one of them almost 8mb!?
leonidasv today at 4:34 PM
Nice work and write-up!

A side note: you embedded .mov videos inside <img> tags. This is not compatible with all browsers (notably Chrome and Firefox), which won't load the videos.

nickpeterson today at 5:53 PM
The one that really bugs me is the Apple TV. It would be a great little box to use for terminals/thin client style work and there are a ton of old cheap ones. Having a $50 dollar used box that was low power and could run OSX would be great.
tombelieber today at 6:24 PM
This rules. It’s exactly the kind of cursed side quest that sounds fake until you read the writeup and realize you actually did the work.
tiffanyh today at 4:27 PM
Amazing work.

If you like this story, you might also like the story of how Mac OS X was ported to Intel as well.

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

cyrialize today at 7:20 PM
The Wii is very moddable. I've modded my Wii in the past just for playing modded versions of Super Smash Brother Melee (mainly training packs, like flashing a red light when I miss an L-cancel).
zadikian today at 6:10 PM
My favorite part of this is the detour to ask for the IOUSBFamily src on IRC
mackid today at 6:08 PM
Congrats, great project and great writeup. That would have won MacHack back in the day.

Now that the MacBook Neo has an A18, I wonder if you could get MacOS running on an iPhone? :)

monkpit today at 4:05 PM
> There is a zero percent chance of this ever happening.

Honestly, I would have said the same. Great work!

unanonymousanon today at 4:39 PM
This is extraordinary, not only pushing the limit but documenting everything so clearly to show people what can be accomplished with time and dedication. Thank you for such thorough documentation, and congrats on getting it done!
bredren today at 7:06 PM
It is satisfying to see someone hacking on deprecated hardware and software also is keen to look forward into Vision Pro.
delduca today at 7:52 PM
The best hack of the last 10 years.
hassaanr today at 6:59 PM
In love with projects that are done solely because 'why the hell not'. Fantastic writeup and work.
guerrilla today at 7:44 PM
> The Wii uses a PowerPC 750CL

Well, okay, that's almost cheating.

MaxLeiter today at 4:12 PM
Great write-up. I love hardware running software it shouldn’t support
swiftcoder today at 4:21 PM
Damn, that's some dedication! Congrats on getting it running
WorldPeas today at 5:11 PM
Given that the original Apple TV ran on a modified version of macos, what are the chances one could turn an old wii into an Apple TV..?

EDIT: also, I just noticed on a second pass the system is addressing 78mb of ram, potentially meaning the ram spans the gddr3 and sram, I'm amazed this works as well as it does with seemingly heterogeneous memory

bottlepalm today at 5:06 PM
And here I am shopping for Macs because getting a hackintosh working from a VM on Windows is too difficult for me.
vsgherzi today at 5:26 PM
This is some amazing work, a good reminder to dig more into operating systems for myself!
oliad1 today at 6:30 PM
Nice project! Love seeing emulators & ports
carlosjobim today at 6:23 PM
They are successfully porting Mac OS onto every kind of modern computer over at the hackintosh subreddit, and I can't understand why there is so little interest for this stuff in the "hacker" sphere.

Surely, it must be a better option than Linux if you want to get the most out of a PC computer? At least for 10 more years.

https://www.reddit.com/r/hackintosh/

mghackerlady today at 4:09 PM
I'm pretty sure someones done this for the 360. Also, doesn't NT have a wii port?
zdware today at 4:43 PM
Fun post.

Always great when your debugging feedback is via a led xD

xoxxala today at 4:27 PM
Very neat project and an extremely enjoyable read.
spiderice today at 6:37 PM
I bet if me-20-years-ago knew that current me would have no fucking clue how to even begin to tackle a problem like this, me-20-years-ago would be very disappointed. Very jealous of your expertise. Awesome work!
nticompass today at 4:10 PM
This is awesome! I can't wait to plug in my Wii and give it a try myself.
hirvi74 today at 4:10 PM
Exceptional work. While it may not mean much, I am truly impressed. I like to toy with reverse engineering here and there, but such a port like this would take me multiple lifetimes.

Not to distract too much from the main topic, but what do you think about the Hopper disassembler? I have only used Radare2, IDA Pro, and Ghidra. Though, I haven't used the latter two on MacOS. What do you prefer about Hopper? I have been hesitant to purchase a license because I was never sure if it was worth the money compared to the alternatives.

postalcoder today at 6:54 PM
Sorry if off topic but I was struck by the view from your window. Were you in Hanalei Bay?
kogasa240p today at 6:02 PM
Wonder if it can happen on the Wii U
davenporten today at 4:13 PM
Hahaha! Yes! We need more of this in the world, love it!
rado today at 5:32 PM
Great, how about on iPhone?
c0_0p_ today at 4:35 PM
Fantastic work and a great write up.
dejongh today at 6:43 PM
Great hack!
serhack_ today at 4:24 PM
awesome, good to see some real content from pre-AI moment
lanyard-textile today at 4:09 PM
Absolutely atrocious. Congratulations!

That's the hacker spirit.

eats_indigo today at 4:40 PM
honestly expected this port to be headed in the opposite direction
rdanieli today at 5:51 PM
nice!
stavros today at 4:32 PM
This is excellent, though if you had chosen another OS, you could have called the project Wiindows.

EDIT: Oh interesting, the final paragraph says NT has been ported, didn't know that. Sadly, no pun is mentioned in that project.

rvz today at 4:27 PM
The post is a work of an actual hacker who knows what they're doing. Zero mention of "I used Claude" or "Used AI" to understand what is needed for accomplish this task.

This is exceptional work. Unlike the low-effort slop posts I see here on "Show HN".

zenlot today at 5:54 PM
[dead]
ValveFan6969 today at 8:08 PM
[dead]
anskksdkdkdk today at 5:15 PM
[flagged]
ynajjarine today at 6:17 PM
[flagged]