mirror of
https://github.com/RPCSX/rpcsx.git
synced 2026-01-30 12:24:39 +01:00
rsx_decode.h implements a "rsx_decoders" template class that is specialized for most GCM command found in rsx command buffer. 3 static members are defined : a "decode" function that turns command value into a more meaninfull type if applicable (for instance bool for _enabled* command, surface formats for set_surface_format command...), a "commit_rsx_state" that modifies a given rsx_state structure when the command is parsed, and a "dump" function used in rsx_debugger for pretty printing. Hopefully having the 3 functions in a single place for every command will act as a self documenting list of rsx command buffer opcode. rsx_state is also expanded into several explicit variables instead of being stored into a u32 array. This should makes debugging easier (Visual Studio will display the exact value of these member for instance) as well as preparing rsx_state for serialisation/deserialisation. The vertex array and textures opcode are not concerned atm for bisecting purpose. |
||
|---|---|---|
| .. | ||
| Common | ||
| D3D12 | ||
| GL | ||
| Null | ||
| VK | ||
| CgBinaryFragmentProgram.cpp | ||
| CgBinaryProgram.h | ||
| CgBinaryVertexProgram.cpp | ||
| GCM.cpp | ||
| GCM.h | ||
| GSRender.cpp | ||
| GSRender.h | ||
| rsx_cache.cpp | ||
| rsx_cache.h | ||
| rsx_decode.h | ||
| rsx_methods.cpp | ||
| rsx_methods.h | ||
| rsx_utils.cpp | ||
| rsx_utils.h | ||
| rsx_vertex_data.h | ||
| RSXFragmentProgram.h | ||
| RSXTexture.cpp | ||
| RSXTexture.h | ||
| RSXThread.cpp | ||
| RSXThread.h | ||
| RSXVertexProgram.h | ||