Comment by lxgr

Comment by lxgr 4 days ago

2 replies

> Sony and Nintendo would be fools to give up backwards compatibility just for savings on chips.

But would they really?

Staying on x86-64 would take care of CPU compatibility (unless there's some exotic AMD-only instruction set extension heavily used by PS4/5 games), and a GPU emulation stack seems at least somewhat plausible.

Sony has pulled this off multiple times before with seemingly completely incompatible architectures:

The PS2 came with the PS1 CPU (repurposed as an IO controller, but fully available for previous-gen games) and emulated the GPU on its own. The PS3 did the reverse in its second iteration (i.e. it included the PS2's GPU and emulated the CPU). The PS Vita's SoC had the PSP MIPS CPU included on-die, which in turn is similar enough to the PS1's to allow running those games too.

DSMan195276 3 days ago

For GPU emulation, I'm not super knowledgeable but I would think the shaders are a big issue, older systems don't have that problem. Console games come with precompiled shaders and you won't be able to reuse those between AMD vs. Nvidia. Certainly you can get around it, emulators for modern Console do just that, but it's not without it's issues which might be considered unacceptable.

That's still fixable if you're willing to ship newly compiled shaders and such, but that's a lot more work if you're talking about needing some kind of per-game fix to be downloaded. This is how the XBox 360 "Backwards-compatibility" works, and this approach means it only works with a subset of XBox 360 games, not all of them. It's much better than nothing, but it's not a hardware-level fix that makes the original game binaries "just work".

For packaging the old GPU with the new system, I think that's not really realistic anymore since prices for them simply don't drop enough and the system design would be a mess (the chips are huge and you'd need cooling for both chips. I guess if only one is running at a time then it's not as bad, but...). Separately, if you're swapping from Nvidia to AMD then you're talking about trying to convince one of them to make a batch of old chips for you while you use their competitor's chip as the the main one, they might not be willing to do it.

  • lxgr 3 days ago

    Would it not be possible to recompile all shaders at startup (or "install", i.e. first launch) time and then cache them (if runtime recompilation is even too slow in the first place)?