github Coder787-source/KytyPlus v1.9

latest releases: v5.7, v5.6, v5.5...
3 months ago

KytyPlus v1.9 — Cross-Platform Performance & Infrastructure Release

Tag: v1.9 · License: GPL-2.0

Downloads

  • Windows: KytyPlus-v1.9-windows-x64.zip
  • macOS: KytyPlus-v1.9-macOS-x86_64.zip
  • Linux: KytyPlus-v1.9-linux-x86_64.zip

All three builds are produced and verified automatically by CI on every tagged release (see Infrastructure below).


What's new vs v1.8

Performance

  • Translation-block cache keyed by guest PC (src/core/ICache.hpp).
    Translated guest code blocks are cached by their guest address and looked up on subsequent execution of the same address, so a block is translated once and reused rather than re-translated each time it is reached. Blocks are stored in a page-aligned executable memory pool allocated once at startup, avoiding repeated executable-memory syscalls per block. A Flush() primitive is provided to invalidate cached blocks when guest code is modified or unloaded.

    Note: This is an address-keyed block cache with a single executable pool. It is not an LRU cache, has no fixed entry cap, and no eviction policy. No performance multiplier is claimed for this release.

  • 60 FPS frame-pacing target (src/graphics/presentation/window/window.cpp).
    The render loop now targets a 16.67 ms per-frame interval. This is a pacing target in the render loop; it is not a measured gameplay framerate and does not guarantee 60 FPS in any title. Actual framerate depends on the emulated title, the host hardware, and I/O (see Benchmarks).

Launcher

  • Direct QProcess launch (src/launcher/src/mainDialog.cpp).
    The launcher now spawns kyty_emulator directly via QProcess instead of wrapping it in cmd.exe /K. This removes the stray console window and avoids the path-separator issues that previously affected launching from external drives.

Infrastructure

  • Cross-platform CI releases (.github/workflows/build.yml).
    CI now builds and verifies Windows, macOS, and Linux artifacts on every push and pull request, and automatically packages and publishes all three zips as GitHub release assets when a v* tag is pushed. Each platform job verifies its own binary (e.g. ldd/readelf checks on Linux, file checks on macOS) before the release job uploads anything.

Bug fixes carried forward from v1.8

  • Event-flag Clear() bitmask inversion fixed.
  • Thread-unsafe singleton fixed.
  • ELF loader compile error fixed.
  • HD haptics support for DualSense.
  • Ray-tracing extension loading.
  • Launcher external-drive path fix.
  • Various stability fixes (CloseAll, FillRandomBuffer, quick_exit, UniqueFunction, event queue).

Expectations

This release is a performance and infrastructure milestone, not a performance result. It ships the engineering for cross-platform CI and a direct-launch launcher, and lays groundwork (address-keyed block cache, frame-pacing target) for future measurement. It does not claim a framerate improvement, because no v1.9 measurement exists yet.


Don't miss a new KytyPlus release

NewReleases is sending notifications on new releases.