Me just going through Steven Hugg's book, sans the need to use the 8bitworkshop web IDE. The book makes use of Shiru's NESlib and the examples here use Steven Hugg's fork of a modified version by clbr.
I use the assembler/linker provided by the cc65 compiler. Before compiling on Debian-based distros (or, on Windows via WSL), ensure you have the below packages installed:
sudo apt install cc65 build-essential
Each example will have to be compiled individually. Just execute make
within the directory of the example's corresponding make file. You can execute make run
to launch your compiled NES rom using FCEUX. If on Debian-based system, download the latest version from the FCEUX website instead of using the very old version provided by your package manager. With that said, the examples should run on any emulator, including Mesen.
Not a requirement, but the code editor I use is Visual Studio Code with the Cole Campbell's language support extension. To install Visual Studio Code on Debian-based distros, execute:
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/
sudo sh -c 'echo "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list'
sudo apt update -y && sudo apt upgrade -y
sudo apt install apt-transport-https
sudo apt update -y
sudo apt install code
echo -e "export DOTNET_CLI_TELEMETRY_OPTOUT=1" >> ~/.bashrc
source ~/.bashrc