"Basically, we have a VGPU - or an Xbox 360 GPU that we've recompiled into x86 - and we run the entire 360 OS stack," explains Bill Stillwell, Xbox Platform Lead. "We take each game, we recompile it so that it runs, but basically we're running it still in a 360, and the team goes through the game with multiple passes."
In the first pass, the team collects GPU shaders, and what Stillwell describes as 'Enlightenments', a term we hadn't come across before. "Enlightenments are our starting point for making game transcompilation better," he says. "This is more a CPU requirement than a GPU one. Enlightenments tell us what instructions wrote to hardware, function entry points, and so on. Basically, the set of information we need to know upfront when we first build."
Helping the task immensely is the fact that certain aspects of the Xbox 360 hardware design are indeed built into the Xbox One processor - specifically, support for texture formats and audio. "It's what makes this sort of possible for us, because then we can take all of those shaders that we collect and we can package them and all the Enlightenments, and then we just go through and we do actual performance playthroughs to determine that the emulator is executing everything right.
....
There is some hardware assistance and - yes - some 'secret sauce' (Microsoft didn't want to be drawn on how the emulator supports Xbox 360's VMX128 vector units, for example)
....
"