Running Xbox original games on Retropie (PC only)
-
@ExarKunIv
So I can run commands like that in the install script and it should look at the Retropie bios? -
@Unknown here is the aethersx2 script as a guide
-
@ExarKunIv Thanks I will look into it.
-
@ExarKunIv Ok I have changed the install script to this
#!/usr/bin/env bash # This file is part of The RetroPie Project # # The RetroPie Project is the legal property of its developers, whose names are # too numerous to list here. Please refer to the COPYRIGHT.md file distributed with this source. # # See the LICENSE.md file at the top-level directory of this distribution and # at https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/LICENSE.md # rp_module_id="xemu" rp_module_desc="Xbox Emulator" rp_module_help="ROM Extensions: .iso .xiso \n\nCopy your xbox games to $romdir/xbox" rp_module_licence="https://github.com/xemu-project/xemu/blob/master/LICENSE" rp_module_repo="https://github.com/xemu-project/xemu.git" rp_module_section="exp" function depends_xemu() { local depends=( build-essential libsdl2-dev libepoxy-dev libpixman-1-dev libgtk-3-dev libssl-dev libsamplerate0-dev libpcap-dev ninja-build python3-yaml libslirp-dev) getDepends "${depends[@]}" } function sources_xemu() { gitPullOrClone } function install_xemu() { cd xemu ./build.sh } function configure_xemu() { mkRomDir "xbox" # Create the xbox BIOs directory if it doesn't exist if [ ! -d "$biosdir/xbox" ]; then mkdir -p "$biosdir/xbox" fi chown -R $user:$user "$biosdir/xbox" # Create a symbolic link for BIOS if [ ! -L "$home/opt/retropie/emulators/xemu/xbox" ]; then ln -s "$biosdir/xbox" "$home/opt/retropie/emulators/xemu/xbox" fi if [[ "$md_mode" == "install" ]]; then mkUserDir "$md_conf_root/xbox" mkUserDir "$md_conf_root/xbox/$md_id" moveConfigFile "$home/.$md_id" "$md_conf_root/xbox/$md_id" fi addEmulator 1 "$md_id" "xbox" "$md_inst/xbox -r 3 -i %ROM%" addSystem "xbox" }
I reinstalled Xemu but I am still getting this error.
Parameters: Executing: /opt/retropie/emulators/xemu/xbox -r 3 -i "/home/retropie/RetroPie/roms/xbox/ATV Quad Power Racing 2.iso" /opt/retropie/supplementary/runcommand/runcommand.sh: line 1322: /opt/retropie/emulators/xemu/xbox: No such file or directory
The script has created an "xbox" folder in the retropie Bios directory and I put the Bios files in that folder, so I am guessing that I have failed to get the symbolic link working. However Progress is progress and I must thank you for your help so far. Do you have any more advice?
-
@Unknown hmm. it looks like it should work.
ill have to install this on mine and see if i see anything
just checking you have
kernel=kernel8.img
in the config.txt? -
@Unknown ok i see what i think is the problem
you are missing the whole build line. you went from downloading the source to installing.
you need to build then installlook at the one for reicast
https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/scriptmodules/emulators/reicast.sh
first you install the depends, then download the source, then build from source once thats done you install the files that where built. and from there you link the emulators.cfg with the correct paths
EDIT
unless the
build.sh
also installs it -
@ExarKunIv
Oh. Well that explains a lot. I'll try to fix this sometime later this week. -
Update. I have attempted to add a build section to the script but I am unable to catch any errors when I run it. So I have clone my virtual machine and I will be installing Xemu outside of RetroPie in order to get a better understanding of how it installs. I will keep you posted.
-
Ok. This is my current install script.
#!/usr/bin/env bash # This file is part of The RetroPie Project # # The RetroPie Project is the legal property of its developers, whose names are # too numerous to list here. Please refer to the COPYRIGHT.md file distributed with this source. # # See the LICENSE.md file at the top-level directory of this distribution and # at https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/LICENSE.md # rp_module_id="xemu" rp_module_desc="Xbox Emulator" rp_module_help="ROM Extensions: .iso .xiso \n\nCopy your xbox games to $romdir/xbox" rp_module_licence="https://github.com/xemu-project/xemu/blob/master/LICENSE" rp_module_repo="https://github.com/xemu-project/xemu.git" rp_module_section="exp" function depends_xemu() { local depends=( build-essential libsdl2-dev libepoxy-dev libpixman-1-dev libgtk-3-dev libssl-dev libsamplerate0-dev libpcap-dev ninja-build python3-yaml libslirp-dev) getDepends "${depends[@]}" } function sources_xemu() { gitPullOrClone } function build_xemu() { make clean make md_ret_require="$md_build/xemu" } } function install_xemu() { #cd xemu ./build.sh } function configure_xemu() { mkRomDir "xbox" # Create the xbox BIOs directory if it doesn't exist if [ ! -d "$biosdir/xbox" ]; then mkdir -p "$biosdir/xbox" fi chown -R $user:$user "$biosdir/xbox" # Create a symbolic link for BIOS if [ ! -L "$home/opt/retropie/emulators/xemu/xbox" ]; then ln -s "$biosdir/xbox" "$home/opt/retropie/emulators/xemu/xbox" fi if [[ "$md_mode" == "install" ]]; then mkUserDir "$md_conf_root/xbox" mkUserDir "$md_conf_root/xbox/$md_id" moveConfigFile "$home/.$md_id" "$md_conf_root/xbox/$md_id" fi addEmulator 1 "$md_id" "xbox" "$md_inst/xbox -r 3 -i %ROM%" addSystem "xbox" }
The system is now producing an error log.
Log started at: Mon Aug 19 03:21:37 PM EDT 2024 RetroPie-Setup version: 4.8.8 (94b131a) System: x86_64 (x86_64) - Ubuntu 24.04 LTS - Linux retropie-VirtualBox 6.8.0-40-generic #40-Ubuntu SMP PREEMPT_DYNAMIC Fri Jul 5 10:34:03 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux = = = = = = = = = = = = = = = = = = = = = Installing dependencies for 'xemu' : Xbox Emulator = = = = = = = = = = = = = = = = = = = = = /home/retropie/RetroPie-Setup/tmp/build/xemu /home/retropie/RetroPie-Setup = = = = = = = = = = = = = = = = = = = = = Getting sources for 'xemu' : Xbox Emulator = = = = = = = = = = = = = = = = = = = = = /home/retropie/RetroPie-Setup = = = = = = = = = = = = = = = = = = = = = Building 'xemu' : Xbox Emulator = = = = = = = = = = = = = = = = = = = = = make: *** No rule to make target 'clean'. Stop. make: *** No targets specified and no makefile found. Stop. Could not successfully build xemu - Xbox Emulator (/home/retropie/RetroPie-Setup/tmp/build/xemu/xemu not found). Log ended at: Mon Aug 19 03:21:37 PM EDT 2024 Total running time: 0 hours, 0 mins, 0 secs
You must forgive me because I am quite new to this. Can anyone provide assistance?
-
Update. I made a change to script where it uses the exact command to clone XEMU instead of the "gitpullorclone" command and the system actually started building.
Here is the install script#!/usr/bin/env bash # This file is part of The RetroPie Project # # The RetroPie Project is the legal property of its developers, whose names are # too numerous to list here. Please refer to the COPYRIGHT.md file distributed with this source. # # See the LICENSE.md file at the top-level directory of this distribution and # at https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/LICENSE.md # rp_module_id="xemu" rp_module_desc="Xbox Emulator" rp_module_help="ROM Extensions: .iso .xiso \n\nCopy your xbox games to $romdir/xbox" rp_module_licence="https://github.com/xemu-project/xemu/blob/master/LICENSE" rp_module_repo="https://github.com/xemu-project/xemu.git" rp_module_section="exp" function depends_xemu() { local depends=( build-essential libsdl2-dev libepoxy-dev libpixman-1-dev libgtk-3-dev libssl-dev libsamplerate0-dev libpcap-dev ninja-build python3-yaml libslirp-dev) getDepends "${depends[@]}" } function sources_xemu() { #gitPullOrClone git clone --recurse-submodules https://github.com/xemu-project/xemu.git } function build_xemu() { #mkdir xemu cd xemu #ls ./build.sh #make clean #make } } function install_xemu() { #cd xemu #./build.sh echo install } function configure_xemu() { mkRomDir "xbox" # Create the xbox BIOs directory if it doesn't exist if [ ! -d "$biosdir/xbox" ]; then mkdir -p "$biosdir/xbox" fi chown -R $user:$user "$biosdir/xbox" # Create a symbolic link for BIOS if [ ! -L "$home/opt/retropie/emulators/xemu/xbox" ]; then ln -s "$biosdir/xbox" "$home/opt/retropie/emulators/xemu/xbox" fi if [[ "$md_mode" == "install" ]]; then mkUserDir "$md_conf_root/xbox" mkUserDir "$md_conf_root/xbox/$md_id" moveConfigFile "$home/.$md_id" "$md_conf_root/xbox/$md_id" fi addEmulator 1 "$md_id" "xbox" "$md_inst/xbox -r 3 -i %ROM%" addSystem "xbox" }
here is a shortened version of the log.
Log started at: Fri Sep 6 01:31:13 PM EDT 2024 RetroPie-Setup version: 4.8.8 (82bbd5b) System: x86_64 (x86_64) - Ubuntu 24.04.1 LTS - Linux retropie-VirtualBox 6.8.0-41-generic #41-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 2 20:41:06 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux = = = = = = = = = = = = = = = = = = = = = Installing dependencies for 'xemu' : Xbox Emulator = = = = = = = = = = = = = = = = = = = = = /home/retropie/RetroPie-Setup/tmp/build/xemu /home/retropie/RetroPie-Setup = = = = = = = = = = = = = = = = = = = = = Getting sources for 'xemu' : Xbox Emulator = = = = = = = = = = = = = = = = = = = = = Cloning into 'xemu'... Updating files: 67% (6484/9588) Updating files: 100% (9588/9588) Updating files: 100% (9588/9588), done. Submodule 'dtc' (https://gitlab.com/qemu-project/dtc.git) registered for path 'dtc' Submodule 'genconfig' (https://github.com/mborgerson/genconfig.git) registered for path 'genconfig' Submodule 'hw/xbox/nv2a/thirdparty/nv2a_vsh_cpu' (https://github.com/abaire/nv2a_vsh_cpu.git) registered for path 'hw/xbox/nv2a/thirdparty/nv2a_vsh_cpu' Submodule 'meson' (https://gitlab.com/qemu-project/meson.git) registered for path 'meson' Submodule 'roms/QemuMacDrivers' (https://gitlab.com/qemu-project/QemuMacDrivers.git) registered for path 'roms/QemuMacDrivers' Submodule 'roms/SLOF' (https://gitlab.com/qemu-project/SLOF.git) registered for path 'roms/SLOF' Submodule 'roms/edk2' (https://gitlab.com/qemu-project/edk2.git) registered for path 'roms/edk2' Submodule 'roms/ipxe' (https://gitlab.com/qemu-project/ipxe.git) registered for path 'roms/ipxe' Submodule 'roms/openbios' (https://gitlab.com/qemu-project/openbios.git) registered for path 'roms/openbios' Submodule 'roms/opensbi' (https://gitlab.com/qemu-project/opensbi.git) registered for path 'roms/opensbi' Submodule 'roms/qboot' (https://gitlab.com/qemu-project/qboot.git) registered for path 'roms/qboot' Submodule 'roms/qemu-palcode' (https://gitlab.com/qemu-project/qemu-palcode.git) registered for path 'roms/qemu-palcode' Submodule 'roms/seabios' (https://gitlab.com/qemu-project/seabios.git/) registered for path 'roms/seabios' Submodule 'roms/seabios-hppa' (https://gitlab.com/qemu-project/seabios-hppa.git) registered for path 'roms/seabios-hppa' Submodule 'roms/sgabios' (https://gitlab.com/qemu-project/sgabios.git) registered for path 'roms/sgabios' Submodule 'roms/skiboot' (https://gitlab.com/qemu-project/skiboot.git) registered for path 'roms/skiboot' Submodule 'roms/u-boot' (https://gitlab.com/qemu-project/u-boot.git) registered for path 'roms/u-boot' Submodule 'roms/u-boot-sam460ex' (https://gitlab.com/qemu-project/u-boot-sam460ex.git) registered for path 'roms/u-boot-sam460ex' Submodule 'roms/vbootrom' (https://gitlab.com/qemu-project/vbootrom.git) registered for path 'roms/vbootrom' Submodule 'subprojects/libvfio-user' (https://gitlab.com/qemu-project/libvfio-user.git) registered for path 'subprojects/libvfio-user' Submodule 'tests/fp/berkeley-softfloat-3' (https://gitlab.com/qemu-project/berkeley-softfloat-3.git) registered for path 'tests/fp/berkeley-softfloat-3' Submodule 'tests/fp/berkeley-testfloat-3' (https://gitlab.com/qemu-project/berkeley-testfloat-3.git) registered for path 'tests/fp/berkeley-testfloat-3' Submodule 'tests/lcitool/libvirt-ci' (https://gitlab.com/libvirt/libvirt-ci.git) registered for path 'tests/lcitool/libvirt-ci' Submodule 'tomlplusplus' (https://github.com/marzer/tomlplusplus) registered for path 'tomlplusplus' Submodule 'ui/keycodemapdb' (https://gitlab.com/qemu-project/keycodemapdb.git) registered for path 'ui/keycodemapdb' Submodule 'ui/thirdparty/httplib' (https://github.com/yhirose/cpp-httplib) registered for path 'ui/thirdparty/httplib' Submodule 'ui/thirdparty/imgui' (https://github.com/xemu-project/imgui.git) registered for path 'ui/thirdparty/imgui' Submodule 'ui/thirdparty/implot' (https://github.com/epezent/implot.git) registered for path 'ui/thirdparty/implot' Submodule 'hw/xbox/nv2a/xxHash' (https://github.com/Cyan4973/xxHash.git) registered for path 'util/xxHash' Cloning into '/home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/dtc'... Cloning into '/home/retropie/RetroPie-Setup/tmp/build/xemu/ffdc1a2' Submodule path 'ui/thirdparty/imgui': checked out 'fceff3210b9ecfa8fc66710a00f4cabc2447460f' Submodule path 'ui/thirdparty/implot': checked out 'cc5e1daa5c7f2335a9460ae79c829011dc5cef2d' Submodule path 'util/xxHash': checked out '72e69d33c7521b122cfa3262ae4d0dc60a514439' /home/retropie/RetroPie-Setup /home/retropie/RetroPie-Setup/tmp/build/xemu /home/retropie/RetroPie-Setup = = = = = = = = = = = = = = = = = = = = = Building 'xemu' : Xbox Emulator = = = = = = = = = = = = = = = = = = = = = Compiling for Linux... + /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/configure '--extra-cflags=-DXBOX=1 -Wno-error=redundant-decls -march=native -O2' --extra-ldflags= --target-list=i386-softmmu --enable-lto --disable-werror Using './build' as the directory for build output DEPRECATION: "pkgconfig" entry is deprecated and should be replaced by "pkg-config" The Meson build system Version: 1.3.2 Source dir: /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu Build dir: /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/build Build type: native build DEPRECATION: Option renderdoc already exists. Project name: qemu Project version: 7.2.4 C compiler for the host machine: cc -m64 -mcx16 (gcc 13.2.0 "cc (Ubuntu 13.2.0-23ubuntu4) 13.2.0") C linker for the host machine: cc -m64 -mcx16 ld.bfd 2.42 Host machine cpu family: x86_64 Host machine cpu: x86_64 Program scripts/symlink-install-tree.py found: YES (/usr/bin/python3 /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/scripts/symlink-install-tree.py) Program sh found: YES (/usr/bin/sh) Program python3 found: YES (/usr/bin/python3) Program bzip2 found: YES (/usr/bin/bzip2) Program iasl found: NO Compiler for C supports link arguments -Wl,-z,relro: YES Compiler for C supports link arguments -Wl,-z,now: YES C++ compiler for the host machine: c++ -m64 -mcx16 (gcc 13.2.0 "c++ (Ubuntu 13.2.0-23ubuntu4) 13.2.0") C++ linker for the host machine: c++ -m64 -mcx16 ld.bfd 2.42 Compiler for C++ supports link arguments -Wl,--warn-common: YES Program cgcc skipped: feature sparse disabled Program scripts/xemu-version.sh found: YES (/home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/scripts/xemu-version.sh) Library m found: YES Run-time dependency threads found: YES Library util found: YES Dependency gio-2.0 skipped: feature gio disabled Found pkg-config: YES (/usr/bin/pkg-config) 1.8.1 Run-time dependency pixman-1 found: YES 0.42.2 Run-time dependency zlib found: YES 1.3 Library aio skipped: feature linux_aio disabled Dependency liburing skipped: feature linux_io_uring disabled Dependency libnfs skipped: feature libnfs disabled Dependency appleframeworks (modules: Cocoa, CoreVideo) skipped: feature cocoa disabled Dependency appleframeworks (modules: vmnet) skipped: feature vmnet disabled Dependency libseccomp skipped: feature seccomp disabled Library cap-ng skipped: feature cap_ng disabled Dependency xkbcommon skipped: feature xkbcommon disabled Run-time dependency slirp found: YES 4.7.0 Library vdeplug skipped: feature vde disabled Dependency libpulse skipped: feature pa disabled Dependency alsa skipped: feature alsa disabled Dependency jack skipped: feature jack disabled Dependency sndio skipped: feature sndio disabled Dependency spice-protocol skipped: feature spice_protocol disabled Dependency spice-server skipped: feature spice disabled Library rt found: YES Dependency libiscsi skipped: feature libiscsi disabled Dependency libzstd skipped: feature zstd disabled Dependency virglrenderer skipped: feature virglrenderer disabled Dependency blkio skipped: feature blkio disabled Dependency libcurl skipped: feature curl disabled Dependency libudev skipped: feature libudev disabled Library brlapi skipped: feature brlapi disabled Run-time dependency sdl2 found: YES 2.30.0 Dependency SDL2_image skipped: feature sdl_image disabled Library rados skipped: feature rbd disabled Library rbd skipped: feature rbd disabled Dependency glusterfs-api skipped: feature glusterfs disabled Dependency libssh skipped: feature libssh disabled Library bz2 skipped: feature bzip2 disabled Library lzfse skipped: feature lzfse disabled Has header "dsound.h" : NO Dependency appleframeworks (modules: CoreAudio) skipped: feature coreaudio disabled Run-time dependency gbm found: YES 24.0.9-0ubuntu0.1 Run-time dependency openssl found: YES 3.0.13 Run-time dependency libpcap found: YES 1.10.4 Run-time dependency samplerate found: YES 0.2.2 Dependency libgcrypt skipped: feature gcrypt disabled Dependency nettle skipped: feature nettle disabled Run-time dependency gmp found: NO (tried pkgconfig) Run-time dependency gtk+-3.0 found: YES 3.24.41 Run-time dependency gtk+-x11-3.0 found: YES 3.24.41 Dependency vte-2.91 skipped: feature vte disabled Run-time dependency x11 found: YES 1.8.7 Library pam skipped: feature auth_pam disabled Library snappy skipped: feature snappy disabled Library lzo2 skipped: feature lzo disabled Library numa skipped: feature numa disabled Library ibumad skipped: feature rdma disabled Library rdmacm skipped: feature rdma disabled Library ibverbs skipped: feature rdma disabled Dependency libcacard skipped: feature smartcard disabled Dependency u2f-emu skipped: feature u2f disabled Dependency canokey-qemu skipped: feature canokey disabled Dependency libusbredirparser-0.5 skipped: feature usb_redir disabled Dependency libusb-1.0 skipped: feature libusb disabled Dependency libpmem skipped: feature libpmem disabled Dependency libdaxctl skipped: feature libdaxctl disabled Run-time dependency libkeyutils found: NO (tried pkgconfig) Checking for function "gettid" : YES Dependency libselinux skipped: feature selinux disabled Dependency fuse3 skipped: feature fuse disabled Dependency libbpf skipped: feature bpf disabled Has header "sys/epoll.h" : YES Has header "linux/magic.h" : YES Has header "valgrind/valgrind.h" : NO Has header "linux/btrfs.h" : YES Has header "libdrm/drm.h" : YES Has header "pty.h" : YES Has header "sys/disk.h" : NO Has header "sys/ioccom.h" : NO Has header "sys/kcov.h" : NO Checking for function "close_range" : YES Checking for function "accept4" : YES Checking for function "clock_adjtime" : YES Checking for function "dup3" : YES Checking for function "fallocate" : YES Checking for function "posix_fallocate" : YES Checking for function "posix_memalign" : YES Checking for function "_aligned_malloc" : NO Checking for function "valloc" : YES Checking for function "memalign" : YES Checking for function "ppoll" : YES Checking for function "preadv" : YES Checking for function "pthread_fchdir_np" : NO Checking for function "sendfile" : YES Checking for function "setns" : YES Checking for function "unshare" : YES Checking for function "syncfs" : YES Checking for function "sync_file_range" : YES Checking for function "timerfd_create" : YES Checking for function "copy_file_range" : YES Checking for function "getifaddrs" : YES Checking for function "openpty" with dependency -lutil: YES Checking for function "strchrnul" : YES Checking for function "system" : YES Header "byteswap.h" has symbol "bswap_32" : YES Header "sys/epoll.h" has symbol "epoll_create1" : YES Header "linux/falloc.h" has symbol "FALLOC_FL_PUNCH_HOLE" : YES Header "linux/falloc.h" has symbol "FALLOC_FL_KEEP_SIZE" : YES Header "linux/falloc.h" has symbol "FALLOC_FL_ZERO_RANGE" : YES Has header "linux/fiemap.h" : YES Header "linux/fs.h" has symbol "FS_IOC_FIEMAP" : YES Checking for function "getrandom" : YES Header "sys/random.h" has symbol "GRND_NONBLOCK" : YES Header "sys/inotify.h" has symbol "inotify_init" : YES Header "sys/inotify.h" has symbol "inotify_init1" : YES Header "machine/bswap.h" has symbol "bswap32" : NO Header "sys/prctl.h" has symbol "PR_SET_TIMERSLACK" : YES Header "linux/rtnetlink.h" has symbol "IFLA_PROTO_DOWN" : YES Header "sys/sysmacros.h" has symbol "makedev" : YES Header "getopt.h" has symbol "optreset" : NO Header "netinet/in.h" has symbol "IPPROTO_MPTCP" : YES Header "sys/mount.h" has symbol "FSCONFIG_SET_FLAG" : YES Checking whether type "struct sigevent" has member "sigev_notify_thread_id" : NO Checking whether type "struct stat" has member "st_atim" : YES Checking for type "struct iovec" : YES Checking for type "struct utmpx" : YES Header "linux/vm_sockets.h" has symbol "AF_VSOCK" : YES Program scripts/minikconf.py found: YES (/usr/bin/python3 /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/scripts/minikconf.py) Configuring i386-softmmu-config-target.h using configuration Configuring i386-softmmu-config-devices.mak with command Reading depfile: /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/build/meson-private/i386-softmmu-config-devices.mak.d Configuring i386-softmmu-config-devices.h using configuration Program scripts/make-config-poison.sh found: YES (/home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/scripts/make-config-poison.sh) Dependency capstone skipped: feature capstone disabled Library fdt found: NO Configuring config-host.h using configuration Program scripts/hxtool found: YES (/home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/scripts/hxtool) Program scripts/shaderinclude.py found: YES (/usr/bin/python3 /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/scripts/shaderinclude.py) Program scripts/qapi-gen.py found: YES (/usr/bin/python3 /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/scripts/qapi-gen.py) Program scripts/pack-file.py found: YES (/home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/scripts/pack-file.py) Program scripts/qemu-version.sh found: YES (/home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/scripts/qemu-version.sh) Program scripts/decodetree.py found: YES (/usr/bin/python3 /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/scripts/decodetree.py) Program ../scripts/modules/module_block.py found: YES (/usr/bin/python3 /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/block/../scripts/modules/module_block.py) Program ../scripts/block-coroutine-wrapper.py found: YES (/usr/bin/python3 /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/block/../scripts/block-coroutine-wrapper.py) Program scripts/modinfo-collect.py found: YES (/home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/scripts/modinfo-collect.py) Program scripts/modinfo-generate.py found: YES (/home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/scripts/modinfo-generate.py) Program nm found: YES Program scripts/undefsym.py found: YES (/usr/bin/python3 /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/scripts/undefsym.py) Program scripts/feature_to_c.sh found: YES (/bin/sh /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/scripts/feature_to_c.sh) Configuring 50-edk2-i386-secure.json using configuration Configuring 50-edk2-x86_64-secure.json using configuration Configuring 60-edk2-aarch64.json using configuration Configuring 60-edk2-arm.json using configuration Configuring 60-edk2-i386.json using configuration Configuring 60-edk2-x86_64.json using configuration Program qemu-keymap found: NO Program sphinx-build-3 sphinx-build skipped: feature docs disabled Program diff found: YES (/usr/bin/diff) Program dbus-daemon found: YES (/usr/bin/dbus-daemon) Found CMake: /usr/bin/cmake (3.28.3) Run-time dependency gvnc-1.0 found: NO (tried pkgconfig and cmake) Program initrd-stress.sh found: YES (/home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/tests/migration/initrd-stress.sh) Program xgettext skipped: feature gettext disabled Build targets in project: 505 qemu 7.2.4 Directories Install prefix : /usr/local BIOS directory : share/qemu firmware path : share/qemu-firmware binary directory : /usr/local/bin library directory : /usr/local/lib/x86_64-linux-gnu module directory : lib/x86_64-linux-gnu/qemu libexec directory : /usr/local/libexec include directory : /usr/local/include config directory : /usr/local/etc local state directory : /var/local Manual directory : /usr/local/share/man Doc directory : /usr/local/share/doc Build directory : /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/build Source path : /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu GIT submodules : ui/keycodemapdb ui/thirdparty/imgui ui/thirdparty/implot ui/thirdparty/httplib util/xxHash tomlplusplus genconfig hw/xbox/nv2a/thirdparty/nv2a_vsh_cpu tests/fp/berkeley-testfloat-3 tests/fp/berkeley-softfloat-3 dtc Host binaries git : git make : make python : /usr/bin/python3 (version: 3.12) sphinx-build : NO gdb : /usr/bin/gdb iasl : NO genisoimage : smbd : NO Configurable features Documentation : NO system-mode emulation : YES user-mode emulation : NO block layer : YES Install blobs : YES module support : NO fuzzing support : NO Audio drivers : Trace backends : log D-Bus display : NO QOM debugging : NO vhost-kernel support : NO vhost-net support : NO vhost-user support : NO vhost-user-crypto support : NO vhost-user-blk server support: NO vhost-vdpa support : NO build guest agent : NO Compilation host CPU : x86_64 host endianness : little C compiler : cc -m64 -mcx16 Host C compiler : cc -m64 -mcx16 C++ compiler : c++ -m64 -mcx16 CFLAGS : -march=native -O2 -DXBOX=1 -Wno-error=redundant-decls -march=native -O2 -O3 -g CXXFLAGS : -march=native -O2 -DXBOX=1 -Wno-error=redundant-decls -march=native -O2 -O3 -g LDFLAGS : -march=native -O2 -DXBOX=1 -Wno-error=redundant-decls -march=native -O2 QEMU_CFLAGS : -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -Wold-style-declaration -Wold-style-definition -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wnested-externs -Wendif-labels -Wexpansion-to-defined -Wimplicit-fallthrough=2 -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong QEMU_CXXFLAGS : -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wundef -Wwrite-strings -fno-strict-aliasing -fno-common -fwrapv -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wendif-labels -Wexpansion-to-defined -Wimplicit-fallthrough=2 -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong QEMU_OBJCFLAGS : QEMU_LDFLAGS : -fstack-protector-strong -Wl,-z,relro -Wl,-z,now -Wl,--warn-common profiler : NO link-time optimization (LTO) : YES PIE : YES static build : NO malloc trim support : NO membarrier : NO debug stack usage : NO mutex debugging : NO memory allocator : system avx2 optimization : NO avx512f optimization : NO gprof enabled : NO gcov : NO thread sanitizer : NO CFI support : NO strip binaries : NO sparse : NO mingw32 support : NO Targets and accelerators KVM support : NO HAX support : NO HVF support : NO WHPX support : NO NVMM support : NO Xen support : NO TCG support : YES TCG backend : native (x86_64) TCG plugins : NO TCG debug enabled : NO target list : i386-softmmu default devices : YES out of process emulation : NO vfio-user server : NO Block layer support coroutine backend : ucontext coroutine pool : YES Block whitelist (rw) : Block whitelist (ro) : Use block whitelist in tools : NO VirtFS support : NO build virtiofs daemon : NO Live block migration : NO replication support : NO bochs support : NO cloop support : NO dmg support : NO qcow v1 support : NO vdi support : NO vvfat support : NO qed support : NO parallels support : NO FUSE exports : NO VDUSE block exports : NO Crypto TLS priority : NORMAL GNUTLS support : NO libgcrypt : NO nettle : NO AF_ALG support : NO rng-none : NO Linux keyring : NO Dependencies SDL support : YES SDL image support : NO GTK support : YES pixman : YES 0.42.2 VTE support : NO slirp support : YES 4.7.0 libtasn1 : NO PAM : NO iconv support : NO curses support : NO virgl support : NO blkio support : NO curl support : NO Multipath support : NO PNG support : NO VNC support : NO OSS support : NO sndio support : NO ALSA support : NO PulseAudio support : NO JACK support : NO brlapi support : NO vde support : NO netmap support : NO l2tpv3 support : NO Linux AIO support : NO Linux io_uring support : NO ATTR/XATTR support : NO RDMA support : NO PVRDMA support : NO fdt support : internal libcap-ng support : NO bpf support : NO spice protocol support : NO rbd support : NO smartcard support : NO U2F support : NO libusb : NO usb net redir : NO OpenGL support (epoxy) : YES GBM : YES 24.0.9-0ubuntu0.1 libiscsi support : NO libnfs support : NO seccomp support : NO GlusterFS support : NO TPM support : NO libssh support : NO lzo support : NO snappy support : NO bzip2 support : NO lzfse support : NO zstd support : NO NUMA host support : NO capstone : NO libpmem support : NO libdaxctl support : NO libudev : NO FUSE lseek : NO selinux : NO vtune : NO User defined options Native files : config-meson.cross auto_features : disabled prefix : /usr/local b_lto : true vfio_user_server : disabled Found ninja-1.11.1 at /usr/bin/ninja Running postconf script '/usr/bin/python3 /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/scripts/symlink-install-tree.py' + make -j4 qemu-system-i386 + tee build.log changing dir to build for make "qemu-system-i386"... make[1]: Entering directory '/home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/build' GIT ui/keycodemapdb ui/thirdparty/imgui ui/thirdparty/implot ui/thirdparty/httplib util/xxHash tomlplusplus genconfig hw/xbox/nv2a/thirdparty/nv2a_vsh_cpu tests/fp/berkeley-testfloat-3 tests/fp/berkeley-softfloat-3 dtc /usr/bin/ninja build.ninja && touch build.ninja.stamp ninja: no work to do. /usr/bin/meson introspect --targets --tests --benchmarks | /usr/bin/python3 -B scripts/mtest2make.py > Makefile.mtest GIT ui/keycodemapdb ui/thirdparty/imgui ui/thirdparty/implot ui/thirdparty/httplib util/xxHash tomlplusplus genconfig hw/xbox/nv2a/thirdparty/nv2a_vsh_cpu tests/fp/berkeley-testfloat-3 tests/fp/berkeley-softfloat-3 dtc [1/1528] Generating config-poison.h with a custom command (wrapped by meson to capture output) [2/1528] Compiling C object libfdt.a.p/dtc_libfdt_fdt.c.o net_announce.c.o [1528/1528] Linking target qemu-system-i386 make[1]: Leaving directory '/home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/build' real 3m10.419s user 6m43.735s sys 2m50.717s + package_linux + rm -rf dist + mkdir -p dist + cp build/qemu-system-i386 dist/xemu + test -e /home/retropie/RetroPie-Setup/tmp/build/xemu/xemu/XEMU_LICENSE + python3 ./scripts/gen-license.py /home/retropie/RetroPie-Setup Log ended at: Fri Sep 6 01:39:16 PM EDT 2024 Total running time: 0 hours, 8 mins, 3 secs
dispite the sucessful build the emulator is not installed, but it is progress. I will continue to look into this. If anyone has any input please share.
-
@Unknown im taking a look at this
already fixed the source issue. and ill see what else i can figure out.
good job so far -
@ExarKunIv said in Running Xbox original games on Retropie (PC only):
good job so far
Thank you -
@Unknown here is a working script. i was able to build and install it.
test it please as i dont have a bios or game files yet#!/usr/bin/env bash # This file is part of The RetroPie Project # # The RetroPie Project is the legal property of its developers, whose names are # too numerous to list here. Please refer to the COPYRIGHT.md file distributed with this source. # # See the LICENSE.md file at the top-level directory of this distribution and # at https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/LICENSE.md # rp_module_id="xemu" rp_module_desc="Xbox Emulator" rp_module_help="ROM Extensions: .iso .xiso \n\nCopy your xbox games to $romdir/xbox" rp_module_licence="https://github.com/xemu-project/xemu/blob/master/LICENSE" rp_module_repo="git https://github.com/xemu-project/xemu.git" rp_module_section="exp" function depends_xemu() { local depends=( build-essential libsdl2-dev libepoxy-dev libpixman-1-dev libgtk-3-dev libssl-dev libsamplerate0-dev libpcap-dev ninja-build python3-yaml libslirp-dev) getDepends "${depends[@]}" } function sources_xemu() { gitPullOrClone } function build_xemu() { cd xemu ./build.sh md_ret_require="$md_build/dist/xemu" } function install_xemu() { md_ret_files=( 'dist/xemu' 'dist/LICENSE.txt' ) } function configure_xemu() { mkRomDir "xbox" # Create the xbox BIOs directory if it doesn't exist if [ ! -d "$biosdir/xbox" ]; then mkdir -p "$biosdir/xbox" fi chown -R $user:$user "$biosdir/xbox" # Create a symbolic link for BIOS if [ ! -L "/opt/retropie/emulators/xemu/xbox" ]; then ln -s "$biosdir/xbox" "/opt/retropie/emulators/xemu" fi if [[ "$md_mode" == "install" ]]; then mkUserDir "$md_conf_root/xbox" mkUserDir "$md_conf_root/xbox/$md_id" moveConfigFile "$home/.$md_id" "$md_conf_root/xbox/$md_id" fi addEmulator 1 "$md_id" "xbox" "$md_inst/xbox -r 3 -i %ROM%" addSystem "xbox" }
-
@ExarKunIv
I will as soon as I can. I’m pretty busy at the moment. -
@Unknown said in Running Xbox original games on Retropie (PC only):
I’m pretty busy at the moment.
not much different here. looking at your script and figuring out what was going was easier since you did a good job making it and i just got done working on another script. so i was in that mine set :D
-
I was able to get successful install. However the game did not work. This is my runcaommand log:
Parameters: Executing: /opt/retropie/emulators/xemu/xbox -r 3 -i "/home/retropie/RetroPie/roms/xbox/ATV Quad Power Racing 2.iso" /opt/retropie/supplementary/runcommand/runcommand.sh: line 1322: /opt/retropie/emulators/xemu/xbox: Is a directory
My guess is that either the emualtor can't find the BIOS or we are using the wrong command to start it.
-
@Unknown i will hunt down the bios and a game and see what i can see
-
@ExarKunIv
Sounds like a plan -
@Unknown script is now fixed, but it will not run on the Pi5, the Pi5 does not have OpenGL4.0 and that is a requirment.
not sure if there is a way to force it to run on a lower version or something different.
here is the new script for you to mess with.
#!/usr/bin/env bash # This file is part of The RetroPie Project # # The RetroPie Project is the legal property of its developers, whose names are # too numerous to list here. Please refer to the COPYRIGHT.md file distributed with this source. # # See the LICENSE.md file at the top-level directory of this distribution and # at https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/LICENSE.md # rp_module_id="xemu" rp_module_desc="Xbox Emulator" rp_module_help="ROM Extensions: .iso .xiso \n\nCopy your xbox games to $romdir/xbox" rp_module_licence="https://github.com/xemu-project/xemu/blob/master/LICENSE" rp_module_repo="git https://github.com/xemu-project/xemu.git" rp_module_section="exp" function depends_xemu() { local depends=( build-essential libsdl2-dev libepoxy-dev libpixman-1-dev libgtk-3-dev libssl-dev libsamplerate0-dev libpcap-dev ninja-build python3-yaml libslirp-dev) getDepends "${depends[@]}" } function sources_xemu() { gitPullOrClone } function build_xemu() { cd xemu ./build.sh md_ret_require="$md_build/dist/xemu" } function install_xemu() { md_ret_files=( 'dist/xemu' 'dist/LICENSE.txt' ) } function configure_xemu() { mkRomDir "xbox" local launch_prefix isPlatform "kms" && launch_prefix="XINIT-WM:" # Create the xbox BIOs directory if it doesn't exist if [ ! -d "$biosdir/xbox" ]; then mkdir -p "$biosdir/xbox" fi chown -R $user:$user "$biosdir/xbox" # Create a symbolic link for BIOS if [ ! -L "/opt/retropie/emulators/xemu/xbox" ]; then ln -s "$biosdir/xbox" "/opt/retropie/emulators/xemu" fi if [[ "$md_mode" == "install" ]]; then mkUserDir "$md_conf_root/xbox" mkUserDir "$md_conf_root/xbox/$md_id" moveConfigFile "$home/.$md_id" "$md_conf_root/xbox/$md_id" fi addEmulator 1 "$md_id" "xbox" "$launch_prefix$md_inst/xemu -r 3 -i %ROM%" addSystem "xbox" "Xbox" ".iso" }
-
@ExarKunIv
Getting ready to test as we speak. Out of curiosity, what prevented it from working previously?
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.