mirror of
https://github.com/TomHarte/CLK.git
synced 2024-08-21 19:29:08 +00:00
CMP doesn't write.
This commit is contained in:
parent
2432396eaa
commit
430c60111e
@ -862,6 +862,7 @@ void call_far(InstructionT &instruction,
|
|||||||
|
|
||||||
const Source source_segment = instruction.data_segment();
|
const Source source_segment = instruction.data_segment();
|
||||||
|
|
||||||
|
// TODO: preauthorise reads.
|
||||||
const uint16_t offset = memory.template access<uint16_t, AccessType::Read>(source_segment, source_address);
|
const uint16_t offset = memory.template access<uint16_t, AccessType::Read>(source_segment, source_address);
|
||||||
source_address += 2;
|
source_address += 2;
|
||||||
const uint16_t segment = memory.template access<uint16_t, AccessType::Read>(source_segment, source_address);
|
const uint16_t segment = memory.template access<uint16_t, AccessType::Read>(source_segment, source_address);
|
||||||
@ -1672,7 +1673,7 @@ template <
|
|||||||
case Operation::ADD: Primitive::add<false>(destination_rmw(), source_r(), status); break;
|
case Operation::ADD: Primitive::add<false>(destination_rmw(), source_r(), status); break;
|
||||||
case Operation::SBB: Primitive::sub<true, true>(destination_rmw(), source_r(), status); break;
|
case Operation::SBB: Primitive::sub<true, true>(destination_rmw(), source_r(), status); break;
|
||||||
case Operation::SUB: Primitive::sub<false, true>(destination_rmw(), source_r(), status); break;
|
case Operation::SUB: Primitive::sub<false, true>(destination_rmw(), source_r(), status); break;
|
||||||
case Operation::CMP: Primitive::sub<false, false>(destination_rmw(), source_r(), status); return;
|
case Operation::CMP: Primitive::sub<false, false>(destination_r(), source_r(), status); return;
|
||||||
case Operation::TEST: Primitive::test(destination_r(), source_r(), status); return;
|
case Operation::TEST: Primitive::test(destination_r(), source_r(), status); return;
|
||||||
|
|
||||||
case Operation::MUL: Primitive::mul(pair_high(), pair_low(), source_r(), status); return;
|
case Operation::MUL: Primitive::mul(pair_high(), pair_low(), source_r(), status); return;
|
||||||
|
Loading…
Reference in New Issue
Block a user