CEMU 1.8.1b is now available, fixes full CPU load on one thread & improves overall game compatibility

The team behind the best WiiU emulator, CEMU, has released a new version of it. According to the release notes, CEMU 1.8.1b fixes an issue that caused full CPU load on one thread, and supports even more games than its previous version.

In addition, this new version now supports vertex format 32_32_32_32_FLOAT for primitive RECTS, and handles better invalid/uncompilable shaders (in order to avoid drawcalls that will lead to errors).

It’s also worth noting that CEMU 1.8.1b avoids shadow samplers on AMD GPUs (and this workaround can be forced on other GPUs via -amdshadows command line parameter).

This new version of CEMU is currently available to all Patreon backers, and will be made available to the public next week.

Below you will find its complete changelog, as well as a video showcasing some of its improvements/features!

# New in 1.8.1b:

general: Fixed a bug causing permanent full CPU load on one thread

# New in 1.8.1:

CPU/JIT: Fixed a bug in ADDME. instruction
CPU/Interpreter: Fixed a bug in PSQ_STX and PSQ_LDX instruction (GQR index parsed incorrectly from opcode)
CPU/Interpreter: Fixed invalid endianness in instruction STHBRX

coreinit: Added ‘errno’ export
coreinit: Added API OSCalendarTimeToTicks(), OSCancelThread(), IM_GetHomeButtonParams(), OSCalendarTimeToTicks(), FSAppendFile(), FSRemove(), SAVEChangeDir()
coreinit: Fixed GHS flock handling. Added __ghs_flock_file() and __ghs_funlock_file()
coreinit: Added support for milliseconds and microseconds in OSTicksToCalendarTime()
coreinit: Fixed bug where FSOpenFile() with mode ‘r+’ would not allow read access
coreinit: Fixed a bug where shared-write file access prevented simultaneous read access from the same file

GX2: Added API GX2GetScissorReg(), GX2GetTargetChannelMasksReg(), GX2SetDefaultState()
GX2: Better handling for invalid/uncompilable shaders (avoid drawcalls that will lead to errors)
GX2: Added support for vertex format 32_32_32_32_FLOAT for primitive RECTS
GX2: MULADD shader instruction will now use correct rules in regards to 0*anything
GX2: Fixed OpenGL error caused by games requesting more mip levels than possible for a texture
GX2: Fixed source mip level parameter for GX2CopySurface()
GX2: Avoid shadow samplers on AMD GPUs. This workaround can be forced on other GPUs via -amdshadows command line parameter

SWKBD: Fixed handling of active state (previously it was tied to the keyboard being visible whereas it should be separate)
SWKBD: Fixed input handling (should no longer clash with wxWidgets, leading to input sometimes being ignored)

RPL: Fixed bug where imports/exports were mapped incorrectly if the internal module name included ‘.rpl’

zlib: Overhauled Cafe OS zLib implementation

nsysnet: Added nsysnet (socket) library

Cemu 1.8.1 (Wii U Emulator) | Improvements Preview

John Papadopoulos

John is the founder and Editor in Chief at DSOGaming. He is a PC gaming fan and highly supports the modding and indie communities. Before creating DSOGaming, John worked on numerous gaming websites. While he is a die-hard PC gamer, his gaming roots can be found on consoles. John loved - and still does - the 16-bit consoles, and considers SNES to be one of the best consoles. Still, the PC platform won him over consoles. That was mainly due to 3DFX and its iconic dedicated 3D accelerator graphics card, Voodoo 2. John has also written a higher degree thesis on the "The Evolution of PC graphics cards." Contact: Email