Dekejit/src/main.rs

31 lines
642 B
Rust
Raw Normal View History

2023-04-28 12:18:07 +02:00
use dekejit::cpu::IOBuffer;
use dekejit::cpu::CPU;
use dekejit::loader::unloader::*;
2022-12-29 01:15:59 +01:00
fn main() {
2023-04-28 12:18:07 +02:00
let mut k = make_string("Hello world!");
let mut code: Vec<u16> = vec![
0b0111000100000011, // addi ra 3
0b1110000100000011, // ecall ra 3
0b1111000000000000, // HALT.
];
code.append(&mut k);
let mut env = IOBuffer::default();
let mut cpu = CPU::new(&mut env);
for c in &code[..] {
println!("{:#018b}", c);
}
match cpu.run_code_raw(&code) {
Ok(_) => {
println!("Result: {}", env.output)
}
Err(e) => println!("Err: {:?}", e),
};
2022-12-29 01:15:59 +01:00
}