Some test asm hooks
This commit is contained in:
@@ -50,6 +50,9 @@
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
<Import Project="$(VCTargetsPath)\BuildCustomizations\masm.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
@@ -267,6 +270,7 @@ del "$(SolutionDir)bin\$(TargetName).lib"</Command>
|
||||
<ClCompile Include="mdl\draw_object.cpp" />
|
||||
<ClCompile Include="object.cpp" />
|
||||
<ClCompile Include="print.cpp" />
|
||||
<ClCompile Include="pv_game.cpp" />
|
||||
<ClCompile Include="render.cpp" />
|
||||
<ClCompile Include="render_context.cpp" />
|
||||
<ClCompile Include="render_manager.cpp" />
|
||||
@@ -311,6 +315,7 @@ del "$(SolutionDir)bin\$(TargetName).lib"</Command>
|
||||
<ClInclude Include="mdl\draw_object.hpp" />
|
||||
<ClInclude Include="object.hpp" />
|
||||
<ClInclude Include="print.hpp" />
|
||||
<ClInclude Include="pv_game.hpp" />
|
||||
<ClInclude Include="render.hpp" />
|
||||
<ClInclude Include="render_context.hpp" />
|
||||
<ClInclude Include="render_manager.hpp" />
|
||||
@@ -341,5 +346,11 @@ del "$(SolutionDir)bin\$(TargetName).lib"</Command>
|
||||
<ItemGroup>
|
||||
<None Include="..\..\res\ft_shaders.farc" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<MASM Include="common.asm" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
<Import Project="$(VCTargetsPath)\BuildCustomizations\masm.targets" />
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
@@ -0,0 +1,46 @@
|
||||
pushaq MACRO
|
||||
push rax
|
||||
push rcx
|
||||
push rdx
|
||||
push rsi
|
||||
push r8
|
||||
push r9
|
||||
push r10
|
||||
push r11
|
||||
push r12
|
||||
push r13
|
||||
push r14
|
||||
push r15
|
||||
ENDM
|
||||
|
||||
popaq MACRO
|
||||
pop r15
|
||||
pop r14
|
||||
pop r13
|
||||
pop r12
|
||||
pop r11
|
||||
pop r10
|
||||
pop r9
|
||||
pop r8
|
||||
pop rsi
|
||||
pop rdx
|
||||
pop rcx
|
||||
pop rax
|
||||
ENDM
|
||||
|
||||
EXTERN ?pv_game_load_state_13_tail_impl@@YAX_K@Z : PROC
|
||||
|
||||
.DATA
|
||||
pv_game_load_state_13_tail_jump QWORD 00000001401043ECh
|
||||
|
||||
.CODE
|
||||
|
||||
PUBLIC ?implOfpv_game_load_state_13_tail@@YAXXZ
|
||||
|
||||
?implOfpv_game_load_state_13_tail@@YAXXZ :
|
||||
pushaq
|
||||
mov rcx, r14
|
||||
call ?pv_game_load_state_13_tail_impl@@YAX_K@Z
|
||||
popaq
|
||||
jmp [pv_game_load_state_13_tail_jump]
|
||||
END
|
||||
@@ -12,6 +12,7 @@
|
||||
#include "effect.hpp"
|
||||
#include "object.hpp"
|
||||
#include "print.hpp"
|
||||
#include "pv_game.hpp"
|
||||
#include "resource.h"
|
||||
#include "shader_ft.hpp"
|
||||
#include "sprite.hpp"
|
||||
@@ -54,6 +55,7 @@ HOOK(int32_t, FASTCALL, data_init, 0x0000000140192FF0) {
|
||||
object_patch();
|
||||
render_manager_patch();
|
||||
rob_patch();
|
||||
pv_game_patch();
|
||||
sprite_patch();
|
||||
stage_patch();
|
||||
texture_patch();
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
/*
|
||||
by korenkonder
|
||||
GitHub/GitLab: korenkonder
|
||||
*/
|
||||
|
||||
#include "pv_game.hpp"
|
||||
#include <Helpers.h>
|
||||
|
||||
void pv_game_load_state_13_tail_impl(size_t pv_game) {
|
||||
*(uint32_t*)(pv_game + 0x08) = 14;
|
||||
}
|
||||
|
||||
HOOK(void, FASTCALL, pv_game_load_state_13_tail, 0x000000014010386E);
|
||||
|
||||
void pv_game_patch() {
|
||||
INSTALL_HOOK(pv_game_load_state_13_tail);
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
/*
|
||||
by korenkonder
|
||||
GitHub/GitLab: korenkonder
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "../KKdLib/default.hpp"
|
||||
|
||||
extern void pv_game_patch();
|
||||
Reference in New Issue
Block a user