mirror of
https://github.com/TomHarte/CLK.git
synced 2025-02-27 00:30:26 +00:00
Fix MOVE CCR permissions.
This commit is contained in:
parent
d1298c8863
commit
62ed1ca2fd
@ -631,11 +631,13 @@ void Processor<BusHandler, dtack_is_implicit, permit_overrun, signal_will_perfor
|
||||
#define Duplicate(x, y) \
|
||||
case InstructionSet::M68k::Operation::x: \
|
||||
static_assert( \
|
||||
InstructionSet::M68k::operand_flags<InstructionSet::M68k::Model::M68000, InstructionSet::M68k::Operation::x>() == \
|
||||
InstructionSet::M68k::operand_flags<InstructionSet::M68k::Model::M68000, InstructionSet::M68k::Operation::y>() && \
|
||||
InstructionSet::M68k::operand_size<InstructionSet::M68k::Operation::x>() == \
|
||||
InstructionSet::M68k::operand_size<InstructionSet::M68k::Operation::y>() \
|
||||
); \
|
||||
InstructionSet::M68k::operand_flags<InstructionSet::M68k::Model::M68000, InstructionSet::M68k::Operation::x>() == \
|
||||
InstructionSet::M68k::operand_flags<InstructionSet::M68k::Model::M68000, InstructionSet::M68k::Operation::y>() && \
|
||||
InstructionSet::M68k::operand_size<InstructionSet::M68k::Operation::x>() == \
|
||||
InstructionSet::M68k::operand_size<InstructionSet::M68k::Operation::y>() && \
|
||||
InstructionSet::M68k::requires_supervisor<InstructionSet::M68k::Model::M68000>(InstructionSet::M68k::Operation::x) == \
|
||||
InstructionSet::M68k::requires_supervisor<InstructionSet::M68k::Model::M68000>(InstructionSet::M68k::Operation::y) \
|
||||
); \
|
||||
[[fallthrough]];
|
||||
|
||||
#define SpecialCASE(x) case InstructionSet::M68k::Operation::x: CheckSupervisor(x); MoveToStateSpecific(x)
|
||||
@ -947,7 +949,7 @@ void Processor<BusHandler, dtack_is_implicit, permit_overrun, signal_will_perfor
|
||||
perform_state_ = Perform_np;
|
||||
});
|
||||
|
||||
Duplicate(MOVEtoCCR, MOVEtoSR);
|
||||
StdCASE(MOVEtoCCR, perform_state_ = MOVEtoCCRSR);
|
||||
StdCASE(MOVEtoSR, perform_state_ = MOVEtoCCRSR);
|
||||
StdCASE(MOVEfromSR, {
|
||||
if(instruction_.mode(0) == Mode::DataRegisterDirect) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user