title name w/mbc is more descriptive

This commit is contained in:
Alex Janka 2023-02-12 17:21:24 +11:00
parent aeba27f6cf
commit 5989a1a49f
3 changed files with 11 additions and 7 deletions

View file

@ -99,7 +99,7 @@ fn main() {
};
let mut window = Window::new(
format!("{} on MBC: {}", rom.get_title(), rom.mbc_type()).as_str(),
format!("{} on {}", rom.get_title(), rom.mbc_type()).as_str(),
WIDTH * FACTOR,
HEIGHT * FACTOR,
WindowOptions::default(),

View file

@ -57,7 +57,7 @@ impl Rom {
self.mbc.set_ram(address, data);
}
pub fn mbc_type(&self) -> &str {
pub fn mbc_type(&self) -> String {
self.mbc.mbc_type()
}
}

View file

@ -5,7 +5,7 @@ pub(super) trait Mbc {
fn get_ram(&self, address: Address) -> u8;
fn set(&mut self, address: Address, data: u8);
fn set_ram(&mut self, address: Address, data: u8);
fn mbc_type(&self) -> &str;
fn mbc_type(&self) -> String;
}
pub(super) struct None {
@ -31,8 +31,8 @@ impl Mbc for None {
fn set(&mut self, _address: Address, _data: u8) {}
fn mbc_type(&self) -> &str {
"None"
fn mbc_type(&self) -> String {
String::from("None")
}
}
@ -155,8 +155,12 @@ impl Mbc for Mbc1 {
}
}
fn mbc_type(&self) -> &str {
"MBC1"
fn mbc_type(&self) -> String {
if let Some(ram) = &self.ram {
format!("{}KB MBC1 with {}KB RAM", self.rom_len / KB, ram.len() / KB)
} else {
format!("{}KB MBC1", self.rom_len / KB)
}
}
}