17 lines
441 B
Python
17 lines
441 B
Python
from __future__ import annotations
|
|
|
|
from ..formatting import h16
|
|
|
|
|
|
class EmulatorError(Exception):
|
|
pass
|
|
|
|
|
|
class UnsupportedInstruction(EmulatorError):
|
|
def __init__(self, pc: int, raw: bytes, text: str) -> None:
|
|
raw_text = " ".join(f"{byte:02X}" for byte in raw)
|
|
super().__init__(f"unsupported instruction at {h16(pc)}: {raw_text} {text}".rstrip())
|
|
self.pc = pc
|
|
self.raw = raw
|
|
self.text = text
|