Initialize interpreter in Adam task
This commit is contained in:
parent
b11a59d211
commit
a25b25984f
7 changed files with 60 additions and 105 deletions
|
@ -1,44 +1,12 @@
|
|||
/* clang-format off */
|
||||
|
||||
WinMax;
|
||||
AutoComplete(0);
|
||||
|
||||
U0 @patch_call_rel32(U32 from, U32 to)
|
||||
{
|
||||
*(from(U8*)) = 0xE8;
|
||||
*((from + 1)(I32*)) = to - from - 5;
|
||||
}
|
||||
|
||||
U0 @patch_jmp_rel32(U32 from, U32 to)
|
||||
{
|
||||
*(from(U8*)) = 0xE9;
|
||||
*((from + 1)(I32*)) = to - from - 5;
|
||||
}
|
||||
|
||||
U0 @sse_enable()
|
||||
{
|
||||
/* clang-format off */
|
||||
asm
|
||||
{
|
||||
MOV_EAX_CR0
|
||||
AND AX, 0xFFFB // clear coprocessor emulation CR0.EM
|
||||
OR AX, 0x2 // set coprocessor monitoring CR0.MP
|
||||
MOV_CR0_EAX
|
||||
MOV_EAX_CR4
|
||||
OR AX, 3 << 9 // set CR4.OSFXSR and CR4.OSXMMEXCPT at the same time
|
||||
MOV_CR4_EAX
|
||||
}
|
||||
/* clang-format on */
|
||||
}
|
||||
|
||||
@sse_enable;
|
||||
|
||||
// FFI support files
|
||||
#include "FFI/Base";
|
||||
#include "FFI/LibC";
|
||||
#include "FFI/ELF64";
|
||||
|
||||
// LibTemple support files
|
||||
#include "LibTemple/OS";
|
||||
|
||||
#include "MuJS";
|
||||
|
||||
/* clang-format on */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue