yuzu-emu
/
yuzu-mainline
Archived
1
0
Fork 0

maxwell_3d: Add tessellation mode register

This commit is contained in:
ReinUsesLisp 2019-11-01 00:43:59 -03:00
parent d2b50c5ebd
commit 707bf41c6f
No known key found for this signature in database
GPG Key ID: 2DFC508897B39CFE
1 changed files with 28 additions and 1 deletions

View File

@ -491,6 +491,23 @@ public:
INSERT_UNION_PADDING_WORDS(1); INSERT_UNION_PADDING_WORDS(1);
}; };
enum class DepthMode : u32 {
MinusOneToOne = 0,
ZeroToOne = 1,
};
enum class TessellationPrimitive : u32 {
Isolines = 0,
Triangles = 1,
Quads = 2,
};
enum class TessellationSpacing : u32 {
Equal = 0,
FractionalOdd = 1,
FractionalEven = 2,
};
struct RenderTargetConfig { struct RenderTargetConfig {
u32 address_high; u32 address_high;
u32 address_low; u32 address_low;
@ -628,7 +645,16 @@ public:
}; };
} sync_info; } sync_info;
INSERT_UNION_PADDING_WORDS(0x11E); INSERT_UNION_PADDING_WORDS(0x15);
union {
BitField<0, 2, TessellationPrimitive> prim;
BitField<4, 2, TessellationSpacing> spacing;
BitField<8, 1, u32> cw;
BitField<9, 1, u32> connected;
} tess_mode;
INSERT_UNION_PADDING_WORDS(0x108);
u32 tfb_enabled; u32 tfb_enabled;
@ -1388,6 +1414,7 @@ ASSERT_REG_POSITION(upload, 0x60);
ASSERT_REG_POSITION(exec_upload, 0x6C); ASSERT_REG_POSITION(exec_upload, 0x6C);
ASSERT_REG_POSITION(data_upload, 0x6D); ASSERT_REG_POSITION(data_upload, 0x6D);
ASSERT_REG_POSITION(sync_info, 0xB2); ASSERT_REG_POSITION(sync_info, 0xB2);
ASSERT_REG_POSITION(tess_mode, 0xC8);
ASSERT_REG_POSITION(tfb_enabled, 0x1D1); ASSERT_REG_POSITION(tfb_enabled, 0x1D1);
ASSERT_REG_POSITION(rt, 0x200); ASSERT_REG_POSITION(rt, 0x200);
ASSERT_REG_POSITION(viewport_transform, 0x280); ASSERT_REG_POSITION(viewport_transform, 0x280);