From 91fd8313ef36e9b909a5409466f7ed06b40f1579 Mon Sep 17 00:00:00 2001 From: Miquel Sabaté Solà Date: Fri, 9 Oct 2026 21:50:13 +0200 Subject: runrom: simply pass 'args' into run() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This function already took most of the arguments from the user anyways, and the list of separate arguments was getting crazier to a point that even clippy started to freak out. Signed-off-by: Miquel Sabaté Solà --- crates/runrom/src/main.rs | 34 ++++++++-------------------------- 1 file changed, 8 insertions(+), 26 deletions(-) (limited to 'crates/runrom') diff --git a/crates/runrom/src/main.rs b/crates/runrom/src/main.rs index 00879d0..3968451 100644 --- a/crates/runrom/src/main.rs +++ b/crates/runrom/src/main.rs @@ -364,17 +364,8 @@ fn fetch_memory_addresses(nasm: Option) -> Result<(Vec, Option, - nasm: Option, - dump_memory: bool, -) -> Result<(), String> { - let (addresses, stack) = fetch_memory_addresses(nasm)?; +fn run(file: &Path, start: u16, args: Args) -> Result<(), String> { + let (addresses, stack) = fetch_memory_addresses(args.nasm)?; let mut policy = MemoryPolicy::default(); if let Some(stack) = stack { @@ -383,14 +374,14 @@ fn run( let mut machine = Machine::from(file, start, policy)?; machine.verbose = true; - machine.run_function_mode = assume_function; - machine.halt_on_brk = halt_on_brk; - machine.cycle_limit = cycle_limit; + machine.run_function_mode = args.assume_function; + machine.halt_on_brk = args.halt_on_brk; + machine.cycle_limit = args.cycle_limit; machine.addresses = addresses; - machine.until_address(end)?; + machine.until_address(args.until_address)?; - if dump_memory { + if args.dump_memory { let mut title = false; for (idx, cell) in machine.ram.iter().enumerate() { @@ -426,16 +417,7 @@ fn main() { }; let file = PathBuf::from(args.file.clone()); - match run( - &file, - start, - args.until_address, - args.assume_function, - args.halt_on_brk, - args.cycle_limit, - args.nasm, - args.dump_memory, - ) { + match run(&file, start, args) { Ok(m) => m, Err(e) => { die(e); -- cgit v1.2.3