Tuesday, 16 June 2015 15:40

Microsoft dropped an Xbox 360 Virtual Console into the Xbox One

Written by

Reading time is around minutes.

When Microsoft and Sony announced the move to x86-64 based gaming consoles some (pronounce that many) in the gaming community were more than a little annoyed that they would not be able to play their older games. Both companies hoped that the move would drive gaming innovation and also get people to buy new games as well as leave the option for developers to create new versions of older games with improved graphics. We saw both of these start to happen during the first few months of the Xbox One and PS4’s life. Now that things are settling down we are finally getting to a time when companies are going to circle back around to those older games.

At E3 2015 Microsoft was the first to make a public announcement about this. They have made the big claim of “backward compatibility” which is not really true, but we will get to that later. In the announcement Microsoft stated that they will be opening up the ability to play a small number of Xbox 360 games on the Xbox One. The new program is in the BETA stage so there are sure to be bugs, but for those of you that want to get rid of that extra console this could be a step in the right direction.
Now for the backwards compatibility claims. The claim is simply not true. There is nothing in the current Xbox One that will allow it to play Xbox 360 games. The code use there is for a RISC CPU and system and the Xbox One’s OS (the primary gaming OS) runs on x86-64 code. This means that Microsoft is going to have to add an extra emulation layer to mimic the hardware present in the Xbox 360.

The good news is that the Xbox One already runs on a hypervisor based OS and switched back and forth between multiple virtual machines to do its job. This makes adding in the Xbox 360 virtualization layer easier than if they had to build something inside of a core OS. All they have to do is add the virtual guest profile into the hypervisor and they are off and running. The bad news is that there is almost always a performance hit. In some cases the hit can be as much as 30%.

If you are an Xbox Preview member you can start playing you’re a small list of games today. When you load the game the system will detect it and launch a virtualized Xbox 360 console inside the hypervisor. It will be responsible for running the game code and interpreting all of the control inputs. The Xbox One OS will be shifted to the side to wait for any commands that it understand or for when you exit the virtual 360 console. It is a very cool way to give gamers something they really wanted when the Xbox One launched.

There is no official word on when this will be out of BETA and hit the streets for the rest of us to use, but we will keep you up to date on any developments in this area.

Read 22152 times Last modified on Tuesday, 16 June 2015 15:40

4 comments

  • Comment Link Skalinich Monday, 16 May 2016 15:56 posted by Skalinich

    @Bryant BcPull
    My statement stands "emulation is a form of virtualization" it is not the same as a hypervisor that is true, but it does create a virtual hardware abstraction layer for the emulated software to run on.

    As for the Xbox One Microsoft themselves said it was an emulation with a virtualized dashboard.

    The OS on the Xbox is a hypervisor with a common code front end similar to what VMWare used in Unity for VMware workstation so you could run applications running in virtualized guest systems as if they were on the desktop.

    Report
  • Comment Link Bryant BcPull Thursday, 28 April 2016 02:23 posted by Bryant BcPull

    Do you know what you are talking about, Popek-Goldberg virtualization is not emulation. Emulation involves translating machine instructions to another architecture which is extremely slow and actual cycle-by-cycle emulation is almost impossible. Virtualization is running a hypervisor below the standard guest OS to partition system resources (or provide security as in the Xbox360), and has nothing to do with translating PPC64 instructions to AMD64, there is no "glue-code" anywhere hypervisors are simply a lower-level machine resource partitioning mechanism, and there is nothing inherently inside a hypervisor which would aid in machine translation........

    Report
  • Comment Link SKalinich Tuesday, 23 February 2016 14:26 posted by SKalinich

    Actually Emulation is form of virtualization.
    The Xbox One can create a virtual system that matches the processor architecture. It is not a difficult programming task at all.

    Report
  • Comment Link Michael Updike Monday, 22 February 2016 09:15 posted by Michael Updike

    The XBox 360 used a different processor architecture, so virtualization isn't really what is happening here. What would have to be happening, at least at the CPU level, is called emulation...wherin a foreign architecture is reproduced using software. That's where the performance hit you speak of would primarily be coming from. The performance hit you'd take simply from hypervisor overhead wouldn't be nearly as great if this were as simple as running another x86-64 virtual machine.

    Report

Leave a comment

Make sure you enter all the required information, indicated by an asterisk (*). HTML code is not allowed.