# Cemu detailed changelog for 1.15.3b # Patreon release date: 2019-02-28 # Public release date: 2019-03-07 # New in 1.15.3b: CPU/JIT: Fixed potential instability and crashes caused by recompiler optimizations debug: Fixed WUD filesystem dump feature debug: Frame profiler now displays 9 different stats. From bottom to top: gray -> Idle (waiting for more commands from CPU) pink -> Wait for async (waiting for texture readback, occlusion queries. Explicit or by GX2DrawDone) dark red -> Texture creation, texture upload, texture cache management, sampler settings dark green -> Attribute/vertex buffer management, attribute data upload blue -> Shader management, shader compilation, uniform buffer management, uniform data upload purple -> Index cache management, index data upload green -> Render target management, FBO creation, texture creation yellow -> OpenGL glDraw calls light gray -> Everything else # New in 1.15.3: general: Display meta/bootTvTex.tga when booting a game and while compiling shaders (ref: http://bugs.cemu.info/issues/1) general: Reworked shader cache loading screen to scale better on higher resolutions general: Changed settings.xml to be more portable (use relative paths where possible) CPU/JIT: JIT recompilation of functions is now multi-threaded if multi-core recompiler is enabled (slightly reduces micro-stutter caused by recompilation) debug: Added debug option which dumps the WUD filesystem of the currently running game to dump/ folder (WUD/WUX extractor) debug: Fixed a bug where the RAM dump feature would silently fail because it would not create the dump folder GX2: Added frame profiler (can be toggeled via debug menu) GX2: Optimized texture loader GX2: Minor optimizations in various GX2 API functions GX2: Fixed random crash due to out-of-bounds access in texture code GX2: Fixed crash that could occur when GPU buffer cache accuracy was set to high GX2: Increased time before restorable textures are dropped from texture cache (from 15 seconds to 2 minutes) coreinit: Fixed incorrect timeout calculation in spinlock AcquireSpinLockWithTimeout API padscore: WPADGetInfoAsync no longer crashes when no callback is provided input: DirectInput rumble will only be initialized if the rumble value is set to non-zero (workaround for a crash bug in a common DirectInput driver)