From 149ea561a697394fdd4d6d5a3f32e05837347dae Mon Sep 17 00:00:00 2001
From: Subv <subv2112@gmail.com>
Date: Mon, 31 Aug 2015 07:02:30 -0500
Subject: [PATCH 1/2] Pica: Add the vertex_offset register to the Pica
 registers map.

---
 src/video_core/pica.cpp | 1 +
 src/video_core/pica.h   | 1 +
 2 files changed, 2 insertions(+)

diff --git a/src/video_core/pica.cpp b/src/video_core/pica.cpp
index c73a8178e..70586306c 100644
--- a/src/video_core/pica.cpp
+++ b/src/video_core/pica.cpp
@@ -49,6 +49,7 @@ std::string Regs::GetCommandName(int index) {
         ADD_FIELD(vertex_attributes);
         ADD_FIELD(index_array);
         ADD_FIELD(num_vertices);
+        ADD_FIELD(vertex_offset);
         ADD_FIELD(trigger_draw);
         ADD_FIELD(trigger_draw_indexed);
         ADD_FIELD(vs_default_attributes_setup);
diff --git a/src/video_core/pica.h b/src/video_core/pica.h
index 5811eb9bc..85610a859 100644
--- a/src/video_core/pica.h
+++ b/src/video_core/pica.h
@@ -997,6 +997,7 @@ ASSERT_REG_POSITION(framebuffer, 0x110);
 ASSERT_REG_POSITION(vertex_attributes, 0x200);
 ASSERT_REG_POSITION(index_array, 0x227);
 ASSERT_REG_POSITION(num_vertices, 0x228);
+ASSERT_REG_POSITION(vertex_offset, 0x22a);
 ASSERT_REG_POSITION(trigger_draw, 0x22e);
 ASSERT_REG_POSITION(trigger_draw_indexed, 0x22f);
 ASSERT_REG_POSITION(vs_default_attributes_setup, 0x232);

From 58a04c077676a65c22bcd61a4b6012d8eaeb7e97 Mon Sep 17 00:00:00 2001
From: Subv <subv2112@gmail.com>
Date: Mon, 31 Aug 2015 09:14:18 -0500
Subject: [PATCH 2/2] Pica: Added the primitive_restart register (0x25f) to the
 registers map.

---
 src/video_core/pica.cpp | 1 +
 src/video_core/pica.h   | 5 ++++-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/video_core/pica.cpp b/src/video_core/pica.cpp
index 70586306c..61983bc6c 100644
--- a/src/video_core/pica.cpp
+++ b/src/video_core/pica.cpp
@@ -55,6 +55,7 @@ std::string Regs::GetCommandName(int index) {
         ADD_FIELD(vs_default_attributes_setup);
         ADD_FIELD(command_buffer);
         ADD_FIELD(triangle_topology);
+        ADD_FIELD(restart_primitive);
         ADD_FIELD(gs.bool_uniforms);
         ADD_FIELD(gs.int_uniforms);
         ADD_FIELD(gs.main_offset);
diff --git a/src/video_core/pica.h b/src/video_core/pica.h
index 85610a859..855cb442e 100644
--- a/src/video_core/pica.h
+++ b/src/video_core/pica.h
@@ -828,7 +828,9 @@ struct Regs {
 
     BitField<8, 2, TriangleTopology> triangle_topology;
 
-    INSERT_PADDING_WORDS(0x21);
+    u32 restart_primitive;
+
+    INSERT_PADDING_WORDS(0x20);
 
     struct ShaderConfig {
         BitField<0, 16, u32> bool_uniforms;
@@ -1003,6 +1005,7 @@ ASSERT_REG_POSITION(trigger_draw_indexed, 0x22f);
 ASSERT_REG_POSITION(vs_default_attributes_setup, 0x232);
 ASSERT_REG_POSITION(command_buffer, 0x238);
 ASSERT_REG_POSITION(triangle_topology, 0x25e);
+ASSERT_REG_POSITION(restart_primitive, 0x25f);
 ASSERT_REG_POSITION(gs, 0x280);
 ASSERT_REG_POSITION(vs, 0x2b0);