Backward compatibility

The criticisms of the Xbox One have been quite fierce and numerous ever since it’s announcement. The internet has flip-flopped several times about the ability for Xbox One to play used games. At first it was definitely no, they can’t. Then it was yes, but it’ll cost you. After that it was you can and it’ll be free.

One such criticism was the lack of backward compatibility, meaning Xbox One is unable to play Xbox 360 games. The same criticism is also applicable to the PlayStation 4 which also won’t support backward compatibility for PlayStation 3 games, but hey, let’s not jump between bandwagons.

Nintendo’s early consoles, from the NES / Famicom to the Nintendo 64 as well as Sega’s Dreamcast, Saturn and Sega CD offered no backward compatibility. The Genesis (Mega Drive) did offer an optional adapter to support Master System games though that was the limit of backward compatibility. It’s only really been the PlayStation 2 that started this trend by supporting original PlayStation games yet there have been more consoles that didn’t support backward compatibility than those that did or do. The outrage online would have you believe that somehow Microsoft and Sony are giving gamers the finger.

In terms of the technology behind the Xbox One and PlayStation 4, it’s just not possible in a way that wouldn’t be detrimental to the gaming experience. The Xbox One and PlayStation 4 are based upon the same x86 architecture that your Mac or PC uses. In fact, Xbox One even runs a variant of the Windows 8 kernel. The consoles aren’t restricted or held back, rather the lack of backward compatibility is down to the same reason why you couldn’t run Mac OS 9 on an Intel Mac.

Both the Xbox 360 and PlayStation 3 are based upon PowerPC-based RISC architecture, the Xbox 360 uses IBM’s Xenon PowerPC processor and PlayStation 3 uses the Cell processor which was developed by, amongst other companies, IBM – the company responsible for producing PowerPC processors. PowerPC processors are RISC-based, Intel and AMD processors are x86-based, two very different architectures.

If switching from PowerPC to x86 processors sounds familiar, that’s because it’s happened before. Apple used PowerPC processors until they switched to Intel in 2005 and famously cited during a keynote that, despite their long relationship, IBM could never break the 3GHz ceiling in the G5 as well as being unable produce a mobile G5 processor1.

Was Apple wrong for using PowerPC processors in the first place? No, at the time it seemed like the best idea for Apple and, for them, they felt it outperformed the competing Intel Pentium processors. Apple’s decision to switch to Intel was mainly driven by desperation, having realised that the speeds they wanted from PowerPC chips were almost unattainable. Instead of making promises to customers that it couldn’t keep, Apple switched the Mac to Intel processors.

A similar reason applies to both Microsoft and Sony, at the time it seemed that their respective processor choices were the best option. Microsoft had previously used a Pentium III in their original Xbox, in fact the original Xbox was basically a low-spec PC running a version of Windows CE. Xbox started out as an x86 console, switched to RISC in the Xbox 360 and now back again to x86 with Xbox One. With Microsoft’s attempt at unifying the user experience across console, phone, tablet and PC, switching back to x86 architecture would make sense since developing across their platforms would be much easier.

Just like Apple, both Microsoft and Sony see x86 processors as something that can offer a greater performance/cost ratio than the alternatives available and I’m sure it would mean developers would find it much easier to create cross-platform games. Considering this is a fundamental shift in architecture that would impact game developers in a fairly big way, not to mention it would mean backward compatibility would be sacrificed, this wouldn’t have been a decision they took likely. Apple had planned for years with their transition and had been developing an x86-based version of OS X side by side to the PowerPC equivalent, knowing that one day they may have to switch.

So going back to the issue of backward compatibility, what options are there?

Software emulation is one such method. In terms of a games console, an interpreter follows every instruction that your RISC-developed game executes and translates it into instructions that make sense to the x86 processor. Think of it as speaking to someone in a different language through the use of a translator. It’s going to be a slower conversation because your words need to be translated into the other person’s language and vice-versa. Whilst computers may be twice as fast as they were in 1973, this doesn’t mean emulation is an easy task.

Apple developed it’s own PowerPC emulator within OS X using a feature called Rosetta. This allowed the transparent emulation of PowerPC software on an Intel Mac that hadn’t been (or wouldn’t be) updated with native Intel support. It worked exactly as you’d expect but it wasn’t exactly nippy. The MacBook Pro was blisteringly fast back then and outperformed the PowerBook G4 it replaced by a factor of four, but trying to work on a 50Mb image in Photoshop CS2 on an Intel Mac felt as speedy as using a low-end G4. PowerPC games on an Intel Mac were even worse, not that gaming on the Mac has ever been great to begin with.

Back in the Apple’s PowerPC days, you could run Windows XP in a software emulator by Connectix called Virtual PC. It was painfully slow and insufferable to use because it used the same method as above.

Apple had toyed with hardware emulation in the past and released the DOS Compatibility Card in 1994, an expansion card that contained a 486SX (and later, DX) processor to allow the use of Windows and x86 software without the need for software emulation. This was effectively a PC on a riser card so as you can see, emulation isn’t as simple as it sounds.

Software emulation is exactly how the Xbox 360 can play certain original Xbox games. An emulation profile is downloaded when attempting to play a compatible game which was specific to each game. What many people fail to realise is that there were certain restrictions when it came to Xbox 360 backward compatibility with the original Xbox.

There’s a list of compatible original Xbox games that the Xbox 360 could play. Whilst it’s quite extensive, it is not complete and any game on that list does not work. This makes the Xbox 360 partially backwards compatible. What if all the games you own weren’t on that list? Whilst some games you own might be on the list, they may not work depending on the region you’re in due to the difference between PAL and NTSC.

Take a look at the game Conker: Live & Reloaded on the list. Known issues include intermittent sound and the console may reboot itself at random. How about Fable: The Lost Chapters? A game that will freeze when played for more than 2-4 hours. If this is the price of software emulation for backward compatibility, I don’t want it.

backward compatibility on the Xbox 360 feels almost forced since it was likely just included for the survival of the platform. Microsoft had only sold 24 million Xbox consoles2 whilst Sony had succeeded with the PlayStation 2 and sold over six times that with a staggering 155 million, it desperately needed to keep existing Xbox owners as well as find new ones. Alienating your fan-base when launching your second console wouldn’t be a goo idea. backward compatibility across different architecture is not something easy to do but if Microsoft had released the Xbox 360 without it, I doubt it would have been the success it has been.

Hardware emulation is another method that has been done before. Microsoft and Sony could build their console with the hardware of the existing one in there as well. When the PlayStation 3 was released, this was exactly what Sony did. It was backwards compatible with PlayStation 2 games because it had the CPU (known as Emotion Engine) of the PlayStation 2 inside.

This saw Sony’s PlayStation 3 launch price $200-$300 more than the PlayStation 2 launch price and $100 more than the Xbox 360, which had already been released. After a few years, Sony refreshed the console with a new slim look which saw this feature removed, reducing the cost of the console significantly.

Baking in a second, older, console for the sake of backward compatibility makes no business sense, either. It’s no secret that both Xbox 360 and PlayStation 3 consoles were sold at a loss for a very long time. This makes consoles effectively subsidised in the same way you get a free phone if you sign up to a two-year phone plan. Both Microsoft and Sony recoup costs through licensing deals and publishing rights with all games sold.

Considering how much the consoles usually cost at launch, adding further costs to the user would likely affect sales and the companies aren’t willing to swallow even more of a loss on each one sold. If we don’t want to pay $500 for a games console at launch then there has to be compromise, we can’t have our cake and eat it.

A third, more balanced option would be to simply keep your existing console. No-one is forcing you to give up your Xbox 360 or PlayStation 3 when you purchase a next-gen console, I certainly won’t be giving up mine. backward compatibility is a complaint current-gen console owners have, yet my need for backward compatibility will be fulfilled by already owning a console to play all the games I already own.

When I purchased my Xbox 360 at launch, the only original Xbox game I played regularly was Halo 2 and it was my Xbox Live multiplayer game of choice. All the other games I played were for designed for the Xbox 360. If I couldn’t play Halo 2 on my Xbox 360, it would have had zero effect on my decision to purchase it, I would have simply kept my original Xbox plugged in. Sure, it was more convenient to play it on the Xbox 360 but it was never a deal breaker.

I’d love to see backward compatibility as a feature in all games consoles but for a product that has a six to eight year product cycle, it’s going to be unlikely. Think of where we were technologically back in 2005 when the Xbox 360 was released and where we are now. We’ve seen the release of smartphones and tablets capable of playing games with graphics comparative to the early games of the Xbox 360, interactive technology with Kinect, wearable computing and more. There have been more advancements in video games in the last ten years than at any other time in video game history.

Eight years is a millennia when it comes to advancements in technology and since consoles are non-upgradeable, each release is going to be a huge leap forward and it can’t do that if it’s shackled to the past.

  1. A huge benefit of this is that the Mac could, for the first time, natively run Windows using Boot Camp. Additionally, the ability to run Windows within a virtualised environment using something like Parallels in realtime wouldn’t be possible if they’d continued using PowerPC. 

  2. To be fair, sales numbers stop for the original Xbox in 2006 but it wasn’t discontinued until 2008, though I doubt even that would’ve pushed it above 30 million.