diff --git a/crates/prometeu-core/src/firmware/firmware.rs b/crates/prometeu-core/src/firmware/firmware.rs index 031db4ed..12b7fb3c 100644 --- a/crates/prometeu-core/src/firmware/firmware.rs +++ b/crates/prometeu-core/src/firmware/firmware.rs @@ -1,6 +1,6 @@ use crate::firmware::firmware_state::FirmwareState; use crate::hardware::{HardwareBridge, InputSignals}; -use crate::model::{AppMode, Cartridge, Color}; +use crate::model::{Cartridge, Color}; use crate::prometeu_hub::PrometeuHub; use crate::prometeu_os::PrometeuOS; @@ -57,13 +57,8 @@ impl Firmware { } fn step_init_app(os: &mut PrometeuOS, _signals: &InputSignals, _hw: &mut dyn HardwareBridge, cartridge: &Cartridge) -> Option { - match cartridge.header.mode { - AppMode::Game => { - }, - AppMode::System => { - } - } os.initialize_vm(cartridge); + // a gente precisa carregar e inicializar o cartridge antes de mudar o estado para AppRunning Some(FirmwareState::AppRunning) } @@ -88,7 +83,7 @@ impl Firmware { None } - pub fn load_cartridge(&mut self, cart: Cartridge) { - self.state = FirmwareState::LoadApp(cart); + pub fn load_cartridge(&mut self, cartridge: Cartridge) { + self.state = FirmwareState::LoadApp(cartridge); // change state } } \ No newline at end of file diff --git a/crates/prometeu-core/src/model/cartridge.rs b/crates/prometeu-core/src/model/cartridge.rs index b8d55ca7..7eef99fa 100644 --- a/crates/prometeu-core/src/model/cartridge.rs +++ b/crates/prometeu-core/src/model/cartridge.rs @@ -1,16 +1,9 @@ use crate::vm::Program; -#[derive(Debug, Clone, Copy, PartialEq, Eq)] -pub enum AppMode { - Game, - System, -} - #[derive(Debug, Clone)] pub struct AppHeader { pub app_id: String, pub title: String, - pub mode: AppMode, pub entrypoint: u32, } diff --git a/crates/prometeu-core/src/model/mod.rs b/crates/prometeu-core/src/model/mod.rs index ea406d98..6a4a9073 100644 --- a/crates/prometeu-core/src/model/mod.rs +++ b/crates/prometeu-core/src/model/mod.rs @@ -8,10 +8,10 @@ mod sample; mod cartridge; pub use button::Button; +pub use cartridge::Cartridge; pub use color::Color; +pub use sample::Sample; +pub use sprite::Sprite; pub use tile::Tile; pub use tile_bank::{TileBank, TileSize}; pub use tile_layer::{HudTileLayer, ScrollableTileLayer, TileMap}; -pub use sprite::Sprite; -pub use sample::Sample; -pub use cartridge::{Cartridge, AppMode};