lemur/src/main.rs

33 lines
637 B
Rust

use std::{path::PathBuf, thread};
use anyhow::Result;
use app::App;
use clap::Parser;
use emulator::Emulator;
use winit::event_loop::{ControlFlow, EventLoop};
mod app;
mod emulator;
mod renderer;
mod shrooms_vb_core;
#[derive(Parser)]
struct Args {
rom: PathBuf,
}
fn main() -> Result<()> {
let args = Args::parse();
let (mut emulator, client) = Emulator::new();
emulator.load_rom(&args.rom)?;
thread::spawn(move || {
emulator.run();
});
let event_loop = EventLoop::new().unwrap();
event_loop.set_control_flow(ControlFlow::Poll);
event_loop.run_app(&mut App::new(client))?;
Ok(())
}