23 lines
810 B
Rust
23 lines
810 B
Rust
// 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();
|
|
}
|