A standalone desktop front end for the same core. It runs on macOS,
Windows and Linux with no RetroArch installed, and it drives the core
through the same retro_* API RetroArch uses, so every core
option and save state behaves the same in both. New in v3.9.0; it carries
the core’s version number.
Two ways to play: the RetroArch core, or this app. The core is not going away, and nothing here changes how it works.
The packages are attached to each
GitHub release next to the core builds,
and listed in that release’s SHA256SUMS.txt.
| System | Package | Notes |
|---|---|---|
| macOS | VirtualJaguar-X.Y.Z-macos-universal.zip |
Virtual Jaguar.app, Apple Silicon and Intel, macOS 11
or later. Zip only, no disk image. |
| Windows x64 | VirtualJaguar-X.Y.Z-windows-x64.zip,
...-windows-x64-setup.exe |
The zip is portable: portable.txt keeps settings in a
data folder beside the program. The installer is
per-user by default. |
| Windows ARM64 | VirtualJaguar-X.Y.Z-windows-arm64.zip,
...-windows-arm64-setup.exe |
Native ARM64 build (Snapdragon X and other ARM64 PCs), same layout as x64. The installer needs ARM64 Windows. |
| Linux x86_64, aarch64 | VirtualJaguar-X.Y.Z-linux-<arch>.AppImage,
virtualjaguar_X.Y.Z_<amd64|arm64>.deb |
Built on Ubuntu 22.04. The .deb installs under
/usr/lib/virtualjaguar with a link in
/usr/bin. |
| Linux x86_64 (Flatpak) | VirtualJaguar-X.Y.Z-linux-x86_64.flatpak |
A single-file bundle:
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo,
then flatpak install --user VirtualJaguar-X.Y.Z-linux-x86_64.flatpak.
It can read your home folder (read-only) to find ROMs. No shaders
in the Flatpak yet. |
Or use the installer, which can install the core, the app, or both:
macOS, Linux
curl -fsSL {{RAW_URL}}/tools/install.sh | sh -s -- --what app
Windows (PowerShell)
$env:VJ_WHAT = 'app'; irm {{RAW_URL}}/tools/install.ps1 | iex
--what takes core, app or
both; the installer verifies each download against
SHA256SUMS.txt. More options, and the PowerShell
alternatives, are on the home page.
Nightlies carry the app too. The rolling
nightly
prerelease holds VirtualJaguar-nightly-* packages built from
the same develop commit as the nightly core. Add
--channel nightly to the installer to get them. They are
gated on compiling, not on the test suite.
Unsigned builds. Until signing is configured for the release, macOS may refuse the app at first launch (right-click the app and choose Open, once) and Windows SmartScreen may warn about the installer. Packaging, signing and the package-manager templates are in app/packaging/README.md.
?, an unidentified file ??. Discs in
.cue, .chd and .cdi form are
checksummed from their first track; a rip that is not a Redump dump
is matched by its file or folder name when that is unambiguous.covers folder of the
app's data directory.
The app runs RetroArch .slangp presets, unmodified, through
librashader.
Presets from
libretro/slang-shaders
are bundled: the CRT family (CRT-Royale, CRT-Geom, CRT-EasyMode and
others), scanlines and interpolation, plus two small first-party presets
(vj-scanlines, vj-sharp-bilinear). Point
Preset folder at a full slang-shaders checkout for the
rest, and preset parameters get sliders. Integer scaling and the aspect
modes are separate from shaders and apply to both.
Shaders are optional: if a preset does not compile or librashader is missing, the app draws the plain picture and says why. Platform notes: the macOS and Windows packages bundle the librashader runtime; upstream publishes no Linux build, so on Linux install a librashader package and the app finds it. The macOS universal package currently ships an arm64-only librashader, so shaders may be unavailable on Intel Macs (see the packaging notes).
gamecontrollerdb.txt in the data folder.* and # without the
overlay (face button, shoulders, triggers and the right stick).
F2 opens an on-screen keypad as well.
The mouse is captured only while a mouse or rotary is plugged in and a game has focus; Esc or F10 releases it. Controller details: input devices guide and the app README.
Emulation > Cheats lists the cheats the
libretro cheat database
has for the running game, with a toggle each, plus manual
ADDRESS:VALUE codes. What is on is remembered per game. The
database files are bundled with the app, with their licence
(CC BY-SA 4.0); you can add your own .cht files.
.cue discs are identified. .chd
and .cdi discs are not identified yet: the game runs
without achievements and the app says why.F5 saves, F7 loads, F6 cycles the slot; Emulation > State manager shows every slot with a thumbnail. States use the core’s own format, so they behave as they do in RetroArch.
The Netplay window sets up Jaguar link-cable play over a local network: it joins the two emulated link ports. It is not rollback netplay and not general online play, and play over the Internet or a VPN is not supported. The link swaps many small messages every frame, so it is limited by network delay: a wired connection is best.
open -n on macOS) starts another copy with its
own save folder, so you can host in one and join 127.0.0.1
in the other, or give each window its own controller for local
multiplayer.--netplay host|join|join-discovered|browse|loopback.
Background and the details of the link itself: netlink user guide and voice-modem.md.
.j64 .jag .cue .chd and the other game formats (an installer checkbox on Windows),
and an optional tray or menu-bar icon.