In order to edit this wiki, you must register and verify your account.

Release 1.4.1

From CEMU Wiki
Jump to: navigation, search


CPU: Added new instructions to recompiler: LWARX, STWCX, STWBRX, LHAUX, LHZUX, type 5, 6 & 7 for PSQ_L and type 5, 6 & 7 for PSQ_ST, DCBZ, ADDC, MFCR, FDIV, FADD, PS_SUB, PS_NEG.
CPU: Improved handling of XMM registers in recompiler. Drastically reducing the number of load/store operations when not enough registers are available.
CPU: Added SUBFME to interpreter.

coreinit: New API __ghs_mtx_init(), __ghs_mtx_dst(), __ghs_mtx_lock(), __ghs_mtx_unlock(), OSSleepThread()
coreinit: Added weak-symbol 'environ'

RPL: Added support for SDA and SDA2

fsa: Asynchronous file operations now support sending the result via message queue (instead of callback)

GX2: Added vertex data cache (cache vertex data in GPU memory instead of re-uploading it for every drawcall)
GX2: Fixed texture decoding for compressed textures with a size smaller than 16x16
GX2: Fixed AMD issue that occurred when glDrawBuffers() enables unused color attachment
GX2: Fixed AMD issue that occurred when glPrimitiveRestartIndexNV is used instead of glPrimitiveRestartIndex
GX2: Fixed AMD driver crash that could happen after shader compilation.
GX2: Fixed a multitude of issues when using Intel GPUs. Graphics are still horribly broken due to Intel's lacking OpenGL driver, but at least we can say we tried our best :)
GX2: Invalidate destination texture in cache after GX2SurfaceCopy()

vpad: Clamp left and right stick to length 1.0

### New in public release ###

general: CEMU now displays which GPU is used in the titlebar.

GX2: Fixed a timing related bug that could cause the emulator to stop rendering frames.