From 9a3d9c512ed1b59de4e274c4887aeb8e480d7d1a Mon Sep 17 00:00:00 2001 From: Gymnasiast Date: Sun, 17 Jan 2021 20:15:37 +0100 Subject: [PATCH] Move register definition to TestPaint --- src/openrct2/common.h | 65 ------------------------------------------- test/testpaint/Hook.h | 65 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+), 65 deletions(-) diff --git a/src/openrct2/common.h b/src/openrct2/common.h index 4174dae1b3..21d4dacbc4 100644 --- a/src/openrct2/common.h +++ b/src/openrct2/common.h @@ -210,69 +210,4 @@ using rct_string_id = uint16_t; # define FASTCALL #endif // PLATFORM_X86 -/** - * x86 register structure, only used for easy interop to RCT2 code. - */ -#pragma pack(push, 1) -struct registers -{ - union - { - int32_t eax; - int16_t ax; - struct - { - char al; - char ah; - }; - }; - union - { - int32_t ebx; - int16_t bx; - struct - { - char bl; - char bh; - }; - }; - union - { - int32_t ecx; - int16_t cx; - struct - { - char cl; - char ch; - }; - }; - union - { - int32_t edx; - int16_t dx; - struct - { - char dl; - char dh; - }; - }; - union - { - int32_t esi; - int16_t si; - }; - union - { - int32_t edi; - int16_t di; - }; - union - { - int32_t ebp; - int16_t bp; - }; -}; -assert_struct_size(registers, 7 * 4); -#pragma pack(pop) - #endif diff --git a/test/testpaint/Hook.h b/test/testpaint/Hook.h index 0a767e9693..bceffb7cec 100644 --- a/test/testpaint/Hook.h +++ b/test/testpaint/Hook.h @@ -24,6 +24,71 @@ enum X86_FLAG_SIGN = 1 << 7, }; +/** + * x86 register structure, only used for easy interop to RCT2 code. + */ +# pragma pack(push, 1) +struct registers +{ + union + { + int32_t eax; + int16_t ax; + struct + { + char al; + char ah; + }; + }; + union + { + int32_t ebx; + int16_t bx; + struct + { + char bl; + char bh; + }; + }; + union + { + int32_t ecx; + int16_t cx; + struct + { + char cl; + char ch; + }; + }; + union + { + int32_t edx; + int16_t dx; + struct + { + char dl; + char dh; + }; + }; + union + { + int32_t esi; + int16_t si; + }; + union + { + int32_t edi; + int16_t di; + }; + union + { + int32_t ebp; + int16_t bp; + }; +}; +assert_struct_size(registers, 7 * 4); +# pragma pack(pop) + using hook_function = uint8_t (*)(registers* regs); void addhook(uintptr_t address, hook_function function);