aboutsummaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
authorcrecher <crecher@crecher.net>2026-10-12 16:30:32 +0200
committercrecher <crecher@crecher.net>2026-10-12 16:30:32 +0200
commit0be10a289132f7ed9b42d5949db844227075e7ce (patch)
tree305a468b3c8e1fecb86c22bbe920c8140c46c3a0 /README
parentf5969959b81bce1841974cedcac0289d44f7c69e (diff)
downloadgones-0be10a289132f7ed9b42d5949db844227075e7ce.tar.gz
gones-0be10a289132f7ed9b42d5949db844227075e7ce.zip
ITS ALIVE (not rly no image yet)
Diffstat (limited to 'README')
-rw-r--r--README13
1 files changed, 7 insertions, 6 deletions
diff --git a/README b/README
index 5db532a..605481d 100644
--- a/README
+++ b/README
@@ -8,16 +8,17 @@ emulator base
- [x] cart package (iNES parser, mapper 0)
system bus (nes package)
-- [/] Bus type: 2KB RAM mirrored through $1FFF, PPU regs $2000-$3FFF (mirrored every 8), APU/IO $4000-$4017, cart $4020+ (need to do PPU and APU first)
+- [/] Bus type: 2KB RAM mirrored through $1FFF, PPU regs $2000-$3FFF (mirrored every 8), APU/IO $4000-$4017, cart $4020+ (APU still missing)
- [ ] OAM DMA at $4014 (stalls CPU 513/514 cycles)
- [x] reuse it in nestest_test.go instead of the test-only bus
-- [ ] CPU stall hook and proper IRQ/NMI line (polled between instructions)
+- [ ] CPU stall hook and proper IRQ/NMI line (polled between instructions) - PPU currently fires NMI straight from Console.Step, see its doc comment
ppu, background
-- [ ] registers $2000-$2007 and v/t/x/w latch logic
-- [ ] nametables with mirroring, pattern tables, palettes, buffered $2007 reads
-- [ ] 341 dots x 262 lines timing, 3 dots per CPU cycle
-- [ ] vblank flag and NMI
+- [x] registers $2000-$2007 and v/t/x/w latch logic
+- [x] nametables with mirroring, palettes, buffered $2007 reads (pattern tables go through the mapper already)
+- [x] 341 dots x 262 lines timing, 3 dots per CPU cycle, odd-frame skip dot
+- [x] vblank flag and edge-triggered NMI, including the $2002 set-dot race window (see ppu/registers.go's readStatus)
+- [ ] background shift-register pixel pipeline, PPUMASK clipping
- [ ] 256x240 framebuffer and RGB palette
frontend and input