Difference between revisions of "XQEMU"

From Emulation General Wiki
Jump to navigation Jump to search
m
(more rewrites)
Line 5: Line 5:
 
|developer = espes <small>(Project maintainer)</small>, mborgerson, JayFoxRox, lufix, wayo
 
|developer = espes <small>(Project maintainer)</small>, mborgerson, JayFoxRox, lufix, wayo
 
|website = [http://xqemu.com/ XQEMU.com]
 
|website = [http://xqemu.com/ XQEMU.com]
|source = [https://github.com/espes/xqemu GitHub]}}
+
|source = [https://github.com/espes/xqemu GitHub]
 
+
}}
'''XQEMU''' is a [[High/Low level emulation|low-level]] [[Xbox]] and Sega Chihiro emulator based off of [http://wiki.qemu.org/Main_Page QEMU], a general-purpose computer emulator and hypervisor. What makes this emulator different from the other attempts at Xbox emulation is the use of low-level emulation (since QEMU itself is a low-level emulator), while previous attempts at Xbox emulation used high-level emulation. This comes with its own benefits and downsides in comparison, but it does allow for greater [[emulation accuracy|accuracy]] and greater compatibility down the road.
+
'''XQEMU''' is a [[High/Low level emulation|low-level]] [[Xbox]] and Sega Chihiro emulator based off of [[QEMU]], a general-purpose computer emulator and hypervisor. What makes this emulator different from the other attempts at Xbox emulation is the use of low-level emulation (since QEMU itself is a low-level emulator), while previous attempts at Xbox emulation used high-level emulation. This comes with its own benefits and downsides in comparison, but it does allow for greater [[emulation accuracy|accuracy]] and greater compatibility down the road.
  
 
==Downloads==
 
==Downloads==
'''2018 QEMU rebase's official builds:'''
+
*[https://ci.appveyor.com/project/mborgerson/xqemu-c5j6o '''Official builds'''] (Windows)
*[https://ci.appveyor.com/project/mborgerson/xqemu-c5j6o Windows builds]
+
<!-- *[https://travis-ci.org/xqemu/xqemu Official builds] (Linux and macOS) The maintainers have not set Travis to upload builds. -->
*[https://travis-ci.org/xqemu/xqemu Linux and MacOS builds]
 
 
 
 
 
Other Sources:
 
*[http://www.emucr.com/search/label/XQEMU Unofficial Dev Builds]
 
  
 +
This build focuses on the ongoing 2.x rebase, which will bring XQEMU closer to QEMU's current release (2.12.0). Unofficial builds are also available [http://www.emucr.com/search/label/XQEMU here].
  
===Wrappers (Frontends)===
+
===Frontends===
Using XQEMU with a wrapper that looks and acts like a frontend may be easier for users.
+
Like QEMU, XQEMU does not come with a GUI and needs a separate frontend wrapper for GUI features.
 
 
*[https://github.com/Voxel9/XQEMU-Frontend XQEMU-Frontend] by Voxel9 (Binary releases available)
 
*[https://github.com/illwieckz/xqemurun XQEMURun] by illwieckz (No official releases available. This wrapper is more advanced than XQEMU-Frontend.)
 
 
 
 
 
Old wrappers:
 
*[https://github.com/JayFoxRox/xqemu-jfr xqemu-jfr] by JayFoxRox (XQEMU wrapped with a frontend-like GUI. Last updated in 2014. Binary releases available. Newer wrappers above are recommended.)
 
  
 +
*[https://github.com/Voxel9/XQEMU-Frontend XQEMU-Frontend] by Voxel9 (Builds available)
 +
*[https://github.com/illwieckz/xqemurun XQEMURun] by illwieckz (More advanced but does not compile builds.)
 +
<!--
 +
*[https://github.com/JayFoxRox/xqemu-jfr xqemu-jfr] by JayFoxRox (Builds include XQEMU, but the last update was in 2014.)
 +
-->
 
==Overview==
 
==Overview==
XQEMU is at a very early stage right now. Quite a lot of games can run on it, but it's low-level, accuracy-focused, and there hasn't been much (if any) focus on speed, so games are very slow on it currently. There is some work being done to make it use KVM, which could significantly increase speed, but it's currently not recommended and Linux only.
+
XQEMU is at a very early stage right now, so much so that they explain "the intended user is a developer who is capable of acquiring the necessary ROM images, and compiling the project from sources."<ref>[https://xqemu.com/ xqemu.com].</ref> Quite a lot of games can run on XQEMU, but its focus on accuracy means there hasn't been much (if any) focus on speed, so the games that work are very slow. A theoretical integration of KVM could speed up performance, but it would only be usable on Linux.
 
 
A contributor named 'mborgerson', who put in a few commits to espes' branch of XQEMU and in early 2018 kicked off the new Xbox emulator ÓpenXBOX, has, since [https://github.com/xqemu/xqemu/commit/49f1a7ccfaf105536cd30587254fb555e4ac1e3c March 24, 2018], begun work on bringing the XQEMU emulator up-to-date by re-basing it on the latest QEMU tag. He's had this to say below:<br/>
 
"This will bring many years of performance enhancements to xqemu including support for native virtualization APIs."
 
  
That re-base branch should have some 30,000 commits from QEMU that have been accumulated over the years (during the relative inactivity of the older XQEMU branch) till then! Work continues apace to bring 3D graphics rendering for Xbox games back up and working.
+
mborgerson has, since March 24, 2018,<ref>mborgerson. [https://github.com/xqemu/xqemu/commit/49f1a7ccfaf105536cd30587254fb555e4ac1e3c Add hw/xbox from xqemu]. GitHub.</ref> begun work on rebasing XQEMU on the latest QEMU tag, "[bringing] many years of performance enhancements to xqemu including support for native virtualization APIs."<ref>[https://github.com/xqemu/xqemu/blob/xbox-2.x-rebase/README.md README.md]. GitHub.</ref> The rebase branch incorporates over 30,000 commits from QEMU that were never merged over the years. Work continues to reinstate 3D rendering.
  
 
==Running==
 
==Running==
Note: The official website of this emulator now has straightforward guides such as setting up the emulator on a chosen operating system, input devices, networking and other tips.
+
:''These instructions apply to the 1.x branch of XQEMU. For 2.x instructions, visit [https://xqemu.com/ xqemu.com].''
  
 
You'll need a MCP-X boot rom, Xbox 1.0 compatible BIOS, and a HDD image with a dashboard, all in the main XQEMU directory. Then run:
 
You'll need a MCP-X boot rom, Xbox 1.0 compatible BIOS, and a HDD image with a dashboard, all in the main XQEMU directory. Then run:

Revision as of 01:26, 23 June 2018

XQEMU
Developer(s) espes (Project maintainer), mborgerson, JayFoxRox, lufix, wayo
Latest version N/A
Active Yes
Platform(s) Windows
Linux
macOS
Emulates Xbox, Sega Chihiro (Arcade)
Website XQEMU.com
Source code GitHub

XQEMU is a low-level Xbox and Sega Chihiro emulator based off of QEMU, a general-purpose computer emulator and hypervisor. What makes this emulator different from the other attempts at Xbox emulation is the use of low-level emulation (since QEMU itself is a low-level emulator), while previous attempts at Xbox emulation used high-level emulation. This comes with its own benefits and downsides in comparison, but it does allow for greater accuracy and greater compatibility down the road.

Downloads

This build focuses on the ongoing 2.x rebase, which will bring XQEMU closer to QEMU's current release (2.12.0). Unofficial builds are also available here.

Frontends

Like QEMU, XQEMU does not come with a GUI and needs a separate frontend wrapper for GUI features.

  • XQEMU-Frontend by Voxel9 (Builds available)
  • XQEMURun by illwieckz (More advanced but does not compile builds.)

Overview

XQEMU is at a very early stage right now, so much so that they explain "the intended user is a developer who is capable of acquiring the necessary ROM images, and compiling the project from sources."[1] Quite a lot of games can run on XQEMU, but its focus on accuracy means there hasn't been much (if any) focus on speed, so the games that work are very slow. A theoretical integration of KVM could speed up performance, but it would only be usable on Linux.

mborgerson has, since March 24, 2018,[2] begun work on rebasing XQEMU on the latest QEMU tag, "[bringing] many years of performance enhancements to xqemu including support for native virtualization APIs."[3] The rebase branch incorporates over 30,000 commits from QEMU that were never merged over the years. Work continues to reinstate 3D rendering.

Running

These instructions apply to the 1.x branch of XQEMU. For 2.x instructions, visit xqemu.com.

You'll need a MCP-X boot rom, Xbox 1.0 compatible BIOS, and a HDD image with a dashboard, all in the main XQEMU directory. Then run:

qemu-system-xbox -cpu pentium3 -machine xbox,short_animation,bootrom=mcpx_1.0.bin -m 64 -drive file=xbox_harddisk.qcow2,index=0,media=disk,locked=on -drive index=1,media=cdrom,file=game.iso -bios complex_4627debug.bin -usb -device usb-hub,bus=usb-bus.0,port=3 -device usb-xbox-gamepad,bus=usb-bus.0,port=3.2

Change mcpx_1.0.bin, complex_4627debug.bin, and game.iso to the filenames of the boot rom, BIOS, and game ISO that you're running.

References

  1. xqemu.com.
  2. mborgerson. Add hw/xbox from xqemu. GitHub.
  3. README.md. GitHub.

External links