Xbox 360 Emulator Research Project
Go to file
Ben Vanik 51184f73ea Disassembling a few instructions. 2013-09-28 19:37:34 -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 Disassembling a few instructions. 2013-09-28 19:37:34 -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 vblank interrupt. 2013-09-25 00:46:09 -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