@@ -84,9 +84,9 @@ void SetPatterns(int version) {
8484 " xx????" " xxx?" " xxx?????" " xxx?????" " xx?" " xx?" ,
8585 { 0xE9 , 0x00 , 0x00 , 0x00 , 0x00 , 0x90 });
8686
87- // Valid for 877 to 1868, in 2060 last byte changed to 0xC4
88- steeringControl = PatternInfo (" \xF3\x0F\x11\x8B\xFC\x08\x00\x00 " " \xF3\x0F\x10\x83\x00\x09\x00\x00 " " \xF3\x0F\x58\x83\xFC\x08\x00\x00 " " \x41\x0F\x2F\xC3 " ,
89- " xxxx?? xx" " xxxx?? xx" " xxxx?? xx" " xxx?" ,
87+ // Valid for 877 to 1868, in 2060 last byte changed to 0xC4, in 3095 general-purpose register changed to rdi
88+ steeringControl = PatternInfo (" \xF3\x0F\x11\x8B\xFC\x08\x00\x00 " " \xF3\x0F\x10\x83\x00\x09\x00\x00 " " \xF3\x0F\x58\x83\xFC\x08\x00\x00 " " \x41\x0F\x2F\xC3 " " \xF3\x0F\x11\x83\xFC\x08\x00\x00 " " \x73\x06 " ,
89+ " xxx??? xx" " xxx??? xx" " xxx??? xx" " xxx?" " xxx???xx " " xx " ,
9090 { 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 });
9191
9292 // Valid for 1604 (FiveM) to 1868+
@@ -140,6 +140,21 @@ void SetPatterns(int version) {
140140 throttleLift = PatternInfo (" \x44\x89\x77\x50\xf3\x0f\x11 " , " xxxxxxx" ,
141141 { 0x90 , 0x90 , 0x90 , 0x90 });
142142 }
143+ if (version >= G_VER_1_0_3095_0) {
144+ // compiler changed how to increment the current gear value
145+ shiftUp = PatternInfo (" \x66\x01\x2B\xC7\x43\x54\xCD\xCC\xCC\x3D " , " xxxxxxxxxx" ,
146+ { 0x66 , 0x01 , 0x2B , });
147+ // compiler changed how to decrement the current gear value
148+ shiftDown = PatternInfo (" \x66\xFF\x0B\xC7\x43\x54\xCD\xCC\xCC\x3D " , " xxxxxxxxxx" ,
149+ { 0x66 , 0xFF , 0x0B });
150+ // the 2 offsets of CTransmission was shifted to 0x80 and 0x84 and the 2 mov opcodes changed
151+ clutchRevLimit = PatternInfo (" \xC7\x43\x54\xCD\xCC\xCC\x3D\x44\x89\xB3\x84\x00\x00\x00\x44\x89\xA3\x80\x00\x00\x00 " ,
152+ " xx?xxxxxxx????xxx????" ,
153+ { 0xC7 , 0x43 , 0x54 , 0xCD , 0xCC , 0xCC , 0x3D });
154+ // register has changed
155+ throttleLift = PatternInfo (" \x89\x4F\x58\xF3\x44\x0F\x11 " , " xx?xxxx" ,
156+ { 0x90 , 0x90 , 0x90 });
157+ }
143158}
144159
145160bool Test () {
0 commit comments