nesicide

nesicide is an Integrated Development Environment (IDE) for the 8-bit Nintendo Entertainment System (NES).
This project contains:
- NESICIDE (the IDE itself)
- A NES emulator (standalone package of the emulator used in the IDE)
- Qt FamiTracker (a fork of jsr's FamiTracker)
- FamiPlayer (a music player for .ftm files)
Prerequisites
The following steps are required prior to building this project on any platform.
-
Install
git -
Install Qt 5.12.6 as it was the latest kit to be verified to build NESICIDE properly without errors. Please do not use a kit later than this, or if you do, please create a pull request with necessary changes.
At the time of writing this Mac OS Homewbrew contains Qt 5.14.1 and NESICIDE can also be built with that version of Qt. So, alternatively, you can install Qt using
brew intall qt5
Debian prerequisites
sudo apt-get install build-essential libasound2-dev liblua5.1-dev libsdl1.2-dev libgl1-mesa-dev wine-dev
Arch Linux prerequisites
sudo pacman -S lua sdl mesa wine
Windows prerequisites
Building
This project builds for Linux, macOS, and Windows. To perform a build for any supported platform follow the instructions for the platform below.
NOTE: The build process takes a while, so grab a snack while you wait. ;)
Linux
./build/linux-build.sh- Once the build process is complete run:
./build/linux-deploy.sh
macOS
./build/osx-build.sh- Once the build process is complete run:
./build/osx-deploy.sh
If you installed Qt from Homebrew you need to set the following environment variable so that the build process can find qmake (the qt5 Homebrew formulat is keg-only):
PATH="/usr/local/opt/qt/bin:$PATH"
Windows
NOTE: The build process uses GnuWin32 tools and MinGW tools. Install these and make sure that mingw32-make and wget are on your path.
-
./build/win-build.sh -
Once the build process is complete run:
./build/win-deploy.sh
Running
The deploy.sh creates a tarball containing all of the executables and dependent libraries. Extract the tarball to your location of choice and execute.
Enjoy!