diff --git a/challenge.mctf b/challenge.mctf index 1132ed9..1570b4e 100644 Binary files a/challenge.mctf and b/challenge.mctf differ diff --git a/src/main.rs b/src/main.rs index 2fb9f0f..5a44d88 100644 --- a/src/main.rs +++ b/src/main.rs @@ -379,6 +379,7 @@ fn parse_instruction(mut bytes: &[u16]) -> (Instruction, usize) { consumed += 1; println!("{:016b}", aw); + aw >>= 4; for i in 0..register_count { registers.insert(0_usize, Register::into_register(aw & 0b1111)); aw >>= 4; @@ -452,6 +453,7 @@ impl Machine { OP::CALL => { if self.RTRGT == 0 { } else { + unimplemented!("calling not implemented"); } } @@ -515,7 +517,7 @@ fn main() { m.SIN[1..=sin.inner().len()].copy_from_slice(sin.inner()); m.SCODE[1..=code.inner().len()].copy_from_slice(code.inner()); -// dump_instructions(&m.SCODE[1..]); +// dump_instructions(&m.SCODE[1..=code.inner().len()]); while m.step() {} }