// SPDX-License-Identifier: LGPL-3.0-or-later
// Copyright (c) 2024 Patrick_Pluto
mod assembler;
mod cpu;
fn main() {
let mut assembler: assembler::Assembler<u8> = assembler::Assembler::create(vec![
assembler::Opcode::create("nop", 0),
assembler::Opcode::create("load", 1),
assembler::Opcode::create("store", 2),
assembler::Opcode::create("add", 3),
assembler::Opcode::create("sub", 4),
assembler::Opcode::create("jump", 5),
assembler::Opcode::create("jpiz", 6),
]);
let final_result: Vec<u8> = assembler.assemble(&mut "nop 0x00 0x22".to_string());
dbg!(final_result);
// let mut instance: cpu::ExampleCPU = cpu::ExampleCPU::create_instance(true, [0; 256]);
// change the instructions here
// instance.start_emulation();
}