NES Homebrews

I recently discovered CVBasic on the AtariAge forums, and nanochess recently added NES support.  I thought I’d give an NES homebrew a shot and start with the first game that I made for the Atari 7800, “Boom!”.  This is my very first NES homebrew attempt!

Boom!

It’s a complete game however there’s definitely more I could add to it.  I thought I’d go ahead and post it here for everyone to try out and play.

Download the binary to play in your favorite NES Emulator:  Boom_NES_v1.0_binary

Your goal is simple: catch every bomb before it hits the ground. If a single bomb misses your buckets, you lose a life. As the bomber gets faster, you’ll need to stay sharp to survive.

Features & Mechanics

  • Dynamic Wave Progression: The challenge never stops. Every wave increases the pressure:

    • Bomb Quantity: I use a scaling formula ($15 + (Wave x 2)$) to keep levels short but intense. By Wave 10, you’re dealing with 35 bombs per round.

    • Speed Cap: While the bombs get faster as you progress, I’ve implemented a “Fairness Limit” cap of 5 pixels per frame. Hopefully this keeps the game as more of a test of skill than luck.

    • Spawn Density: The delay between bomb drops shrinks as you go ($20 – (Wave x 2)$), eventually hitting a floor of just 4 frames between drops.

  • Difficulty Skill Levels:

    • EASY: Buckets are 4 sprites wide (32px) for beginners.

    • STD: Buckets are 3 sprites wide (24px) for the classic challenge.

    • HARD: Buckets are 2 sprites wide (16px) for the experts.

  • Dual Control Modes: Switch between Standard digital movement and Velocity mode, which uses physics-based acceleration.

  • 5-Digit High Score: Aim for the legendary 99,999! The game tracks your High Score and Last Wave directly on the title screen.

  • Extra Lives: Stay in the fight longer by earning an extra bucket every 1,000 points (up to a maximum of 3).

Other Info

  • Custom 3-Octave Music Engine: I Built a multi-channel sequencer from scratch, featuring pulse-width duty cycles, noise-channel drum decay, and staccato note-off logic.  The sound engine works, but alas I’m not very good at actually creating music.  This would be something I’ll work on more in a future version.

  • 32KB NROM Architecture: Designed to run on original hardware or any modern emulator.

How to Play

  1. Select Skill: Use the D-Pad to choose your difficulty and control style.

  2. Start: Press A to begin the wave.

  3. Move: Use Left/Right to position your buckets.

  4. Catch: Don’t let a single bomb touch the city floor!