TetroidNES is an open source multi platform NES emulator.
It currently has support for both windows and debian based linux distros
glance at the Prerequisites page in the wiki to see what you need to download and compiler Prerequisites
# build Cmake you can set the -DUNITTESTS flag to build unit tests or the relase
# this builds the project
cmake -S . -B build -DUNITTESTS=OFF
# this builds the unit tests
cmake -S . -B build -DUNITTESTS=ON
# build amd run project
cmake --build build --config Release
./Release/Tetroid.exe ${path to .nes rom file} # windws
./Tetroid {path to .nes rom file} # linux
# TODO install cc65 assembler and add it to your PATH/bin directory
# if you want buildTestRoms.ps1 to work
# downlaode page:
# make sure TestRoms are up to date
# builds the Test Roms
. .\buildTestRoms.ps1
build
./Emulator_tests # linux
./Debug/Emulator_tests.exe # windows
a special thanks to all who helped me make this