Repository navigation
Releases
VoidBloom 1.3.5
Saves and settings now use CHSave 0.4.0. The game creates its save file automatically on first save; players need no card-preparation tool. Existing namespaced saves are kept.
Install the .chgame package, or replace the existing SD-menu .CHG. The .bin is matching Rev0 firmware. Checksums and build details are included.
Upgrading from an older four-character save: back up the card and run the separate game converter before installation: python3 migrate_saves.py --card /path/to/card. This is only for preserving old progress.
Validated: game tests, standalone Rev0 build, cartridge extraction, first-save creation and restart recovery.
Source: e31654d5824e283592bea3230ea7ab4a64dfc873.
VoidBloom 1.3.4
Scores and settings use CHSave 0.3.0 with the stable ID com.juliendorra.voidbloom. Game firmware uses only the current save format.
Existing players: back up the card, then run the separate game conversion tool before installing:
python3 migrate_saves.py --card /path/to/cardFor a new card:
python3 prepare_saves.py --card /path/to/card com.juliendorra.voidbloomAlready namespaced saves are kept unchanged. Install the .chgame, or replace the existing SD-menu .CHG. The .bin is matching Rev0 firmware. Checksums, licenses and build details are included.
Validated: game tests, standalone Rev0 build, cartridge extraction and conversion of real save backups.
Source: 6f17ddf7f2af6b6ddd79067d2083b81978253440.
1.3.3 — CHSave SD saves
Scores and settings now use CHSave 0.1.0 on the SD card. Existing valid saves are preserved.
Install the .chgame package, or replace the existing SD-menu .CHG file. The .bin file is the matching Rev0 firmware. Prepare the save file before installation:
python3 prepare_saves.py --card /path/to/card VBLMThe offline web bundle embeds exactly the firmware in this release.
Validated: standalone Rev0 build, cartridge CRC/firmware extraction, CHSave journal/recovery tests. Checksums, licenses and build details are included.
Source: 4fe071f663a9f62244282e2e37343df76e3be7f8.
Void Bloom 1.3.2
Makes the pulse motif audible during continuous firing. Music beats take precedence over routine gun clicks, use a higher register and full-width notes, and survive subsequent low-priority shots. Kills and important combat cues can still interrupt the motif. Pause and Help silence the real timer.
Validation: the actual audio router passes timer-model checks for held fire, hurt priority, pause and mute. Host/simulator checks, campaign tests, controls and rendering checks pass with the clean pinned SDK, as do the native build and cartridge validation. The offline web ZIP embeds the new firmware with the unchanged emulator runtime.
Downloads include the shareable cartridge, Rev0 firmware, SD-menu build, license notices, a source-bound build report and SHA-256 checksums. Public builds retain this repo's previous save/build setup; the console workspace used a separate SD-save overlay. Digital checks do not establish acoustic loudness or physical timer margin.
Void Bloom 1.3.1 — distinct bomb rumble waves
Makes damage and bomb rumble easier to distinguish on the optional rumble pack. Damage is one sharp 80 ms knock. The bomb produces two waves over the 30-frame (0.5 second) visible blast, separated by a 167 ms fully-off interval. Pause silences output immediately; resume follows the remaining blast.
Actual Rev0 PWM measurements verified both crests, zero output between them, pause stop and timer expiry without advancing game frames. In a sound-muted A/B comparison, the user confirmed the motor stops between bomb waves. A debug-only comparison screen is available; ordinary release builds run the game.
Gameplay rules are unchanged from 1.3.0, whose validation included 48/48 delayed-observation campaign pilots clearing wave 12, 80 rendered boundary cases, and 24/24 no-hit movement-only first-boss runs. These are heuristic simulations with 100–200 ms input cadence, not human playtests. Fresh release-firmware emulation measured 60 fps in the opening window with no CPU faults; dense-wave handheld performance was not measured.
Includes portable .chgame, Rev0 firmware, native .CHG with cover, offline web emulator, GIF captures, validation records and checksums. The SD-menu cartridge on the connected console remains 1.2.2 because the card did not mount; the 1.3.1 firmware was directly flashed and launched.
Void Bloom 1.3.0 — rumble ripples and clear fire-mode alerts
Adds optional rumble-pack support using Pinball’s nonblocking GPIO1/PC0 driver. Damage is one sharp 180 ms impact. Bombs produce three fading ripples with quiet gaps across the 30-frame (0.5 second) visual blast; pause silences them immediately and resume follows the remaining blast. Kills, gun switches, boss defeats, evolutions and bonus rewards also have distinct feedback.
SELECT now displays “Narrow fire!” or “Spread fire!” in the lower alert position. The circle remains visible in narrow mode.
Validated with 48/48 delayed-observation campaign pilots clearing wave 12, 80 rendered boundary cases, and 24/24 no-hit movement-only first-boss runs. These are heuristic simulations with 100–200 ms input cadence, not human playtests. Actual Rev0 tests verified the three ripple crests/gaps, pause stop and timer expiry without advancing game frames. Subjective motor feel remains a human check. Release-firmware emulation measured 60 fps in the opening window; dense-wave handheld performance was not measured.
Includes portable .chgame, Rev0 firmware, native .CHG with cover, offline web emulator, GIF captures, validation records and checksums.
Void Bloom 1.2.2 — standalone zooming tutorial text
The wave-3 movement and wave-5 focus-fire tutorials now appear as standalone outlined words over the frozen start of the level. The text gently zooms out about 11% over 1.5 seconds, then holds. The tutorial panels, borders and auxiliary captions are removed. Transition timing and game rules are unchanged.
The actual simulator confirms frozen background pixels across 23 wave-3 and 30 wave-5 samples, while text width shrinks from 114 to 102 pixels and 117 to 105 pixels. All 48 delayed-observation campaign pilots still clear wave 12; 80 rendered boundary checks pass, and all 24 movement-only first-boss runs remain no-hit. These are heuristic simulations with 100–200 ms input cadence, not human playtests. Release firmware emulation measures 60 fps in the opening window; dense-wave handheld performance was not measured.
The physical console accepted CRC 62A6CB34. The SD cartridge, cover and preserved files passed uncached readback after remount. Includes portable .chgame, Rev0 firmware, native console .CHG, offline web emulator, captures, release manifest and checksums.
Void Bloom 1.2.1 — animated free-flight introduction
Wave 3 now opens with a big animated “Move up and down!” prompt as free flight unlocks. The text slides in and bobs vertically during the existing opening transition. Combat timing and game rules are unchanged. A dedicated movement-unlock GIF and the refreshed README sequence capture the new introduction.
B now triggers a panic bomb. SELECT toggles wide/narrow fire from wave 5, without slowing movement. The first unlock shows an animated “Focus fire with Select!” tutorial; switches show “Switched gun!” and narrow mode keeps the circle around the ship. Bomb icons are rings with center dots. The dedicated console cover is included in both cartridge formats.
Validated with 48/48 delayed-observation campaign pilots clearing wave 12, 80 rendered boundary checks, and 24/24 no-hit movement-only first-boss runs. Pressure still increases across weapon stages. These are heuristic simulations with 100–200 ms input cadence, not human playtests. Actual release firmware measured 60 fps in the emulated opening window; dense-wave handheld performance was not measured. The physical console accepted CRC 4EB0F63E and the SD cartridge, cover and preserved files passed uncached readback after remount.
Includes portable .chgame, Rev0 firmware, native console .CHG, offline web emulator, refreshed per-wave GIFs, an active-play README sequence, a release manifest and checksums.
Void Bloom 1.2.0 — switchable guns and B bombs
B now triggers a panic bomb. SELECT toggles wide/narrow fire from wave 5, without slowing movement. The first unlock shows an animated “Focus fire with Select!” tutorial; switches show “Switched gun!” and narrow mode keeps the circle around the ship. Bomb icons are rings with center dots. The dedicated console cover is included in both cartridge formats.
Validated with 48/48 delayed-observation campaign pilots clearing wave 12, 80 rendered boundary checks, and 24/24 no-hit movement-only first-boss runs. Pressure still increases across weapon stages. These are heuristic simulations with 100–200 ms input cadence, not human playtests. Actual release firmware measured 60 fps in the emulated opening window; dense-wave handheld performance was not measured. The physical console accepted CRC BC282725 and the SD cartridge, cover and preserved files passed uncached readback after remount.
Includes portable .chgame, Rev0 firmware, native console .CHG, offline web emulator, refreshed per-wave GIFs, an active-play README sequence, a release manifest and checksums.
Void Bloom 1.1.2
Void Bloom 1.1.2
Fixes the player ship disappearing beneath the bottom status bar. Movement now reserves room for the complete ship, animated exhaust, and focus markers at every edge and corner. The existing upper movement band is retained.
Gameplay checks
The same 48 seeded, delayed-observation simulated pilots reached wave 13 before and after this fix. With less edge space available, total deaths across those campaigns increased from 24 to 37, bomb uses from 435 to 459, and median completion time from 190.41 to 191.94 seconds. The added pressure is concentrated in later waves. These are heuristic simulations, not human completion-rate measurements.
- 80 framebuffer boundary checks pass across all weapon tiers, normal movement, focus, and diagonal inputs, including maximum exhaust length.
- 24/24 movement-only first-boss pilots survived 60 seconds without a hit.
- The ordinary simulator, bounded-pool rules, and actual release firmware checks pass.
- The connected Rev0 accepted CRC32
0x090290A8and confirmed launch.
Downloads
- VoidBloom-1.1.2.chgame — installable CHGame cartridge.
- VoidBloom-1.1.2-rev0.bin — Rev0 release firmware.
- VoidBloom-1.1.2-web.zip — offline web emulator; extract and open
index.html, then click Load cartridge. - VoidBloom-1.1.2-captures.zip — refreshed wave GIFs, corner and before/after captures, and the gameplay comparison.
- VoidBloom-1.1.2-release.json and SHA256SUMS.txt — source provenance, build details, validation results, and checksums.
The firmware is 25,948 bytes; static RAM is 15,272 bytes; both save pages are preserved. The offline and hosted emulators run the actual firmware.
Play hosted emulator · Paired gameplay results · Boundary captures