QUOTE |
First, how legal is this? Will MS or nvidia try to sue the pants off of me? (This will be a non-profit project.) |
Depends on you local law. On bottom of Xbox-Linux page (which has a lot of reverse-engineered info) it says "Everything done on this project is for the sole purpose of writing interoperable software under Sect. 1201 (f) Reverse Engineering exception of the DMCA.". Violating copyright (ex. by copying and spreading code from Xbox's libraries) is offcourse illegal.
QUOTE |
Theoretically, could I use the same method to extract the library binary code so I could port it to a linux shared library? |
From what I know CXBX basically captures calls to the main Direct3D interface and passes them to a normal Windows Direct3D interface. I don't see how this Direct3D stuff would help in writing a driver for the Xbox Nvidia GeForce "2.5" (or "MX 3" as some call it
). DirectX is merely an API, the Nvidia GPU is the hardware.
QUOTE |
I assume this means that games using OpenGL or later versions of Direct3D wouldn't work. Is this true? |
All native Xbox games are DirectX 8 _only_. It's the only API in the XDK.
QUOTE |
Would the Direct3D API be at all changed or extended to make use of the xbox's hardware? |
Compared to the Windows one it has extra (Xbox-specific) functions, but not a lot of changes it terms of using the interface as a developer.
QUOTE |
Any ideas on what other parts of the .xbe would I need to extract? |
Why extract code from compiled and linked and optimized .XBEs when you can take "more raw" version of it from the XDK (if you have access to it)?
I have an idea you don't know exactly what you want. Do you want to
1) Run the MS driver for Nvidia on Linux? (impossible, different OS/kernel/everything/whatever)
2) Document the Nvidia GPU? (is being done already by reverse-engineering, but not finished)
3) Make DirectX on Linux possible? (see Wine).