Repository navigation
Hardware Oddity Combiner Packing
Evidence: original Xbox shader source. Rich Geldreich published the attribute-packing shader for his 2003 Gladiator demonstration. It writes material/gloss fields into BA and a packed normal into RG, then uses lookup textures to decode those values in later lighting passes. He states that the packing depends on Xbox combiner precision.
This is one render-target word carrying several logical fields, not hardware multiple-render-target support. A host translation can look visually close while changing a bit consumed by a later lookup.
Proposed test: reconstruct the shader without treating the source text as a precision oracle. Sweep inputs around quantization boundaries; compare raw 32-bit render-target words with hardware before comparing decoded images. Record intermediate clamping, rounding, and packing separately.
Source: Geldreich's original shader and notes.
See also NV2A Graphics Architecture and The formerly illegal combiner mode.
DSP tooling guide and navigation updated November 2, 2026 for experimental PR #384, source 8f51d237. Capture/replay usage and limits.
The earlier wiki-wide review was published November 1, 2026. Emulator source: b7140848. Reviewed wiki content: 1d2b671. Current status · Release availability · Publication process.
- Home
- Current status
- Stable versus main
- Implemented mechanisms
- Controls and defaults
- Measured results and limits
- Complete change register
- System
- CPU and vCPU
- Memory and DMA
- Graphics / NV2A
- APU and audio
- Timing and timers
- Platform and I/O
- Hardware observations
- Fidelity boundaries
- Methodology
- PGR2 routes
- Debugging lag / hot paths
- Tools and commands
- DSP capture, replay and fuzzing
- HLE readiness and public XISO proof
- Concurrent DSP shadow and OpenAL proof
- DSP HLE operation inventory
- DSP HLE fix examples and testing
- Development
- Upstream shortlist
- Wiki maintenance
- Research / retired work
- Optimization catalog
- Hot-path shortcuts
- Researched experiments
- Unproven proposal directory
- PR lessons
- September26 snapshot
Repository · PRs · Issues