Streets of Rage:
back on the streets.
· Original Genesis preservation 0.1.0
The supplied cartridge, playable in the browser, with a traceable archive of its music, effects and imagery.
Play the original
The unchanged supplied SOR.SMD is retained, including its copier header. A reversible deinterleave produces the 512 KiB Genesis image. The cartridge header and computed checksum agree. The browser uses a self-hosted Genesis Plus GX runtime with keyboard, touch and controller controls, isolated browser snapshots and downloadable .sorstate files.
Four optional cheats
Freeze the countdown, block incoming hit damage, call police repeatedly, or respawn without losing a life. All four begin off and can be switched independently. Paired actual-core tests cover normal and enabled behavior for both players, disabling, restart and snapshot restore. Police calls retain normal action/stage restrictions, and falls can still kill with Infinite HP.
Hear the cartridge
The audio archive has 17 music command entries (16 distinct headers), 13 verified native-loop entries, 4 finite music cues and 64 audible effects/auditions. Music titles come from the cartridge’s own sound-test labels. The first pass plays forward, then the player repeats a measured native sequence region. Finite cues end naturally.
The loops retain the original sample period, with quiet, phase-compatible splice points and no crossfade or normalization. Ogg copies decode to the expected sample count; FLAC copies reproduce the lossless PCM exactly. These are original-driver emulator renders rather than physical-hardware recordings.
Recover the imagery
The gallery contains 1,346 entries, with mapped player/enemy sprites, all eight rounds’ foreground/background planes, decoded art tile sheets and original captures. Raw packets, palettes, ROM offsets and codec information accompany the archive.
Every decoded stream included in the verified inventory is compared against the cartridge’s own decoder where applicable. Diagnostic palettes and unassembled components are labeled; the archive does not claim that every dynamic screen composition has been reconstructed.
Verification and remaining work
The retained WASM boots the original ROM and advances with ordinary input. Native serialized states restore exactly; damaged and wrong-ROM snapshots are rejected. Browser checks cover original gameplay, assistance controls, snapshot persistence, music repeats, effects, gallery search and responsive layouts.
- Static stage layers retain no animated palette/scroll simulation.
- Tile sheets marked diagnostic grayscale retain original 4-bit indices and are not claimed to show original screen palettes.
- Story/UI composite mappings are an additional recovery layer; raw referenced pixel streams are retained. A stale Enigma table row at A85A+20 points to Kosinski1F596 and is excluded from Enigma exports. Abadede and some boss frames are linked sprite components, not a combined entity pose.
- Alternate enemy palette variants are preserved in palettes.json; sprite previews currently use one named ROM palette per family.
- Static original-ROM map components, including English/Japanese title parts and good-ending panels; not every timed story object/sprite composition.
- Palette lists are the original scene target phase; per-frame fades and cycling are not simulated.
- Story map2–7 context is the D280 transition; scene labels are deliberately neutral pending a full timeline audit.
- The original game is emulated, not rebuilt from source. A complete campaign playthrough is not claimed.
- Audio is original-driver emulator synthesis, not a comparison with physical Genesis hardware.
- Physical wireless controllers have not been independently tested for this release. Infinite HP blocks hit damage; falls can still kill. Original police-call timing and stage restrictions remain.
- Save files are exact-core emulator snapshots, separate from original cartridge persistence.
Read exact coverage · Source provenance · Frozen release manifest