feat: implement ability to boot straigt to cartridge
This commit is contained in:
@@ -49,7 +49,7 @@ pub enum Instruction {
|
||||
SET(u8, InstrRegister),
|
||||
}
|
||||
|
||||
#[derive(Debug, Copy, Clone)]
|
||||
#[derive(Copy, Clone)]
|
||||
pub enum JPTarget {
|
||||
RegisterPair(RegisterPair),
|
||||
ImmediateWord(u16),
|
||||
@@ -70,7 +70,7 @@ pub enum MATHTarget {
|
||||
ImmediateByte(u8),
|
||||
}
|
||||
|
||||
#[derive(Debug, Copy, Clone)]
|
||||
#[derive(Copy, Clone)]
|
||||
pub enum LDTarget {
|
||||
IndirectC,
|
||||
Register(InstrRegister),
|
||||
@@ -1993,3 +1993,27 @@ impl Table {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl std::fmt::Debug for JPTarget {
|
||||
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
||||
match *self {
|
||||
JPTarget::RegisterPair(pair) => write!(f, "{:?}", pair),
|
||||
JPTarget::ImmediateWord(word) => write!(f, "{:#06X}", word),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl std::fmt::Debug for LDTarget {
|
||||
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
||||
match *self {
|
||||
LDTarget::IndirectC => f.write_str("IndirectC"),
|
||||
LDTarget::Register(reg) => write!(f, "{:?}", reg),
|
||||
LDTarget::IndirectRegister(pair) => write!(f, "{:?}", pair),
|
||||
LDTarget::ByteAtAddress(addr) => write!(f, "{:#06X}", addr),
|
||||
LDTarget::ImmediateWord(word) => write!(f, "{:#06X}", word),
|
||||
LDTarget::ImmediateByte(byte) => write!(f, "{:04X}", byte),
|
||||
LDTarget::RegisterPair(pair) => write!(f, "{:?}", pair),
|
||||
LDTarget::ByteAtAddressWithOffset(byte) => write!(f, "{:#04X}", byte),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user