RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Running Xbox original games on Retropie (PC only)

    Scheduled Pinned Locked Moved General Discussion and Gaming
    original xboxxbox emulationxbox
    49 Posts 4 Posters 5.8k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • ExarKunIvE
      ExarKunIv @Unknown
      last edited by

      @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

      RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
      RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
      Maintainer of RetroPie-Extra .

      UnknownU 1 Reply Last reply Reply Quote 1
      • UnknownU
        Unknown @ExarKunIv
        last edited by

        @ExarKunIv said in Running Xbox original games on Retropie (PC only):

        good job so far
        Thank you

        You can't beat the classics(unless you copy them).

        ExarKunIvE 1 Reply Last reply Reply Quote 0
        • ExarKunIvE
          ExarKunIv @Unknown
          last edited by

          @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"
          
          }
          

          RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
          RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
          Maintainer of RetroPie-Extra .

          UnknownU 1 Reply Last reply Reply Quote 1
          • UnknownU
            Unknown @ExarKunIv
            last edited by

            @ExarKunIv
            I will as soon as I can. I’m pretty busy at the moment.

            You can't beat the classics(unless you copy them).

            ExarKunIvE 1 Reply Last reply Reply Quote 0
            • ExarKunIvE
              ExarKunIv @Unknown
              last edited by

              @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

              RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
              RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
              Maintainer of RetroPie-Extra .

              1 Reply Last reply Reply Quote 1
              • UnknownU
                Unknown
                last edited by

                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.

                You can't beat the classics(unless you copy them).

                ExarKunIvE 1 Reply Last reply Reply Quote 0
                • ExarKunIvE
                  ExarKunIv @Unknown
                  last edited by

                  @Unknown i will hunt down the bios and a game and see what i can see

                  RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                  RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                  Maintainer of RetroPie-Extra .

                  UnknownU 1 Reply Last reply Reply Quote 1
                  • UnknownU
                    Unknown @ExarKunIv
                    last edited by

                    @ExarKunIv
                    Sounds like a plan

                    You can't beat the classics(unless you copy them).

                    ExarKunIvE 1 Reply Last reply Reply Quote 0
                    • ExarKunIvE
                      ExarKunIv @Unknown
                      last edited by

                      @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"
                      
                      }
                      

                      RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                      RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                      Maintainer of RetroPie-Extra .

                      UnknownU 2 Replies Last reply Reply Quote 1
                      • UnknownU
                        Unknown @ExarKunIv
                        last edited by

                        @ExarKunIv
                        Getting ready to test as we speak. Out of curiosity, what prevented it from working previously?

                        You can't beat the classics(unless you copy them).

                        ExarKunIvE 1 Reply Last reply Reply Quote 0
                        • UnknownU
                          Unknown @ExarKunIv
                          last edited by

                          @ExarKunIv
                          It starts and the emulator seems to load but then it geneates this error.

                          Parameters: 
                          Executing: /opt/retropie/emulators/xemu/xemu -r 3 -i "/home/retropie/RetroPie/roms/xbox/ATV Quad Power Racing 2.iso"
                          xemu_version: 0.7.132
                          xemu_branch: master
                          xemu_commit: 8707d2aa2626063cb67b5ea20382584a0848dce7
                          xemu_date: Mon Sep  9 11:44:52 PM UTC 2024
                          xemu_settings_get_base_path: base path: /home/retropie/.local/share/xemu/xemu/
                          xemu_settings_get_path: config path: /home/retropie/.local/share/xemu/xemu/xemu.toml
                          MESA: error: ZINK: failed to choose pdev
                          glx: failed to create drisw screen
                          CPU: Intel(R) Core(TM) i5-10600K CPU @ 4.10GHz
                          OS_Version: Ubuntu 24.04.1 LTS
                          GL_VENDOR: Mesa
                          GL_RENDERER: llvmpipe (LLVM 17.0.6, 128 bits)
                          GL_VERSION: 4.5 (Core Profile) Mesa 24.0.9-0ubuntu0.1
                          GL_SHADING_LANGUAGE_VERSION: 4.50
                          xemu: -r: invalid option
                          Created QEMU launch parameters: /opt/retropie/emulators/xemu/xemu -machine xbox,kernel-irqchip=off,avpack=hdtv -device smbus-storage,file=/home/retropie/.local/share/xemu/xemu/eeprom.bin -m 64 -drive index=1,media=cdrom,file= -display xemu -device usb-hub,port=1,ports=4 -r 3 -i /home/retropie/RetroPie/roms/xbox/ATV Quad Power Racing 2.iso 
                          

                          However we are a lot further along than we were before.

                          You can't beat the classics(unless you copy them).

                          1 Reply Last reply Reply Quote 0
                          • ExarKunIvE
                            ExarKunIv @Unknown
                            last edited by

                            @Unknown said in Running Xbox original games on Retropie (PC only):

                            what prevented it from working previously?

                            We had it trying to run Xbox not xemu. So it was trying to start a folder. Lol

                            I have xinit in there since I was testing it on my pi. And that's what we need.

                            Since it's for PC. That part can be removed.

                            As for the error. I don't know. That's something I can't help with since I don't run Retropie on PC. Sorry

                            RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                            RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                            Maintainer of RetroPie-Extra .

                            1 Reply Last reply Reply Quote 0
                            • UnknownU
                              Unknown
                              last edited by

                              Ladies and Gentlemen we have SUCESSSSSSSS!!!!!!!!
                              The game booted. I didn't have time to test it further but it actually started the emulator. here is the updated 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="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  %ROM%"
                                  addSystem "xbox" "Xbox" ".iso"
                               
                              }
                              

                              here is the proof
                              IMG_4750.JPEG

                              You can't beat the classics(unless you copy them).

                              ExarKunIvE 1 Reply Last reply Reply Quote 0
                              • ExarKunIvE
                                ExarKunIv @Unknown
                                last edited by

                                @Unknown nice. Glad you figured it out

                                RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                                RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                                Maintainer of RetroPie-Extra .

                                UnknownU 1 Reply Last reply Reply Quote 1
                                • UnknownU
                                  Unknown @ExarKunIv
                                  last edited by

                                  @ExarKunIv thanks for the help. I don’t know if I could have done it without you. I have a little more testing to do before I submit a pull request. I also need to get the controls configured.

                                  You can't beat the classics(unless you copy them).

                                  ExarKunIvE 1 Reply Last reply Reply Quote 1
                                  • ExarKunIvE
                                    ExarKunIv @Unknown
                                    last edited by

                                    @Unknown glad I could help out

                                    RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                                    RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                                    Maintainer of RetroPie-Extra .

                                    UnknownU 1 Reply Last reply Reply Quote 0
                                    • UnknownU
                                      Unknown @ExarKunIv
                                      last edited by

                                      @ExarKunIv
                                      If you have any pointers on configuring the controls. Please let me know

                                      You can't beat the classics(unless you copy them).

                                      ExarKunIvE 1 Reply Last reply Reply Quote 0
                                      • ExarKunIvE
                                        ExarKunIv @Unknown
                                        last edited by

                                        @Unknown the only thing I have used is Xboxdrv

                                        https://retropie.org.uk/docs/Universal-Controller-Calibration-%26-Mapping-Using-xboxdrv/

                                        That's what I use on my PIs for custom controls.
                                        If you are on PC then I think something that maps controls should work

                                        RPi3B+ / 200GB/ RetroPie v4.5.14, RPi4 Model B 4gb / 256gb / RetroPie 4.8.2
                                        RPi5 4gb / 512gb / RetroPie 4.8.9 -Basic
                                        Maintainer of RetroPie-Extra .

                                        1 Reply Last reply Reply Quote 0
                                        • UnknownU
                                          Unknown
                                          last edited by

                                          update: after doing a little configuration the game doesn't boot. I think I messed something up in the settings. Probably selecting the wrong bios or something.

                                          Parameters: 
                                          Executing: /opt/retropie/emulators/xemu/xemu  "/home/retropie/RetroPie/roms/xbox/ATV Quad Power Racing 2.iso"
                                          xemu_version: 0.7.132
                                          xemu_branch: master
                                          xemu_commit: 8707d2aa2626063cb67b5ea20382584a0848dce7
                                          xemu_date: Sat Sep 21 02:14:45 PM UTC 2024
                                          xemu_settings_get_base_path: base path: /home/retropie/.local/share/xemu/xemu/
                                          xemu_settings_get_path: config path: /home/retropie/.local/share/xemu/xemu/xemu.toml
                                          MESA: error: ZINK: failed to choose pdev
                                          glx: failed to create drisw screen
                                          CPU: Intel(R) Core(TM) i5-10600K CPU @ 4.10GHz
                                          OS_Version: Ubuntu 24.04.1 LTS
                                          GL_VENDOR: Mesa
                                          GL_RENDERER: llvmpipe (LLVM 17.0.6, 128 bits)
                                          GL_VERSION: 4.5 (Core Profile) Mesa 24.0.9-0ubuntu0.1
                                          GL_SHADING_LANGUAGE_VERSION: 4.50
                                          xemu: /home/retropie/RetroPie/roms/xbox/ATV Quad Power Racing 2.iso: drive with bus=0, unit=0 (index=0) exists
                                          Created QEMU launch parameters: /opt/retropie/emulators/xemu/xemu -machine xbox,bootrom=/home/retropie/RetroPie/BIOS/xbox/mcpx_1.0.bin,kernel-irqchip=off,avpack=hdtv -device smbus-storage,file=/home/retropie/.local/share/xemu/xemu/eeprom.bin -bios /home/retropie/RetroPie/BIOS/xbox/system.bin -m 64 -drive index=0,media=disk,file=/home/retropie/RetroPie/BIOS/xbox/xbox_hdd.qcow2,locked=on -drive index=1,media=cdrom,file= -display xemu -device usb-hub,port=1,ports=4 /home/retropie/RetroPie/roms/xbox/ATV Quad Power Racing 2.iso 
                                          

                                          I will keep testing. If anyone knows what I did wrong please share your input.

                                          You can't beat the classics(unless you copy them).

                                          1 Reply Last reply Reply Quote 0
                                          • F fadingrose referenced this topic on
                                          • First post
                                            Last post

                                          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.