Cemu v1.8.2 – Performance improvements, improved game compatibility and more
The Wii U emulator, Cemu v1.8.2 is now currently available for patrons. It will soon be released to the public in about a week.
In summary the latest release consists of performance updates, improved game compatibility (StarFox Zero and Nintendoland are confirmed working again), simplifying audio debugging, softdec video support, the ability to resize the Cemu window and several other optimizations. You can have a detailed list of changes in the change-log below.
Change-log:
- general: Any .rpl files placed in cafeLibs/ directory will be loaded instead of the internal HLE modules (experimental feature, no real use yet)
- general: Cemu window can now be resized
- CPU/JIT: Fixed a bug in recompiler SRWI instruction
- CPU/JIT: Fixed a bug that could cause the recompiled code to skip an instruction if the thread was switched between the beginning of a loop and an inlined function
- CPU/JIT: Added STBUX instruction to recompiler
- CPU/JIT: Several other optimizations for the recompiler:
Use AVX non-destructive 3-operand instructions to optimize some copy operations away
Delay/Avoid endian-swapping between LWZ/STW if the data is not used for any other operation
Generate shorter code for BCTRL, BL, BLR and other far branches (2 instructions, only 1 for far branches with no LR update)
Replace branches with conditional moves (CMOVcc) if possible
Avoid redundant FPR loads and stores
Better detection for situations where x64 flags can be used instead of testing CR bits
Avoid extra work of thread scheduling checks in tight non-infinite loops
- coreinit: New API OSTryAcquireSpinLockWithTimeout(), OSSwitchFiberEx(), MCP_Open(), MCP_Close()
- coreinit: More accurate emulation of foreground bucket memory and it’s subregions
- coreinit: FSOpenDir() no longer ignores the current working directory
- coreinit: Fixed integer overflow in OSTicksToCalendarTime()
- AX: Added AX voice debugger
- AX: Fixed biquad filter
- AX: New API AXSetVoiceSamplesAddr(), AXSetVoiceLoopOffset()
- GX2: Improved detection of changed data for typical screen-size textures in texture cache (fixes softdec videos)
- GX2: Fixed invalid GLSL code being generated for 3D texture access with offset
- GX2: Fixed bug in indices generation for PRIMITIVE_RECTS
- GX2: Fixed a bug where adding entries to a shader cache .bin archive would sometimes have no effect (causing Cemu to recompile the affected shaders everytime)
- GX2: Various smaller optimizations throughout the graphic backend (performance gain 1-3%)
- GX2: Added support for tileMode filter in graphic packs texture rules (Useful to exclude video frames or other CPU-accessed textures)
- GX2: Aspect ratio calculation now uses effective size of texture (after graphic pack rescaling) rather than original size
If the change-log doesn’t do any justice, here’s a video demonstrating the latest release:
As you can see in the video above there’s been quite some changes that makes it worth updating. If you aren’t a patron user, I’d definitely recommend you to go support the project, if not you can wait a week for the update to drop publicly. Have fun emulating!
First
Support them? Never happening.
Likely one of the worst emulation developers out there. They lock the source code, so no one else can help. If they aren’t using Nintendo proprietary stuff they have nothing to hide.
They enable a destructive mode of DRM that always pings back their server, even on public builds.
You would do the same if you got ~$22.000 per month.
The problem is the quality of releases especially 1.8.1b where they broke the timer on Xenoblade Chronicles X. And no one can tell me the bug slipped by since it’s apparent immediately after booting and loading a save. Either not 5 minutes of testing were done before the release or they did not care cuz you know we can wait for new version (1.8.2) while the patreon money keeps rolling in.
Unfortunately for every user like me and you there are 1000 other stupids that fork over the cash. What i want to say is : We don’t matter.
You refuse to support them but I bet you still happily use their emulator….smh
There’s nothing wrong with that.
Their emulator is public & free (except the patron ver), you can happily use one without ever supporting (tho it’s a bit unethical in my view).
Believe it or not, closed-source is not evil. There are plenty of reasons for keeping a project closed besides “trying to hide”. As a developer, I totally understand another developer’s decision to want to work on a project on their own/within their team and not open it up to everyone. Part of it is about maintaining your own standards, goals, etc., and part of it may be the pride of being able to boldly state, “I made this.”
DRM is entirely the wrong term for what you are talking about. DRM is an attempt to prevent users from acquiring a product through unauthorized means – cemu is free to download so there is absolutely no need for any such measures. Just because cemu communicates with a server (probably sending diagnostic information) does not mean it is DRM.
By DRM he means DRM on the patron versions. Patron builds cannot be run by someone who did not pay them on patreon and need a crack before it can work for non patrons.
That is DRM.
I don’t see a problem with that, their will always be a free version. The people who a supporting the development simply get a perk and get new builds quicker.
The benefit of open source, if you can’t support with money, you can support with development (coding, debugging, etc).
Contributors have to follow standards, conventions, roadmap set by project owner, so I doubt it’s the issue.
The only possible reason, I think they afraid someone will fork/branch their code, and make separate project based on cemu.
people that want everything to be open source are just entitled.
Advertorial
It’s PATREON
Yes, the site is called Patreon… But a person who supports a project is a patron. The article has it correct.
As soon as I can run GC games full speed, and own a game or two, I’ll get back to you. heh heh… *nervous laughing slowly*
Wouldn’t you just use Dolphin for GC?