7 ms·
Xemu: Original Xbox Emulator
- bdcravens 3y agoThe original Xbox was essentially a PC of the time running a heavily customized version of Windows. Does this emulate that kernel without using any Microsoft code?
- flohofwoe 3y agoIf I remember right, most of the "operating system" was linked statically into the game images (AFAIK at least the DirectX libs, not sure about any low level "firmware" stuff). I'm pretty sure there was no concept of "hardware drivers" though.
- skinatro 3y agoThe original xbox actually had a real os based on the windows 2000[1] unlike it's competitors like the PSX [1]-https://www.theverge.com/2020/5/21/21265995/xbox-source-code-leak-original-console-windows-3-5 https://www.theverge.com/2020/5/21/21265995/xbox-source-code...
- jsheard 3y agoPer the documentation you have to provide dumps of the original Xbox bootroms, and it can optionally use a HDD image taken from a real Xbox, but the latter isn't required because they provide a basic cleanroom reimplementation of the dashboard you can use instead. https://xemu.app/docs/required-files/ https://xemu.app/docs/required-files/ The CPU in the Xbox was literally an off-the-shelf Intel processor (some crazy people even soldered in faster CPUs that were never meant for the Xbox) but as I understand it the GPU is weird, and that's where most of the difficulty with emulation comes from. It's a unique mashup of GeForce 2 and GeForce 3 IP that was never used anywhere else, so the existing efforts to reverse engineer GF2 and GF3 for Linux drivers were of limited use.
- skinatro 3y agoIf I am not wrong this is a LLE (low level emulator) rather than a hle so it should emulate the hardware rather than the kernel. So you need the dump of the microsoft's xbox kernel for it to work
- iforgotpassword 3y agoI think most people familiar with the original Xbox hw (like people working on xemu :)) take offense when you say it's just a PC. It's PC hardware, but nothing much is shared with the "IBM PC" architecture-wise. Even the software side is very different. It's not running a customized version of Windows, but the Windows kernel. One stripped down to 256kb, including the boot up animation and sound. That design for example required that a lot of things get linked into a game's executable, like network drivers and the entire TCP/IP stack. If it were that easy, we'd have had a wine pendant for Xbox binaries 20 years ago. Cxbx is pretty much the wine approach to Xbox emulation and it's far from perfect.
- anthk 3y agoLinux would ran on that with ease. And, yes, Wine ran, but just Win32 PE binaries, not XBE ones. OFC it was an "IBM PC". Some people could run ReactOS on it.
- Dwedit 3y ago> nothing much is shared with the "IBM PC" architecture-wise Gate A20 begs to differ.
- fps_doug 3y agoIt's built into the CPU, what did you expect them to do, burn it with a laser? .... well in hindsight that might've been a smart thing to do :o)
- Dwedit 3y agoGate A20 famously was responsible for the original XBOX getting hacked. It redirected execution from the special hidden ROM into ordinary flash ROM, bypassing all security.
- bri3d 3y agoThere are two major original Xbox emulators - cxbx/cxbx-reloaded, which originally tried to do both LLE and HLE but these days does exclusively high-level emulation like you are describing, and xemu (this one), which does mostly low-level emulation. So no, in this case Xemu runs the original Xbox kernel. This is why it's more compatible and generally much more robust than cxbx in terms of game support. There are a lot of challenges with doing HLE for Xbox. While there is a kernel, its HAL is very low-level. Games are statically linked against the entire stack of DLLs that you'd usually find in Windows (the Xbox SDK), and depending on when they were released, can have one of about a gazillion versions of the Xbox SDK in them. So doing HLE is a matter of finding and hooking an enormous number of SDK functions, but also keeping up with the plethora of minor changes which were made constantly through the life of the console. Emulating the kernel doesn't get you very far, because it still provides low-level interfaces to (for example) manipulating GPU state, so you end up having to implement the GPU hardware in LLE anyway.
- IntelMiner 3y agoThis is a myth that is incorrect. The original Xbox's BIOS bares little to no resemblance to Windows 2000 (its closest contemporary) and runs from a 1MB flash chip at most. Games run Bare Metal on the system
- accrual 3y agoThe Xbox hardware was also quite advanced for its release date (2001). Many PCs at the time still had 100MHz FSB but the Xbox ran at 133MHz. The Xbox also had DDR RAM, not much of it (64MB), but DDR wouldn't be commonplace until the Pentium 4 and Athlon XP platforms a couple years later. Most PCs were still running regular single-channel SDRAM. I've built a near-period correct PC with a later and faster CPU (Tualatin at 1.0GHz vs Xbox's Coppermine at 700MHz), more RAM (512MB), faster GPU (GF4 Ti4400), but it still can't achieve the raw memory and GPU bandwidth the Xbox had.
- jsheard 3y agoThe fun thing about the RAM was that although the retail units only had 64MB, they shared the motherboard design with the devkits which had 128MB, and if you sourced a second set of RAM chips you could fully populate the board and build a 128MB retail unit. That was useful for some homebrew, and also made it possible to play games built for the Sega Chihiro arcade platform, which used the Xbox architecture but had the full 128MB of RAM installed and allowed games to use all of it. If you were brave enough to replace a BGA chip you could upgrade the CPU as well, the stock one was an off-the-shelf 733mhz Pentium which happened to have a 1.4ghz counterpart, and surprisingly swapping the CPU out for the faster one mostly just worked. The faster chips were electrically compatible, but Intel only packaged those as socketed desktop parts, so people designed these wacky interposer boards to re-route the pins to the correct places on the Xboxes BGA footprint. https://i.imgur.com/nvJdKfM.jpeg https://i.imgur.com/nvJdKfM.jpeg
- jwells89 3y agoI love hackery like this that pushes hardware capabilities to their limits. It’s kinda like extreme overclocking, except somehow both more crazy and usually more likely to have an end result that’s practical for day to day usage.
- sshagent 3y agokung fu chaos time! Such a great game, a little insensitive perhaps...glorious sofa multipleyer game though I kept that disk hoping they'd backwards compat it for many years
- blakes 3y agoOut of all the og Xbox games, Kung Fu Chaos provided the most fun and laughs with friends. It honestly still holds up gameplay wise. I still play it sometimes. The minigames were the best.
- deleted 3y ago[deleted]
- accrual 3y agoFun fact - Morrowind for the Xbox occasionally rebooted the whole console when running low on memory. A splash screen would remain displayed, so the user would have no idea this was happening. The Xbox only had 64MB of DDR1 RAM. https://hackaday.com/2021/04/14/morrowind-rebooted-the-original-xbox-without-you-ever-noticing/ https://hackaday.com/2021/04/14/morrowind-rebooted-the-origi...
- giancarlostoro 3y agoI had talked to a dev who worked on one of the Fable games and he mentioned that he was only alloted x amount of the total memory available on the 360 which surprised me, since I was primarily a PC gamer I didnt think about how little memory the console had. Fun reminder that we got to the moon on significantly less memory.
- deleted 3y ago[deleted]
- userbinator 3y agoWhen the original Xbox was released (2001), its specs were comparable to a low-end PC of the time, but with a somewhat better GPU.
- sillywalk 3y agoGood write up (along with the rest of their articles) on the X-Box architecture. https://www.copetti.org/writings/consoles/xbox/ https://www.copetti.org/writings/consoles/xbox/
- rbut 3y agoThey could've implemented their own virtual memory and paged it to disk. Very easy to do. That's what we had to do to load 64mb ROMs when creating an n64 emulator for Xbox.
- darknavi 3y ago
- costanzaDynasty 3y agoI hate the fact that Xbox One killed Xbox's momentum so much that people are dismissing or not recognizing some of the things that Xbox has going for it right now with Xbox GamePass and cloud gaming. This is a transitional generation, but Xbox is positioned a lot better than most people seem to understand if they only travel in the areas where console wars is the religion of the day again. I've been replaying Halo 1 & 2 again and just remembering the infancy of console online gaming and how fun it was as compared today were its either absolute silence or mute worthy trash.
- anonymousab 3y ago> recognizing some of the things that Xbox has going for it right now with Xbox GamePass and cloud gaming Or they don't recognize them as inherently good things. Game pass has potentially cannibalized "real" game sales on the platform and primed its userbase to "just wait for it to come to gamepass"; with the gamepass honeymoon developer deals drying up, this has had dire implications for third party support going forward. Xcloud has been a mixed bag - you can find countless reports of it lagging behind PS cloud streaming and various PC cloud gaming vendors in performance (latency) and image quality (though I personally haven't seen much difference between most of them). For a lot of us, the current generation Xbox platform has been doing everything just as bad or even worse than it was with the Xbox One - they've stopped iterating on backwards compatibility, they've pushed Gamepass above all, and they've spent unbelievable amounts of money on M&A instead of building up their own existing studios and releasing more new original exclusive games. The quality of some of their major trumpeted releases has also been incredibly suspect, despite repeated claims of high quality from their internal tastemakers before release. The dumb social media console war stuff has unfortunately gotten in the way of some important self-review and introspection that the Xbox team should be doing. As a longtime Xbox fan, it has been tremendously disappointing to see.
- dleslie 3y agoIt's funny that you should note that they are doing positive things in a transitional era, only to finish off by noting that you are playing decades-old games on their hardware. While I am a fan of GamePass, and I own two XBox One consoles, I have no desire to own a Series console or the forthcoming refresh. Everything I want to play I can play on the One or via Cloud; but more importantly: the difficulty of discovering compelling experiences in this era of XBox is too damn high. There are too many straight-up _bad_ indie games swamping GamePass, and too many B and AAA quality games that are phoning it in.
- pipeline_peak 3y agoWith the Master Chief Collection on PC, I’d only use this to play Metal Arms and Mercenaries. The first Xbox had a pretty lukewarm backlog.
- sirwhinesalot 3y agoIt had loads of good games! Ninja Gaiden, Otogi 1 & 2, Far Cry Instincts, Crimson Skies, Panzer Dragoon Orta, Metal Wolf Chaos, Project Gotham Racing, Jade Empire, Fable, Outrun 2006, Splinter Cell, Burnout, Chronicles of Riddick, Conker, Psychonauts, Unreal Championship 2, Oddworld, Forza, etc.
- clircle 3y agoFor me, it was the timed exclusivity of MGS2 substance
- fps_doug 3y agoNinja Gaiden was so fraking hard! At some point I used an invincibility hack and still gave up at some point! But it was pretty cool. Played Halo 1 & 2, PGR a lot, JSRF was just awesome even though I never finished that either. Fable just wasn't my thing, but had a lot of fun in DoA3 with friends.
- sirwhinesalot 3y agoI managed to beat Ninja Gaiden as a teen. I have no idea how I pulled it off (it wasn't in Ninja Dog mode either). Sadly I no longer have the necessary hand-eye coordination :(
- darknavi 3y agoMetal Arms, what a blast from the past!
- smrq 3y agoTo me, Jet Set Radio Future was worth buying the entire console back in the day. Halo was just a nice bonus.
- christkv 3y agoI’ve been replaying the thing using xemu and it works very well.
- skibz 3y agoThis emulator has brought me hours of fun. A huge thank you to the developers. I also strongly recommend checking whether Insignia supports the games you're playing on Xemu. If it does, grab a retail dashboard hard disk image and try it out! I think Insignia even recently added support for Halo 2, which is pretty huge. https://insignia.live https://insignia.live
- tiptup300 3y agoWow, cant believe they added halo 2. Man. that's sick.
- ChristopherDrum 3y agoIs there some way to set to an alarm to let me know when Steel Battalion becomes playable?
- erickhill 3y agoThat name had been taken... https://65site.de/emulator.php https://65site.de/emulator.php