Skip to content

v3.9.0

Latest

Choose a tag to compare

@github-actions github-actions released this 14 Oct 06:34
v3.9.0
6bf3574

Virtual Jaguar libretro v3.9.0

RISC overclocking no longer costs more than it should, and the Virtual Jaguar desktop app
ships: a standalone emulator for macOS, Windows and Linux built on the same core.

v3.9.0 brings the RISC overclock fix and new timing work to the core, and debuts the standalone desktop app (#833). For
RetroArch and Provenance users the change is the overclock fix, an experimental DSP timing
model behind an existing option, and measurement tooling. With default settings the core is
byte-identical to v3.8.0 in the cartridge and CD boot matrices. No option keys were removed, no
listed option values changed, and the savestate format stays v17.


Core

  • RISC overclock (GPU/DSP clock 0.5x, 1.5x, 2x) keeps the idle-loop fast-forward. Any
    non-stock RISC clock used to switch the idle-loop fast-forward off, so games that spend most
    of each frame in a wait loop emulated twice the cycles, all of them spinning, and a 2x
    overclock ran far slower than it should. The fast-forward is exact at any clock scale, so it
    now stays on (#891, #569, #378). Headless harness on an M4 Max, core fps at 2x:

    Title 2x before 2x after 1x
    Doom 52 82 135
    Alien vs Predator 71 204 240
    Tempest 2000 77 209 225

    Video, audio and savestates are byte-identical with the fast-forward on and off at 0.5x, 1.5x
    and 2x on 12 titles in HLE and 7 on the real BIOS; stock 1x is unchanged. The Settings
    sublabel and the [perf] log line no longer name the RISC clock as a suppressor. Doom's GPU
    loops are still not fast-forwarded, so Doom at 2x still takes about 1.65x the time of 1x.

  • Timing work, part of the accuracy plan (#908, #408, #313). Two pieces are
    measurement tooling with no behaviour change: a Doom pace gate, a GPU busy-time counter and a
    Checkered Flag canary (S0), and a bus-traffic census with a grant-latency function (S2). The
    third (S1) is a DSP pipeline scoreboard plus a 16-bit external-bus timing model. It rides on
    the existing GPU/DSP Pipeline Timing (Experimental) option (formerly "GPU Pipeline
    Timing"), which stays off by default. Anyone who already had that option on now also
    gets the DSP model
    , and like the GPU model it turns the idle-loop fast-forward off. It does
    not improve pacing yet: with it on, Checkered Flag runs 4.9 fields per game frame against its
    3.0 cap.

  • Clock scale options also accept a percentage; GDB halt timeout clamped. 175 or 175%
    (clamped to 25-400) is read in addition to the listed values, which map exactly as before;
    the GDB halt timeout is clamped to 3600 seconds (#906).

  • A private frontend channel and a debug interface that RetroArch never sees. The core can
    tell the desktop app about link up/down, link statistics, wire speed and crash-watchdog hits
    (#906, docs/app-frontend-extension.md), pick a BIOS file and boot a BIOS on its own
    (#910), and expose memory, registers, breakpoints and the display list to the app's
    debug tools (#919, docs/app-debug-tools.md). All of it is opt-in by a handshake only
    the app answers; under RetroArch and Provenance it is a no-op.


The desktop app

A front end of its own in app/: SDL3 for the window, audio and input, Dear ImGui for the
interface, OpenGL 3.3 for presentation. It drives the core through the same retro_* API
that RetroArch uses, so core options and save states behave the same. It carries the core's
version number and ships with each release. It was built in #867; docs and site in
#896. Screenshots: https://jaguar.provenance-emu.com/app.html

Library and artwork

  • Game library on the home screen. Your games in a grid under Cartridges, Jaguar CD and
    BIOS & system tabs, identified by CRC32 against the libretro database (No-Intro, Redump), with
    box art from libretro-thumbnails downloaded on demand and cached (#838, #881,
    #889). Ctrl/Cmd + scroll (or a trackpad pinch on macOS) resizes the tiles, and BIOS
    files anywhere under a library folder show in the BIOS tab (#899).
  • Favorites, recently played and save states. Star a game (on its tile or right-click > Add
    to Favorites); the games you boot are kept under Recently played. Each shows as its own tab, as
    a strip at the top of the Cartridges and Jaguar CD tabs, both, or not at all (Favorites &
    recents...). A Save states tab lists every game with states and the screenshot saved with each;
    click one to start the game from it. Right-click a game for Play, Load state, favorites, Show in
    Finder / File Explorer and Copy path (#915).
  • Covers for Jaguar CD. libretro-thumbnails has no Jaguar CD art, so discs get a readable
    title card, and you can set your own cover: right-click a tile > Set cover image (PNG), drop a
    PNG on a tile, or put <Title>.png files in the app's covers folder (#901). Until
    libretro-thumbnails has a Jaguar CD set, discs fall back to box art, title screens and snaps
    hosted on the project site (https://jaguar.provenance-emu.com/thumbnails/), asked only after
    libretro-thumbnails misses (#907).
  • Better disc identification. .chd discs are checksummed from their first track (like
    .cue), .cdi best-effort, and a disc whose checksum is not Redump's (a non-Redump bin/cue or
    .cdi) is matched by file or folder name when only one game fits. Hover a tile to see how it
    was identified (#901). CHD hashing is verified against synthetic images only; checking
    real Redump CHDs is still to do.

BIOS

  • BIOS choice and boot (Settings > BIOS, BIOS & system tab). Pick the exact boot ROM or CD
    BIOS file the core runs (any name, any folder; Auto stays the default), switch cartridges and CD
    games between HLE and the real BIOS without loading anything first, and Boot a BIOS on its
    own: the CD BIOS with no disc (its disc screen, Memory Track plugged in) or the cartridge boot
    ROM with an empty slot. A BIOS dropped on the window is imported, not run as a cartridge;
    JAGCD.BIN-style upper-case names are treated as the core's search sees them on macOS and
    Windows. One click copies a BIOS into the system folder under the name the core reads
    (#910, #899, #838).

Playing

  • Controls. Per-device and per-game remapping, all 12 keypad keys on a gamepad, keyboard play
    with the Pro Controller 6-button layout, an on-screen keypad (F2) and a controls overlay (F3)
    (a click, tap, Esc or F3 hides it; it is off at boot unless you turn on Settings > Input > "Show
    the controls overlay when a game starts", and a keyboard player gets a "Press F3 for the controls" hint instead). Mice, the Tempest 2000 rotary
    controller, analog, driving, paddle, 6D, light gun and Team Tap are chosen under Settings >
    Input > Devices & players (#837, #879, #887).
  • Save states and resume. Save states with thumbnails (F5 save, F7 load, F6 slot) and a state
    manager. Settings > Storage > Resume where I left off (Off / Ask / Always, default Ask): closing
    a game, switching games or quitting keeps an Auto-save of it (shown in the Save states tab and
    the tile menu), and the next boot offers to resume from it or does so at once. Not in
    RetroAchievements hardcore or netplay, and not for a game that ran under 5 seconds or crashed
    (#915).
  • Cheats. The libretro cheat database for the running game is bundled, and you can enter
    codes by hand (#835, #878).
  • Shaders. RetroArch .slangp presets through librashader, with CRT, scanline and
    sharp-bilinear presets from libretro's slang-shaders bundled, plus integer scaling
    (#834, #880). Builds from source fetch the librashader runtime on macOS and Windows
    by default (#897).
  • Several windows at once. File > New window (Ctrl/Cmd+N), or open -n on macOS, starts
    another copy for netplay tests on one machine or local multiplayer. Extra copies keep their game
    saves in their own folder and never rewrite the shared settings, and each can be pinned to one
    controller (Settings > Input) (#902).
  • Netplay for the link-cable games. A Netplay window hosts or joins Doom, BattleSphere,
    AirCars and Ultra Vortek (over the Voice Modem) on a local network, with LAN discovery
    (#888). While a session is set up, the link settings it controls are greyed out in
    Settings (#898).
  • Typed settings. Options that take a number or an address (link port and host, GDB port and
    halt timeout, mouse and rotary sensitivity, the dead zone / offset / response-curve tuning, the
    clock scales) show the core's presets plus a "Custom..." entry that opens a validated box; an
    invalid entry says why and changes nothing. The Netplay window takes any port 1-65535 and a
    typed host name or IPv4 address directly (#906).
  • Reset buttons. Each Settings tab and each core option category has a Reset group button,
    and Reset all settings... (with a confirmation) puts everything back to defaults while keeping
    your library folders, recents, covers, saves, RetroAchievements login, key and button bindings
    and per-game overrides unless you tick them (#911).
  • Performance. Release builds compile the core and the app at -O3, and the shader chain no
    longer re-runs every pass when the emulated frame has not changed (paused, or on a display
    faster than the game) (#894).

Look and feel

  • Light and dark themes. Settings > Video > Appearance picks System (the default), Dark or
    Light; System follows the operating system and switches live. The in-game overlays (controls
    sheet, on-screen messages, achievement toasts, frame rate) stay dark and translucent in both
    themes so they read on any game picture. Customize... opens a theme editor: start from Dark
    or Light, change the main colours, the rounding and the spacing with a live preview and a
    warning when text drops below 4.5:1 contrast, then save it as a named theme (a small .ini in
    the app's themes folder), duplicate, delete, export or import it (#920). Window
    backgrounds are opaque, so text no longer shows through About and Settings (#904).
  • Choose the interface font. Settings > Video > Font: Retro (the pixel font, still the
    default), System UI (San Francisco, Segoe UI, the desktop's sans-serif), a system monospace
    face, or a font file of your own, at 11-24 pt, applied live. Text is drawn at the display's
    full pixel density, so it is crisp on Retina and 125-200% Windows scaling, and rendered with FreeType
    (statically linked, nothing to install) which adds Hinting (none / light / full) and Smooth edges choices
    (#925).
  • Feels native (#912):
    • macOS: a real menu bar (Cmd shortcuts, Open Recent, State Slot, Window and Help menus) and a
      Dock menu with your recent games.
    • Windows: a dark title bar, recent games in the taskbar Jump List and an optional installer
      checkbox that opens .j64 / .jag / .cue / .chd and the rest with Virtual Jaguar.
    • Linux: a proper MIME type and desktop actions, and the window now matches its .desktop file.
    • All three: double-clicking a game, Open With and dropping a game on the app icon work; the
      screensaver no longer stays blocked while you are in the library or paused; an optional tray /
      menu-bar icon offers pause, reset and recent games; "Show in Finder / Explorer" is in the menu.
  • Windows outside the window. Settings, Achievements, Cheats, Netplay and the debug tools can be
    dragged past the edge of the main window and become windows of their own, with a normal title bar,
    for example on a second monitor (Settings > Storage > Desktop > "Let windows move outside the main
    window"; on by default on macOS and Windows). They stay inside while fullscreen. Wayland cannot
    position a program's own extra windows, so it is off there (SDL_VIDEODRIVER=x11 turns it on under
    XWayland). On macOS "Show the menu bar inside the window" keeps the in-window menu bar next to the
    native one (#833).

RetroAchievements

  • Achievements. Softcore by default. Hardcore is optional; it refuses loading save states and
    disables cheats (#836, #882). The Achievements window shows your avatar, the game
    icon and every achievement's badge (also in the unlock toasts), filters and sorts the list, and
    has a Jaguar games tab listing every Jaguar and Jaguar CD game with achievements, your progress
    in each and a Play button for the ones in your library (#917).
  • The login token is kept in the system keychain. It used to sit in plain text in
    config.ini. It now lives in the macOS Keychain, the Windows Credential Manager or the Linux
    Secret Service (libsecret, loaded at run time, so nothing new is required); a token already in
    config.ini is moved there the first time you start this version, and Sign out erases it.
    Where no keyring is available the token stays in config.ini as before and Settings says so.
    Your password was never stored (#923).

Discord

  • Rich Presence (Settings > Discord). Shows the game you are playing, its box art, how long,
    and RetroAchievements progress / hardcore / netplay mode on your Discord profile, with a Get
    Virtual Jaguar
    button (and the game's RetroAchievements page) for other people to find the
    app. On by default, needs Discord running locally; the app speaks Discord's local protocol
    itself (no SDK), connects in the background and never waits on Discord, and only the first
    window publishes (#922).

Debug tools (Tools menu)

  • A memory viewer / editor and a palette (CLUT) editor (#913), a cheat scanner whose finds
    become ordinary cheats (#914), an Object Processor list (the whole display list decoded,
    with a bitmap preview, an on-screen outline, PNG export and a pixel painter) (#918), a
    blitter log, a texture browser (export a tile, replace it with your own PNG) and an audio scope
    (#916), and a CPU debugger with 68000, GPU and DSP tabs: registers, disassembly,
    breakpoints, step, step over and run to cursor (#924). F9 breaks into the game and F10
    steps (#919, #652, #833).
  • Writes are limited to RAM unless you tick "Allow register writes", and the CD registers plus
    B_CMD, G_CTRL, D_CTRL, OLP, LTXD and RTXD are never written. Everything is off under
    RetroAchievements hardcore, and RetroArch is unaffected (docs/app-debug-tools.md).

Packaging and signing

  • Downloads. Attached to this release; Windows ARM64 and the Flatpak are new in this release
    (#903):

    System Package
    macOS 11+, Apple Silicon and Intel VirtualJaguar-3.9.0-macos-universal.zip
    Windows x64 VirtualJaguar-3.9.0-windows-x64.zip (portable) or VirtualJaguar-3.9.0-windows-x64-setup.exe (installer)
    Windows ARM64 VirtualJaguar-3.9.0-windows-arm64.zip (portable) or VirtualJaguar-3.9.0-windows-arm64-setup.exe (installer)
    Linux x86_64, aarch64 VirtualJaguar-3.9.0-linux-<arch>.AppImage or virtualjaguar_3.9.0_<amd64|arm64>.deb
    Linux x86_64 (Flatpak) VirtualJaguar-3.9.0-linux-x86_64.flatpak (flatpak install --user it; the runtime comes from Flathub)

    Nightly app builds are linked from the pinned builds issue and are rebuilt from develop on
    every push (#839, #840, #884, #883, #886).

  • Sign your own build. app/packaging/local-package.sh --sign packages your build and signs
    it with a Developer ID (or Apple Development) identity found in the macOS keychain, or a .pfx
    / store certificate on Windows, optionally set in a gitignored .env; --notarize also
    notarizes on macOS (#905). The macOS dev executable is signed by default outside CI
    (#909).


Known issues

  • Signing. macOS packages are signed with a Developer ID and notarized; Windows packages are
    not signed yet (SmartScreen may warn).
  • Shaders on Intel Macs. The macOS universal package bundles an arm64-only librashader, so
    shaders may be unavailable on Intel Macs.
  • Shaders on Linux need librashader installed separately (a distribution package, or built
    from source). The Flatpak does not include librashader yet, so it has no shaders.
  • The MSVC Windows build is experimental. The released Windows packages are built with MinGW
    (the ARM64 ones with MinGW's clang).
  • RetroAchievements identifies cartridges and .cue discs, but not .chd or .cdi discs
    yet.
  • Netplay is link-cable play on a local network only. It is not rollback netplay, and
    Internet or VPN play is not supported. General rollback netplay is tracked in #864.
  • Double-clicking a game while the app is running opens a second instance on Windows and
    Linux. On macOS a double-click activates the running copy; use open -n for another.
  • CHD identification in the library is verified on synthetic images only.
  • GPU/DSP Pipeline Timing (Experimental) does not improve pacing yet (see Core).

Upgrading

  • RetroArch / Provenance: drop-in. The core reports v3.9.0; options and savestates (v17)
    carry over. If you had GPU Pipeline Timing on, it now also applies the DSP model.
  • App: unzip or install the package for your system. The app does not include BIOS
    images or games.

Artifacts in this release

SHA256SUMS.txt
VirtualJaguar-3.9.0-linux-aarch64.AppImage
VirtualJaguar-3.9.0-linux-x86_64.AppImage
VirtualJaguar-3.9.0-linux-x86_64.flatpak
VirtualJaguar-3.9.0-macos-universal.zip
VirtualJaguar-3.9.0-windows-arm64-setup.exe
VirtualJaguar-3.9.0-windows-arm64.zip
VirtualJaguar-3.9.0-windows-x64-setup.exe
VirtualJaguar-3.9.0-windows-x64.zip
cue2cdi-linux-x86_64
cue2cdi-macos-universal
cue2cdi-windows-x86_64.exe
jagcd-tools-linux-x64.zip
jagcd-tools-macos.zip
jagcd-tools-windows-x64.zip
virtualjaguar_3.9.0_amd64.deb
virtualjaguar_3.9.0_arm64.deb
virtualjaguar_libretro-android-arm64-v8a-debug.tar.gz
virtualjaguar_libretro-android-arm64-v8a.so
virtualjaguar_libretro-android-armeabi-v7a-debug.tar.gz
virtualjaguar_libretro-android-armeabi-v7a.so
virtualjaguar_libretro-android-x86-debug.tar.gz
virtualjaguar_libretro-android-x86.so
virtualjaguar_libretro-android-x86_64-debug.tar.gz
virtualjaguar_libretro-android-x86_64.so
virtualjaguar_libretro-emscripten-wasm-debug.tar.gz
virtualjaguar_libretro-emscripten-wasm.bc
virtualjaguar_libretro-ios-arm64-debug.tar.gz
virtualjaguar_libretro-ios-arm64.dylib
virtualjaguar_libretro-linux-aarch64-debug.tar.gz
virtualjaguar_libretro-linux-aarch64.so
virtualjaguar_libretro-linux-i686-debug.tar.gz
virtualjaguar_libretro-linux-i686.so
virtualjaguar_libretro-linux-rpi1-armv6-debug.tar.gz
virtualjaguar_libretro-linux-rpi1-armv6.so
virtualjaguar_libretro-linux-rpi2-cortex-a7-debug.tar.gz
virtualjaguar_libretro-linux-rpi2-cortex-a7.so
virtualjaguar_libretro-linux-rpi3-cortex-a53-debug.tar.gz
virtualjaguar_libretro-linux-rpi3-cortex-a53.so
virtualjaguar_libretro-linux-rpi3_64-cortex-a53-debug.tar.gz
virtualjaguar_libretro-linux-rpi3_64-cortex-a53.so
virtualjaguar_libretro-linux-rpi4-cortex-a72-debug.tar.gz
virtualjaguar_libretro-linux-rpi4-cortex-a72.so
virtualjaguar_libretro-linux-rpi4_64-cortex-a72-debug.tar.gz
virtualjaguar_libretro-linux-rpi4_64-cortex-a72.so
virtualjaguar_libretro-linux-rpi5-cortex-a76-debug.tar.gz
virtualjaguar_libretro-linux-rpi5-cortex-a76.so
virtualjaguar_libretro-linux-rpi5_64-cortex-a76-debug.tar.gz
virtualjaguar_libretro-linux-rpi5_64-cortex-a76.so
virtualjaguar_libretro-linux-x86_64-debug.tar.gz
virtualjaguar_libretro-linux-x86_64.so
virtualjaguar_libretro-macos-arm64-debug.tar.gz
virtualjaguar_libretro-macos-arm64.dylib
virtualjaguar_libretro-macos-x86_64-debug.tar.gz
virtualjaguar_libretro-macos-x86_64.dylib
virtualjaguar_libretro-switch-debug.tar.gz
virtualjaguar_libretro-switch.a
virtualjaguar_libretro-tvos-arm64-debug.tar.gz
virtualjaguar_libretro-tvos-arm64.dylib
virtualjaguar_libretro-vita-debug.tar.gz
virtualjaguar_libretro-vita.a
virtualjaguar_libretro-windows-i686-debug.tar.gz
virtualjaguar_libretro-windows-i686.dll
virtualjaguar_libretro-windows-x86_64-debug.tar.gz
virtualjaguar_libretro-windows-x86_64.dll
virtualjaguar_libretro.info

SHA-256 checksums

Verify with sha256sum --check SHA256SUMS.txt (Linux) or
shasum -a 256 --check SHA256SUMS.txt (macOS).
See SECURITY.md
for full verification instructions and antivirus false-positive guidance.

cdf29344ab8b48d9f801633f3cf4a8234286f52eba0e6722973dde32d6b2c31c  VirtualJaguar-3.9.0-linux-aarch64.AppImage
ac23c8b4281ed2b1d3be58e7cd5acf799ffc5221debcb97a4a6150b9cbc44183  VirtualJaguar-3.9.0-linux-x86_64.AppImage
61b66fc3096b6ae9084793d1b859ba6f1e2b130b846a643527e564d53da2417c  VirtualJaguar-3.9.0-linux-x86_64.flatpak
ff021219574594efce60989eb8a502777bec2f6ea009587150c134cf48395931  VirtualJaguar-3.9.0-macos-universal.zip
437274b9887467f39711585545aa15d67ddf0d573e49338d759024051620d330  VirtualJaguar-3.9.0-windows-arm64-setup.exe
95d6041cd23796044f7b41b49597861293243ffafcd7ebb7641f60492190c840  VirtualJaguar-3.9.0-windows-arm64.zip
180f831b0aef9193515340e2337b4d59973c8c4113ed1673c1aaf30540e171ee  VirtualJaguar-3.9.0-windows-x64-setup.exe
b28acc7d4a370ad7b6ffee51b8acb53f7ba94b0c462a7082270756c89ebf9d78  VirtualJaguar-3.9.0-windows-x64.zip
b926e41185057ee9204aaa0aaafff53ceec2cbb6d4f37e478edf7a7ddb353332  cue2cdi-linux-x86_64
c19f65c1be0eab40e58f0a4d619704dcfc4632858d00eef78a737d0f26e7a134  cue2cdi-macos-universal
eebe1703843924391aba82239cbfe97bf6a044b461aed71d9b64242f9526ae3e  cue2cdi-windows-x86_64.exe
2c2adc47a223b324e4d7c8b14d97a4c58c14759a89833b9155e439d3448c038a  jagcd-tools-linux-x64.zip
94889127892cf490e5398f4b784f4c72b1155a281607264ef56af4f187af56cc  jagcd-tools-macos.zip
be8295c93bda5d1127291ef8dbdaa3b00e7d7df77e6f2eb46c8f7862007356cd  jagcd-tools-windows-x64.zip
6cd388223af82d7e2e0a7fc1b9c56d32610729bafb0422897a4ce33477b70423  virtualjaguar_3.9.0_amd64.deb
48570abe6feabf214de85cc0638d2a9301cbf12245199a618a55c20b700b914a  virtualjaguar_3.9.0_arm64.deb
e310f59e2a381928cc4d8dfe5fa740ccca2423c535c840ad3fbd431178f6f59f  virtualjaguar_libretro-android-arm64-v8a-debug.tar.gz
0b4d359ddbd9eb024bb75e093c035647ce0a1b57f1874023b8a7ae0e27df00d9  virtualjaguar_libretro-android-arm64-v8a.so
3f255966cfd6c5000aae498d46e1fc10940805cf9edb945b70a9099ae4c2f7ba  virtualjaguar_libretro-android-armeabi-v7a-debug.tar.gz
1951186c00849cdce56699f80c8c3c40eaa57b3e6125b80e2f726f896745ea2e  virtualjaguar_libretro-android-armeabi-v7a.so
ab90171c18d31972b09b3bcbae2c8dc98393251385d375a6faf55892e2baa6ac  virtualjaguar_libretro-android-x86-debug.tar.gz
07a6ed4743ee3f1b04fd6a72245d2f7cbb1aa46823220022a440af5fd94bd9f1  virtualjaguar_libretro-android-x86.so
a8d3298e360407e932ca93ecf67740847b1d27bb1844b7965063448cbb1425cf  virtualjaguar_libretro-android-x86_64-debug.tar.gz
ff66ca3e2b0d072c0de4b7fa82a15266e632eb324747f952d88c14ce7dd5cf4e  virtualjaguar_libretro-android-x86_64.so
f746f02470b8887f983b2e431a4b12db035628d39bb563420f889c5f697ee3f3  virtualjaguar_libretro-emscripten-wasm-debug.tar.gz
c90f339d99b26e3ff73e9ac82bd351a91b8553c8c9375f25ce85404407299137  virtualjaguar_libretro-emscripten-wasm.bc
e5843b34ed745c85d0939b6d9eecaa89f1dda051dad5d713db394c9f4226d215  virtualjaguar_libretro-ios-arm64-debug.tar.gz
b3259c2f65cc1d3820c5916c0e47a9631ca7fdfa74485992e9db1f67559086b0  virtualjaguar_libretro-ios-arm64.dylib
678e718dd49a55ee8d5064ce7feeee388c97e825769903c6fe4e0f454cbd44e6  virtualjaguar_libretro-linux-aarch64-debug.tar.gz
29294aad8e2ccc5eeb638eaadb2afa8f6a5124eb2c05406d92d8f8183e7959b0  virtualjaguar_libretro-linux-aarch64.so
774aa78d59c4056af7fbdb893051506dea0b2ef8104f51457ea80da6be710df5  virtualjaguar_libretro-linux-i686-debug.tar.gz
45d62dc1396357074d33b7553773b0670c6858d420da88ea26a890fb29edd4b2  virtualjaguar_libretro-linux-i686.so
559b4d4b08aa9a6bacadc6c80b34539a4ba183dcc69c0d7b6ef4d356c8195f9e  virtualjaguar_libretro-linux-rpi1-armv6-debug.tar.gz
7b08fe7a494d46dcd3ae48f178ccbb85129e9363631950adb23edb07c68724c3  virtualjaguar_libretro-linux-rpi1-armv6.so
f21414e66f695472d351bbfc1a37355d1f69c830d4da2fe06e7f4ea84ec2579c  virtualjaguar_libretro-linux-rpi2-cortex-a7-debug.tar.gz
03843f46618d878c558c170294f5dc144fc234311bface6089bffbb1b63aef41  virtualjaguar_libretro-linux-rpi2-cortex-a7.so
07a6355bd5b3ea9e7380944ca8bc4282708dd4df0f25745f37245d4bdb86b2a1  virtualjaguar_libretro-linux-rpi3-cortex-a53-debug.tar.gz
7c7e8f08ee011b622cd2239f205441c1e00eee08ca38d7710505a5493773247a  virtualjaguar_libretro-linux-rpi3-cortex-a53.so
133eb50fb8a312311ad5690cae78ab7c04ce3236956728197f5668f6eb91c663  virtualjaguar_libretro-linux-rpi3_64-cortex-a53-debug.tar.gz
f623c3503c8b782ac1293f2284a8685abba32c00e0da110cecda486efb3906e8  virtualjaguar_libretro-linux-rpi3_64-cortex-a53.so
7c958dd67096e91fd90d3fbd1954d08290bd6a4199af29348d6b5a698c1df45b  virtualjaguar_libretro-linux-rpi4-cortex-a72-debug.tar.gz
41e6579f28355b576e33bae1cc63c45dfae76b872869afa293a4e943024ca3ef  virtualjaguar_libretro-linux-rpi4-cortex-a72.so
7ba326566f670614d21dd9cbcdc33e6cfab20c8bd1ae904d7bb0b8a17252074a  virtualjaguar_libretro-linux-rpi4_64-cortex-a72-debug.tar.gz
f4a0589132f2a91af86d4f49392be8c233aea98b6b47863d9145060cebcb2d95  virtualjaguar_libretro-linux-rpi4_64-cortex-a72.so
34d177a53c54a185505c6c0e743ee40d625c75cded3279faa21b796f505e8658  virtualjaguar_libretro-linux-rpi5-cortex-a76-debug.tar.gz
3c88c0be14d67579772061e805a6ae664f119a9becc47a94d983b0c0a4035fea  virtualjaguar_libretro-linux-rpi5-cortex-a76.so
e2dad4fc651151fc0c8db2bae67467fea3ef491bde616c7add4aa7900c9db101  virtualjaguar_libretro-linux-rpi5_64-cortex-a76-debug.tar.gz
897350bd5c4508c3a5aa9c9e01e9e35960aa6ea13224b28877745295b8d5b4c6  virtualjaguar_libretro-linux-rpi5_64-cortex-a76.so
52581c41781ebc682a94d80b2e127c8f7261112810a084d99eca2de6286b9b4b  virtualjaguar_libretro-linux-x86_64-debug.tar.gz
022ded6b8f8d2955504b838ad7658b11e94ca6d34e4a69906a65ecea1fa5271c  virtualjaguar_libretro-linux-x86_64.so
23995069561c204d3cc8db1ac7b2696eac9c95983d486ce2961f16e39f4aaf4c  virtualjaguar_libretro-macos-arm64-debug.tar.gz
4efc318c1a1b6d56054ebbe59dfc2ed8e93686bcfbf8825b0e597d8684bdac36  virtualjaguar_libretro-macos-arm64.dylib
78ff773b2ad1a12822ad79f059325dae4c5b431cf84951d33bfbd9afda848295  virtualjaguar_libretro-macos-x86_64-debug.tar.gz
9d4554c51c27e640adb26406f876babb04573fea8f8fce3be53707a3e0d611f1  virtualjaguar_libretro-macos-x86_64.dylib
867f7574d4e3e382c9e3a184d75559e7044df21f1a21dfa30576d762aa51c27a  virtualjaguar_libretro-switch-debug.tar.gz
04e050399c967a226382ad19042a85b4d75c81f4a53a69ff531b9b530f90a489  virtualjaguar_libretro-switch.a
bf23b9a71a2a16608384ce73ef896af543906dc4d8735387478ec364d37dc715  virtualjaguar_libretro-tvos-arm64-debug.tar.gz
b72817d0d73628e6fc564daf62b2159cfacc22741fea3d880076ef9eecfab363  virtualjaguar_libretro-tvos-arm64.dylib
d0e7cd6f192c5d77850fd018b480fa50892b53bd32bff9ced830f3e98708c367  virtualjaguar_libretro-vita-debug.tar.gz
71685a4d94962f4d3afaabc52a225093414a3e6731f8ea36bf95cedaecd1dfbd  virtualjaguar_libretro-vita.a
ba9aab824a57622c6c1fdacddabd43b0d4dbb1911bd7f52b5a5830cd2f67f0cc  virtualjaguar_libretro-windows-i686-debug.tar.gz
1e6e262a80201c3cd88a177dddbf8b56162aae6242aae9672560a373dbfe7da0  virtualjaguar_libretro-windows-i686.dll
e91d7f85c45313b654d21d485aefda1e20eb8683138d92ff15db8d09854d0a1d  virtualjaguar_libretro-windows-x86_64-debug.tar.gz
ff685494f4a6c9a722c4883ccc2c4cf5a6259748649ea52aa066e6a6eb13a864  virtualjaguar_libretro-windows-x86_64.dll
25ea438e2756bf5e8792412fca96f412f65c111073fbe0ae34f2949f68dcef07  virtualjaguar_libretro.info