Only the very first few models of Intel Macs had strictly 32-bit processors (the 2006 iMac and Mac minis with Core Solo/Core Duo processors), and none of them were realistically capable of playing Half-Life 2. Apple is guilty of many sins, but this isn't one of them. Valve should never have shipped a 32-bit application in the first place. The binary was already obsolete before it even left Bellevue.

> Valve should never have shipped a 32-bit application in the first place.

It's literally a 2004 game! That's ridiculous. A handful of opterons existed in the market, but Intel wouldn't get there for years still and it was well over a decade until x86_64 crossed 50% market share in consumer stuff.

Good grief, as it were.

In 2004, sure, but Valve didn't (publicly) ship Mac OS X software before 2010.

I hear what you're saying, but keep in mind that Bethesda shipped Skyrim as 32-bit in 2011. It wasn't until the Special Edition release in 2016 that it was updated to 64. Now, obviously, we could chalk that up to it just being Bethesda.

That’s because the 64bit upgrade to Creation Engine happened with the Fallout 4 development cycle when 64bit was widespread. Skyrim was also targeting Xbox 360 and PS3 which were still 32bit. FO4 is when the calculus changed for all the target platforms so thats when the engine was upgraded.

They didn't develop it from scratch though! The 2010 Mac HL2 binaries are a port of the existing 32 bit Windows product, with all the word size and alignment issues you'd expect for C++ code of that vintage. You don't magically wave a wand and expect high performance code to work when sizeof(void*) changes, and the effort to do that needs to be weighed against the perceived value and the size of the market.

Needless to say, annoying a bunch of HN nerds a quarter century in the future wasn't on Valve's radar. They just wanted some Mac revenue and picked the low hanging fruit.

> Only the very first few models of Intel Macs had strictly 32-bit processors (the 2006 iMac and Mac minis with Core Solo/Core Duo processors), and none of them were realistically capable of playing Half-Life 2.

What? First, those chips were plenty powerful to run HL2 (the game predates them). And second, all x86_64 chips can run older x86 32-bit code unmodified.

The reason macOS stopped supporting 32-bit code has nothing to do with the processors but more about them wanting to remove support for 32-bit binaries from the kernel and from all user-space libraries. To run a 32-bit binary, you need itself and all libraries it depends on to be 32-bit too, including the syscall boundary, which is "fine" (both Windows and Linux do this just fine, so it's really on Apple to have removed this). And I suppose Apple removed those because it was building towards a 64-bit-only world to simplify the Apple Silicon transition.

The CPUs were powerful enough, sure. The GPUs (Intel GMA950) absolutely weren't. Even on Windows with better drivers, Half-Life 2 is a slideshow on that class of hardware.

Depends a LOT on the res.

E.x. notebookcheck indicates that FEAR (released a yearish later) could get 20-30ish FPS at 640x480 but chokes at 1024x768 (at numbers matching the HL2 lost coast demo slideshow at 1024x768).

Gotta remember a lot of mac people were just happy to play something more modern than Marathon or Giants CK