# NesEmulator **Repository Path**: clone12/NesEmulator ## Basic Information - **Project Name**: NesEmulator - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-05-13 - **Last Updated**: 2025-05-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # NesEmulator [![CI](https://github.com/ocfbnj/NesEmulator/actions/workflows/ci.yml/badge.svg?branch=main)](https://github.com/ocfbnj/NesEmulator/actions/workflows/ci.yml) This is an NES emulator. It implements Mapper0-4, which cover about 80% of iNes rom. The following games have been tested, other games may or may not work: - Super Mario Bros. - Battle City - Contra - Teenage Mutant Ninja Turtles - Double Dragon - Zelda ## Usage ~~~bash ./NesEmulator ~~~ ### Controller #### Player1 | Button | Mapped to | | :----: | :-------: | | A | J | | B | K | | Select | Space | | Start | Enter | | Up | W | | Down | S | | Left | A | | Right | D | #### Player2 | Button | Mapped to | | :----: | :---------: | | A | Num1 | | B | Num2 | | Select | Right Shift | | Start | Num0 | | Up | Up | | Down | Down | | Left | Left | | Right | Right | #### Other | Button | Effect | | :----: | :-----------: | | R | Reset | | I | Quick Save | | L | Quick Restore | ## How to build ### Prerequisites - A compiler supporting C++20. - Python3 installed. - CMake installed. ### Building with Conan Package Manager 1. Install Conan ~~~bash pip install conan -U conan profile detect --force ~~~ 2. Clone and Build **Windows** ~~~bash git clone https://github.com/ocfbnj/NesEmulator.git cd NesEmulator conan install . --build=missing cmake --preset=conan-default cmake --build --preset=conan-release ~~~ **Linux, macOS** ~~~bash git clone https://github.com/ocfbnj/NesEmulator.git cd NesEmulator conan install . --build=missing cmake --preset=conan-release cmake --build --preset=conan-release ~~~ Now, you can find the binary in `build` directory. ## Screenshots ![Super Mario Bros](./images/Super%20Mario%20Bros.png) ![Battle City](images/Battle%20City.png) ![Contra](./images/Contra.png) ![Teenage Mutant Ninja Turtles III](./images/Teenage%20Mutant%20Ninja%20Turtles%20III.png) ![Double Dragon II](./images/Double%20Dragon%20II.png) ## References Developing an NES emulator is exciting and interesting 😀. If you also want to develop your own one, you can refer to the following tutorials and references. ❤️ ### Nesdev Wiki - ### Tutorials - - - ### Other NES implementations - - - - ### CPU - - - (This page was closed.) ### Graphic - - - ### Audio - - - -