More games boot and render
- Fixed games crashing before their first frame. A game that reserves several GiB of empty
memory at startup had that memory counted twice and hit the console's memory limit. It is
now counted once, and those games boot. - Fixed missing and wrong textures. Some shaders pick their texture depending on a
condition. Jadyx ignored the condition and sampled the wrong texture, or none at all. - Fixed 3D scenes not drawing. In some games only the 2D elements and the HUD were visible
because every 3D vertex was clipped. - Fixed shaders that crashed while being translated when a texture slot was left empty.
Performance
- 96.5% less JIT compilation during loads. Jadyx now remembers far more of the game code
it compiled in earlier sessions (twice as many blocks per core) and compiles it ahead of
time with a bigger budget, so large games no longer compile hundreds of thousands of blocks
while loading. This also happens when a game resumes from a Pulse session, which used to
compile the whole game again in its first minute. - Faster CPU emulation without fastmem. Atomic memory accesses are now compiled inline
instead of going through a locked slow path. On the console each emulated core uses about
18% less CPU time per frame. - Small compute dispatches are split across the GPU. A game held back by one long compute
dispatch went from about 12 to about 29 FPS. This is new: if a game breaks, add
cs_split=1toboot.cfgto turn it off, and report it. - Bigger JIT code cache: 256 MiB per core instead of 128. Large games no longer refill the
cache and recompile everything during their load. Memory is used only as the cache fills.
When the console runs short of memory, the cache stops growing instead of being cleared. - Shaders are kept between sessions. Translated shaders are saved per game, so the second
time a game runs it skips most of the shader translation work. - Smoother frame delivery. Display buffers are handed back to the game in the same vsync,
and the game no longer stalls while the GPU catches up on certain events. - Less CPU wasted on timers. A timer wait no longer keeps a whole core spinning.
- Releases are now built with link-time optimization and for the Series CPU (AVX2).
Graphics
- Transform feedback is now emulated. Games that use it for skinned models no longer show
them flat or stretched. - Stencil fixes: stencil is now kept in scaled depth-stencil copies and in 8-bit stencil
textures, and shaders can read it. This fixes missing shadows, outlines and masks in some
games. - Fixed depth read back with wrong values, depth rendered to the wrong mip level, and 2D
textures that games sample as 3D or cube textures. - Samplers that filter by minimum or maximum value, which the Series GPU cannot create, are
emulated in the shader. - New shader instructions and fixes: 32-bit compare-and-swap atomics and quad shuffles.
- Hitch detector. The performance overlay shows the last hitch and its likely cause
(shaders, JIT, file reads, GPU waits...). It is also written to the log.
Network
- New offline mode, on by default. In Settings → System, it hides the network from
games so they do not hang while trying to connect. Each game can override it from the
in-game menu.
Storage
- Jadyx Portal: choose where games are installed. When you import NSP games, the Portal
now lets you pick Internal storage or Dev storage (D:), and shows the free space on
both. Dev storage (D:\DevelopmentFiles\Jadyx\games) leaves much more room than the app's
own folder. The library lists those games and can remove them. Updates, DLC and covers work
the same. - Storage reads are now paced like real Switch media. Intros and movies that froze or ran out
of sync play correctly, and loads that ran behind a movie are no longer slowed down.
Clearer launch errors
- When a game needs a newer firmware, Jadyx names the firmware it needs and the one you have.
- A base game that is only a small stub tells you to install its update.
- A firmware that is newer than your keys now says so on import, instead of reporting a
generic key error.
Fixes
- Pulse works in more games. Games that open a system applet (for example the network
connection or error screen) and leave it open no longer hang or block saving the Pulse
session. - Fixed games freezing after an error message was shown.
- The Jadyx Portal no longer keeps the console busy when it is idle.
Known issues
- Pop-in in some engines. In games built on one family of engines, objects and parts of
the scenery pop in and out as the camera moves. - Memory limit. Some games now boot but reach the 5 GB (5120 MiB) that Dev Mode gives an
app in Game mode, and close when they run out.
Full changelog: v0.3.8.6...v0.3.9.0
Install
You need an Xbox Series X|S in Dev Mode. No keys, firmware or games are included: use your
own dumps.
- Download
Jadyx_0.3.9.0_x64.appx,Microsoft.VCLibs.x64.14.00.appxand
Jadyx.cerfrom the assets below. - On a PC on the same network, open Device Portal at
https://<xbox-ip>:11443(Dev Home
shows the address) and accept the browser's certificate warning. - Choose Add, pick the Jadyx appx, add the VCLibs appx as a dependency and
Jadyx.cer
as the certificate, and install. - In Dev Home, select Jadyx → View details and set App type to Game. In App mode
it runs out of memory. - Start Jadyx and send your keys, firmware and games from a PC or phone with the
Jadyx Portal: Settings → File manager → Network connection → Start server, open
the address it shows in a browser on the same network and enter the connection code. - Other ways: import keys and firmware from a folder or ZIP on a USB drive in
Settings → File manager, and add games from an external folder or USB drive, or copy
them to the app'sLocalState\gamesfolder with the Device Portal file explorer.
A newer version installs over the previous one and keeps your games, saves and settings. Do
not uninstall to update: uninstalling deletes them.
Reporting bugs
Open an issue at https://github.com/JulianDr14/jadyx/issues/new/choose with the Bug
Report form. A good report has:
- The Jadyx version (
0.3.9.0) and whether it is a Series X or S, in Game mode. - What you did, what you expected and what happened instead, with the steps to make it
happen again. - The logs from the app's
LocalState\jadyx\logfolder (Device Portal → File
explorer):jadyx_log.txt,jadyx_diag.txtand, for graphics problems,
jadyx_graphics_bugs.log. Grab them right after the problem, before launching another
game.
Search the existing issues first. Reports about pirated keys, firmware or games are closed.
If the bug also happens in the desktop builds of Eden, report it to Eden instead.
Questions, install help and compatibility reports: join the
Discord.