Backward compatibility is presented as a feature that either exists or does not. The engineering behind it varies enormously, and the differences explain why some libraries carry forward and others do not.
Old games were written for one exact machine
Console software is optimised against known hardware, and developers routinely rely on specific timings, memory layouts and quirks of the graphics chip.
Those assumptions are invisible while the hardware is unchanged, but they become hard requirements the moment the underlying machine differs.
A game may depend on an operation taking a particular number of cycles, so running it faster can break it as thoroughly as running it slower.
Shared architecture is the cheapest route
When a new console uses the same instruction set and a similar graphics design as its predecessor, old code can often run more or less directly.
The remaining work is compatibility testing and correcting individual titles that relied on something the new hardware does differently.
This is why generations that kept their architecture have offered broad libraries while generations that changed direction largely started again.
Emulation is a translation problem
Where the architecture differs, the new machine must imitate the old one, translating its instructions and reproducing the behaviour of its hardware closely enough that software cannot tell.
That translation costs performance, sometimes by a large multiple, which is why emulating a recent console is far harder than emulating an old one despite the old one being less documented.
It also has to be accurate rather than merely functional, because games depend on details that were never part of any specification.
Rights and licences interrupt the technical work
A game contains music, brands, likenesses and third-party technology, each licensed for a defined term and often for a defined platform.
When those licences lapse, the game cannot legally be redistributed even if it runs perfectly, and renegotiating for a catalogue title is rarely worth the effort.
Sports and licensed titles disappear most often for exactly this reason, which is why compatibility lists have gaps that look arbitrary from outside.
Extra performance creates new problems
New hardware can often run old games far faster than intended, and games with physics or logic tied to frame rate misbehave when that happens.
Platform holders therefore cap old titles or provide per-game profiles, and enhancements such as higher resolution require individual patching rather than a global setting.
Each enhanced title is a small project of its own, which is why enhanced lists are short even where basic compatibility is broad.