Skip to content

kanathan/plainNES

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

85 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

plainNES

A NES emulator written in C++

The emulator is still a work in progress, but can already run a variety of games. Graphics are rendered using OpenGL, and incorporates the ImGui GUI library. SDL2 is used for window management, input processing, and audio. A few Boost modules are also incorporated.

The current version has a fully functional CPU, including unofficial opcodes. Main PPU functionality is fully implemented, with some timing and obscure behavior still in work. The APU works, with some audio glitches.

Unit testing is performed with the Catch2 library, and tests against many of the test ROMs listed on the NESDev Wiki

Screenshots

castlevania_rs contra_rs loz_rs megaman2_rs smb1_rs excitebike_rs

Controls

Controls are hardcoded at this time:

NES Keyboard
A X
B Z
Start Enter
Select Spacebar
Up/Down/Left/Right Direction Keys
RESET Ctrl-R

Releases

No releases published

Packages

No packages published