These programs are designed to be run on a Nintendo Entertainment System or compatible console (with a PowerPak or a homemade flash cartridge) or in an NES emulator such as Nintendulator, Nestopia, FCEUX, or Mednafen. (They will most likely not work in older emulators such as NESticle.)
This is a very simple NES demo, letting the player move a character between two stacks of crates. To create a new NES assembly language project, you can unzip it into a new folder and delete everything after the init code. A Super NES version is also available.
Use this tool to create chiptune sound effects and drum sounds on your NES. You can even export them as assembly language source code for use in a game.
Download Sound Effects Editor day 18 (source and NES binary)
It is the story of a neighborhood rivalry that got w-a-y out of hand. Trampling each other's gardens was only the beginning. Soon they were shooting off model rockets to blow holes in the walls of the house across the street.
A 2-player battle for the ultimate home. Steal furniture, destroy walls, and perfect your Feng Shui for max points.
A program for testing assembly of NES game circuit boards. Burn it onto an EPROM and test it on all your devcarts, or program it to surface-mounted flash through the cart port. If it boots, it tells what works and doesn't work.
Supported mappers: SxROM (1), UxROM (2), TxROM (4), AxROM (7), PNROM (9), FxROM (10), INL-ROM Action 53 (28), BNROM (34), NROM/CNROM/GNROM (66), JxROM (69), IF-12 (78.3), TxSROM (118), UxROM (180)
An editor for NES background graphics that runs on the NES, along with image conversion tools written in Python. Version 0.05 adds copy and paste and a mode that automatically creates unique tiles.
Download Graphics editor 0.05 (82 KB; source, NES binary, and Python conversion tools)
Zapper demo including calibration screens, a table tennis game (move the paddles with dual Zappers), and a port of the Axe music toy.
Download Zap Ruder 0.03 (76 KB; source and NES binary)
A hippie guitarist who has visited your small town for years has gone rogue and launched ICBMs toward your town. Break out the fireworks that you had been saving for Independence Day, turn them into makeshift anti-ballistic missiles (ABMs), and shoot down the incoming missiles.
In the NES's original commercial era, not a lot of games could save because the common way to do so (battery-backed SRAM) was expensive. In fact, the cost of battery save is thought to be responsible for the cancellation of the English version of Mother (the Earthbound prequel) and the NES version of SimCity. Even in 2010, similar solutions (power management IC, ferroelectric RAM) are still expensive, and flash is designed more for machines with big RAM, which the NES is not. So the workaround remains the same as it did in the classic era: password save.
This program demonstrates how to encode a 32-bit number representing the state of a game into an 8-character password and then decode and validate it. It also includes a password entry form suitable for customizing in your own NES games.
Download Password save demo (18 KiB source and binaries)
Load the revolver, spin the cylinder, pull the trigger, and hope you don't die. Or play it safe with an NES Zapper.
An accident at the biochemical lab has released a neurotoxin, and you've been quarantined after exposure. Maintain your sanity by playing a card-matching game.
The table is littered with 10, 20, 36, 52, or 72 face-down cards. Flip two cards, and if they show the same emblem, you keep them. If they don't, flip them back.
Tetris? That's so 1989.
PC programs come with reasonably portable source code and a binary for Microsoft Windows.
18 rips compressed audio waveforms out of many NES games. 81 encodes RIFF WAVE files to NES audio format for use in NES homebrew. Both are command line tools. An example of how to play back a DPCM file on an NES is also available.
Download dpcmrip-20031113.zip (20 KB C source and binaries for Windows)
Download 81ex.zip (35 KB C source and binary for Windows and asm source and binary for NES)
These tools comprise a multi-format tile editor, NES nametable editor, and PackBits RLE compressor (C) and decompressor (6502 assembly language). Because the tile editor and compression code are useful for more than just the NES, I have placed them on the PC page.
© 2000–2014 Damian Yerrick. Some rights reserved: except where otherwise indicated, this site is free content, licensed under your choice of Creative Commons Attribution-ShareAlike 2.5 or GNU Free Documentation License 1.2. Terms apply.