Releases: mstan/Sonic3AndKnucklesRecomp
Release list
v0.5.1 - Widescreen file select (Windows + Linux)
Sonic 3 family v0.5.1 — Widescreen file select
Patch release for Sonic 3, Sonic 3 & Knuckles, and Sonic & Knuckles,
with Windows x64 ZIPs and Linux x86_64 AppImages. Supply your own matching ROM.
Changes
- Data Select in Sonic 3 and Sonic 3 & Knuckles now extends its portrait
backdrop across Adaptive and fixed widescreen views, replacing black margins. - Extra space shows the actual neighboring save cards and their characters.
The card strip stops at its ends instead of repeating unrelated cards. - The expanded composition stays intact during menu fades. Native center
pixels and selection behavior are preserved.
All v0.5.0 fixes and mods are included. Widescreen and Knuckles remain opt-in
under Mods; Widescreen → Adaptive follows the window size.
Upgrading
Extract the complete Windows ZIP. On Linux, make the AppImage executable and
run it from a writable folder; use --appimage-extract-and-run without FUSE.
Linux requires Ubuntu 24.04 (glibc 2.39) or a compatible x86_64 system.
Keep settings.ini, rom-*.cfg, *-mods.ini and cartridge saves (*.srm).
Save states require the same build and configuration; use cartridge saves to
carry progress between releases.
Validation
The file-select change was checked at native, 16:9, 32:9 and 64:9 widths,
including every card, both ends and the return-to-title fade. Across 120
captures, game RAM/VRAM stayed identical and native center pixels were retained.
Release validation covers all 13 attract selections, file-select scrolling,
mod gameplay and both packaged launchers, with Windows/Linux pixel and state
comparisons. Each package contains source/dependency metadata and licenses;
SHA256SUMS.txt covers all six downloads.
The experimental widescreen and gameplay limitations documented in
v0.5.0
still apply, including the separately tracked longer IceCap Act 1 route.
v0.5.0 - Widescreen and Knuckles fixes (Windows + Linux)
Sonic 3 family v0.5.0 — Widescreen and Knuckles fixes
Windows x64 ZIPs and Linux x86_64 AppImages for Sonic 3, Sonic 3 &
Knuckles, and Sonic & Knuckles. Supply your own matching ROM; none is
included.
Changes
- Blue Spheres objects now sit at grid corners in widescreen, including during
movement and turns. Spheres, bumpers and rings share the ground projection. - Repaired widescreen backgrounds in Flying Battery, Sandopolis and other
stages, including transitions between background banks. Angel Island's fire
transition, first miniboss art and hollow-tree reveal are also corrected. - Tails' title-screen plane and the Knuckles parade extend beyond the original
4:3 area. Restored the missing red pixels on Knuckles' title-screen hair. - Extra Knuckles now accepts any number from 1–74, with 16 as the
default. The cap reserves room for stage objects; busy scenes can use fewer. - S3K and S&K save states resume the current gameplay moment and restore the
Knuckles crowd instead of reloading the stage. Use Shift+F1–F9 to save,
F1–F9 to load, or controller LB/RB for slot 1.
Widescreen and the Knuckles mod remain opt-in under Mods. Choose
Widescreen → Adaptive to follow the window. The crowd is local play only.
Running and upgrading
Extract the complete Windows ZIP and run its EXE. On Linux, put the AppImage
in a writable folder, make it executable (chmod +x), and launch it. Use
--appimage-extract-and-run when FUSE is unavailable.
Preserve settings.ini, rom-*.cfg, *-mods.ini and *.srm when upgrading.
Save states require the same build and mod/widescreen configuration; use normal
cartridge saves (*.srm) to carry progress between releases.
Validation and limits
Validation covers all 13 attract selections across the three games, native
and wide titles, Blue Spheres, empty/existing save files, Knuckles gameplay,
and the packaged launchers. Release checks compare Windows/Linux gameplay
pixels, RAM/VRAM and attract state/audio hashes. The owner approved the Blue
Spheres alignment. This does not certify every stage or boss.
Widescreen remains experimental. A longer IceCap Act 1 route still triggers
an existing development stack-check failure and is tracked separately. Some
objects react only to the original players; monitors break only for Player 1.
The Knuckles crowd is inactive in special/bonus/competition stages and demos.
Linux targets Ubuntu 24.04 (glibc 2.39) or compatible x86_64 systems with OpenGL.
Older distributions and Steam Deck remain unvalidated. SHA256SUMS.txt covers
all six packages; each includes licenses and exact source/dependency metadata.
v0.4.0 - Knuckles & Knuckles (Windows + Linux)
Sonic 3 family v0.4.0 — Knuckles & Knuckles
Windows x64 ZIPs and Linux x86_64 AppImages for all three variants:
| Game | Package prefix | Owner ROM |
|---|---|---|
| Sonic 3 | Sonic3Recomp | sonic3.bin (2 MB) |
| Sonic 3 & Knuckles | Sonic3KRecomp | sonic3k.bin (4 MB combined lock-on) |
| Sonic & Knuckles | SonicAndKnucklesRecomp | sandk.bin (2 MB) |
Bring your own matching ROM. No ROM is included.
Changes
- Optional Knuckles & Knuckles mod in the combined game and S&K: 8, 16,
24 or 34 extra Knuckles follow the player. Controllers 2–4 can drive the
corresponding extras. Local play only; the mod is off by default. - S3K gets a still Knuckles portrait with complete fists, KNUCKLES 3 and
Knuckles The Echidna, plus the crowd parade. Title art is decoded from
your ROM at runtime. S&K gets its Knuckles & Knuckles title treatment. - Empty S3K save files and No Save initially select Knuckles while the mod is
enabled. Existing saves retain their character; empty selections can still
be changed before starting. - Includes the current adaptive widescreen renderer and launcher settings.
Enable widescreen through Mods > Widescreen, choosing Adaptive to fit
the window. The Knuckles mod is under Mods > Knuckles & Knuckles. - Repeatable production packaging for both platforms, with bundled runtime
dependencies, launcher assets, license notices and source/pin metadata.
Running and upgrading
Extract the whole Windows ZIP and run its EXE. On Linux, put the AppImage in a
writable folder, make it executable (chmod +x), and launch it. Add
--appimage-extract-and-run if FUSE is unavailable. Use the launcher ROM picker
or place the matching raw cartridge beside the application.
Preserve your settings.ini, rom-*.cfg, *-mods.ini and *.srm files when
upgrading. Keep the Windows assets/ folder beside the EXE. Linux refreshes
its bundled assets beside the AppImage without replacing your settings/saves.
Validation and limits
The title, caption and complete still fist passed owner review. Production
builds pass 21/21 CTests on each platform. The packages pass 18 scenarios per
platform covering launchers, native/wide titles, empty and existing saves,
Knuckles level entry, and 3600-frame attract runs. Captured gameplay pixels,
RAM/VRAM, and attract state/audio hashes match between Windows and Linux.
Windows DLL dependencies and Linux state/ROM discovery/relocation checks pass.
This is not a claim of a complete campaign playthrough.
The Knuckles crowd is for story zones; special/bonus/competition stages and
demos keep stock behavior. Some objects react only to the original players;
monitors break only for Player 1. Netplay is unavailable while this mod is on.
See the source's docs/KNUCKLES_ARMY.md for implementation limits.
Linux targets Ubuntu 24.04 (glibc 2.39) or compatible x86_64 systems with OpenGL.
Older distributions and Steam Deck remain unvalidated. SHA256SUMS.txt covers
all six packages. See the packaged README and licenses for usage and notices.
v0.3.0 — Pre-boot launcher UI (Sonic 3, Sonic 3 & Knuckles, Sonic & Knuckles)
New: RmlUi pre-boot launcher UI for all three native variants in this repo:
- Sonic3Recomp — Sonic 3 (standalone)
- Sonic3KRecomp — Sonic 3 & Knuckles (combined lock-on, with save persistence)
- SonicAndKnucklesRecomp — Sonic & Knuckles (standalone)
Each launches through a graphical front-end that verifies your ROM, lets you
configure controllers (keyboard + gamepad, rebindable, 2-player, 3/6-button), and
adjust settings (widescreen, intro skip, window scale, volume) before the game boots.
Per-variant box art is shown automatically.
Built on the AGPL-free clean-room own backend (own VDP/bus/Z80 scheduler, ymfm FM,
superzazu Z80). Ships under PolyForm Noncommercial 1.0.0 + permissive third-party
notices.
Windows (win64): download the zip for the variant you want, unzip, and run the
exe. Bring your own ROM — none is included. The launcher/ assets folder must stay
next to the exe.
Built from engine 5c165f6 (segagenesisrecomp v0.1.0).
Sonic3K — Linux (AppImage, initial/experimental)
Initial experimental Linux release — x86_64 AppImage.
Bring your own ROM. Place your legally-dumped Sonic 3 & Knuckles (.bin/.md/.gen) ROM in the same folder as the AppImage; it's auto-detected at launch. No ROM is included.
Run it
chmod +x Sonic3K-x86_64.AppImage
./Sonic3K-x86_64.AppImage # add --appimage-extract-and-run if FUSE is unavailable
Steam Deck / controllers — the AppImage reads the controller natively. In Desktop mode, launch through Gaming Mode (or set a Gamepad controller layout) so face buttons aren't remapped to keyboard keys.
Production build — no debug server / tooling. Early, experimental Linux port; expect rough edges. Source: this repo.
Licensed under PolyForm Noncommercial 1.0.0 (LICENSE.md). Native AGPL-free build; third-party notices in THIRD-PARTY-LICENSES.md (both attached).
v0.2.0 — Sonic & Knuckles + Sonic 3 & Knuckles native (all 3 variants)
Native x64 static recompilations of the Sonic 3 lock-on family. All three variants now build and run on the shared segagenesisrecomp engine — boot, menus, attract demos, and gameplay.
| Download | Game | ROM you supply |
|---|---|---|
Sonic3Recomp |
Sonic the Hedgehog 3 (standalone, 2 MB) | sonic3.bin |
SonicAndKnucklesRecomp |
Sonic & Knuckles (standalone, 2 MB) | sandk.bin |
Sonic3KRecomp |
Sonic 3 & Knuckles (4 MB lock-on combined) | sonic3k.bin |
New since v0.1.0
- Sonic & Knuckles (standalone) — new native target. Sega logo → S&K intro → title → attract → gameplay (Mushroom Hill, Sonic/Knuckles).
- Sonic 3 & Knuckles (combined) — the 4 MB lock-on. Title → Data Select → Angel Island and beyond, as Sonic or Knuckles.
- Battery-save persistence for the combined cart. S3&K's data-select save slots persist between runs (
sonic3k.srm), via a general per-game SRAM mechanism. (Standalone S&K has no save game, matching the original cart.)
Notes
- Bring your own ROM. No game data is included; place your legally-obtained ROM next to the exe with the name above (see each zip's README).
- AGPL-free. Release binaries run the clean-room own backend (recompiled 68K, own VDP/bus/scheduler, ymfm FM, superzazu Z80, clean-room PSG) — zero clownmdemu/clown68000 code linked or compiled. They ship under PolyForm Noncommercial 1.0.0 plus permissive third-party notices (ymfm BSD-3, superzazu MIT, clowncommon ISC, SDL2 zlib).
- Controls: Arrow keys = D-pad, A/S/D = A/B/C, Enter = Start; gamepads via SDL2. On the S3&K Data Select, C confirms a slot.
Not affiliated with or endorsed by SEGA. Source: https://github.com/mstan/Sonic3AndKnucklesRecomp
macOS (Apple Silicon) build — Sonic3AndKnucklesRecomp-macos-arm64.zip
Native arm64 .app (SDL2 bundled, ad-hoc signed). ROM not included.
v0.1.0 — Sonic 3 (standalone) AGPL-free native build
First public release of the Sonic 3 standalone native port, on the clean-room own backend: recompiled 68000, own VDP/bus/scheduler, ymfm FM (BSD-3), superzazu Z80 (MIT), clean-room SN76489. Zero AGPL code linked or compiled — ships under PolyForm Noncommercial 1.0.0 (see LICENSE and THIRD-PARTY-LICENSES.md in the zip).
Includes the audio delivery fixes (SDL delivery servo + priming, handler timestamp re-base, multi-frame event spreading). SRAM saves persist next to the exe.
Bring your own ROM: place sonic3.bin next to the exe. No game data is distributed.
Sonic 3 (standalone) native — v0.0.1 (private dev build)
Private native build of the Sonic 3 standalone mode (target Sonic3Recomp). Bring your own ROM (Sonic 3 USA, CRC32 9BC192CE) as sonic3.bin next to the exe. Statically links clownmdemu (AGPL-3.0) — see THIRD-PARTY-LICENSES.md. PRIVATE only; a public release would require the AGPL flow in segagenesisrecomp/RELEASING.md.