1
0
Эх сурвалжийг харах

win-capture: Update D3D9 patches

Fixes performance issues with windows 10.0.14393.0
jp9000 9 жил өмнө
parent
commit
571c3a6859

+ 8 - 2
plugins/win-capture/graphics-hook/d3d9-patches.hpp

@@ -57,13 +57,14 @@ static const BYTE ignore_jump[] = {0x90, 0x90};
 
 #ifdef _WIN64
 
-#define NUM_VERS   (15)
+#define NUM_VERS   (16)
 #define CMP_SIZE   (13)
 
 static const uintptr_t patch_offset[NUM_VERS] = {
 	0x54FE6,  //win7   - 6.1.7600.16385
 	0x55095,  //win7   - 6.1.7601.16562
 	0x550C5,  //win7   - 6.1.7601.17514
+	0x6E2FC,  //win10  - 10.0.14393.0
 	0x6FE18,  //win10  - 10.0.10240.16412
 	0x70050,  //win10  - 10.0.10240.16384
 	0x703F8,  //win10  - 10.0.10162.0
@@ -82,6 +83,7 @@ static const uint8_t patch_cmp[NUM_VERS][CMP_SIZE] = {
 {0x48, 0x8b, 0x81, 0xb8, 0x3d, 0x00, 0x00, 0x39, 0x98, 0x68, 0x50, 0x00, 0x00},
 {0x48, 0x8b, 0x81, 0xb8, 0x3d, 0x00, 0x00, 0x39, 0x98, 0x68, 0x50, 0x00, 0x00},
 {0x48, 0x8b, 0x81, 0xb8, 0x3d, 0x00, 0x00, 0x39, 0x98, 0x68, 0x50, 0x00, 0x00},
+{0x8b, 0x81, 0x18, 0x3e, 0x00, 0x00, 0x44, 0x39, 0x98, 0x90, 0x51, 0x00, 0x00},
 {0x8b, 0x81, 0xb8, 0x3d, 0x00, 0x00, 0x44, 0x39, 0x98, 0x88, 0x51, 0x00, 0x00},
 {0x8b, 0x81, 0xb8, 0x3d, 0x00, 0x00, 0x44, 0x39, 0x98, 0x88, 0x51, 0x00, 0x00},
 {0x8b, 0x81, 0xb8, 0x3d, 0x00, 0x00, 0x44, 0x39, 0x98, 0x88, 0x51, 0x00, 0x00},
@@ -105,6 +107,7 @@ static const struct patch_info patch[NUM_VERS] = {
 	NEW_PATCH(force_jump),
 	NEW_PATCH(force_jump),
 	NEW_PATCH(force_jump),
+	NEW_PATCH(force_jump),
 	NEW_PATCH(ignore_jump),
 	NEW_PATCH(ignore_jump),
 	NEW_PATCH(ignore_jump),
@@ -116,7 +119,7 @@ static const struct patch_info patch[NUM_VERS] = {
 
 #else
 
-#define NUM_VERS   (15)
+#define NUM_VERS   (16)
 #define CMP_SIZE   (12)
 
 static const uintptr_t patch_offset[NUM_VERS] = {
@@ -134,6 +137,7 @@ static const uintptr_t patch_offset[NUM_VERS] = {
 	0x90264,  //win8.1 - 6.3.9600.17415
 	0x90C3A,  //win10  - 10.0.10586.494
 	0x90C57,  //win10  - 10.0.10586.0
+	0x96673,  //win10  - 10.0.14393.0
 	0x166A08  //win8   - 6.2.9200.16384
 };
 
@@ -152,6 +156,7 @@ static const uint8_t patch_cmp[NUM_VERS][CMP_SIZE] = {
 {0x87, 0xe8, 0x29, 0x00, 0x00, 0x83, 0xb8, 0x40, 0x4c, 0x00, 0x00, 0x00},
 {0x81, 0x18, 0x2a, 0x00, 0x00, 0x83, 0xb8, 0xa0, 0x4c, 0x00, 0x00, 0x00},
 {0x81, 0x18, 0x2a, 0x00, 0x00, 0x83, 0xb8, 0xa0, 0x4c, 0x00, 0x00, 0x00},
+{0x81, 0x18, 0x2a, 0x00, 0x00, 0x83, 0xb8, 0xa8, 0x4c, 0x00, 0x00, 0x00},
 {0x8b, 0x80, 0xe8, 0x29, 0x00, 0x00, 0x39, 0x90, 0xb0, 0x4b, 0x00, 0x00},
 };
 
@@ -170,6 +175,7 @@ static const struct patch_info patch[NUM_VERS] = {
 	NEW_PATCH(ignore_jump),
 	NEW_PATCH(ignore_jump),
 	NEW_PATCH(ignore_jump),
+	NEW_PATCH(ignore_jump),
 	NEW_PATCH(force_jump),
 };