Viewer Feedback on the Xbox 360
- 0
- Add a Comment
So, there seems to be a bit of confusion in the gaming world about just what rhe Xbox 306 can do, and how it will do it. I’m not here to give technical details, but I am here to help guide folks in the right direction.
What follows are my replies to the various questions I’ve received (and noticed) about the Xbox 360, and my replies to those statements to the best of my knowledge. This is not 100% technically accurate. It is, instead, intended only to guide people in the right direction.
“If they used DirectX, like the PC does, then we could swap out the ATI card with an nVidia one and not worry about patches.”
We have machines like that, they’re called PCs. In all seriousness though:
DirectX is an API, and a similar API to DirectX 9.0 is used on the Xbox and Xbox 360. Heck, the internal development name of the Xbox was the “DirectX Box”
The various GPUs, on the other hand, have very specific (and in some cases, arcane) instruction sets, and a myriad of other “small things that make the silicon work.”
What DirectX does is take the very generic code a programmer writes, and (eventually, though a long complicated process that I refuse to describe here) translates that down into instructions the GPU can use.
“NVIDIA specific and x86 specific code would be difficult to emulate on the Xbox 360.”
Emulation, though an arcane art, is not as terrible as some people make it out to be. It’s more tedious implementing various opcodes than difficult.
As far as emulating the x86 is concerned, Microsoft already owns VirtualPC :)
“Emulation is not illegal, and microsoft could do it without paying NVIDIA any royalties.”
There’s a catch: if you don’t already have a prior agreement that nullifies this statement. Sure, Microsoft could retool their entire Xbox division, destroy every last shred of NVIDIA’s documentation, and hire an outside firm - that has never dealt with NVIDIA - to reverse engineer the hardware, but that’s just too cost prohibitive. It’s better to give NVIDIA the royalty checks and be done with it.
“The Xbox 360 will not be backwards compatible, because they do not have the power needed to emulate the old hardware. Heck we can’t do it on our PCs!”
First, I want you to read my article The Death of PC Games? which was written in reply to a C|Net article on the supposed death of PC gaming. The gist of the article is that mainstream gaming will move away to the consoles, because PC owners simply cannot afford the hardware that the console manufacturer pumps out, and sells at below cost.
Of course, you need to read up on your arcane arts. Emulation, for the most part, is brute force. The Xbox was a single x86 733MHz processor, with an NVIDIA graphics chip. The Xbox 360 has 3 PowerPC CPUs clocked at a little over 3 GHz each, plus an ATI graphics chip.
Microsoft faces two major problems: one is correctly translating the various x86 instructions to PowerPC ones, the other is translating the more obscure NVIDIA instructions to ATI instructions
So, the strategy Microsoft has chosen is to support “top selling” games out of the box, but for games that use the more obscure instructions, they will need to recompile and offer a patch (which I suspect will be downloaded via Xbox Live).
This whole thing will be CPU intensive, that’s for sure, but with nearly 9GHz of raw processing power, and the ability to translate some opcodes directly, Microsoft can easily pull it off, with cycles to spare.
“Doesnt Nintendo have a patent on emulation?”
Yes, but it’s a very specific method in a very specific market, namley handhelds. You can read up on it here.
“Does NVIDIA have to pay Microsoft for producing a DirectX-compatable video card?”
You’ve got the idea backwards: NVIDIA (and ATI, and every other video card manufacturer) simply implements features (pixel shaders, z-buffers, etc …) according to published standards. Microsoft happens to give these features very marketable names, which the card creators like to hype to the gaming community. The manufacturers of the video cards prodivde drivers which help in the process of translating the DirectX code into GPU-specific opcodes.
Actually, I lie. The process of translating DirectX commands into GPU opcodes is much more compliacted than how I make it sound, but you and I (and even programmers, for that matter) don’t need to fully understand how the process works. Our only concern should be that there is a process and that it works fairly well.
That’s all folks! Please keep your comments comming in, I love ‘em!
Provided by Geekstreak
