/NES-Emu

Nintendo NES emulator in C#

Primary LanguageC#

NES-Emu

Cycle accurate Nintendo NES emulator in C#.
smb
debugger

Progress

CPU: All official instructions implemented and tested. Runs a single cycle each game loop.

PPU: 95%, Some edge case timing issues with sprite overflow and sprite zero hits.

APU: Pulse1, Pulse2, Triangle and Noise channels are implemented.

Mappers: 0,1,2,3,4,7,9,11,13,34,66,71,232

Inputs: 1 player either keyboard or Xinput(Xbox) gamepad, configurable through a gui.

Debugger: Supports adding breakpoints, Memory search, Hex converter, Dynamic disassembler,
Image testing tools, PPU viewer and log comparison tool with error analyzer.

Controls

Default keyboard setup

NES Keyboard
Up W
Down S
Left A
Right D
Select U
Start I
A N
B M

Screenshots

castlevania u prg1 -256 duck tales u -256 baseball u -256 dragon warrior iv u -256 advanced dungeons dragons - hillsfar u -256 adventures of tom sawyer u -256 bases loaded u prg2 -256 boy and his blob a - trouble on blobolonia u -256 castlevania ii - simon s quest u -256 dr mario u prg1 -256 monopoly u -256 nes open tournament golf u -256 simpsons the - bart vs the space mutants u prg0 -256 snow bros u p -256 super dodge ball u -256 yoshi u -256 uncanny x-men the u -256 super mario bros 2 u prg1 -256 star trek - 25th anniversary u -256 gauntlet u -256 advanced dungeons dragons - dragon strike u -256