Disponibile il nuovo aggiornamento Patreon di Cemu, l’emulatore della Wii U per PC windows a 64 bit migliora ulteriormente l’emulazione e introduce alcune caratteristiche interessanti.
Questo nuovo aggiornamento porta un nuovo aumento delle prestazioni, ora StarFox Zero e Nintendoland funzionano correttamente, una nuova funzione rende più semplice il debug audio, il supporto video softdec, la capacità di ridimensionare la finestra CEMU, correzione per il ciclo notte in Xenoblade Chronicles X e molto altro.


Cemu 1.8.2 | Super Mario 3D World Gameplay

Cemu 1.8.2 | Zelda: Breath of the Wild Gameplay

Cemu 1.8.2 | Zelda: Breath of the Wild - Kakariko Village Performance Test

Cemu 1.8.2 | Mii Maker

Cemu 1.8.2 | Ryū ga Gotoku 1 HD (Yakuza 1) Gameplay

Cemu 1.8.2 | Mario Kart 8 Gameplay

Changelog
Versione 1.8.2
- Generale: Ora vreranno caricati i file .rpl posizionati nella directory
cafeLibs/
invece che i moduli HLE interni (funzionalità sperimentali, ancora nessun uso reale). - Generale: La finestra di Cemu ora può essere ridimensionata.
- CPU/JIT: Corretto un bug nell’istruzione
SRWI
del ricompilatore. - CPU/JIT: Risolto un bug che potrebbe causare il salto di un’istruzione se il thread è stato commutato tra l’inizio di un ciclo e una funzione inclinata.
- CPU/JIT: Aggiunte istruzioni
STBUX
al ricompilatore. - CPU/JIT: Riportate diverse ottimizzazioni al ricompilatore:
- Utilizza istruzioni a 3 operandi AVX non distruttive per ottimizzare alcune operazioni di copia.
- Delay/Avoid lo scambio di endian tra
LWZ/STW
se i dati non vengono utilizzati per altre operazioni. - Genera un breve codice per
BCTRL
,BL
,BLR
e altri branchi lontani (2 istruzioni, solo 1 per i branchi più lontani e senza aggiornamento LR). - Sostituiti i rami con movimenti condizionali (CMOVcc) se possibile.
- Evita il caricamento e lo store di
FPR
ridondanti. - Migliorato il rilevamento per situazioni in cui possono essere utilizzate bandiere x64 anziché testare bit CR.
- Evita un lavoro extra di controlli di programmazione thread in stringhe strette e non infinite.
- Coreinit: Nuove API
OSTryAcquireSpinLockWithTimeout()
,OSSwitchFiberEx()
,MCP_Open()
,MCP_Close()
. - Coreinit: Emulazione più accurata della memoria della benna in primo piano e delle sue subregioni.
- Coreinit:
FSOpenDir()
non ignora più la directory di lavoro corrente. - Coreinit: Fixato overflow intero in
OSTicksToCalendarTime()
. - AX: Aggiunto il debugger vocale AX.
- AX: Fixato il filtro biquad.
- AX: Nuove API
AXSetVoiceSamplesAddr()
,AXSetVoiceLoopOffset()
. - GX2: Migliorata la rilevazione dei dati modificati per le texture tipiche di dimensione dello schermo nella texture cache (correzione dei video softdec).
- GX2: Fixato codice GLSL non valido generato per l’accesso alla texture 3D con offset.
- GX2: Fixato l’errore nella generazione di indici per
PRIMITIVE_RECTS
. - GX2: Corretto un bug in cui l’aggiunta di voci ad un archivio binario della cache shader a volte non avrebbe alcun effetto (causando ogni volta la ricompilazione degli shaders interessati).
- GX2: Varie ottimizzazioni più piccole in tutto il backend grafico (guadagno di performance 1-3%).
- GX2: Aggiunto il supporto per il filtro tileMode nelle regole di struttura dei pack grafici (utile per escludere i frame video o altre texture accessibili dalla CPU).
- GX2: Il calcolo del rapporto di aspetto utilizza ora dimensioni efficaci di texture (dopo la riqualificazione della grafica) piuttosto che le dimensioni originali.
La versione pubblica verrà rilasciata il 25 Luglio, ma per chi intende contribuire nello sviluppo e ricevere in anteprima l’emulatore può partecipare nella raccolta fondi attraverso la campagna di crowdfunding Patreon.