diff options
author | Tony Wasserka <NeoBrainX@gmail.com> | 2014-07-27 14:58:30 +0200 |
---|---|---|
committer | Tony Wasserka <NeoBrainX@gmail.com> | 2014-08-12 13:48:56 +0200 |
commit | 9a76a2d0611fc0c35b665fb886d437e8f4d5b4df (patch) | |
tree | 3dc2277e820070ef0d13769c10892f1fd2460d13 /src/video_core/pica.h | |
parent | Pica: Add vertex shader implementation. (diff) | |
download | yuzu-9a76a2d0611fc0c35b665fb886d437e8f4d5b4df.tar yuzu-9a76a2d0611fc0c35b665fb886d437e8f4d5b4df.tar.gz yuzu-9a76a2d0611fc0c35b665fb886d437e8f4d5b4df.tar.bz2 yuzu-9a76a2d0611fc0c35b665fb886d437e8f4d5b4df.tar.lz yuzu-9a76a2d0611fc0c35b665fb886d437e8f4d5b4df.tar.xz yuzu-9a76a2d0611fc0c35b665fb886d437e8f4d5b4df.tar.zst yuzu-9a76a2d0611fc0c35b665fb886d437e8f4d5b4df.zip |
Diffstat (limited to 'src/video_core/pica.h')
-rw-r--r-- | src/video_core/pica.h | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/video_core/pica.h b/src/video_core/pica.h index 42303a585..6bbd3ce33 100644 --- a/src/video_core/pica.h +++ b/src/video_core/pica.h @@ -221,7 +221,18 @@ struct Regs { u32 trigger_draw; u32 trigger_draw_indexed; - INSERT_PADDING_WORDS(0x8a); + INSERT_PADDING_WORDS(0x2e); + + enum class TriangleTopology : u32 { + List = 0, + Strip = 1, + Fan = 2, + ListIndexed = 3, // TODO: No idea if this is correct + }; + + BitField<8, 2, TriangleTopology> triangle_topology; + + INSERT_PADDING_WORDS(0x5b); // Offset to shader program entry point (in words) BitField<0, 16, u32> vs_main_offset; @@ -334,6 +345,7 @@ struct Regs { ADD_FIELD(num_vertices); ADD_FIELD(trigger_draw); ADD_FIELD(trigger_draw_indexed); + ADD_FIELD(triangle_topology); ADD_FIELD(vs_main_offset); ADD_FIELD(vs_input_register_map); ADD_FIELD(vs_uniform_setup); @@ -386,6 +398,7 @@ ASSERT_REG_POSITION(index_array, 0x227); ASSERT_REG_POSITION(num_vertices, 0x228); ASSERT_REG_POSITION(trigger_draw, 0x22e); ASSERT_REG_POSITION(trigger_draw_indexed, 0x22f); +ASSERT_REG_POSITION(triangle_topology, 0x25e); ASSERT_REG_POSITION(vs_main_offset, 0x2ba); ASSERT_REG_POSITION(vs_input_register_map, 0x2bb); ASSERT_REG_POSITION(vs_uniform_setup, 0x2c0); |