diff --git a/simu/src/main.rs b/simu/src/main.rs index ba40140..9922e3b 100644 --- a/simu/src/main.rs +++ b/simu/src/main.rs @@ -391,18 +391,27 @@ fn main() -> Result<(), Error> { v, cpu::instr_to_text(v, i, &simulation.book) ); - false + true } Err(e) => { println!("{e}"); - false + true } } } else { + println!("{HELP_MSG}"); true } } "c" | "context" => false, + "u" | "up" => { + while !simulation.error + && simulation.ram[simulation.pc] != 0x8800_0000 + { + simulation.step(); + } + false + } _ => { println!("{HELP_MSG}"); true @@ -435,5 +444,5 @@ step n - step trough n instructions (alias s) run - run program until exit / error (alias r) context - print context (alias c) print n - print ram content at address n and next 8 (alias p) - - repeat last step (yes, do no enter anything and press Enter) +up - run until the nex ret is reached (alias u) ";