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.
    • 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.