Skip to content
Snippets Groups Projects
state.rs 29.2 KiB
Newer Older

    pub fn load_file(file_path: &str, gb: &mut GameBoy) -> Result<(), String> {
        let mut file = match File::open(file_path) {
            Ok(file) => file,
            Err(_) => return Err(format!("Failed to open file: {}", file_path)),
        };
        let mut data = vec![];
        file.read_to_end(&mut data).unwrap();
        Self::load(&data, gb)?;
        Ok(())
    }

    pub fn load(data: &[u8], gb: &mut GameBoy) -> Result<(), String> {
        let mut state = BeesState::default();
        state.read(&mut Cursor::new(data.to_vec()));
        state.to_gb(gb)?;
        print!("{}", state);
        Ok(())
    }