There's a PS2 emulator, a GC emulator, a DC emulator, but...

GushpinBob

2[H]4U
Joined
Dec 11, 2007
Messages
2,721
Where are all the Xbox emulators for PC? After doing some googling I've been able to dredge up info on only three or four projects, half of them stalled or dead. On the other hand, it looks like there's been some activity on Cxbx and Dxbx within the past year. However, the former claims to have a playable library of a whopping...wait for it...three games while the latter admits that it can't run anything more than some introductory FMVs.

What blows my mind is out of all the sixth generation consoles, the Xbox hardware shares most in common with your typical home PC. Given that we've seen the successful emulation of the PS2's "Emotion Engine" and the Gamecube's PowerPC "Gekko" CPU on a PC, wouldn't it be a cinch to program an Xbox emulator that runs on a native x86 CPU with some xbox-specific instructions virtualized or aliased? I mean, since the Xbox CPU was pretty much a 733MHz Coppermine PIII or Celeron, execution speed wouldn't be much of a problem, right? Also, wouldn't it be trivial to emulate the NV2A GPU nowadays through wrappers? Hell, we can emulate Voodoo cards' functions through wrappers like dgVoodoo and Zeckensack's.

So what is holding back the development of xbox emulation?
 
I think its either because it doesn't pose enough of a challenge that people didn't bother or the coders devoted more time to develop apps for the xbox itself. I'd like an Xbox Emulator so I can run Soul Calibur 2 at 1080p :D.
 
you essentially have one when you do the unleash hack on it
Not really. You're still relying on the original hardware to play games plus the ability to run homebrew (and for the record I do have an old Xbox with UnleashX on it :D)


Did you read my OP? Also, Xeon is one of those dead projects and the only game capable of running is Halo:CE (meehhhhhhh). I see there's some activity going on in their forums but it doesn't look like they'll be getting anything new developed anytime soon.
 
I think it's because most Xbox (and 360) games ended up on PC anyway, so there's really no motivation to keep at it.
 
So there is a fully working PS2 emulator now?
last I remembered those projects were still very buggy or only played a few games at full speed.
 
Most xbox games have a pc version, why would they even both with an xbox emulator? No one is making a decent one because no one cares enough.
 
So there is a fully working PS2 emulator now?
last I remembered those projects were still very buggy or only played a few games at full speed.

The PS2 emulation has come a long ways and most games are fully playable now.

What really surprises me is the fact that Dolphin can emulate both Gamecube and Wii games.
 
The PS2 emulation has come a long ways and most games are fully playable now.

What really surprises me is the fact that Dolphin can emulate both Gamecube and Wii games.

The Wii is a Gamecube with a different controller.
 
the issue it seems is making an emulators takes ALOT more CPU power on the PC then the console used, i know NES and SNES ones can easily use %70+ of my Q9400 @ 3.3Ghz last time i played some games, so the power to do an Xbox one could just be too much work.

The Wii is not a gamecube with a different controller, your the same as people who say Vista is like Windows ME.
 
the issue it seems is making an emulators takes ALOT more CPU power on the PC then the console used, i know NES and SNES ones can easily use %70+ of my Q9400 @ 3.3Ghz last time i played some games, so the power to do an Xbox one could just be too much work.

The Wii is not a gamecube with a different controller, your the same as people who say Vista is like Windows ME.

Yes it is. Hardware wise its pretty much the same.
 
Yes it is. Hardware wise its pretty much the same.

It's true while not exactly the same the hardware pretty much is. Also might have something to do with that MS actually supports backwards compatibility on the xbox360 so there is even less of a point to make an emulator. PS2 had some backwards compatibility that slowly got removed from the ps3.
 
I asked this question around a year ago, there wasn't a answer then nor I think there will be one now.

The power is there I'm sure. I bet there is something more sinister at work like Microsoft shutting down the people who try to make the emulators for there system on the PC ;)

Personally I would rather buy the legit Xbox game and put it in my PC. I already have a 360 controller for my PC but no 360 system or original Xbox. I already have 9 systems hooked up to my TV, don't really have the room for another (physical, I do have more inputs I could use), lol.
 
the issue it seems is making an emulators takes ALOT more CPU power on the PC then the console used, i know NES and SNES ones can easily use %70+ of my Q9400 @ 3.3Ghz last time i played some games, so the power to do an Xbox one could just be too much work.

The Wii is not a gamecube with a different controller, your the same as people who say Vista is like Windows ME.

If emulators for Wii exist, then Xbox emulators can exist too. In terms of processing speed, the Wii is probably around or a little bit better than the original Xbox.

The hardware is VERY similar between Gamecube and Wii. You're right - the Wii literally isn't just a Gamecube with a different controller, but the architecture is almost identical. The Wii and Gamecube both have PowerPC processors, but the Wii's runs at a higher clock speed. The GPU is exactly the same but runs at higher clock speeds (a GPU that doesn't even have pixel shaders, I'll remind everyone). It has about double the memory. It has a bigger disc drive. Other than that, that's basically it. To the guys who programmed the emulator, these changes are close to nothing. While it wouldn't be a trivial process to include Wii functionality, they would be stupid not to include it since you can reuse a TON of code to emulate the Wii. It's the same reason why so many Master System emulators also emulate Game Gear. While they weren't the exact same systems, they were so freakin' close to each other that almost all of the people who wrote Master System emulators decided to include Game Gear as part of the package. That's why Dolphin emulates both Gamecube and Wii.

The power is there I'm sure. I bet there is something more sinister at work like Microsoft shutting down the people who try to make the emulators for there system on the PC ;)

I don't think it's because of some kind of shady conspiracy that it hasn't happened yet, either. I mean, if Microsoft could stop all Xbox emulators by doing something "sinister," then Nintendo and Sony would have done the same "sinister" stuff.
 
There just doesn't seem to be any interest there within the community. I don't know if its a lack of memorable games, or what. But there have only been a couple of projects and they haven't been shut down, they just haven't gone anywhere. Emulator developers are a lot like the game modding community in that they forever insist their projects aren't dead and that they are just "busy" and their pride keeps them from handing the project to someone who can finish it.

The Xbox would actually be one of the easiest to achieve playable performance on because from a hardware stand point, you don't need to use dynamic recompiling as I understand it.

The PS2 was a lot more difficult to develop for and most of us figured the Xbox would have emulation long before the PS2.
 
the issue it seems is making an emulators takes ALOT more CPU power on the PC then the console used, i know NES and SNES ones can easily use %70+ of my Q9400 @ 3.3Ghz last time i played some games, so the power to do an Xbox one could just be too much work.

The Wii is not a gamecube with a different controller, your the same as people who say Vista is like Windows ME.

then you were doing something wrong because ZSNES used to run on 486's let alone modern quad cores.

xbox uses a x86 chip, you don't need to do a complete software reimplementation of the cpu.
 
The Wii is not a gamecube with a different controller, your the same as people who say Vista is like Windows ME.

yes it is

it uses pretty much the same hardware that has been updated by reworking the CPU and GPU.

Nintendo was smart as they built upon the NGC to make the Wii

most if not all of the SNES emulators will run on a <500Mhz GPU
 
yes it is

it uses pretty much the same hardware that has been updated by reworking the CPU and GPU.

Nintendo was smart as they built upon the NGC to make the Wii

most if not all of the SNES emulators will run on a <500Mhz GPU

ZSNES is super fast and can run SNES games at full speed on some ancient rigs. But it uses a lot of hacks and workarounds and there can be minor inaccuracies. BSNES on the other hand is a resource hog. Hits 13% on my i7 930 @ 4.2ghz. But it uses no hacks or workarounds and is the most accurate and compatible emulator there is.

The "Oh no the Xbox is probably too powerful to emulate" like he was saying isn't true because the PS2 is far scarier from a hardware perspective and the emulator for that has great compatibility and speed now.
 
I think a lot of it is because the Xbox is so hackable. Why emulate something you can so easily hack and turn into a homebrew machine and plug into a spare input on your monitor?
 
I think a lot of it is because the Xbox is so hackable. Why emulate something you can so easily hack and turn into a homebrew machine and plug into a spare input on your monitor?

People don't really make emulators to run homebrew. They're completely different things.

And even if you plug the Xbox into a monitor, you're still running at 640x480 for 98% of the Xbox games out there.
 
In regards to the xbox emulation and it being just a PC -- I find this quote from another forum interesting:

BlueShogun95 said:
Originally Posted by blueshogun96
"Xbox is just like a PC, it's easy to emulate!"

Yes, we've all heard this silly and pointless argument a million times and it usually ends in the same, and rather ignorant conclusion (or should I say assumption) that just because the Xbox is PC similar, it's hardware should be relatively easy to emulate. That's a very wrong frame of mind. How hard can it be? Very. Xbox's hardware is very complex and still poorly documented to this day. This requires some explanation.

1. Is a PC easy to emulate? Well, I wouldn't say so myself. Take a look at the source code from bochs. A lot of source code/work isn't it?

2. Emulating an x86 CPU is a lot harder than it sounds. I don't know where this mindless assumption comes from. Yes, there's loads of documentation on how the x86 processor works, but that doesn't exactly make it easy. First of all, the x86 instruction set is M-A-S-S-I-V-E! There can be at least 20 different versions of one instruction (i.e. There are many different versions of the MOV instruction, as well as INC, DEC, ADD, SUB, SHR, SHL, AND, OR, XOR etc.) and it takes time to implement them all. Of course, that's not exactly difficult. The real problem is that any modern x86 processor including the Pentium III can execute multiple instructions at once. So it's not like emulating a Z80 doing one instruction at a time. The actual algorithm and how x86 does this is undocumented and still unknown. In short, the Xbox's CPU can be emulated, but not accurately.

3. Emulating any hardware by NVIDIA is not a walk in the park! The Xbox's GPU, the NV2A is often assumed just a GeForce 3. It's not! It's similar but not identical. It has some GeForce 4 capabilities too, so it's more of a cross between an NV20 and NV25. This is by no means easy to emulate either. NVIDIA's GPUs have very large register sets and afaik not even half of them have been discovered, and a large portion of known registers have unknown purposes. There is little to no documentation on how NVIDIA GPUs work. The best thing to do is to look at similar GPUs such as RIVA, TNT, and older GeForce cards. Some registers are similar, but not identical. The best place to look for information is in open source drivers available on the net. Adding to the dificulty is that no one has ever discovered how pixel shaders work on NV2x cards, vertex shaders yes though. The Xbox GPU also has exclusive registers that are not found in other GeForce cards. Information on the NV2A's GPU registers are just now beginning to be discovered a few months ago. And yet, there's still a long way to go. The GeForce 3 series is the most mysterious of all NVIDIA GPUs (G7x and G8x aside) and the NV2A is alot worse. "But can't you just directly execute the NV2A instructions on another NVIDIA card?". No, I get alot of questions concerning this, and it is impossible. It's MMIO addresses are different and the exclusive registers must be emulated. Plus, in windows, we don't have ring 0 access anyway, so you all can scratch that idea now. Then comes the NForce 2 chipset. This is where it get easier. The NVIDIA MCPX is the control center for things such as audio, USB for input, Network adapters, PCI, AGP, etc. These things are not really that difficult to emulate IMO except for the audio.

4. The Audio system is rather complex. Xbox's audio consists of at least 4 DSPs, and audio codec (AC '97) and an NVIDIA SoundStorm APU. The DSPs shouldn't be a problem (just figuring out what they all are is) nor should the AC '97 but the NVIDIA SoundStorm APU is the really difficult part. So far I haven't found any information on this thing, but right now, it's relevance is low.

5. The Xbox BIOS isn't fully understood. The basic execution process of the BIOS is understood, but details on the process are at a loss. What we do know gives us hints, but before the BIOS can be emulated, we'll need a better understanding of the Xbox hardware layout because the BIOS does some unknown hardware initialization at boot time and writes to the hardware directly without using any XDK stuff. It will take some time, and effort, but I'll eventually get it working.

6. Video Encoder "Hell". Instead of using a RAMDAC for video output, the Xbox uses a Video Encoder. What makes this suck a pain? Microsoft sought the need to change the video encoder every other Xbox version (there are seven in all, 1.0 - 1.6). Why, I dunno, it's a Microsoft thing, they always tend to try to "fix" things that aren't broken >.> AFAIK, there are at least 3 different Video Encoders used: Conexant CX25871, Focus FS454, and Xcalibur. For more information in Xbox video encoders, click here. Emulating all three video encoders is only less than half the battle, the real problem is that BIOSes can be specifically tied to a specific encoder depending on it's version (don't quote me on this though). Like PS2, every Xbox model revision has a updated BIOS and has different expectations. This is a potential problem, but not exactly major.

Basically, I'm trying to get this "Xbox should be easy to emulate because it's just like a PC" crap out of your heads. I'm sure that most of you will disagree with me on this, but for these reasons and more, on a low level, Xbox is harder to emulate than PS2.

^ The exception to that above is that the NV2A is much better documented now, but not fully. There's an open source library for the OpenXDK called pbKit. It interfaces directly with the hardware to fully expose it's potential. This is what Microsoft should have done all along (or at least wrote a low-level OpenGL implementation).
 
^ that guy completely overlooks the fact that it should be super easy to emulate a xbox as it pretty much runs on a modified Win 2K kernel and DX7/8 API. All one has to do is write a wrapper and you are pretty much good to go...no translating of x86 needed.....
 
It's a big project for a small reward, old consoles are so cheap 2nd hand, there really is no reason to emulate something as old as an xbox, hardly anyone is going to use it, no one will pay you for it, and it's probably illegal to some degree to reverse engineer or reproduce a protected system.
 
Here's a CXBX branch that seems to be updated regularly:

http://shogun3d-cxbx.blogspot.com/

Thanks. I was going to post that link last night after a couple of hours of googling and investigating. After reading through his blog it looks like there's been some leaps and strides in development for this emulator, though it's really too early for it to run almost any of the commercial games out there to a playable degree. On the other hand, it looks like there's plenty of homebrew that will run with a few hitches.

A gleam of hope for those interested in xbox emulation.
 
^ that guy completely overlooks the fact that it should be super easy to emulate a xbox as it pretty much runs on a modified Win 2K kernel and DX7/8 API. All one has to do is write a wrapper and you are pretty much good to go...no translating of x86 needed.....

That would result in something that could run the software and seems to be what is getting done (based on what I read from a recent link in this thread). However, you may need to write different API wrappers for every game - a problem the author is currently dealing with - and any program which accesses the hardware directly will not work.

Going back to the OP's question; I think others have said these I'll re-iterate:

It's actually very difficult
There isn't much interest
 
Because the Xbox completely sucked and isn't worthy of an emulator.

Really? If the XBox was so trash then why did it consistently have the best graphics of all the last-gen consoles? Harumph.

As for which has the best games though, I would agree that it's debatable.
 
Really? If the XBox was so trash then why did it consistently have the best graphics of all the last-gen consoles? Harumph.

As for which has the best games though, I would agree that it's debatable.

Surely you don't really want the answer to this, nor do you believe that superior graphics makes a good console.
 
Really? If the XBox was so trash then why did it consistently have the best graphics of all the last-gen consoles? Harumph.

As for which has the best games though, I would agree that it's debatable.

Don't feed the trolls... :rolleyes:
 
Surely you don't really want the answer to this, nor do you believe that superior graphics makes a good console.

No, I don't, but I'm simply pointing out that the OG XBox had the best graphics hardware of that generation, not the best games. As for CPU architecture, that's highly debateable. I will be the first to point out that the XBox's games library wasn't the best.

IMO the PS2 had the best game lineup overall, and it was the only system I didn't get bored with during release lulls.

Don't feed the trolls... :rolleyes:

Not trying to. :rolleyes:
 
I'm still very much looking for finding a PSP emulator that will play Dissidia. God I love FF2/3
 
That would result in something that could run the software and seems to be what is getting done (based on what I read from a recent link in this thread). However, you may need to write different API wrappers for every game - a problem the author is currently dealing with - and any program which accesses the hardware directly will not work.

Going back to the OP's question; I think others have said these I'll re-iterate:

It's actually very difficult
There isn't much interest

the author of that post is claimimg you need to emulate the x86 instruction set and this is simply not the case. I think he is having issues with xbox security or hardware checks and does not know how to get around them to run all the games. It would not make sense for MS to have multiple APIs since one could not guarentee 100% compatability accross all games.
 
Xbox mostly had dumbed down pc games on it. Most of all the best games that were on the xbox were on the pc. There weren't any real exclusives on it except halo.
 
Xbox mostly had dumbed down pc games on it. Most of all the best games that were on the xbox were on the pc. There weren't any real exclusives on it except halo.

That's funny. Now all we mostly get on the PC side now are dumbed down XBox 360 ports. Ain't that a bitch?
 
Back
Top