Skip to content

KamilKrauze/NES-Emulator-PrjGen-Improvement

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NES-Emulator

Basic NES emulator that only supports NROM (mapper 0) games.

For changes to this project by @KamilKrauze go to Changes.

PreMake Project Files

DISCLAIMER: I do not own the right nor contribute to the PreMake project.

You may use PreMake optionally to generate your project files you can also use the provided CMake files that are already provided by @filip-arch.

  1. Download PreMake5 and insert into the project root directory.
  2. You may either run the bash script GenerateProjectFiles.sh as shown below:
./GenerateProjectFiles.sh

Or you may generate the project files using the PreMake executable directly as shown below:

./premake5 gmake2

Deleting Project Files

For any reason that you may need to delete the project files generated using PreMake, run the DeleteProjectFiles.sh script as shown below:

./DeleteProjectFiles.sh

Compilation

CMake

To compile, run:

cmake pathToSourceFolder/src
make

PreMake

If the project files have been generated using PreMake then just run in the project root directory:

make

Running

Emulator must be given one argument, that being the .nes file it is to run e.g. ./NESEmulator game.nes

Controls

NES Controller Keyboard
Up Up Arrow
Down Down Arrow
Left Left Arrow
Right Right Arrow
A Z
B X
Start Enter
Select Backspace

Currently no way to remap controls other than directly modifying the controls.cpp file.

Changes

Changes Date
Added a PreMake5 lua script for project generation. 08/12/2023
Added complenting bash scripts for generating and deleting Makefiles of this project. 08/12/2023
Updated README with a better layout and PreMake instructions. 08/12/2023
Updated .gitignore to ignore Makefiles and premake5.lua 08/12/2023

About

NES Emulator - Project Generation enhancement

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 95.4%
  • C 3.8%
  • Other 0.8%