added a state dumper for headless checks

This commit is contained in:
2026-08-09 21:03:42 -05:00
parent d758fae787
commit b6a7510610
8 changed files with 4816 additions and 9 deletions
+14
View File
@@ -325,6 +325,20 @@ impl Ppu {
pub fn framebuffer(&self) -> &[u8] { &self.framebuffer }
pub fn begin_frame(&mut self) { self.frame_complete = false; self.scanline = 0; self.cycle = 0; }
// read-only accessors for the headless state dump
pub fn ctrl(&self) -> u8 { self.ctrl }
pub fn mask(&self) -> u8 { self.mask }
pub fn status(&self) -> u8 { self.status }
pub fn scanline(&self) -> u32 { self.scanline }
pub fn cycle(&self) -> u32 { self.cycle }
pub fn vram_addr(&self) -> u16 { self.vram_addr }
pub fn t(&self) -> u16 { self.t }
pub fn palette(&self) -> &[u8; 32] { &self.palette }
pub fn vram(&self) -> &[u8; 0x1000] { &self.vram }
pub fn framebuffer_nonzero(&self) -> usize {
self.framebuffer.iter().filter(|&&b| b != 0).count()
}
}