README update.

This commit is contained in:
Ben Vanik 2015-06-13 18:30:19 -07:00
parent f74c88351d
commit dc2de8ca32
1 changed files with 10 additions and 78 deletions

View File

@ -1,7 +1,8 @@
Xenia - Xbox 360 Emulator Research Project
==========================================
Xenia is an experimental emulator for the Xbox 360.
Xenia is an experimental emulator for the Xbox 360. For more information see the
[main xenia website](http://xenia.jp/).
Pull requests are welcome but the code is in a very high churn state and may not
be accepted, so ask in IRC before taking on anything big. Contributions are
@ -9,7 +10,11 @@ awesome but the focus of the developers is on writing new code, not teaching
programming or answering questions. If you'd like to casually help out it may
be better to wait a bit until things calm down and more of the code is documented.
Come chat with us **about development topics** in [#xenia @ irc.freenode.net](http://webchat.freenode.net?channels=%23xenia&uio=MTE9NzIaa).
Come chat with us **about development topics** in
[#xenia @ irc.freenode.net](http://webchat.freenode.net?channels=%23xenia&uio=MTE9NzIaa).
Please check the [frequently asked questions](http://xenia.jp/faq/) page before
asking questions. We've got jobs/lives/etc, so don't expect instant answers.
Discussing illegal activities will get you banned. No warnings.
## Status
@ -22,9 +27,6 @@ Project tracker:
Some real games run. Most don't. Don't ask if GTA or whatever runs. [Game compatibility list](https://github.com/xenia-project/game-compatibility/issues).
Watch A-Train HX running at ~60fps (check YouTube playback quality setting):
[![A-Train HX first run](http://img.youtube.com/vi/vE32Z9ytbgU/0.jpg)](http://www.youtube.com/watch?v=vE32Z9ytbgU)
## Disclaimer
The goal of this project is to experiment, research, and educate on the topic
@ -73,78 +75,8 @@ on something.
## FAQ
For more see the main [frequently asked questions](http://xenia.jp/faq/) page.
### Can I get an exe?
**NO**. I am not releasing binaries - at least not for awhile. Don't be an
idiot and download a binary claiming to be of this project. In fact, don't
be an idiot and download *any* binary claiming to be an Xbox 360 or PS3
emulator from *any* source, especially not YouTube videos and shady websites.
Come on people. Jeez.
### What kind of machine do I need to run this?
You'll need 64-bit Windows 8.1 or 10 with a processor supporting at least AVX -
in other words, Intel Sandy Bridge or newer. In general if you have to ask
if your machine is good enough to run games at a decent speed the answer is no.
### What about Linux/OSX?
The project is designed to support non-Windows platforms but until it's running
games it's not worth the maintenance burden. OSX will likely remain unsupported
until Apple supports OpenGL 4.3 or higher.
### What kind of GPU do I need?
OpenGL 4.5 support and drivers are required. This includes Nvidia's GeForce 400
series and above, and AMD's 5000 series and above.
To get full speed and compatibility Vulkan/D3D12 may eventually be required.
### Have you heard of LLVM/asmjit/jitasm/luajit/etc?
I get asked this about once a day. Yes, I have heard of them. In fact, I spent
a long time trying them out:
[LLVM](https://github.com/benvanik/xenia/tree/85bdbd24d1b5923cfb104f45194a96e7ac57026e/src/xenia/cpu/codegen),
[libjit](https://github.com/benvanik/xenia/tree/eee856be0499a4bc721b6097f5f2b9446929f2cc/src/xenia/cpu/libjit),
[asmjit](https://github.com/benvanik/xenia/tree/ca208fa60a0285d396409743064784cc2320c094/src/xenia/cpu/x64).
They don't work for this purpose. I understand if you disagree, but please
understand that I've spent a significant amount of time on this problem.
### Why did you do X? Why not just use Y? You should use Y. NIH NIH NIH!
Trust that I either have a good reason for what I did or have absolutely no
reason for what I did. This is a large project that I've been working on
for almost 4 years and in that time new compilers and language specs have
been released, libraries have been created and died, and I've learned a lot.
Insulting me will get you ignored.
### Hey I'm going to go modify every file in the project, ok?
I welcome contributions, but please try to understand that I cannot accept
changes that radically alter the structure or content of the code, especially
if they are aesthetic and even more so if they are from someone who has not
contributed before. This may seem like common sense, but apparently it isn't.
If a pull request of this nature is denied that doesn't necessarily mean your
help is not wanted, just that it may need to be more carefully applied.
### I have a copy of the XDK. Do you want it?
No.
### (some argument over an unimportant technical choice)
In general: 'I don't care.'
That means I either really don't care and something is they way it is because
that was convienient (such as GYP, which I am familiar with), or that
I don't care because it's not material to the goal of the project. There are
a million important things that need to be done to get games running and
going back and forth about unimportant orthogonal issues does not help.
If you really do have a better way of doing something and can show it, do so.
Here's a short list of common ones:
* 'Why Python 2.7? 3 is awesome!' -- agreed, but git-clang-format needs 2.7.
* 'Why this xb stuff?' -- I like it, it helps me. If you want to
manually execute commands have fun, nothing is stopping you.
* 'Why not just take the code from project X?' -- the point of this project
is to build something better than previous emulator projects, and learn while
doing it. The easy way is almost never the best way, and is never as fun.
Not yet.