updated Project state after milestone
This commit is contained in:
@@ -1,3 +1,27 @@
|
|||||||
# Start:
|
# Status
|
||||||
|
|
||||||
Just made the repo, backed up the original game roms, still need to find actual test roms for develompment
|
## Done
|
||||||
|
|
||||||
|
- Repo set up, backed up the original game ROMs to roms/backup (gitignored, stays local)
|
||||||
|
- Got a full set of CPU test ROMs in roms/test/cpu: kevtris nestest (with reference log) plus the blargg suite (instr tests, timing, interrupts, dummy reads, reset checks)
|
||||||
|
- Cartridge module done and working (src/cartridge.rs):
|
||||||
|
- iNES header parser (magic, PRG/CHR sizes, mapper, mirroring, flags)
|
||||||
|
- Mapper 0 (NROM) support only: 16KB PRG mirroring, 32KB direct, CHR-ROM and CHR-RAM (zeroed 8KB buffer)
|
||||||
|
- read_prg/read_chr/write_chr with debug_assert guards
|
||||||
|
- Split from_file (thin I/O wrapper) / parse_data (pure parser) for testability
|
||||||
|
- 8 unit tests, all passing (header, PRG mapping, error cases, CHR-RAM roundtrip)
|
||||||
|
|
||||||
|
## Next
|
||||||
|
|
||||||
|
- CPU (6502 core) - biggest remaining piece for this milestone
|
||||||
|
- Then bus to connect CPU to RAM/cartridge
|
||||||
|
- Verify CPU with nestest log diff + blargg suite before any graphics
|
||||||
|
- GUI (egui + winit) and PPU come after the CPU milestone
|
||||||
|
|
||||||
|
## Decisions
|
||||||
|
|
||||||
|
- No external dependencies yet, keeping it pure std until the GUI milestone
|
||||||
|
- GUI choice: egui + winit (decided, not yet used)
|
||||||
|
- Scope: cartridge + CPU first, verified headless before graphics
|
||||||
|
- Mapper 0 first, other mappers (MMC1, CNROM) implemented after CPU works
|
||||||
|
- Test ROMs are homebrew/open, no ethics issue; game backups stay in gitignored roms/backup
|
||||||
|
|||||||
Reference in New Issue
Block a user