Il team Libretro documenta i progressi raggiunti nei core del Nintendo 64, Dreamcast, PlayStation1, Saturn e 3DO

Il team Libretro ha da poco pubblicato un nuovo articolo all’interno del blog ufficiale elencando tutte le modifiche apportate ai core negli ultimi mesi.

Chi ha installato il frontend retroArch può eseguire l’aggiornamento dei core dalla voce Aggiorna Online e selezionando Update Installed Cores.

Se invece il core non è stato ancora scaricato e installato, bisogna andare su Aggiorna Online e selezionare la voce Aggiorna Core.

Core aggiornati

Parallel N64

Descrizione: Core dell’emulatore Nintendo 64

Parallel RSP è stato completamente riscritto per poter utilizzare GNU Lighting anziché LLVM.

Vantaggi:

* LLVM (acronimo di Low Level Virtual Machine, macchina virtuale di basso livello) si è sempre dimostrata una gran dipendenza. Tuttavia utilizzando LLVM, il core diventava assai grande, tanto quanto 80 MB senza stripping e 60 MB con stripping.

Con GNU Lightning invece, il core è arrivato a pesare appena 3,6 MB senza stripping. Tra l’altro, LLVM non è mai stato così semplice da programmare, pertanto era difficile eseguire il porting su altre piattaforme. Questo significa che Parallel RSP si farà strada verso piattaforme come Android e Switch (esiste già un backend Aarch64 scritto da m4xw).

* In secondo luogo ora non ci sono più micro-stutter e stalli che hanno afflitto l’implementazione di LLVM. Ad esempio – portando la mappa automatica in Doom 64, o le prime transizioni della schermata del menu in F-Zero X, o sparando per la prima volta con la pistola in Quake 64 – tutti questi aggiungerebbero 1 o più stalli temporanei la primo volta che veniva compilato un blocco di codice.

Svantaggi:

* La generazione del codice è abbastanza ingenua rispetto a quella di LLVM, quindi c’è un certo compromesso tra le prestazioni rispetto all’implementazione di LLVM.

Si stima di perdere dai 5 agli 8 fps rispetto all’implementazione di LLVM. Tuttavia, ora non si verificano più microstutters/stalli e non esiste alcuna dipendenza da LLVM. Ci sono comunque dei modi per riconquistare questa prestazione e andare oltre al dipartimento diverso da Parallel RSP.

  • Rimuovere la vecchia implementazione Parallel RSP basata su LLVM, sostituita con Parallel RSP basata su Lightning. Si occupa di microstutters/stalli.
  • Angrylion: Opzione per selezionare il numero di thread.
  • Parallel RSP ora disponibile su Mac.

Flycast

Descrizione: core dell’emulatore Sega Dreamcast

Aggiornamenti importanti:

  • Flycast – Colori più saturi quando si convertono texture per una maggiore precisione.
  • Flycast – Corretto il caso di sanguinamento della texture durante l’upscaling.

Maggiore compatibilità con i giochi Arcade NAOMI

Flyinghead è stato impegnato a migliorare il supporto dell’emulazione arcade.

Il supporto Netlink è in fase di elaborazione per Gun Survivor 2 Biohazard Code: Veronica. Questo è un adattamento del gioco arcade di Resident Evil Code: Veronica. Inoltre il gioco è stato successivamente rilasciato su PlayStation2. Non ha mai fatto il passaggio a casa su Dreamcast.

Il secondo è Mazan – Flash of The Blade. I controlli non erano mai stati emulati prima. Questo gioco è in realtà abbastanza unico in quanto non solo presentava un design hardware Naomi personalizzato di Namco (GPU più capaci che potevano funzionare in un array), ma aveva anche un dispositivo di input unico.

pPer rilevare le oscillazioni che avresti fatto con la spada è stata utilizzata tecnologia di rilevamento del movimento. Sì, esatto, una spada sensibile al movimento è il tuo principale dispositivo di input in questo gioco.

(Prossima) Simulazione accurata dell’uscita video – PowerVR 2 Filtro post-process

Leilei e Flyinghead hanno unito gli sforzi per aggiungere qualcosa che i puristi della precisione potrebbero amare. Questa è una funzionalità imminente che sarà presto disponibile.

Abbiamo aggiunto un paio di opzioni di post-elaborazione dell’uscita video. Per l’esattezza, è una fase interna della pipeline post-dithering del buffer 24-> 16 bit.

Lei-lei ha fatto questa inversione degli effetti PowerVR con la sua scheda PowerVR PCX2 (che ha lo stesso post-dithering esatto delle più recenti GPU PVR) e osservando schermate dei comunicati stampa ufficiali senza perdita di dati e il dump di acquisizione VGA di xjas.

Se ricordi, durante il lancio iniziale di PS2, le persone spesso notavano che l’uscita video del Dreamcast appariva più nitida e aveva applicato l’antialiasing mentre i giochi di lancio della PS2 apparivano fortemente aliasati.

In verità, quello che stava succedendo non era proprio l’anti-aliasing a scena intera o qualcosa in tal senso. Invece, è stata una semplice sfocatura verticale che la GPU PowerVR2 nel Dreamcast ha fatto per combattere lo sfarfallio interlacciato sull’uscita video composito.

Il GameCube ha fatto qualcosa di simile con i filtri di copia su alcuni giochi. Ad esempio, alcuni dei giochi di Sonic Team su GameCube hanno avuto una sfocatura verticale simile per lo stesso scopo del deflicker.

Rilevata inoltre una notevole perdita di segnale VGA nell’uscita VGA durante il collegamento del Dreamcast a un monitor con un cavo VGA.

Dà allo schermo una tonalità verde e aggiunge una tonnellata di feedback invece di essere un’immagine a 16 bpp retinata pulita. Questa è anche un’opzione nel frontend shader e speriamo di aggiungere anche questo al core Flycast come funzionalità opzionale.

Ora come ora puoi abilitarlo con il renderer GL. Se desideri utilizzare questo shader in altri core e applicarlo come frontend shader, puoi farlo anche tu: abbiamo aggiunto lo shader ai pacchetti shader GLSL e Slang (vedi gpu/powervr2).

Confronto dei frame con risoluzione nativa

Confronto dei frame a 5120×3840

Changelog

  • Init AICA int maschera/livello all’avvio di HLE – corregge l’audio mancante negli homebrew di KOS.
  • Disabilita la corrispondenza DIV per Aqua GT.
  • Disabilita corrispondenza DIV per Rayman 2 (NTSC).
  • Disabilita corrispondenza DIV per Rayman 2 (PAL).
  • Disabilita la corrispondenza DIV per Elysion.
  • Disabilita corrispondenza DIV per Silent Scope (NTSC).
  • Disabilita corrispondenza DIV per Silent Scope (PAL).
  • Disabilita corrispondenza DIV per Power Stone (US).
  • Disabilita corrispondenza DIV per Power Stone (JP).
  • Disabilita corrispondenza DIV per Power Stone (PAL).
  • Disabilita corrispondenza DIV per Metropolis Street Racer (NTSC).
  • Disabilita corrispondenza DIV per Metropolis Street Racer (PAL).
  • Disabilita il componente RGB per Vigilante 8: 2nd Offense, Gauntlet Legends, Street Fighter Alpha 3.
  • Interrompe la CDDA durante la lettura del settore. Corregge Hydro Thunder – Il tempo registra un bug musicale.
  • (GL/Vulkan) Ignora il filtro trilineare se la texture non è mipmapped. Corregge il colore dei fiocchi di neve di Shenmue.
  • (GL/GL4) Filtro di post-elaborazione PowerVR2 di leilei.
  • (GL4) Corretto il problema di fusione quando autosort=0. Risolve il menu Sturmwind
  • (GL4) Non utilizza una scala di profondità aggiuntiva nel calcolo della nebbia. Corregge la densità della nebbia in Sega Rally 2.
  • Nuovi trucchi widescreen: Suzuki Racing, Nightmare Creatures, Rent a Hero.
  • (Maple) Ricollega in modo sicuro le VMU quando si cambia l’opzione VMU per gioco, in caso contrario potrebbe causare la corruzione delle VMU. Non creare file VMU durante l’esecuzione di giochi Naomi o AtomisWave.
  • (Naomi) Emula ingressi PCB World Kicks e World Kicks.
  • (Naomi) Corretto il riavvio (e l’uscita dal menu di servizio) disabilitando l’emulazione della scheda DIMM legacy.
  • (Naomi) Aggiunta la configurazione degli input per Mazan, emula gli input per Mazan.
  • (Reios) Supporta espulsione/modifica del disco. Testato con Skies of Arcadia e D2.
  • (PVR) Colori più saturi quando si converte tex in maggiore precisione. Corregge i problemi di trasparenza in RE: Code Veronica e Dead or Alive 2.
  • (PVR) Corretto il caso di sanguinamento della texture semplice durante l’escalation.
  • Aggiunto il supporto v1 interfaccia controllo disco [jdgleaver].

Beetle PSX

Descrizione: core dell’emulatore Sony PlayStation1

Alcuni importanti aggiornamenti anche per Beetle PSX: Lightning/Lightrec (la nuova tecnologia dynarec in uso) ha visto molti aggiornamenti e miglioramenti. La compatibilità con Aarch64 dovrebbe essere migliore ora. ARMv7 è un work-in-progress e presenta ancora molti problemi.

Ora è possibile impostare Cicli di eventi DMA/GPU su valori fino a 1024. 1024 può offrire un significativo aumento di velocità, ma alcuni giochi potrebbero non avviarsi con questa impostazione abilitata.

Provalo tu stesso con un gioco a tua scelta e vedi se funziona in modo affidabile prima di decidere. Puoi sempre optare per un valore inferiore e vedere se funziona meglio, mentre non perdi troppe prestazioni nel processo.

Quindi, per affrontare i precedenti limiti di dynarec – i due grandi erano che runahead non funzionava e che PGXP non funzionava con dynarec abilitato.

Runahead ora funziona per la modalità di rendering del software, quindi la parte è soddisfatta (poiché il rendering dell’hardware che non funziona in modo affidabile non è un problema fondamentale).

Per quanto riguarda PGXP, ora funziona con dynarec, ma vedrai un forte calo delle prestazioni, portandoti a livelli di prestazioni leggermente migliori rispetto alla modalità interprete. Tuttavia, ci sono piani per rendere PGXP parte del dynarec, che potrebbe occuparsi di questo problema.

Alcuni consigli sulle prestazioni per le persone che vogliono ottenere il massimo dal proprio dispositivo:

* Imposta l’annullamento del codice Dynarec su “Solo DMA (leggermente più veloce)”. Se non causa problemi in un gioco, questo dovrebbe darti un aumento delle prestazioni non insignificante in alcuni giochi.
* Se si riesce a cavarsela, impostare i Cicli di eventi DMA/GPU di Dynarec su un valore superiore a quello predefinito che è 128. Se un gioco inizia a bloccarsi o non si avvia più dalla schermata del BIOS, allora saprai di averlo impostato su un valore troppo alto. L’impostazione di DMA Cycles su 1024 può avere un grande impatto sul framerate massimo.
* Il software Framebuffer può essere disattivato per i giochi che non utilizzano la lettura del framebuffer. Prova a disattivarlo se stai utilizzando il renderer hardware Vulkan. Se all’improvviso trovi alcuni artefatti grafici che prima non c’erano, potresti dover riattivare questa impostazione per sbarazzarti dei glitch.
* Il renderer Vulkan in questo momento potrebbe essere un po’ più lento del renderer Software. Alcune cose che puoi provare a rendere le prestazioni più in linea potrebbero essere quelle di disabilitare lo “Smoothing adattivo”, ma se c’è ancora un abisso nelle prestazioni, dovresti ricorrere al renderer software.
* PGXP in questo momento avrà un impatto enorme sulle prestazioni con il dynarec. Disattivalo se ti interessa ottenere le migliori prestazioni possibili.

  • Non chiamare le funzioni PGXP in gpu quando PGXP è disabilitato
  • Aggiunto il supporto PGXP in dynarec. Non è più veloce dell’interprete, a causa della chiamata delle funzioni PGXP su ogni codice operativo di caricamento/archiviazione. Potrebbe diventare più veloce in seguito.
  • Aggiunte più opzioni DMA/GPU Event Cycles. Tutti i multipli di 128 (impostazione predefinita) dovrebbero andare bene. 1024 dovrebbe essere significativamente più veloce ma anche il meno compatibile.
  • Aumenta il limite di overclock della CPU al 750%.
  • Corregge il caricamento degli stati di salvataggio da pre-dynarec, è necessario utilizzare SFARRAYN con il vecchio nome.
  • Aggiorna Lightning.
  • Aggiunto il supporto v1 interfaccia controllo disco [jdgleaver].

4DO

Descrizione: core dell’emulatore 3DO

Beetle Saturn

Descrizione: nucleo dell’emulatore di Saturn Sega

  • Aggiunto il supporto v1 interfaccia controllo disco [jdgleaver]

Beetle Wswan

Descrizione: Core dell’emulatore di colore Bandai WonderSwan / WonderSwan

  • Correzioni backport 1.24.0.
  • Profondità di colore variabile backport.

Beetle Supergrafx

Descrizione: Core dell’emulatore Supergrafx

  • Spostata la modalità pulsante 2/6 per passare al frontend.

NeoCD

Descrizione: Core dell’emulatore SNK Neo Geo CD

  • Implementazione iniziale di mappe di memoria (non testato) [fabrice-martinez].

Mupen64plus Next

Descrizione: Core dell’emulatore Nintendo 64

  • Aggiornamento rapido per Legend of Zelda: Majora’s Mask a causa di un interrupt speciale.
  • Hotfix per Legend of Zelda: Ocarina of Time (+ randomizer), anche questo corregge Rat Attack (solo per dynarec, non interprete) a causa della gestione errata delle eccezioni TLB per i titoli che non usano TLB.
  • Entrambi gli hotfix non risolvono la causa principale e verranno rivisti in seguito.
  • Aggiornato mupen64plus-rsp-hle, grazie a Gillou68310 HVQM.
  • µcode è ora implementato per HLE, risolvendo Pokemon Puzzle League e Yakouchuu II.

bsnes hd beta

Descrizione: Core dell’emulatore Super Nintendo

  • Aggiornamento all’ultima versione [DerKoun]

Boom3

Descrizione: Core del motore di gioco di Doom 3

  • Nome modificato da dhewm3 a boom3 su richiesta dell’autore.

P-UAE

Descrizione: Emulatore Commodore Amiga

  • Libco rimosso. 8-9% di miglioramento delle prestazioni.
  • Abilitato SERIAL_PORT, che risolve:
  • Tutte le versioni di Super Skidmarks, tranne quella WHDLoad slave 1.1 con il ridicolo requisito di memoria.
  • Circuito del Grand Prix
  • Assicurati che reset_drawing() venga chiamato ogni volta che la geometria cambia (impedisce l’accesso al buffer video fuori dai limiti).
  • Accelerazione del mouse D-Pad + correzione dei caratteri.
  • Altre opzioni sulla barra di stato.
  • Ottimizzazione dei glifi VKBD.
  • Aggiunto il supporto per l’interfaccia di controllo del disco v1 (etichette di visualizzazione del disco).
  • Rimosso savestate_initsave + migliore controllo del mouse VKBD.
  • Correzione da WinUAE 4.1.0 per crash AGA Chaos Engine 2.
  • Sintonizzazione VKBD.
  • Audio via retro_audio_batch_cb + correzione MDS + correzione pregap.
  • Nuovi controlli predefiniti.
  • Carattere grafico e modifiche VKBD.
  • LED HD che scrive a colori in rosso.

Final Burn Neo

Descrizione: Core dell’emulatore arcade multi-sistema

  • Ultimi aggiornamenti.

LRmame

Descrizione: Core dell’emulatore arcade multi-sistema

  • Aggiornato all’ultima versione (0.218) – sarà disponibile più tardi oggi [tcamargo].

NP2kai

Descrizione: Emulatore serie PC-9801

  • Aggiornato all’ultima versione [AZO234].

Frodo

Descrizione: Emulatore Commodore 64

  • Ora disponibile su Android.

Kronos

Descrizione: Core dell’emulatore Sega Saturn 

  • Preparazione di OpenGLES.
  • Correzione del ridimensionamento della finestra per il livello VDP1 – Correzione del calore invernale nel ridimensionamento.
  • Quando OREG viene letto mentre l’indicatore di stato è deselezionato.
  • Forza il comando elaborazione – evitare razza – correzione dei controlli Rayman.
  • Sii più generico per il problema della razza SMPC.
  • Quando intback continua a scrivere, lo status flag deve essere 1 – Fix batman boot.
  • Corretta la finestra di Batman.
  • Imposta vdp1On durante l’aggiornamento utilizzando la schermata di caricamento write – Fix Sega Ages.
  • Se il VDP1 viene cancellato con un colore non trasparente, supporre che lo sia.
  • Introdotta la scheda di sviluppo RAM utilizzata da Heart of Darkness.
  • Visualizza il livello VDP1 cancellato con colori non trasparenti.
  • (libretro) aggancia la cartuccia di sviluppo.
  • Corretti due codici finali consecutivi sul core OpenGL – Corregge codice R.
  • fh è legato a kx – Corregge alcuni comportamenti scorretti su RBG CS.

FCEUmm

Descrizione: Core dell’emulatore NES

NOTA: tutte le modifiche sono state gentilmente concesse da un esponente negativo

  • Aggiornato mapper 213.
  • Aggiornato mapper 319 (BMC-HP898F).
  • Aggiornato vrc2and4.c – supporto per il big bank CHR (Contra 3) abbinato all’hash.
  • Aggiunti mappatori iNES 1.0/2.0.
  • 134 – Sostituito Mapper134_init con Bs5652_Init.
  • 391 – NC7000MM.
  • 402 – 831019C J-2282.
  • Schede UNIF aggiunte:
  • AB-G1L.
  • BS-110.
  • BEN-NO-DG450.
  • KG256.
  • Corretti i salvataggi di stato – evita possibili problemi su big-endian aggiungendo la maschera.
  • Corretti i salvataggi – specifica la dimensione della variabile corretta per indicare la struttura.
  • Esegue il backport della nuova gestione del disco FDS [Famicom Disk System] – corregge il problema di salvataggio con alcuni giochi (Bubble Bobble, Super Lode Runner II, …).
  • Aggiunti mapper 357.
  • Aggiunti mapper 372.
  • Aggiunti mapper 541.
  • Aggiunti mapper 538.
  • Aggiunti mapper 381.
  • Aggiunti mapper 288.
  • Aggiornamento BMC-RESET-TXROM (m313).
  • Aggiunti mapper 374.
  • Aggiunti mapper 390.
  • Aggiunti mapper 267.
  • m313: Correzione di dimensioni del banco errate.
  • Aggiunti mapper 294 (m134).
  • Aggiunti mapper 297.

Genesis Plus GX

Descrizione: Emulatore Sega Genesis/Mega Drive/Master System/Game Gear

  • Aggiornato all’ultima versione.
  • Risolti i problemi di runahead.

SMS-Plus GX

Descrizione: Emulatore Sega Master System/Game Gear

  • Aggiunto il supporto per la porta del 2° giocatore.

Picodrive

Descrizione: Sega Genesis/Mega Drive/Game Gear/Master System/Sega emulatore CD/32X core

  • Consente l’accesso alla memoria aggiuntiva del CD di Sega utilizzando retro_memory_map [negativeExponent]

mgba

Descrizione: Core dell’emulatore Game Boy Advance

  • Aggiornato all’ultima versione.
  • Aggiunta la traduzione delle opzioni di base italiane.
  • Corretti problemi di runahead [endrift].
  • Aggiunta la fusione interframe opzionale.

Mesen

Descrizione: Core dell’emulatore NES

  • Aggiornato all’ultima versione [Sour].
  • Corretti i problemi di runahead [Sour].

PCSX ReARMed

Descrizione: Core dell’emulatore Sony PlayStation1

  • Aggiunto modificatore di portata dell’asse analogico di input [stouken].
  • Aggiunto supporto v1 interfaccia controllo disco [jdgleaver].

Snes9x 2005

Descrizione: Core dell’emulatore Super Nintendo

  • Dovrebbe finalmente compilare ora per Raspberry Pi 4.

TIC-80

Descrizione: Core dell’emulatore TIC-80

  • Aggiornato all’ultima versione.

PX68K Libretro

Descrizione: Emulatore di computer di casa NEC X68000

  • Corretto il problema con M3U che non registrava lo stato di espulsione
  • Implementazione della nuova interfaccia di Disk Control (comprese le etichette personalizzate).
  • Menu switch px68k ora accessibile come opzioni principali.

Fonte: libretro.com

(Visited 1 times, 1 visits today)

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *