frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

I Ported Mac OS X to the Nintendo Wii

https://bryankeller.github.io/2026/04/08/porting-mac-os-x-nintendo-wii.html
369•blkhp19•2h ago

Comments

monkpit•1h ago
> There is a zero percent chance of this ever happening.

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

lanyard-textile•1h ago
Absolutely atrocious. Congratulations!

That's the hacker spirit.

mghackerlady•1h ago
I'm pretty sure someones done this for the 360. Also, doesn't NT have a wii port?
nticompass•1h ago
There was a PPC version of Windows NT, and yes someone put it on the Wii!

https://github.com/Wack0/entii-for-workcubes

See also: https://gbatemp.net/threads/windows-nt-ported-to-wii.667959/

hirvi74•1h ago
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.

blkhp19•1h ago
I like using it for disassembling UIKit (for my day job working on iOS apps), and overall, I like the UI/UX and how it feels like a native Mac app.

I've tried Ghidra, and while extremely impressive and capable, it might be the most Java-feeling app I've ever used. I'd love for someone to whip up an AppKit + SwiftUI shell for it.

xandrius•1h ago
You made me curious: why would you need to disassemble UIKit for iOS as part of your day job?
crazysim•1h ago
Sometimes things aren't documented and sometimes they could be documented wrong.
blkhp19•52m ago
There are bugs and undocumented behaviors that need to be understood in order to be worked around - I wish it wasn't the case but such is life developing for closed-source platforms.
hirvi74•33m ago
> I like using it for disassembling UIKit (for my day job working on iOS apps), and overall, I like the UI/UX and how it feels like a native Mac app.

You are correct about the UI/UX. I do think Hopper is ahead of others in that regard. Though, Radare2 being a CLI tool is nice as well. Though, I haven't attempted to use Radare2 for MacOS/iOS disassembly. Though I must ask, why are you disassembling UIKit? Looking for private API behavior or working around bugs? I've been learning more about iOS in my spare time, because despite my love for Swift, I have never used it for iOS. I only have used Swift for MacOS automation, i.e., AppleScript replacement via the Accessibility, Core Foundation, AppKit, etc..

> Ghidra, and while extremely impressive and capable, it might be the most Java-feeling app

I chuckled while reading this because I had the exact same thought when I first used Ghidra. I haven't tried Ghidra on MacOS because I will not taint my machines with the impurities of Java. I also do not want to enable Rosetta, so that was another obstacle in trying Ghidra on MacOS. In Ghidra's defense, using Java was a pragmatic choice. The "write once, run anywhere" promise of Java is likely a near-necessity for a disassembler for government operations.

blkhp19•26m ago
> Looking for private API behavior or working around bugs?

Exactly this!

nticompass•1h ago
This is awesome! I can't wait to plug in my Wii and give it a try myself.
MaxLeiter•1h ago
Great write-up. I love hardware running software it shouldn’t support
davenporten•1h ago
Hahaha! Yes! We need more of this in the world, love it!
soci•1h ago
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.

swiftcoder•1h ago
Damn, that's some dedication! Congrats on getting it running
serhack_•1h ago
awesome, good to see some real content from pre-AI moment
rvz•1h ago
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".

bigyabai•59m ago
Ah, the Procrustian definition of "real hacker", where using AI disqualifies you but using Github pages is considered only a minor infraction.

The build-in-public era of hacking has really turned this field into an influencer economy.

jasaldivara•45m ago
Whats wrong about Github pages?
dewey•38m ago
A real hacker would obviously never use a Microsoft product, or worse, post on a VC funded web forum!
blkhp19•46m ago
I used plenty of non-agentic AI to help understand the XNU codebase, and also research various topics. It wasn't always correct, but it certainly helped at times! My philosophy for this project was to use it as a learning tool - since that was kind of the whole point of me attempting this :)
dirasieb•7m ago
looks like they did use AI, swing and a miss for the luddites once again!
xoxxala•1h ago
Very neat project and an extremely enjoyable read.
tiffanyh•1h ago
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

dormento•27m ago
Oof linkrot :(((((

I remember reading this back then. Amazing story. All the secrecy, and needing to be a very small team.

guyzero•1h ago
In addition to the incredible engineering work here the OP casually flexes by showing the development happening _in an economy class airplane seat_.
nine_k•1h ago
This is the most incredible part. I cannot even use a laptop adequately in an economy class seat, I cannot position the screen so that I could see it, and the keyboard so that I could type on it, at the same time. (To say nothing of connecting a Wii.)
pa7ch•38m ago
I can't imagine concentrating on a complicated project like that on the go, but I went back to stare in awe at said picture and I think its a train or bus. Still a flex.
badc0ffee•21m ago
Still looks like a plane to me, with rows of 2-3-2 seats.

There are definitely no buses that wide.

blkhp19•15m ago
My Wii has been on many planes and trains - and yes, there is a photo of each in my post.
slackfan•35m ago
What's flex-worthy about this? There's a lot of dev work that goes on in economy class airplane seats. Or are VC valley programmers so rich they fly business everywhere?
badc0ffee•18m ago
It's uncomfortable and awkward (the Wii was on his leg in the first shot), and often you need to break concentration and pack things up to let someone out of or into their seat.
eastbound•35m ago
Which means no access to Claude.

Can’t wait for his sequel “I received a Cease and Desist Letter from Apple; Feeling encouraged, I registered the trademark ‘Wii subsystem for macOS’”.

varispeed•20m ago
Imagine if he was developing it on a laptop found at a refuse site that was still charged, just hiding in the hedge so that guards wouldn't see him.
frakt0x90•1h ago
If all the AI stories on this site were replaced with amazing stuff like this, the world would be a better place.
kstrauser•1h ago
Get to submitting! Be the change you want to see.
stavros•1h ago
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.

snazz•50m ago
“entii-for-workcubes” is a pretty good pun!
stavros•34m ago
I don't know man, "Wiindows" was right there and they chose "entii"? I weep for the missed opportunity more than anything.

Maybe it was a legal worry.

leonidasv•1h ago
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.

efdee•1h ago
If it's not working on Chrome nor Firefox, it's safe to say it's incompatible with almost all browsers.
leonidasv•1h ago
It works on Safari.
blkhp19•1h ago
I only tested on Safari - whoops! Fixed now.
tverbeure•42m ago
Minor usability comment: the screenshots are too small to be readable. Whenever that's that case in my blog posts, I make those screenshots clickable and add (Click to enlarge) below it, to make it easier for readers to see the image are original resolution. In markdown, I do that like this:

[![Image comment](image_url.png) ](image_url.png)

(Of course, I can also right-click and do "Open image in new tab", but that's one click extra...)

Congrats on the awesome project, BTW! You were lucky that I wasn't sitting next to you on the plane. I would have wasted so much of your time asking dumb questions.

blkhp19•1h ago
Whoops, thanks! Fixed.
c0_0p_•1h ago
Fantastic work and a great write up.
NetOpWibby•1h ago

  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
nancyminusone•54m ago
Gotta love that particular Redditors follow up comment:

>Go ahead and downvote me. I am correct on every single thing I said

dpoloncsak•49m ago
Tempted to necro a 5 year old reddit post just to tell that guy he was wrong, honestly
oceansky•40m ago
Comments are blocked there
noman-land•19m ago
Make a new thread calling them out personally.
dfxm12•23m ago
The comment score is 1. It doesn't even have a controversial flag. The gamification of social media is a mistake.
glenstein•43m ago
I almost think such projects are worth it just to immortalize comments like these. There's a whole psychology of wrongness that centers on declaring that not-quite-impossible things will definitely never happen, because it feels like principled skepticism.
blkhp19•35m ago
I'd be lying if I said it wasn't a very tiny part of my motivation :)
unanonymousanon•1h ago
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!
eats_indigo•1h ago
honestly expected this port to be headed in the opposite direction
zdware•1h ago
Fun post.

Always great when your debugging feedback is via a led xD

rayiner•54m ago
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.

geerlingguy•42m ago
And there are enough parallels to Linux's stack, I'm thinking about looking through the Linux on Wii project more and comparing how it handles fb issues in comparison. I loved reading this whole post, crazy how many OSes have now been run on the humble Wii!
spijdar•40m ago
IOKit was actually built from the ground up for OS X! NeXT had a different driver model called DriverKit. I've never coded against either, but my understanding was they're pretty different beasts. (I could be wrong)

That said, indeed, the abstraction layer here is delightful! I know that some NetBSD devs managed to get PPC Darwin running under a Mach/IOKit compatibility layer back in the day, up to running Xquartz on NetBSD! With NetBSD translating IOKit calls. :-)

erichocean•35m ago
As I remember it, they were basically the same—but IOKit is C++ (with restrictions) because 3rd party developers didn't want to learn Objective-C.

But that's a hazy, 20 year old memory.

blkhp19•6m ago
I felt similarly. The learning curve was a tad steep, especially since I had never written a driver before, but once I figured out how to structure things and saw the system come alive, I grew to appreciate the approach IOKit takes.

With that said, I haven't developed drivers for any other platforms, so I really can't say if the abstraction is good compared to what's used by modern systems.

bottlepalm•40m ago
And here I am shopping for Macs because getting a hackintosh working from a VM on Windows is too difficult for me.
WorldPeas•35m ago
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

zydeco•29m ago
I'd say there is a zero percent chance of this ever happening :D The original Apple TV was an Intel Core Solo with 256 MB of RAM and an nVidia GPU, running a modified Mac OS X 10.4 that booted into something similar to Front Row instead of Finder.
WorldPeas•5m ago
Oh interesting, it looks like that geforce had an entire 64mb of gddr3 too, it'd still be fun to see if one could limbo that low, though I agree that save for upgrading the BGA ddr3 of the wii to something more the size of the dev kit had(128mb GDDR3)
CrazyStat•16m ago
Apple TV came after the switch to Intel processors, so you would have to have some kind of reverse-Rosetta layer to run it on a PowerPC Wii.
vsgherzi•20m ago
This is some amazing work, a good reminder to dig more into operating systems for myself!
rado•14m ago
Great, how about on iPhone?

I Ported Mac OS X to the Nintendo Wii

https://bryankeller.github.io/2026/04/08/porting-mac-os-x-nintendo-wii.html
375•blkhp19•2h ago•72 comments

Git commands I run before reading any code

https://piechowski.io/post/git-commands-before-reading-code/
1207•grepsedawk•8h ago•271 comments

Muse Spark – Meta Superintelligence Labs

https://meta.ai/
154•snowman647•1h ago•104 comments

Muse Spark: Scaling Towards Personal Superintelligence

https://ai.meta.com/blog/introducing-muse-spark-msl/?_fb_noscript=1
68•chabons•1h ago•23 comments

They're Made Out of Meat (1991)

http://www.terrybisson.com/theyre-made-out-of-meat-2/
200•surprisetalk•6h ago•68 comments

MegaTrain: Full Precision Training of 100B+ Parameter LLMs on a Single GPU

https://arxiv.org/abs/2604.05091
178•chrsw•5h ago•37 comments

Veracrypt project update

https://sourceforge.net/p/veracrypt/discussion/general/thread/9620d7a4b3/
875•super256•10h ago•314 comments

Škoda DuoBell: A bicycle bell that penetrates noise-cancelling headphones

https://www.skoda-storyboard.com/en/skoda-world/skoda-duobell-a-bicycle-bell-that-outsmarts-even-...
355•ra•8h ago•438 comments

Microsoft Abruptly Terminates VeraCrypt Account, Halting Windows Updates

https://www.404media.co/microsoft-abruptly-terminates-veracrypt-account-halting-windows-updates/
206•donohoe•3h ago•57 comments

US cities are axing Flock Safety surveillance technology

https://www.cnet.com/home/security/when-flock-comes-to-town-why-cities-are-axing-the-controversia...
418•giuliomagnifico•5h ago•233 comments

Ask HN: Any interesting niche hobbies?

60•e-topy•2d ago•87 comments

Show HN: Go-Bt: Minimalist Behavior Trees for Go

https://github.com/rvitorper/go-bt
29•rvitorper•3h ago•2 comments

Audio Reactive LED Strips Are Diabolically Hard

https://scottlawsonbc.com/post/audio-led
137•surprisetalk•1d ago•40 comments

Teardown of unreleased LG Rollable shows why rollable phones aren't a thing

https://arstechnica.com/gadgets/2026/04/teardown-of-unreleased-lg-rollable-shows-why-rollable-pho...
34•DamnInteresting•1d ago•13 comments

The Future of Everything Is Lies, I Guess

https://aphyr.com/posts/411-the-future-of-everything-is-lies-i-guess
193•pabs3•4h ago•160 comments

Revision Demoparty 2026: Razor1911 [video]

https://www.youtube.com/watch?v=Lw4W9V57SKs&t=5716s
297•tetrisgm•12h ago•101 comments

We moved Railway's frontend off Next.js. Builds went from 10+ mins to under 2

https://blog.railway.com/p/moving-railways-frontend-off-nextjs
101•bundie•11h ago•80 comments

Your File System Is Already A Graph Database

https://rumproarious.com/2026/04/04/your-file-system-is-already-a-graph-database/
126•alxndr•2d ago•59 comments

Show HN: Explore the Silk Roads through an interactive map

https://www.intofarlands.com/silk-roads-map
28•intofarlands•2h ago•3 comments

Show HN: TUI-use: Let AI agents control interactive terminal programs

https://github.com/onesuper/tui-use
6•dreamsome•1h ago•5 comments

Understanding the Kalman Filter with a Simple Radar Example

https://kalmanfilter.net
4•alex_be•35m ago•0 comments

Virtual Mars Traverse: Every inch of Curiosity rover's path since 2012 landing

https://www.rovers.land/
20•bookofjoe•3d ago•2 comments

Union types in C# 15

https://devblogs.microsoft.com/dotnet/csharp-15-union-types/
90•0x00C0FFEE•3d ago•100 comments

Show HN: I built a navigation app that displays weather along the route

https://navimodo.com/
11•vkatluri•2d ago•7 comments

Show HN: I pipe free sports streams into Jellyfin – no ads, just HLS

https://github.com/pcruz1905/hls-restream-proxy
65•pruz•5h ago•17 comments

Show HN: BAREmail ʕ·ᴥ·ʔ – minimalist Gmail client for bad WiFi

https://github.com/matt-virgo/baremail
28•Virgo_matt•3h ago•22 comments

A Digital Compute-in-Memory Architecture for NFA Evaluation

https://dl.acm.org/doi/10.1145/3716368.3735157
5•blakepelton•1d ago•1 comments

Protect your shed

https://dylanbutler.dev/blog/protect-your-shed/
261•baely•14h ago•70 comments

Show HN: We built a camera only robot vacuum for less than 300$ (Well almost)

https://indraneelpatil.github.io/blog/2026/robot-vacuum/
88•indraneelpatil•2d ago•38 comments

System Card: Claude Mythos Preview [pdf]

https://www-cdn.anthropic.com/53566bf5440a10affd749724787c8913a2ae0841.pdf
802•be7a•23h ago•601 comments