1
0
mirror of https://github.com/TomHarte/CLK.git synced 2025-12-06 01:18:30 +00:00

Install [L/S][I/G]DT wiring.

This commit is contained in:
Thomas Harte
2025-03-18 22:11:28 -04:00
parent 7b14df82e0
commit fe6a88c5df
6 changed files with 76 additions and 4 deletions

View File

@@ -311,6 +311,20 @@ template <
assert(false);
}
break;
case Operation::SIDT:
if constexpr (ContextT::model >= Model::i80286) {
Primitive::sdt<DescriptorTable::Interrupt, AddressT>(source_indirect(), instruction, context);
} else {
assert(false);
}
break;
case Operation::SGDT:
if constexpr (ContextT::model >= Model::i80286) {
Primitive::sdt<DescriptorTable::Global, AddressT>(source_indirect(), instruction, context);
} else {
assert(false);
}
break;
case Operation::JO: jcc(context.flags.template condition<Condition::Overflow>()); return;
case Operation::JNO: jcc(!context.flags.template condition<Condition::Overflow>()); return;