diff --git a/src/main.rs b/src/main.rs index d520983..ffa1e35 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,9 +1,11 @@ #![allow(dead_code)] #![allow(unused_variables)] + mod vm; +use crate::vm::vm::*; fn main() { - let lc3 = vm::VM::new(); + let lc3 = VM::new(); // let mut lc3 = VM::new(); // let args: Vec = env::args().collect(); // let path = args.get(1).expect("a file must be specified"); diff --git a/src/isa.rs b/src/vm/isa.rs similarity index 98% rename from src/isa.rs rename to src/vm/isa.rs index 65d8b60..ed1d6d5 100644 --- a/src/isa.rs +++ b/src/vm/isa.rs @@ -1,7 +1,7 @@ #![allow(dead_code)] #![allow(unused_variables)] -use crate::vm::VM; +use crate::vm::vm::VM; enum Opcode { BR = 0, diff --git a/src/virtmem.rs b/src/vm/mem.rs similarity index 100% rename from src/virtmem.rs rename to src/vm/mem.rs diff --git a/src/lib.rs b/src/vm/mod.rs similarity index 59% rename from src/lib.rs rename to src/vm/mod.rs index fcde2ed..c2f827f 100644 --- a/src/lib.rs +++ b/src/vm/mod.rs @@ -1,3 +1,3 @@ -pub mod virtmem; pub mod isa; +pub mod mem; pub mod vm; diff --git a/src/vm.rs b/src/vm/vm.rs similarity index 85% rename from src/vm.rs rename to src/vm/vm.rs index df3637a..94f3be3 100644 --- a/src/vm.rs +++ b/src/vm/vm.rs @@ -1,21 +1,21 @@ #![allow(dead_code)] #![allow(unused)] -use crate::virtmem::Memory; +use crate::vm::mem::*; const PC_START: u16 = 0x300; -pub struct Registers { - pub r0: u16, - pub r1: u16, - pub r2: u16, - pub r3: u16, - pub r4: u16, - pub r5: u16, - pub r6: u16, - pub r7: u16, - pub pc: u16, - pub cond: u16, +struct Registers { + r0: u16, + r1: u16, + r2: u16, + r3: u16, + r4: u16, + r5: u16, + r6: u16, + r7: u16, + pc: u16, + cond: u16, } enum ConditionFlags { @@ -86,12 +86,12 @@ impl Registers { pub struct VM { - pub memory: Memory, - pub registers: Registers, + memory: Memory, + registers: Registers, } impl VM { - pub fn new() -> VM { + pub fn new() -> VM { VM{ memory: Memory::new(), registers: Registers::new(), @@ -99,7 +99,7 @@ impl VM { } } -// pub fn execute(&mut self) { +// fn execute(&mut self) { // while self.registers.pc < 0x3010 { // let instruction = self.memory.get(self.registers.pc); // match instruction >> 12 {