Xbox 360 Emulator Research Project
Go to file
Ben Vanik be1ce73a30 Fixing WaitForSingleObject timeout args. 2013-09-23 22:15:43 -07:00
bin Real modules and threads (mostly). 2013-01-30 22:44:32 -08:00
debugger Skeleton of the debugger host. 2013-02-01 05:37:42 -08:00
docs Initial libjit skeleton. 2013-05-21 15:36:58 -07:00
private Removing LLVM submodule and build information. 2013-05-19 09:29:22 -07:00
src/xenia Fixing WaitForSingleObject timeout args. 2013-09-23 22:15:43 -07:00
test/codegen Renaming tests. 2013-02-03 16:02:21 -08:00
third_party Adding back binutils from googlesource. 2013-06-29 08:47:21 -07:00
tools Adding thread ID to trace lines and cleaning up their formatting. 2013-06-30 06:09:08 -07:00
.gitignore Initial project skeleton. 2013-01-11 01:23:08 -08:00
.gitmodules Adding back binutils from googlesource. 2013-06-29 08:47:21 -07:00
CONTRIBUTORS.md Initial project skeleton. 2013-01-11 01:23:08 -08:00
LICENSE Create LICENSE 2013-01-10 15:25:20 -08:00
README.md Adding a note about the asmjit issue. 2013-06-29 09:28:13 -07:00
TODO.md Broken, incomplete, but need to move forward with rewrite. 2013-04-21 12:34:20 -07:00
common.gypi Defining ASMJIT_DEBUG in debug builds. 2013-05-25 00:28:04 -07:00
xenia-build.py Tweaking compile options and switching back to VS2010. 2013-05-21 16:08:56 -07:00
xenia.gyp Removing libjit, because it is pretty terrible. 2013-05-23 17:48:01 -07:00
xeniarc Adding the start of the instruction test infrastructure. 2013-01-27 02:51:53 -08:00

README.md

Xenia - Xbox 360 Emulator Research Project

Xenia is an experimental emulator for the Xbox 360. It does not run games (yet), and if you are unable to understand that please leave now.

Come chat with us in #xenia on freenode.

Currently supported features:

  • Nothing!

Coming soon (maybe):

  • Everything!

Disclaimer

The goal of this project is to experiment, research, and educate on the topic of emulation of modern devices and operating systems. It is not for enabling illegal activity. All information is obtained via reverse engineering of legally purchased devices and games and information made public on the internet (you'd be surprised what's indexed on Google...).

Quickstart

git clone https://github.com/benvanik/xenia.git
cd xenia && source xeniarc
xb setup
xb build
./bin/xenia-run some.xex

Building

See building for setup and information about the xenia-build script.

Known Issues

asmjit bug

asmjit has an issue with removing unreachable code that will cause assertion failures/exiting when running. Until it is patched you must go and modify a file after checking out the project.

--- a/third_party/asmjit/src/asmjit/x86/x86compileritem.cpp
+++ b/third_party/asmjit/src/asmjit/x86/x86compileritem.cpp
@@ -114,7 +114,7 @@ CompilerItem* X86CompilerTarget::translate(CompilerContext& cc)
     return NULL;
   }

-  if (x86Context._isUnreachable)
+  if (0)//x86Context._isUnreachable)
   {
     // If the context has "isUnreachable" flag set and there is no state then
     // it means that this code will be never called. This is a problem, because