mirror of
https://github.com/imjasonh/nescript
synced 2026-07-08 17:06:04 +00:00
Two example .ne programs with compiled .nes ROMs: - hello_sprite: d-pad controlled sprite movement - bouncing_ball: auto-bouncing sprite with edge detection Includes README with build instructions and emulator setup. https://claude.ai/code/session_01W6eQFStA66EuMKHUFo2rx3
1.5 KiB
1.5 KiB
NEScript Examples
Quick Start
1. Build the compiler
cargo build --release
2. Compile an example
cargo run -- build examples/hello_sprite.ne
This produces examples/hello_sprite.nes — a valid iNES ROM file.
3. Run in an emulator
Open the .nes file in any NES emulator:
Use the d-pad (arrow keys in most emulators) to move the sprite.
Examples
| File | Description |
|---|---|
hello_sprite.ne |
Move a smiley face with the d-pad |
bouncing_ball.ne |
A sprite that bounces around the screen automatically |
What you'll see
The ROM displays a small smiley-face sprite (an 8x8 tile built into the
compiler's default CHR data). In hello_sprite, you control it with the d-pad.
In bouncing_ball, it moves on its own and bounces off the screen edges.
Emulator controls
| NES Button | Typical Key |
|---|---|
| D-pad | Arrow keys |
| A | Z |
| B | X |
| Start | Enter |
| Select | Right Shift |
(Exact mappings vary by emulator — check your emulator's input settings.)
Compiler commands
# Compile to ROM
cargo run -- build examples/hello_sprite.ne
# Compile with custom output path
cargo run -- build examples/hello_sprite.ne --output my_game.nes
# Type-check only (no ROM output)
cargo run -- check examples/hello_sprite.ne