sharks
This commit is contained in:
parent
33e024d565
commit
6fb0aa5217
13
src/main.rs
13
src/main.rs
|
@ -367,10 +367,10 @@ fn arg_count(opcode: OP) -> usize {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn parse_instruction(mut bytes: &[u16]) -> (Instruction, usize) {
|
fn parse_instruction(mut bytes: &[u16]) -> (Instruction, usize) {
|
||||||
//println!("{:#02x?}", &bytes[0..8]);
|
|
||||||
let mut consumed = 0;
|
let mut consumed = 0;
|
||||||
|
|
||||||
let def = DefinitionWord(bytes[0]);
|
let def = DefinitionWord(bytes[0]);
|
||||||
|
print!("{:04x} ", bytes[0]);
|
||||||
bytes = &bytes[1..];
|
bytes = &bytes[1..];
|
||||||
consumed += 1;
|
consumed += 1;
|
||||||
|
|
||||||
|
@ -394,6 +394,7 @@ fn parse_instruction(mut bytes: &[u16]) -> (Instruction, usize) {
|
||||||
if register_count > 0 {
|
if register_count > 0 {
|
||||||
let mut aw = bytes[0];
|
let mut aw = bytes[0];
|
||||||
//dbg!(aw);
|
//dbg!(aw);
|
||||||
|
print!("{:04x} ", bytes[0]);
|
||||||
bytes = &bytes[1..];
|
bytes = &bytes[1..];
|
||||||
consumed += 1;
|
consumed += 1;
|
||||||
|
|
||||||
|
@ -419,17 +420,23 @@ fn parse_instruction(mut bytes: &[u16]) -> (Instruction, usize) {
|
||||||
AFLG::Register => args.push(Arg::Register(registers.remove(0))),
|
AFLG::Register => args.push(Arg::Register(registers.remove(0))),
|
||||||
AFLG::SIN => {
|
AFLG::SIN => {
|
||||||
args.push(Arg::SIN(bytes[0]));
|
args.push(Arg::SIN(bytes[0]));
|
||||||
|
print!("{:04x} ", bytes[0]);
|
||||||
bytes = &bytes[1..];
|
bytes = &bytes[1..];
|
||||||
consumed += 1;
|
consumed += 1;
|
||||||
}
|
}
|
||||||
AFLG::SMAIN => {
|
AFLG::SMAIN => {
|
||||||
args.push(Arg::SMAIN(bytes[0]));
|
args.push(Arg::SMAIN(bytes[0]));
|
||||||
|
print!("{:04x} ", bytes[0]);
|
||||||
bytes = &bytes[1..];
|
bytes = &bytes[1..];
|
||||||
consumed += 1;
|
consumed += 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for _ in 0..(4-consumed) {
|
||||||
|
print!(" ");
|
||||||
|
}
|
||||||
|
|
||||||
(Instruction { def, args }, consumed)
|
(Instruction { def, args }, consumed)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -696,7 +703,7 @@ fn main() {
|
||||||
m.SIN[1..=sin.inner().len()].copy_from_slice(sin.inner());
|
m.SIN[1..=sin.inner().len()].copy_from_slice(sin.inner());
|
||||||
m.SCODE[1..=code.inner().len()].copy_from_slice(code.inner());
|
m.SCODE[1..=code.inner().len()].copy_from_slice(code.inner());
|
||||||
m.input = vec![
|
m.input = vec![
|
||||||
0x05,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,
|
0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,
|
||||||
0x0a];
|
0x0a];
|
||||||
|
|
||||||
log::debug!("{:?}", &m.SIN[1..=sin.inner().len()]);
|
log::debug!("{:?}", &m.SIN[1..=sin.inner().len()]);
|
||||||
|
@ -706,7 +713,7 @@ fn main() {
|
||||||
// Return here if you don't want it to run
|
// Return here if you don't want it to run
|
||||||
|
|
||||||
|
|
||||||
// return;
|
return;
|
||||||
|
|
||||||
while m.step() {}
|
while m.step() {}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue