-
Notifications
You must be signed in to change notification settings - Fork 36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
XQEMU is hard to run #83
Comments
For anyone wanting to tackle the MCPX part this may be helpful... https://mborgerson.com/deconstructing-the-xbox-boot-rom |
Would it be possible to use a custom dashboard by default in place of the official Xbox dashboard, without hampering compatibility (assuming such a dashboard were to be completed, of course)? If so, I'd definitely look into writing one without using the XDK. |
You don't need a dashboard to run games. The kernel will either start the game OR dashboard (which is just a "pseudo-game" stored on the harddisk, ran if the DVD was not detected as a game). = If the game loads successfully you don't need a dashboard. This issue is about the kernel and the bios (MCPX rom + 2bl). Eitherway: You'll need an Xbox to legally run xqemu (unless we find a way to get a usable kernel elsewhere). We can just try to make the dumping procedure as easy as possible. This Xbox-requirement is also not an issue in my opinion; Citra has a similar requirement and it still grew. Currently we care about finding developers, and we have more cheap physical / dumpable Xboxes than developers (meaning devs will have / can get one). Aside from what @mborgerson linked: Also there is my 2014 boot HLE in XQEMU. That should be split into a seperate bios file / project as QEMU is not designed to run guest code within it's source code ;) ) My approach back then was also too flexible. That is probably fine, but it's currently not necessary (and it adds a lot of points of failure + complexity to an otherwise small issue). I also took shortcuts by disassembling the original files and just porting to C - the following code is probably fine legally, but still rather questionable. I also moved some values around from the MS disassembly and configured most things using header files (hence some files [*.fox] are still local). |
I looked into porting cromwell for XQEMU use (= load xboxkrnl.exe) now (Also see my updates to http://xboxdevwiki.net/Boot_Process#2BL).
However, this is where the problems started: We can not dump a "clean" xboxkrnl.exe:
I've tried to find ways around this now:
I've also checked if we could ditch the kernel dumping process altogether:
(What frustrates me most about the INIT situation, is that this seems unintentional by Microsoft. They probably wanted to save on RAM after bootup, however, for us this means lots of headaches) |
EEPROM dumping; Harddrive dumping: |
@ripdajacker The issue of dumping has been solved for almost everything (including pure software tools = no need to open the Xbox or buy active components). What's missing, is MCPX / MCPX Key / 2BL / Kernel dumping. So we should focus our discussion on those. These are the parts which make XQEMU hard to run and have no known solution. |
Currently setting up XQEMU is a lengthy procedure, running it is complicated.
We should have:
I've worked on some of these tasks in the past. Please contact me if you want to help.
Feel free to split this into seperate issues too.
The text was updated successfully, but these errors were encountered: