mirror of
https://github.com/livingcomputermuseum/sImlac.git
synced 2026-01-11 23:53:24 +00:00
Small tweak to the last commit for invalid instruction handling.
This commit is contained in:
parent
f0bc983c8a
commit
37c5437059
@ -282,6 +282,8 @@ namespace imlac
|
||||
/// </summary>
|
||||
protected enum DisplayOpcode
|
||||
{
|
||||
Invalid, // Set when an instruction could not be decoded.
|
||||
|
||||
// Basic instructions
|
||||
DLXA, // Load X Accumulator
|
||||
DLYA, // Load Y Accumulator
|
||||
|
||||
@ -354,6 +354,14 @@ namespace imlac
|
||||
_pc++;
|
||||
break;
|
||||
|
||||
case DisplayOpcode.Invalid:
|
||||
Helpers.SignalError(
|
||||
LogType.DisplayProcessor,
|
||||
"Execution of invalid display processor instruction {0}",
|
||||
Helpers.ToOctal(instruction.Data));
|
||||
_pc++;
|
||||
break;
|
||||
|
||||
default:
|
||||
Helpers.SignalError(
|
||||
LogType.DisplayProcessor,
|
||||
@ -683,6 +691,9 @@ namespace imlac
|
||||
LogType.DisplayProcessor,
|
||||
"Unhandled Display Processor Mode instruction {0}",
|
||||
Helpers.ToOctal(_word));
|
||||
|
||||
_opcode = DisplayOpcode.Invalid;
|
||||
_data = _word;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -721,6 +732,9 @@ namespace imlac
|
||||
LogType.DisplayProcessor,
|
||||
"Unhandled extended Display Processor Mode instruction {0}",
|
||||
Helpers.ToOctal(word));
|
||||
|
||||
_opcode = DisplayOpcode.Invalid;
|
||||
_data = word;
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@ -426,6 +426,14 @@ namespace imlac
|
||||
_pc++;
|
||||
break;
|
||||
|
||||
case DisplayOpcode.Invalid:
|
||||
Helpers.SignalError(
|
||||
LogType.DisplayProcessor,
|
||||
"Execution of invalid display opcode {0}",
|
||||
Helpers.ToOctal(instruction.Data));
|
||||
_pc++;
|
||||
break;
|
||||
|
||||
default:
|
||||
Helpers.SignalError(
|
||||
LogType.DisplayProcessor,
|
||||
@ -871,6 +879,9 @@ namespace imlac
|
||||
LogType.DisplayProcessor,
|
||||
"Unhandled Display Processor Mode instruction {0}",
|
||||
Helpers.ToOctal(_word));
|
||||
|
||||
_opcode = DisplayOpcode.Invalid;
|
||||
_data = _word;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -930,6 +941,9 @@ namespace imlac
|
||||
LogType.DisplayProcessor,
|
||||
"Unhandled extended Display Processor Mode instruction {0}",
|
||||
Helpers.ToOctal(word));
|
||||
|
||||
_opcode = DisplayOpcode.Invalid;
|
||||
_data = word;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user