Thanks to visit codestin.com
Credit goes to github.com

Skip to content

TesseracT33/NES

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Summary

nes-dono is a Nintendo Entertainment System (NES) emulator written in C++ with a graphical interface (using wxWidgets-3). It relies on SDL2 for video, audio and input. It's an attempt at cycle-accurate APU, CPU and PPU emulation. Currently, the CPU implementation is mostly complete and correct, while the APU and PPU implementations could be much improved.

nes1 nes2 nes3 nes4 nes5 nes6

Current features

  • GUI
  • Supported mappers are (AxROM, CNROM, MMC1, MMC3, NROM, UxROM).
  • Audio output
  • Save data reading/writing
  • Save states

WIP/future features

  • Controller input support (non-functioning due to SDL and wxWidgets not playing nicely together).

Passed tests

The emulator passes the following tests:

  • blargg_apu_2005.07.30, but not tests '09.reset_timing' and '11.len_reload_timing'
  • blargg_nes_cpu_test5
  • blargg_ppu_tests_2005.09.15b
  • branch_timing_tests
  • cpu_dummy_reads
  • cpu_dummy_writes
  • cpu_exec_space/test_cpu_exec_space_ppuio
  • cpu_timing_test6
  • instr_misc
  • mmc3_test_2, but not test '6-MMC3_alt'
  • oam_read
  • oam_stress
  • ppu_open_bus
  • read_joy3
  • scrolltest
  • sprite_hit_tests_2005.10.05
  • sprite_overflow_tests, but not tests '3.Timing' and '4.Obscure'

Compiling and running

C++20 is required for compiling. Current external dependencies are wxWidgets and SDL2. I only supply Visual Studio solution files. The project settings were as follows:

C/C++ -- Additional Include Directories: F:\SDKs\wxWidgets-3.1.3\include\msvc; F:\SDKs\wxWidgets-3.1.3\include; F:\SDKs\SDL2-2.0.12\include

Linker -- Additional Library Directories: F:\SDKs\wxWidgets-3.1.3\lib\vc_x64_lib; F:\SDKs\SDL2-2.0.12\lib\x64;

Linker -- Input -- Additional Dependencies: SDL2.lib; SDL2main.lib;

About

NES emulator with a GUI, written in C++

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages