• 0 Posts
  • 10 Comments
Joined 1 year ago
cake
Cake day: June 27th, 2023

help-circle
  • Funnily enough, one of the few legitimately impactful non-enterprise uses of AVX512 I’m aware of is that it does a really good job of accelerating emulation of the Cell SPUs in RPCS3. But you’re absolutely right, those things are very funky and implementing their functions is by far the most difficult part of PS3 emulation.

    Luckily, I think most games either didn’t do much with them or left programming for them to middleware, so it would mostly be first- and second-party games that would need super-extensive customisation and testing. Sony could probably figure it out, if they were convinced there was sufficient demand and potential profit on the other side.


  • The Xbox 360 was based on the same weird, in-order PowerPC 970 derived CPU as the PS3, it just had three of them stuck together instead of one of them tied to seven weird Cell units. The TL;DR of how Xbox backwards compatibility has been achieved is that Microsoft’s whole approach with the Xbox has always been to create a PC-like environment which makes porting games to or from the Xbox simpler.

    The real star of the show here is the Windows NT kernel and DirectX. Microsoft’s core APIs have been designed to be portable and platform-agnostic since the beginning of the NT days (of course, that isn’t necessarily true of the rest of the Windows operating system we use on our PCs). Developers could still program their games mostly as though they were targeting a Windows PC using DirectX since all the same high-level APIs worked in basically the same way, just with less memory and some platform-specific optimisations to keep in mind (stuff like the 10MB of eDRAM, or that you could always assume three 3.2GHz in-order CPU cores with 2-way SMT).

    Xbox 360 games on the Xbox One seem to be run through something akin to Dolphin’s “Übershaders” - in this case, per-game optimised modifications of an entire Xenon GPU stack implemented in software running alongside the entire Xbox 360 operating environment in a hypervisor. This is aided by the integration of hardware-level support for certain texture and audio formats common in Xbox 360 games into the Xbox One’s CPU design, similarly to how Apple’s M-series SoCs integrate support for x86-style memory ordering to greatly accelerate Rosetta 2.

    Microsoft’s APIs for developers to target tend to be fairly platform-agnostic - see Windows CE, which could run on anything from ARM handhelds to the Hitachi SH-4 powered Sega Dreamcast. This enables developers who are mostly experienced in coding for x86 PCs running Windows to relatively easily start writing programs (or games) for other platforms using those APIs. This also has the beneficial side-effect of allowing Microsoft to, with their collective first-hand knowledge of those APIs, create compatibility layers on an x86 system that can run code targeted at a different platform.


  • Yeah, Windows’ bullshit is what drove me to Linux in the first place. I only have it on my gaming system, and only because Discord’s stupid screensharing doesn’t transmit audio on Linux, NVIDIA’s drivers for Linux suck balls (going AMD next time now that their cards are good again) and there are a couple of games my friends play that have issues on Linux. I’ve never run into a game on my everyday laptop that Linux couldn’t run, and the Steam Deck will take basically whatever you throw at it.

    Windows is a barely-functional rat’s nest of code spaghetti that falls apart at complete random. Sometimes your audio drivers will just stop working for no apparent reason. Sometimes your computer will just refuse to connect to the internet until you do a clean install. Windows Update apparently runs Prime95 in its spare time and so does the Antimalware Service Executable. I hate using it so much. I wish Windows would just curl up and die.



  • In the case of the Surface Go family, there isn’t really anything comparable from other companies. It’s unironically the best compact tablet I’m aware of that you can put Linux on, and it runs Pop!_OS without issue once you disable Secure Boot. The only better Linux tablet for me would be an iPad Mini, but you can’t put Linux on one of those and even if you could it’s ARM-based so most proprietary apps won’t work on it.

    In general, your tablet options for something smaller and handier than full-size 2-in-1s are pretty limited if you don’t want to be running iPadOS, so excluding Microsoft’s devices from the running if you want to put Linux on your tablet is pointless. Yeah, buying a Surface Laptop to put Linux on there is a bit weird, but I can see the Surface Pro family yielding a good ARM Linux tablet some day.





  • I can only imagine how thin the margins will be on laptops that are physically incapable of running their own operating system and basically don’t qualify as general-purpose computers. The computer itself will be streamed to you over the internet and you’ll just have an IPL that handles your keyboard and mouse, the display, the network connection and the encrypted memory buffer you use to send files to your cloud PC or receive them onto a Microsoft-authorised USB device for external transfer.

    Will also be so much fun in 5-10 years when only enterprise customers are allowed the luxury of being sold a local version of Windows, so your whole laptop freezes up every time your connection is interrupted and trying to turn it on without an internet connection just takes you to a 404 page baked into the bootstrap ROM.