1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-29 07:15:08 +00:00

UserspaceEmulator: Implement the JCXZ instruction

This commit is contained in:
Andreas Kling 2020-07-18 00:14:29 +02:00
parent d321dc0a74
commit c3441719ea

View file

@ -1289,7 +1289,13 @@ void SoftCPU::IN_AX_imm8(const X86::Instruction&) { TODO(); }
void SoftCPU::IN_EAX_DX(const X86::Instruction&) { TODO(); }
void SoftCPU::IN_EAX_imm8(const X86::Instruction&) { TODO(); }
void SoftCPU::IRET(const X86::Instruction&) { TODO(); }
void SoftCPU::JCXZ_imm8(const X86::Instruction&) { TODO(); }
void SoftCPU::JCXZ_imm8(const X86::Instruction& insn)
{
if ((insn.a32() && ecx() == 0) || (!insn.a32() && cx() == 0))
set_eip(eip() + (i8)insn.imm8());
}
void SoftCPU::JMP_FAR_mem16(const X86::Instruction&) { TODO(); }
void SoftCPU::JMP_FAR_mem32(const X86::Instruction&) { TODO(); }
void SoftCPU::JMP_RM16(const X86::Instruction&) { TODO(); }