summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSubv <subv2112@gmail.com>2018-03-24 07:22:19 +0100
committerSubv <subv2112@gmail.com>2018-03-24 07:22:19 +0100
commit9b9de3008662239d034ed6ec61e96b855bdcee8c (patch)
tree6a49c9ff5679539138f25780e1d848db2f5ea3d1
parentMerge pull request #265 from bunnei/tegra-progress-2 (diff)
downloadyuzu-9b9de3008662239d034ed6ec61e96b855bdcee8c.tar
yuzu-9b9de3008662239d034ed6ec61e96b855bdcee8c.tar.gz
yuzu-9b9de3008662239d034ed6ec61e96b855bdcee8c.tar.bz2
yuzu-9b9de3008662239d034ed6ec61e96b855bdcee8c.tar.lz
yuzu-9b9de3008662239d034ed6ec61e96b855bdcee8c.tar.xz
yuzu-9b9de3008662239d034ed6ec61e96b855bdcee8c.tar.zst
yuzu-9b9de3008662239d034ed6ec61e96b855bdcee8c.zip
-rw-r--r--src/video_core/engines/maxwell_3d.h19
1 files changed, 18 insertions, 1 deletions
diff --git a/src/video_core/engines/maxwell_3d.h b/src/video_core/engines/maxwell_3d.h
index 69ed56338..545d7ff35 100644
--- a/src/video_core/engines/maxwell_3d.h
+++ b/src/video_core/engines/maxwell_3d.h
@@ -33,6 +33,7 @@ public:
static constexpr size_t NUM_REGS = 0xE36;
static constexpr size_t NumRenderTargets = 8;
+ static constexpr size_t NumViewports = 16;
static constexpr size_t NumCBData = 16;
static constexpr size_t NumVertexArrays = 32;
static constexpr size_t NumVertexAttributes = 32;
@@ -186,7 +187,22 @@ public:
}
} rt[NumRenderTargets];
- INSERT_PADDING_WORDS(0xDD);
+ INSERT_PADDING_WORDS(0x80);
+
+ struct {
+ union {
+ BitField<0, 16, u32> x;
+ BitField<16, 16, u32> width;
+ };
+ union {
+ BitField<0, 16, u32> y;
+ BitField<16, 16, u32> height;
+ };
+ float depth_range_near;
+ float depth_range_far;
+ } viewport[NumViewports];
+
+ INSERT_PADDING_WORDS(0x1D);
struct {
u32 first;
@@ -462,6 +478,7 @@ private:
"Field " #field_name " has invalid position")
ASSERT_REG_POSITION(rt, 0x200);
+ASSERT_REG_POSITION(viewport, 0x300);
ASSERT_REG_POSITION(vertex_buffer, 0x35D);
ASSERT_REG_POSITION(zeta, 0x3F8);
ASSERT_REG_POSITION(vertex_attrib_format[0], 0x458);