The current URL is datacrystal.tcrf.net.
Xbox 360/Hardware information/Xenos (GPU): Difference between revisions
(Create initial page) |
(Texture format table update) |
||
Line 41: | Line 41: | ||
| Uncompressed || Bitmap || No || Not recommended due to high VRAM use | | Uncompressed || Bitmap || No || Not recommended due to high VRAM use | ||
|- | |- | ||
| DXT1/BC1 || || No || | | DXT1/BC1 || 4x4 pixels packed into 64 bits | ||
c0 16-bit color (ARRRRRGGGGGGBBBBB) | |||
c1 16-bit color (ARRRRRGGGGGGBBBBB) | |||
pixelIndex[16] 2-bit indices, c0 = 00, c1 = 01, c2 = 10, c3 = 11 | |||
c0 < c1: c3 rather than representing a middle point between the two colors, represents full transparency | |||
|| No || | |||
|- | |- | ||
| DXT2/BC2 || || No || | | DXT2/BC2 || || No || |
Revision as of 16:08, 16 April 2024
A repository for ROMhacking relevant info for Xenos.
Basic Specifications
- ATI Xenos @ 500MHz
- World's first unified shading GPU
- TeraScale uarch
- 3 "SIMD cores" (predecessor to CUs)
- 8 ROPS
- 16 TMUs
- 240 shaders
- Direct3D Feature Level 9_0c, with some things from higher feature levels (mainly FL 10)
- MEMEXPORT allows for GPGPU compute
- Connected to 10MB of eDRAM framebuffer
- eDRAM has extremely high bandwidth and PIM for free MSAA at 720p and low-cost at 1080p
Things to note: If using data from MEMEXPORT on CPU, you must enable both d3d12_readback_memexport and d3d12_readback_resolve in Xenia's options or use HW!
ucode Programming
Xenos, like other Xbox consoles, is able to directly ingest and execute ucode without having to be compiled by the driver first, allowing programmers to squeeze out more performance by relying on the fixed HW spec.
Instruction | Hex | Description |
---|---|---|
exec | 0x10 0x2A 0x11 0x** | Start executing code |
(Unknown) | 0xFF 0xFF 0x03 0x** | NOP, end of program |
Texture Formats
Format | Description | Xenos Specific | Other |
---|---|---|---|
Uncompressed | Bitmap | No | Not recommended due to high VRAM use |
DXT1/BC1 | 4x4 pixels packed into 64 bits
c0 16-bit color (ARRRRRGGGGGGBBBBB) c1 16-bit color (ARRRRRGGGGGGBBBBB) pixelIndex[16] 2-bit indices, c0 = 00, c1 = 01, c2 = 10, c3 = 11 c0 < c1: c3 rather than representing a middle point between the two colors, represents full transparency |
No | |
DXT2/BC2 | No | ||
DXT3/BC2 | No | ||
DXT3A | Yes | ||
DXT3A as 1111 | Yes | ||
DXT4/BC3 | No | ||
DXT5/BC3 | No | ||
DXT5A | Yes | ||
DXN | Yes | ||
CTX1 | Yes |
Useful Links
https://www.techpowerup.com/gpu-specs/xbox-360-gpu-90nm.c1919
https://learn.microsoft.com/en-us/windows/win32/direct3d9/dx9-graphics-reference
https://learn.microsoft.com/en-us/windows/win32/direct3d9/dx9-graphics-programming-guide
https://learn.microsoft.com/en-us/windows/win32/direct3d10/d3d10-graphics-reference
https://learn.microsoft.com/en-us/windows/win32/direct3d10/d3d10-graphics-programming-guide
https://en.wikipedia.org/wiki/Unified_shader_model
https://fileadmin.cs.lth.se/cs/Personal/Michael_Doggett/talks/unc-xenos-doggett.pdf
http://www.students.science.uu.nl/~3220516/advancedgraphics/papers/inferred_lighting.pdf