Xbox original emulation (PC script)
-
@fadingrose if youll like i can add it to RetroPie-Extra. so that way its somewhere else and it makes it a little easier to install it in the correct location to be ran
-
@ExarKunIv That would be great and hopefully it will eventually become a part of Retropie as pc is more than capable of running the emulator fine just like PS2. Hopefully it gets plenty of testing to improve integration.
-
Dropped a few more screen shots and updated some information. just need a lot more testing by anyone who runs Retropie on a pc. Next few things i am looking to do.
1 - See if i can get the emulator to automatically look in the bios folder created on first run so it can just pick up the bios, hard drive image etc if it's already been added by the user before they run it so that will skip needing to configure the bios
2 - It uses OpenGL as default but you can select Vulcan if you have a newer graphics card for better performance so maybe a way it can check and use Vulcan instead if you have the graphics capable of it?
3 - Added some information about Sega Chihiro games running in Xemu to the guide above and screenshots
-
Currently working on the arguments to better integrate with retropie but the following link will be of help if anyone understands QEMU and has better knowledge.
-
Some news
There is a version for arm processors and i currently have a script created below for the raspberry pi OS to install it on a raspberry Pi 4 (other pi's not tested). It downloads all the necessary dependencies and compiles the emulator from github but towards the end it fails partially downloaded and compiled so the script is non working at the moment.
At the moment i am trying to get it running on the raspberry pi os on a Pi4 so i can test it and actually make sure it runs and can compile, test a game and so on before a Retropie script is created for it like the PC one.
Of course the Pi is certainly going to be a little slow when running games and will struggle but just like the Atari Jaguar, Dreamcast and other such emulators but eventually the newer pi's better power will fix this or improve like the Pi 5 so maybe this will be for developers and testers and maybe even a game or two will run fine if it ain't got much going on.
#!/bin/bash # Exit immediately on any error set -e echo "==> Updating system packages..." sudo apt update && sudo apt upgrade -y echo "==> Installing build dependencies..." sudo apt install -y \ build-essential \ cmake \ git \ libsdl2-dev \ libglib2.0-dev \ libvulkan-dev \ libepoxy-dev \ libpng-dev \ libzstd-dev \ libcurl4-openssl-dev \ libreadline-dev \ ninja-build \ python3 \ python3-pip \ pkg-config \ python3-mako \ libavcodec-dev \ libavformat-dev \ libswscale-dev \ libopusfile-dev \ libxcb1-dev \ libxcb-icccm4-dev \ libxcb-image0-dev \ libxcb-keysyms1-dev \ libxcb-randr0-dev \ libxcb-render-util0-dev \ libxcb-xinerama0-dev \ libxcb-xinput-dev \ libxcb-xfixes0-dev \ libxcb-shape0-dev \ libgtk-3-dev \ libpcap-dev \ meson echo "==> Installing required Python packages..." pip3 install --break-system-packages pyyaml echo "==> Cloning Xemu repository..." git clone --recurse-submodules https://github.com/xemu-project/xemu.git cd xemu echo "==> Starting build process..." ./build.sh echo echo "✅ Build complete! You can now run xemu with:" echo " ./build/xemu"
Currently trying to get it to compile but it throws up one errpr after another and everytime i fix the error it throws another, i feel i'm close though but i'll get there eventually and then can get to testing.
-
We have some news and sadly we hit a hurdle, when running it i got the following.
Unable to create OpenGL context. This usually means the graphics device on this system does not support OpenGL 4.0
It seems OpenGL 4.0 which is what Xemu needs to run isn't supported on a Pi4 unless i am totally missing something so it won't run.
Here is the script that compiles, builds and installs Xemu on the Rasperry Pi OS successfully though so may work on a Raspberry pi 5 if someone wants to test it and if it does then a script could be created for Retropie for testing.
I don't have a Pi5 to test.
#!/bin/bash # Exit immediately on any error set -e # Update and install dependencies echo "==> Updating system packages..." sudo apt update && sudo apt upgrade -y echo "==> Installing build dependencies..." sudo apt install -y \ build-essential \ cmake \ git \ libsdl2-dev \ libglib2.0-dev \ libvulkan-dev \ libepoxy-dev \ libpng-dev \ libzstd-dev \ mesa-utils \ libcurl4-openssl-dev \ libreadline-dev \ ninja-build \ python3 \ python3-pip \ pkg-config \ python3-mako \ libavcodec-dev \ libavformat-dev \ libswscale-dev \ libopusfile-dev \ libxcb1-dev \ libxcb-icccm4-dev \ libxcb-image0-dev \ libxcb-keysyms1-dev \ libxcb-randr0-dev \ libxcb-render-util0-dev \ libxcb-xinerama0-dev \ libxcb-xinput-dev \ libxcb-xfixes0-dev \ libxcb-shape0-dev \ libgtk-3-dev \ libpcap-dev \ libslirp-dev \ meson echo "==> Installing required Python modules..." python3 -m pip install --break-system-packages --upgrade pip python3 -m pip install --break-system-packages pyyaml # Clone Xemu if not already cloned if [ ! -d xemu ]; then echo "==> Cloning Xemu repository..." git clone --recurse-submodules https://github.com/xemu-project/xemu.git else echo "==> xemu folder already exists, skipping clone..." fi cd xemu echo "==> Starting build process..." ./build.sh echo echo "✅ Build complete!" echo "➡️ You can now run xemu with:" echo " ./build/xemu"
After finishing though you have to navigate to /dist/xemu under the folder you compiled it in and run ./dist/xemu but then it throws the OpenGL error so can't further test unless there is a work around.
I also installed Vulkan drivers and tried XEMU_RENDERER=vulkan ./dist/xemu and it throws up the OpenGL error box stated earlier so a brick wall has been hit.
It works on a modern pc with Retropie though with the original script so there is that. Need to continue to focus on the PC script for now when i get back to it.
-
Snapshots
Ok so Xemu uses snapshots for game saves, when your in a game you press start, navigate down to snapshots on the menu and you can load or save a snapshot which is ideal for Retropie users but it would be better if it could be integrated with Retropie's save/load system for emulators so you wouldn't have to press start and open the snapshot menu to save.
Here is a link to the snapshots feature
https://xemu.app/docs/snapshots/
I don't know anything about the load/save feature of Retropie so it's beyond the scope of my knowledge until i spend some time learning but maybe it could be integrated or hooked into it in some way?
If anyone is super knowledgeable and would like to tackle it go ahead but i'll get some learning done and hope to figure it out.
-
@fadingrose said in Xbox original emulation (PC script):
[...]
I don't know anything about the load/save feature of Retropie so it's beyond the scope of my knowledge until i spend some time learning but maybe it could be integrated or hooked into it in some way?
There's no such thing - each emulator is responsible for saving/loading their own saves or states.
-
@mitu Oh ok i thought retropie did my bad unless i am thinking of Retroarch but thanks for the clarification. Users can stick with the menu snapshot then.
-
Updated the guide a little
Snapshots (game saves) are saved to the xbox hard drive image so just backup your hard drive image if you want to save your games and you access and manage them via settings menu.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.