Skip to content

Releases: elliotttate/DKC1Recomp

DKC1Recomp v0.0.11 - Windows fullscreen menu bar fix

Choose a tag to compare

@elliotttate elliotttate released this 13 Sep 01:03

Windows fullscreen menu bar fix

  • The Game/View/Mods/Music menu bar no longer stays on screen in fullscreen. It is detached when entering fullscreen and restored on return to windowed mode, so the fullscreen image now covers the whole display instead of sitting below the bar.
  • First launch is integer-scaled again: installing the menu bar had trimmed its height from the initial window (1197x628 instead of 1197x672 at 3x/16:9 on a 200% display).
  • Host-only change. No cartridge, widescreen, dispatch or Mac code changed.

Downloads

  • Windows: DKC1Recomp-v0.0.11-Windows-x64.zip. Extract it, keep SDL2.dll next to DKC1Recomp.exe, launch and select your own supported USA v1.0 DKC1 ROM. Windows 10/11 x64 and an OpenGL 3.3-capable driver are required. Alt+Enter or View > Fullscreen toggles fullscreen; Escape returns to windowed mode.
  • Mac: the existing DKC1Recomp-v0.0.9-macOS-arm64.zip is included unchanged, with its original checksum. The Mac host did not have this issue and has not been rebuilt.

No ROM or extracted game assets are included.

Validation

243 public tests passed (10 expected skips) and the three native Windows CTest suites passed, with windows_platform extended to assert menu bar detach/restore and retained checkmarks. Live check on the private ROM in an isolated user directory on a 3456x2170 display: View > Fullscreen and Alt+Enter both produced a borderless window with no menu and a client area equal to the monitor; the menu item, Alt+Enter and Escape each restored the bar and the 1197x672 windowed client. The packaged executable was extracted fresh and completed a hidden 240-frame smoke run.

This is targeted host validation, not a new full-game playthrough or exhaustive hardware testing. Existing game/widescreen limitations remain documented in the repository.

DKC1Recomp v0.0.10 - Windows and macOS

Choose a tag to compare

@elliotttate elliotttate released this 06 Sep 23:27

Windows build with Mac feature parity

  • Native Windows x64 release with dark Game/View/Mods/Music menus and a high-DPI settings panel.
  • Mac-style graphics controls: 4:3, 16:10 and 16:9; Nearest, Bilinear, Sharp Bilinear and Reconstruct, including dither decoding; CRT presets, masks, glow, halation, curvature and screen-color profiles.
  • Both-player remapping, deadzones, controller menu navigation, rewind/3x fast-forward, five state slots, audio settings, MSU-1 folders/archives and the private-DKC3-ROM Baby Kong option.
  • Shared host audio/pacing models and shader arithmetic; original Mac Objective-C/Metal code and pinned engine retained. Experimental aquatic fixes remain opt-in and off by default.

Downloads

  • Windows: DKC1Recomp-v0.0.10-Windows-x64.zip. Extract it, keep SDL2.dll next to DKC1Recomp.exe, launch and select your own supported USA v1.0 DKC1 ROM. Windows 10/11 x64 and an OpenGL 3.3-capable driver are required.
  • Mac: the latest existing DKC1Recomp-v0.0.9-macOS-arm64.zip is included unchanged, with its original checksum. It has not been renamed or represented as a newly rebuilt Mac binary.

No ROM or extracted game assets are included.

Validation

243 public tests passed (10 expected skips); three native Windows tests cover real GPU shaders, settings/menu state, and safe ZIP/PCM music handling. Nine private ROM boot tests covered three aspects and three graphics modes with identical complete game-state hashes. Fresh Jungle Hijinxs entry, visible dark settings, live CRT/16:10 changes, and a save/load/rewind/fast-forward replay were checked.

This is targeted Windows host validation, not a claim of a new full-game playthrough or exhaustive hardware testing. Physical rumble, other GPU vendors, and fresh Mac hardware testing were not performed. Existing game/widescreen limitations remain documented in the repository.

DKC1Recomp v0.0.9 - Mac graphics, controls, and aquatic fixes

Choose a tag to compare

@elliotttate elliotttate released this 06 Sep 22:23

This Mac release adds the newer recomp projects’ graphics and host controls, plus the aquatic fixes tested in Coral Capers and other water-level routes.

  • Reconstruct and CRT: five reconstruction detail modes, adjustable shading, television presets, scanlines, masks, glow, halation, curvature, and Raw/CRT/Composite/Trinitron colors.
  • Native Escape menu: graphics/settings previews, controls, Assist, mods, credits, and five save slots.
  • Controls and Assist: two-player remapping, controller source selection, analog deadzones, optional rewind, and 3× fast-forward.
  • Pacing and audio: steadier refresh qualification and bounded audio drift correction, retaining fixed 60 Hz cartridge emulation and independent Metal presentation.
  • Aquatic widescreen fixes: native-edge protection, water-scroll alignment, cache-boundary flashing and bottom-row repairs, and verified Coral Capers wall/shaft continuations.

Enable the aquatic fixes under Escape → Settings → Aquatic widescreen fixes, then restart the app. They remain experimental and off by default for a new profile; the full entrance matrix is not yet available. Existing save slots and graphics preferences are retained.

Download: Apple Silicon (arm64), macOS 26 or newer. SDL2 is bundled. The app is ad-hoc signed and signature-verified, but not Apple-notarized. Supply your own supported DKC1 USA v1.0 ROM. No ROMs, extracted game assets, saves, or private diagnostic files are included. Baby Kong still requires a separately supplied supported DKC3 ROM.

Validation: 241 project tests passed with one unavailable local fixture skipped; the engine sprite model passed. Aquatic validation includes three-repeat A/B routes, original-viewport and guest-memory comparisons, earlier 50-route regressions, and actual Mac-window checks. The new saved option was verified across an app restart. Four clean entrances are available; whole-game widescreen correctness and every display/hardware configuration remain unverified.

DKC1Recomp v0.0.8 - Baby Kong animation fix

Choose a tag to compare

@elliotttate elliotttate released this 04 Sep 03:46

Baby Kong animation fix

  • Fixes Kiddy getting stuck in a floating jump pose during normal idle, walking, and running.
  • Uses DKC1 Donkey animation IDs to drive distinct Kiddy idle, walk, run, turn, jump, bounce, roll, hurt/death, pickup/carry/throw, duck/crawl, animal-buddy, rope, swim, victory/failure, ground-slap, and scripted pose groups.
  • Corrects grounded detection: DKC1 normally reports Y velocity -$0300 on the ground, so actor state now owns grounded/airborne movement tuning.
  • Foot-aligns grounded poses and center-aligns airborne, swimming, rope, and suspended poses to the captured native sprite silhouette.
  • Keeps the mod toggleable and source-only; users still provide their own verified DKC1 and DKC3 ROMs, and no ROM-derived graphics are distributed.

This arm64 build targets macOS 26, is ad-hoc signed, and has been locally signature-verified, but it is not Apple-notarized. If Gatekeeper blocks the first launch, Control-click the app and choose Open.

Validation: all 232 Python tests passed with one unavailable local fixture skipped; deterministic Jungle Hijinxs replays were manually inspected across entrance, idle, walk, roll, hurt, takeoff, rise, apex, descent, bounce, and landing; Donkey did not reappear; ZIP integrity and deep strict signature verification passed.

DKC1Recomp v0.0.7 - Baby Kong mod

Choose a tag to compare

@elliotttate elliotttate released this 04 Sep 03:21

Baby Kong mod

  • Adds an optional Mods > Baby Kong toggle that replaces active Donkey with Kiddy Kong gameplay animation and a heavier, Kiddy-inspired movement profile.
  • Choose Mods > Choose DKC3 ROM once. The exact headerless North American DKC3 ROM is verified and decoded only in memory; neither ROM nor extracted Nintendo assets are included or copied.
  • Keeps Diddy, enemies, collisions, levels, saves, and the default disabled path on the original DKC1 behavior.
  • Correctly reconstructs the DKC3 16-tile-wide virtual VRAM sprite layout, including split DMA segments, and keeps Kiddy aligned throughout the full DKC1 jump arc without Donkey reappearing.

This arm64 build targets macOS 26, is ad-hoc signed, and has been locally signature-verified, but it is not Apple-notarized. If Gatekeeper blocks the first launch, Control-click the app and choose Open.

Validation: all 231 Python tests passed with one unavailable local fixture skipped; the exact 500-frame Jungle Hijinxs route was visually inspected from grounded movement through takeoff, wrapped jump apex, descent, and landing; the disabled framebuffer oracle remained byte-identical; enabled zero-frame WRAM, VRAM, CGRAM, and both OAM domains remained unchanged; ZIP integrity and deep strict signature verification passed.

DKC1Recomp v0.0.6 - Level-wall presentation

Choose a tag to compare

@elliotttate elliotttate released this 01 Sep 23:44

Level-wall presentation release

  • Replaces the inward view clamp at level walls. Holding Right from a level's start froze the picture for the camera's first 43 pixels of travel while DK slid across it, then scrolled. The new default, Glide, keeps the 4:3 edge pinned at the wall so nothing past the level is ever shown, and releases the inward view one pixel per eight pixels of camera travel: the background scrolls at seven eighths of the camera speed for 344 pixels (16:9) and is then centered and locked.
  • Adds View > Level Edge with four choices, remembered between launches: Glide (default), Reflect Terrain Past the Wall (view locked to the camera, the level's own columns mirrored past the wall), Black Past the Wall, and Shift View Inward at the Wall (the previous behaviour, byte-identical). DKC1_WIDESCREEN_EDGE=reflect|bars|shift|glide overrides the saved choice for one run on every host.
  • The reflection is drawn by a new per-layer engine policy that mirrors the terrain about a line one tile inside the wall and never rewrites the native 256 columns, so the authentic center stays pixel-exact under every policy. Only the terrain layer is mirrored; parallax planes keep their periodic continuation.
  • The widescreen trace now records the active policy and the visible margin per side.

The game ROM and music pack are not included. Select your own supported USA .sfc ROM and, optionally, your own compatible MSU-1 pack.

This arm64 build targets macOS 26, is ad-hoc signed, and has been locally signature-verified, but it is not Apple-notarized. If Gatekeeper blocks the first launch, Control-click the app and choose Open.

Validation: 227 Python tests (one unavailable local fixture skipped), a new model test for the wall policy, the engine's mirror-axis unit test, the Jungle Hijinxs entry closure contract byte-identical across three repeats, pixel-exact native centers on the entry wall state under every policy, identical renders before and after on five mid-level and vertical-room states, a packaged-app smoke run, and deep strict signature verification. The entry contract's retrodiction budget was already exceeded on the previous release and is unchanged by this one.

DKC1Recomp v0.0.5 - Native Metal presentation pacing

Choose a tag to compare

@elliotttate elliotttate released this 30 Aug 22:03

Native macOS presentation release

  • Separates the deterministic 60 Hz game loop from a native 120 Hz CAMetalDisplayLink presenter. A three-slot host-only queue normally scans each completed game frame twice without advancing or catching up cartridge state.
  • Adds Sharp Bilinear as the default fullscreen sampler. It preserves flat pixel interiors while blending only near texel boundaries; Smooth (Linear) and Pixel Sharp (Nearest) remain persistent View-menu options.
  • Adds DKC1_SCANOUT_LOG and tools/analyze_scanout.py to record actual drawable presentation time beside source-frame, camera, BG-scroll, and queue identity.
  • Pauses and flushes only the presentation queue while the app is hidden, minimized, or unfocused, then safely resumes. DKC1_DISABLE_METAL_PRESENTER=1 retains the SDL/Mach compatibility path.
  • Keeps the native 4:3, 16:10, and 16:9 modes, widescreen fixes, MSU-1 replacement music, stomp haptics, application icon, and native Game, Music, and View menus from v0.0.4.

The game ROM and music pack are not included. Select your own supported USA .sfc ROM and, optionally, your own compatible MSU-1 pack.

This arm64 build targets macOS 26, is ad-hoc signed, and has been locally signature-verified, but it is not Apple-notarized. If Gatekeeper blocks the first launch, Control-click the app and choose Open.

Validation included 224 Python tests with one unavailable local imported-state fixture skipped, three byte-identical 780-frame Slip-Slide Ride traversals, a packaged-app fallback smoke test, real fullscreen menu/scaling inspection, archive re-extraction, and deep strict signature verification. A clean unobscured scanout sample held approximately 8.333 ms physical intervals and 16.667 ms source transitions with no frame or queue loss. Some later samples still showed compositor-side presentation variance despite steady CPU cadence, so this release improves and instruments motion pacing without claiming a universal perfect-scanout guarantee or a newly completed 40-entrance widescreen matrix.

DKC1Recomp v0.0.4 - Mac presentation, music, and haptics

Choose a tag to compare

@elliotttate elliotttate released this 30 Aug 21:08

Native macOS release

  • Fixes movement-correlated widescreen flicker by retaining the partial 33rd live tile at fine X scroll and by promoting the proven camera/PPU and vertical-boundary rules to structural, fail-closed presentation capabilities.
  • Replaces the variable ProMotion display-link release path with one fixed 60 Hz Mach-clock authority, removes the second blocking renderer-vsync gate, and moves texture preparation ahead of the final submit deadline.
  • Adds external MSU-1 replacement-music support while preserving stock sound effects, plus controller haptic feedback for confirmed enemy stomps.
  • Adds a persistent View > Full Screen Scaling choice: Smooth (Linear) remains the default, while Pixel Sharp (Nearest) keeps hard pixel edges and fills the same fullscreen area.
  • Includes native 4:3, 16:10, and 16:9 presentation choices, the Mac app icon, and native Game, Music, and View menus.

The game ROM and music pack are not included. Select your own supported USA .sfc ROM and, optionally, your own compatible MSU-1 pack.

This arm64 build targets macOS 26, is ad-hoc signed, and has been locally signature-verified, but it is not Apple-notarized. If Gatekeeper blocks the first launch, Control-click the app and choose Open.

Validation included 223 Python tests (one unavailable local imported-state fixture skipped), the focused 33rd-live-tile engine regression, deterministic cave and underwater evidence recorded in the repository documentation, real fullscreen Smooth/Pixel Sharp UI checks, archive re-extraction, and deep signature verification. The available user map root exposed four authentic fresh entrances rather than the complete 40-entrance matrix, so this release does not claim a newly completed whole-game matrix.

DKC1Recomp v0.0.3 - Native macOS pacing and widescreen fixes

Choose a tag to compare

@elliotttate elliotttate released this 30 Aug 15:14

Native macOS release

  • Fixes widescreen margin flicker while traversing the Slip-Slide Ride cave, including the vertical/uphill camera tie case.
  • Adds the native 16:10 presentation option and improves fullscreen use of Mac displays while preserving the original 256-pixel center image.
  • Improves macOS frame pacing with cursor-based CADisplayLink scheduling, an absolute Metal submit target, and stall recovery that does not produce short catch-up frames.
  • Rebases audio timing after save-state loads and adds CoreAudio preroll/recovery for startup, pause/resume, and real host stalls.
  • Includes the native app icon and macOS View menu with aspect ratio, fullscreen, pause, layer, and provenance options.

The game ROM is not included. Select your own supported USA .sfc ROM on first launch.

This arm64 build is ad-hoc signed and has been locally signature-verified, but it is not Apple-notarized. If Gatekeeper blocks the first launch, Control-click the app and choose Open.

DKC1Recomp v0.0.2 - Native macOS

Choose a tag to compare

@elliotttate elliotttate released this 27 Aug 17:16

DKC1Recomp v0.0.2

This is the first native macOS release of DKC1Recomp. It is an early-development
Apple Silicon build and does not include copyrighted game data.

Highlights

  • Native arm64 .app with an application icon and embedded SDL2 runtime.
  • Native Game and View menus for pause/step, quick save/load, fullscreen,
    4:3 or widescreen presentation, layer isolation, and provenance overlays.
  • Keyboard and SDL game-controller input, audio, save states, ROM picker, and
    macOS Application Support paths.
  • Deadline-based frame pacing at the native 60.0988 Hz SNES cadence, with
    bounded re-anchoring after stalls instead of catch-up bursts.

Requirements and launch

  • Apple Silicon Mac running macOS 26 or newer.
  • A user-supplied, headerless Donkey Kong Country USA v1.0 .sfc ROM. The ROM
    is selected at first launch and is never copied into the application bundle.
  • Unzip the asset, then open DKC1Recomp.app.

The bundle is Developer ID signed and timestamped, but this release has not
been Apple-notarized. If Gatekeeper blocks the first launch, Control-click the
app, choose Open, and confirm once.

Validation

  • Built from commit 23fa62dc282f6f9e3e5fd2dae922e60be414812e.
  • 205 unit and contract tests passed; one unavailable local imported-state
    fixture was skipped.
  • Three independent 600-frame headless replays produced byte-identical frame,
    WRAM, VRAM, CGRAM, and OAM hashes.
  • The real macOS application window, native menus, icon, ROM picker, and a
    1,200-frame pacing run were exercised before packaging.
  • The packaged bundle and embedded SDL2 library pass strict deep code-signature
    verification.

This remains an early recompilation build. Boot, title flow, host integration,
and deterministic replay were validated; complete cross-layout gameplay
coverage is not yet claimed.