Compare commits

..

2 Commits

5 changed files with 8 additions and 3 deletions

View File

@ -15,11 +15,11 @@
* [ ] MBC1M
* [x] MBC2
* [x] MBC5
* Implements a cycle-accurate PPU FIFO
* Doesn't \*exactly\* work right just yet
Supports: ROM-only, MBC1, MBC2, MBC3 and MBC5 games.
* Implements a cycle-accurate PPU FIFO
* Doesn't \*exactly\* work right just yet
### Controls
@ -33,3 +33,6 @@ Key | Button
<kbd>Shift</kbd> | SELECT
Then use the Arrow keys for the D-Pad
### Credits
The Boot ROM found in the `bin/` directory was made by [Optix](https://github.com/Hacktix) over [here](https://github.com/Hacktix/Bootix)

BIN
bin/bootix_dmg.bin Normal file

Binary file not shown.

View File

@ -15,6 +15,7 @@ pub struct Cpu {
}
impl Cpu {
#[allow(dead_code)]
pub(crate) fn without_boot() -> Self {
Self {
reg: Registers {

View File

@ -160,7 +160,7 @@ pub mod build {
pub fn finish(mut self) -> Emulator {
let mut emu = Emulator::new(match self.boot {
Some(rom) => Cpu::with_boot(rom),
None => Cpu::without_boot(),
None => Cpu::with_boot(*include_bytes!("../bin/bootix_dmg.bin")),
});
if let Some(rom) = self.cart.take() {

View File

@ -418,6 +418,7 @@ impl Ppu {
self.frame_buf.swap_with_slice(&mut blank);
}
#[inline]
pub(crate) fn frame_buf(&self) -> &[u8; GB_HEIGHT * GB_WIDTH * 4] {
&self.frame_buf
}