nes-pascal

Building and running programs

Compilation

Compile the minimal example with:

python -m nes_pascal.cli examples/minimal.nsp -o build/minimal.nes

The repository also contains focused examples for each implemented language area:

python -m nes_pascal.cli examples/arithmetic.nsp -o build/arithmetic.nes
python -m nes_pascal.cli examples/boolean_expressions.nsp -o build/boolean_expressions.nes
python -m nes_pascal.cli examples/conditionals.nsp -o build/conditionals.nes
python -m nes_pascal.cli examples/loops.nsp -o build/loops.nes
python -m nes_pascal.cli examples/counting.nsp -o build/counting.nes
python -m nes_pascal.cli examples/procedures.nsp -o build/procedures.nes
python -m nes_pascal.cli examples/procedure_parameters.nsp -o build/procedure_parameters.nes

The examples demonstrate:

The loop, counting, and procedure-parameter examples select background color $21 only when their expected final states are reached.

The Makefile shortcut builds the minimal program:

make rom

Generated ROMs use the format described in Target platform.

Running in Mesen

  1. Generate build/minimal.nes.
  2. Open Mesen.
  3. Select File > Open and choose build/minimal.nes.
  4. The display should remain stable with universal background color $21.

Cleaning generated files

Remove build artifacts with:

make clean