diff --git a/For-Developers.md b/For-Developers.md index 8d56b9d..fdb4ae5 100644 --- a/For-Developers.md +++ b/For-Developers.md @@ -1,77 +1 @@ -# Does Xenia run on Linux or macOS? - -The project is designed to support non-Windows platforms but until it's running -games it's not worth the maintenance burden. MacOS will likely remain unsupported -until Apple supports Vulkan. - -There's only a few major pieces that need cleanup before a Linux port can -proceed in earnest, listed with the [cross-platform tag](https://github.com/xenia-project/xenia/labels/cross-platform). -Most of the code compiles with the latest Clang, and very few files have -dependencies on Windows APIs (all of that is isolated to `_win.cc` files). -Though the codebase is ready for the port, it's not a trivial task and anyone -seeking to port it will need a deep understanding of Linux, X11, Vulkan, and -Win32 (to ensure matching semantics). - - -# You should port it to Linux, then tons of developers will contribute! - -No, they won't, and that's not how things work. (I'm seriously told this once -a week...) - -Think of it this way: the most important kind of contributor in this phase of -the project is one who is capable of performing the porting work. If someone -has this capability and feels so strongly about Linux support then they would be -contributing to the porting efforts already. But otherwise they are nothing -more than hypothetical members of our collective dreams. - - -# 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 5 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. -Constructive contributions and improvements are welcome. - - -# Have you heard of LLVM/asmjit/jitasm/luajit/etc? - -Yes, I have heard of them. In fact, I spent a long time trying them out: -[LLVM](https://github.com/xenia-project/xenia/tree/85bdbd24d1b5923cfb104f45194a96e7ac57026e/src/xenia/cpu/codegen), -[libjit](https://github.com/xenia-project/xenia/tree/eee856be0499a4bc721b6097f5f2b9446929f2cc/src/xenia/cpu/libjit), -[asmjit](https://github.com/xenia-project/xenia/tree/ca208fa60a0285d396409743064784cc2320c094/src/xenia/cpu/x64). -I did not find them acceptable for use in this project for various reasons. If -for some reason you feel strongly otherwise, feel free to either contribute a -[new CPU backend](https://github.com/xenia-project/xenia/tree/master/src/xenia/cpu/backend). - - -# (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 convenient 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, -contributions are welcome. - -Here's a short list of common ones: - -* '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 different than previous emulator projects and learn while -doing it. The easy way is almost never the best way and most certainly isn't as -fun. -* 'Why not CMake?' -- I don't like CMake as it generates ugly Visual Studio -projects. Premake does what I want (mostly) how I want it to. - - -# Hey I'm going to go modify every file in the project, ok? - -We welcome contributions, but please try to understand that we 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. 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. +# [This page has been moved here.](https://xenia.jp/wiki/development/for_developers/) \ No newline at end of file