Anyone want to speculate on the cause of that text rendering bug? I hate it when everything seems to work so well, except for one absolute show-stopper.
OS 9 ran on PowerPC CPUs (like the one in the Wii) and more or less supported ATI and NVIDIA GPUs of the era (90s), but the GPU in the Wii, which can be traced back to the GPU in the GameCube, was created in 2000, so I would guess it’s a small change between the ATI GPUs of the 90s and whatever they changed for the GameCube GPU, which then was passed down to the Wii GPU.
Graphics drivers are always a fickle thing with modern hackintoshes, so I would guess it has to do with the GPU “driver”. It could also be related to VRAM as the GameCube and Wii GPUs were likely both significantly weaker than the average desktop GPU of their respective eras. I know for sure the Wii GPU was already antique when the Wii was released because the Wii only output up to 480p, a joke in 2006 when 1080p TV were starting to become mainstream… so from that perspective we can’t be surprised that this thing is struggling with text rendering, if the GPU is indeed the culprit.
HW accelerated rendering was supported at least as far back as System 6.0 in 1990
Classic MacOS used an API called Quickdraw, which was implemented as a series of graphics primitives (originally written for the Lisa as part of LisaGraf). Quickdraw implemented support for things like drawing lines, rectangles, etc. The original implementation software rendered them onto the system frame buffer.
Essentially all drawing went through Quickdraw, which made it a natural chokepoint to introduce acceleration, which is exactly what happened when Apple shipped the Macintosh Display Card 8*24GC in 1990. The card included a separate Am29000 processor (which was often higher performance than the host CPU), which had its own memory and an implementation of Quickdraw. Its driver patched the Quickdraw calls in the OS to RPC them over the bus to the card, which would then render them on behalf of the host. It also supported off screen rendering and DMAing the results back to other cards.
You could argue that is still software rendering, just on another CPU, but at the end of the day that is sort of orthogonal, almost all GPUs have some programmable components you need to load firmware into in order to operate. The key point is that there was an abstract interface the OS could use to offload rendering to some other device besides the main application processor, and the UI used it.
I honestly can't recall how much of this was still in common use by the time Mac OS 9 came around. CPUs were also much faster by then, and the move to PCI meant it was possible to use fast off the shelf PCI GPUs which may have changed the cost benefit ratios enough that it was best to just take whatever the GPU vendors were offering and software render into their frame buffers even if it could not fully accelerate all the same operations a bespoke earlier design could.
This dudes videos are some of my favorites. I might be insane but I actually enjoy watching someone unbox a pristine copy of Windows ME and install it on an ancient Gateway PC.
Is it weird that I'm already subscribed to most of them?
I think this is Youtube's secret weapon compared to other similar platforms: "the algorithm" leading to discoverability of content, meaning small creators will get to surface by having their content targeted to the right audience in order to grow, instead of being burried under all the new mediocre content getting churned out on youtube by the minute.
So if you're a techie/nerd/hacker you'll eventually run into all of them organically directly via Youtube recommendations instead of relying on word of mouth.
To me, those channels alone provide me more entertainment than Netflix and is youtube's other secret weapon on how I personally justify shelling out for the paid subscription versus paying for Netflix and other streaming services that I can do without. Small creators can deliver a lot of great content.
> Is it weird that I'm already subscribed to most of them?
Not here, it isn't.
> So if you're a techie/nerd/hacker you'll eventually run into all of them organically directly via Youtube recommendations instead of relying on word of mouth.
Word-of-mouth still counts for a lot; and don't forget that if you follow a link someone sends you to a YT video then YT will (probably!) make recommendations for other videos from the channel that made the video you got linked to - so even though you ascribe it to "the algorithm", don't forget that it is influenced by more than just your Like/Dislike buttons.
> so even though you ascribe it to "the algorithm", don't forget that it is influenced by more than just your Like/Dislike buttons.
I never used the like/dislike button but I imagine yotube's algo simply checks your view time on which types of videos, and recommends you similar videos that others like you have also enjoyed.
It wouldn’t have been hard for the author to title the video “installing Mac OS 9 on the Nintendo Wii”, but then people like me wouldn’t have watched the video expecting “macOS”. Obviously getting OS 9 on it is much less difficult and much less impressive.
It looks like this channel focuses on vintage technology, so I don't find the title unreasonable in that context. It's more confusing on Hacker News where that context is removed, but that's not the creator's fault.
Would you feel differently about the title if he'd gotten early OS X working? He actually wasn't so far off from that. MacOnLinux supports up to 10.2, it didn't boot in this case but it theoretically should have worked given the same setup.
I'm curious why you think a newer version would be easier. The Wii, after all, is from 2006. It used an IBM processor that used what's essentially PowerPC G3, which Apple started using in 1997.
Chances are the commenter you’re responding to threw the “x” after Mac OS as that is the common verbiage for the operating system, not realizing that X represents a version number. I know I’ve made this mistake countless times as well.
I was thinking The X public Beta or 10.0 might be easier because it's BSD, and you can drop into verbose mode and see what's happening.
I had to do some work to get IIRC 10.2 (or maybe 10.3 or 10.4) to boot on my PowerMac G3, but it was doable booting into single user mode and going from there.
Apparently 10.4.11 was the last to support PowerPC without altivecs. I'd imagine that you could rely on the ubiquitousness of open source kernels to figure out what's not booting right considering that you'd need to write all of the drivers for the peripherals.
That is not workable. Unlike a G3, The Wii is not a Mac in any meaningful way and shares virtually no hardware other than the processor (tons of embedded shit used Power PCs, that doesn’t make them a Mac any more than a Google Pixel is an iPhone because it uses Arm arch). This method is leveraging the (ancient) driver support already developed for Linux to run on the Wii. No version of OS X has drivers for the Wii and I don’t know of any prior effort to do so.
Mac OS X does have some FreeBSD parts, but Darwin is not FreeBSD, especially at the hardware interface.
But the XNU kernel is open-source, so -- in theory -- one could write those drivers.
Classic Mac OS is much less open, and less well-documented. As far as I'm aware, there's never been any successful third-party attempt to "port" it to new hardware.
People write drivers and kexts for Mac OS and Windows - and most drivers in Mac OS do not interface with open source interfaces. Writing drivers has little to do with the source availability really. I’ve written drivers and kexts for OS X. Never really bothered with the XNU source.
Classic Mac OS is also much simpler and built with more primitive tooling, so reverse engineering it is eminently doable, just that’s a bit beyond what anybody in the community wants to do. I think the Venn diagram of those that are interested in classic Mac OS (sizeable but small) and those sentimental about the Wii is not highly overlapping.
People have hacked Palm OS to shit - this type of thing is certainly doable regardless of source if one is inclined (I could, but I have literally thousands of other hack projects that are more interesting to me).
> third-party attempt to "port" it to new hardware.
There hasn’t really been any with X either - Hackintoshes have always been quite limited in scope. I barely would calls those ports.
Debatable. :) It's certainly less sophisticated, but I'd argue that it was a much weirder system architecture than OS X, and that's probably discouraged some reverse engineering. (For instance: parts of the OS were interpreted 68k code, and were interworked with native PowerPC code; significant components of the OS were patched in during system startup; there was a multitasking kernel but almost nothing used it...)
> For instance: parts of the OS were interpreted 68k code, and were interworked with native PowerPC code
In the grand scheme of computing devices, not particularly weird, I mentioned Palm OS for a reason, and I don’t think it changes my stance about the overall simplicity of reversing those old systems with modern tools and someone with some experience in this area — the time and the inclination are the real barriers.
“… So I had to actually do a lot of reverse engineering for this project - a lot of boring reverse engineering of very boring APIs …” is a key quote by the regular HNer doing rePalm.
Yes you need special skills, but it’s the time that gets you in the end. Especially for hobby projects. No one is getting rich on this stuff.
It's not really a "port" but there was a sort of translation layer for classic MacOS Toolbox by the Lattitude Group(?)
I don't know the details, but there I believe there was a source-level translator and a binary-interpreter type thing. One of these was used for the Unix ports of Photoshop/Illustrator. It translated Mac Toolkit calls to Motif/Unix calls.
Apparently OS X cannot boot because of the small amount of RAM (around 50 MB). So, maybe an early alpha, but then this adds a whole lot of things that can go wrong. I think even the public beta required 128 MB.
Also, MOL officially supports only Puma and Jaguar.
It's not a particularly pedantic correction, as there is a major performance difference. This looks like it would actually be usable on the Wii, if not for the unfortunate text-rendering bug.
https://gbatemp.net/threads/mac-on-wiilinux.617142/
https://www.maconlinux.net/