mirror of
https://github.com/momo5502/emulator.git
synced 2026-01-31 08:21:03 +00:00
Fix gdtr loading for unicorn
This commit is contained in:
@@ -244,8 +244,11 @@ namespace unicorn
|
|||||||
|
|
||||||
void load_gdt(const pointer_type address, const uint32_t limit) override
|
void load_gdt(const pointer_type address, const uint32_t limit) override
|
||||||
{
|
{
|
||||||
const std::array<uint64_t, 4> gdtr = {0, address, limit, 0};
|
uc_x86_mmr gdt{};
|
||||||
this->write_register(x86_register::gdtr, gdtr.data(), gdtr.size() * sizeof(uint64_t));
|
gdt.base = address;
|
||||||
|
gdt.limit = limit;
|
||||||
|
|
||||||
|
this->write_register(x86_register::gdtr, &gdt, sizeof(gdt));
|
||||||
}
|
}
|
||||||
|
|
||||||
void set_segment_base(const x86_register base, const pointer_type value) override
|
void set_segment_base(const x86_register base, const pointer_type value) override
|
||||||
|
|||||||
Reference in New Issue
Block a user