aboutsummaryrefslogtreecommitdiff
path: root/src/main.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/main.rs b/src/main.rs
index 811e0cf..607fb34 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -5,14 +5,24 @@ mod memory;
use cpu::CPU;
use memory::Memory;
-
+use clap::Parser;
use crate::assembler::assembler;
+#[derive(Parser, Debug)]
+#[command(version, about, long_about = None)]
+struct Args {
+ #[arg(short, long)]
+ filename: String,
+}
+
+
fn main() {
+ let args = Args::parse();
+
let mut cpu = CPU::default();
let mut mem = Memory::new();
- let asm = std::fs::read_to_string("program.asm").unwrap();
+ let asm = std::fs::read_to_string(args.filename).unwrap();
let program = assembler(&asm);
for (i, byte) in program.iter().enumerate() {