5 ms·
We're talking early 90s. Not only were automatic updates not a thing, manual updates were hardly thing. If Windows wanted SimCity to work on their new windows r
by ysavir 4y ago
We're talking early 90s. Not only were automatic updates not a thing, manual updates were hardly thing. If Windows wanted SimCity to work on their new windows release, the only option was to make the new windows release work with SimCity, not the other way around.
- Topgamer7 4y agoI remember the days of burning all sorts of updates for software to cd or DVD
- tibbetts 4y agoI remember the days of going down to my friends store because he had a modem and knew which BBSes would have software downloads. I had to bring my own floppy disk because those things cost money.
- nix23 4y agoBut then why not let windows patch simcity, instead of changing the system, just asking.
- ysavir 4y agoYou mean, like watch for an install of SimCity, and modify the game's files? I don't have enough experience in hardware and PCs to know if that was at all possible or practical.
- nix23 4y ago>like watch for an install of SimCity, and modify the game's files? Yes exactly! Technically easy, a Lawyers thing maybe?
- Someone 4y agoCould also be interesting in a world where most PCs ran anti-virus tools of various different vendors. Imagine Microsoft adding a magic “we’re the good guys” handshake to their OS that would all those anti-virus tool say “go ahead and do whatever you want”.
- markemer 4y agoHonestly you could probably do it today, but back then it would have been a lot harder. You’d have to find every buggy use after free. Just easier to change the allocator for it. Probably how you’d do it today under emulation.
- solardev 4y agoThat'd break SimCity updates, and probably trigger antivirus warnings, and annoy Maxis devs and lawyers... Whereas "we'll tweak our OS to suit your app to ensure it doesn't break with an upgrade"? That just wins loyalty from the game devs, users, and everyone involved except purist-coder types.
- scarface74 4y agoAnd it makes operating systems larger, more bug prone and harder to maintain. There is a reason that Apple was able to port the core of iOS and many of the APIs to watches, phones, tablets, set top boxes, monitors (the latest Apple monitor runs iOS on an iPhone 11 era processor with 64GB RAM).
- solardev 4y agoYeah, but there's also a reason why you can still run most Windows 95-era apps on today's PCs, vs not being able to run most 2-year-old games on M1 Macs. Rosetta is pretty amazing but it's far from actual compatibility. Apple's approach to backward compatibility is very different from Microsoft's. It's not uniquely a Microsoft thing, either. Nvidia's driver updates frequently (in fact almost always) have game-specific optimizations. Antivirus and firewall apps frequently have to make exceptions for certain apps. WINE and Proton operate on per-game optimizations. Input controller managers (like Steam's profiles) have different settings per game. DirectX itself does a lot of backward compatibility stuff, AND allow different versions to coexist on the same PC (vs the relatively tiny market that exists for Metal or Vulkan). All these things contribute to PC gaming vastly outselling the tiny Mac gaming market. As a Mac user, I wish that weren't so! But MS's approach is way better for devs and users in that case, even at the cost of the Windows APIs and libs being huge with a decades-long tail.
- scarface74 4y agoAs a user of a current ARM MacBook Pro 16 inch and a former x86 MacBook Pro, being able to have a battery that last 20 hours, doesn’t get hot, nor does it sound like a 747 when I launch Slack, I very much appreciate Apple being able to transition processors. Also seeing that the iOS game market dwarfs the PC game market in revenue and number of titles (if not quality), I think Apple made the right choice. Microsoft has been unsuccessful trying to get Windows on ARM to be viable for years before Apple did it and has failed partially because of the behemoth that Windows is. Speaking of Windows and backwards compatibility. There are at least 8 different ways to define a string in Windows depending on which API you are calling. String handling in C is one of the biggest causes of security vulnerabilities on any platform. https://learn.microsoft.com/en-us/cpp/text/how-to-convert-between-various-string-types https://learn.microsoft.com/en-us/cpp/text/how-to-convert-be...
- monocasa 4y agoBy changing the system they have a flag they can turn on for any applications that would be helped by a similar hack. It's not like use after free was a particularly rare event in mid 90s code.
- anaisbetts 4y agoThe hack being described was very very old, this is exactly what the AppCompat system does in Windows now. AppCompat shims only apply to specific versions of specific apps (or get rolled up into "layers" which is what you get when you mark an app to "Run under XP compatibility"), and don't end up affecting other ones
- siggen 4y agoLegal reasons.
- markemer 4y agoYeah. I had this version of SimCity. It came on floppy disk. I had a 14.4k modem at the time (or maybe still the stock 2400?) the only way for MSFT to make this work was to add code like this. Honestly we still do it sometimes. Emulators routinely emulate bugs because those bugs were never fixed in the real systems.