github CTR-tools/ctr-native beta-7

pre-release5 hours ago

CTR Native Beta 7

Seventh playtest beta for CTR Native.

What's New

  • Added direct NTSC-U retail disc image loading from assets/ctr-u.bin.
    • Extracted asset folders are no longer required for normal play.
    • Extracted assets are still supported as an override for development, modding, and debugging.
  • Fixed track preview/video loading from BIGFILE.BIG.
  • Fixed case-insensitive disc image lookup on Linux.
  • Fixed several retail-parity edge cases in Adventure hub, render buckets, skybox glow math, and overlay state handling.
  • Improved draw-level renderer organization and retail-label clarity across 1P/2P/3P/4P overlays.
  • Improved typed retail state coverage across Adventure, main menu, weapon/hazard, cutscene, UI, audio, load, vehicle, and core systems.
  • Enabled cleaner compiler warning coverage with -Wall / -Wextra cleanup.
  • Added a Linux packaging script for release tarballs and checksums.

Platform

  • Windows x86
  • Linux x86, 32-bit executable
  • Requires an OpenGL 3.3 capable GPU/driver

Linux Notes

The Linux build is not fully static. SDL3 is linked statically, but the system
OpenGL/Mesa, windowing, audio, and glibc runtime come from the host OS.

This Linux build requires:

  • x86_64 Linux capable of running 32-bit/i386 binaries
  • 32-bit glibc runtime
  • 32-bit OpenGL/Mesa or vendor OpenGL driver
  • 32-bit X11 or Wayland runtime libraries
  • 32-bit ALSA/PulseAudio/PipeWire runtime libraries

If this build was produced from the current local machine, it may require
glibc 2.42 or newer.

Assets

Game assets are not included.

For normal play, create an assets/ folder next to ctr_native /
ctr_native.exe and provide your own NTSC-U retail CTR disc image:

assets/
  ctr-u.bin

The disc image must be the common single-track raw PSX BIN layout:
MODE2/2352 sectors, with the data track starting at byte 0. A cooked 2048-byte
.iso does not preserve the XA/STR sector data needed for audio and video
playback.

Extracted assets are optional. If present, they override files from ctr-u.bin:

assets/
  BIGFILE.BIG
  SOUNDS/KART.HWL
  TEST.STR
  XA/
    ENG.XNF
    ENG/EXTRA/S00.XA ... S05.XA
    ENG/GAME/S00.XA ... S20.XA
    MUSIC/S00.XA ... S01.XA

XA files must preserve CD-XA sector data. Use 2336-byte Mode2/Form2 sector data
or 2352-byte raw sectors. 2048-byte cooked XA extractions are not suitable.

Bug Reports

Run with:

ctr_native --record

When reporting a bug, send the generated folder under:

debug/reports/

Include the whole report folder, especially:

input.ctrreplay
state.ctrstates
memcard.seed
ctr-native.log

For Linux launch failures, also include:

ldd ./ctr_native

Known Notes

  • This is a beta/playtest build.
  • Linux binaries remain experimental and may need distro-specific testing.
  • Replays are debugging tools and may still have limitations.
  • Raw disc image loading currently expects the common single-track NTSC-U BIN layout.

Don't miss a new ctr-native release

NewReleases is sending notifications on new releases.