Pubblicato un nuovo aggiornamento per ColecoDS Phoenix-Edition, l’emulatore della ColecoVision per console Nintendo DS resuscitato dal developer wavemotion-dave.
ColecoDS è un vecchio emulatore della ColecoVision sviluppato nel 2011 dal developer Alekmaul per console Nintendo DS/DSi. Per funzionare l’emulatore necessita del file bios coleco.rom
posizionato nella stessa directory del programma oppure in /roms/bios
o /data/bios
.
ColecoDS supporta inoltre l’emulazione MSX, il modulo Super Game Module (SGM) e i giochi MegaCart più grandi di 32K.
Questa nuova versione apporta ancora un miglioramento significativo nel chip audio AY, due grandi differenze tra il suono Coleco (chip SN) e il suono MSX (chip AY) sono nella gamma dinamica sia del tono (un vero chip AY può andare 2 ottave più in basso in frequenza) e nel rumore (32 livelli di rumore vs 3).
Estese entrambe le gamme del core sonoro SN per l’emulazione AY, questo produce toni più bassi (in giochi come Knightmare e Stray Cat hanno fantastici suoni di base) senza sacrificare nessuno dei toni alti.
Raddoppiato inoltre il numero di frequenze di rumore a 7, il che aiuta davvero la gamma di rumori che il sistema può produrre. Questo migliora qualsiasi cosa utilizzando il chip AY che viene utilizzato praticamente da tutti i giochi MSX.
Non tutti i giochi utilizzano l’intera gamma dinamica, Konami ad esempio tendeva ad utilizzare l’intera gamma mentre le porte Sega tendevano a rimanere sulle note alte).
Caratteristiche
- Supporto per giochi Colecovision (file
.rom
o.col
). - Supporto per Super Game Module (SGM) incluso il chip audio AY.
- Supporto per Megacart Bankswitching (fino a 512K).
- Mappatura completa dei pulsanti del controller e input touch-screen.
- Supporto High-Score: 10 punteggi per partita.
- Salva/carica lo stato del gioco (uno slot).
- Modalità Blend (vedi sotto) e sincronizzazione verticale.
- Cambia schermo LCD (premi e tieni premuti + + durante il gioco).
- Supporto overlay per i pochi giochi che ne hanno bisogno.
- Mappatura Super Action Controller, Spinner e Roller Controller (Trackball).
- Supporto per giochi Sega SG-1000 (rom
.sg
). - Supporto per giochi Sord M5 (rom
.m5
): richiede il BIOSsordm5.rom
. - Supporto per giochi MSX1 (
.msx
o.rom
) fino a 512K. - Massima velocità, audio completo e frame-rate completo anche su hardware più vecchio.
Problemi noti
- I bordi non vengono visualizzati correttamente, solo pochi giochi li utilizzano e sono ancora completamente giocabili senza di essi.
- I giochi che utilizzano campioni vocali (Squish Em Sam, Wizard of Wor, ecc..) non riprodurranno il discorso.
- I carrelli PCB Activision da 64K non hanno supporto EEPROM (Black Onyx, Boxxle – entrambi riproducibili senza salvataggi).
- La versione originale del 2011 di StarForce andrà in crash, questo è un bug noto. C’è una versione patchata del gioco StarForce su Atariage.
- I giochi Sord M5 non sono accurati a causa di problemi di emulazione CTC.
- L’emulazione del suono e del rumore dell’inviluppo MSX non è accurata (abbastanza vicino).
- Il chip audio MSX Konami SCC non è emulato (Gradius 2/3, Salamander, ecc.. non avranno musica).
Compatibilità MSX
Considerando che si tratta di un emulatore Colecovision, il supporto e la compatibilità di MSX1 sono ragionevolmente elevati.
In Game Options è possibile notare come il Mapper MSX predefinito sia impostato su “GUESS”, il che fa un buon lavoro nel caricare la ROM, specialmente per giochi da 32K o più piccoli. Tuttavia, se un gioco non funziona, è possibile provare questi suggerimenti:
- Un piccolo numero di giochi non funziona con il C-BIOS open source. In questo caso avresti bisogno di un vero BIOS
msx.rom
. Puoi configurarlo in Game Options. - La maggior parte dei giochi da 64K utilizza il mappatore di memoria ASC16, quindi puoi provare quello… ma alcuni (ad esempio Mutants from the Deep) sono mappati in modo lineare da 0-64K e dovrai selezionare LINEAR64 in Game Options.
- Il rilevamento automatico sui mapper KONAMI8 e KONAMI-SCC è abbastanza buono… ma molti altri giochi che usano ASCII8 o ASCII16 non vengono rilevati bene: dovresti provare quei mapper se il gioco “più grande di 64K” non funziona.
- Alcuni dei giochi davvero grandi (128K o più grandi) funzionano lentamente: se non ottieni il frame rate completo, puoi provare a passare al core DrZ80 (non tutti i giochi funzioneranno con questo) e/o puoi disabilitare la sincronizzazione verticale e/o abilitare Frame Skip. Ti consigliamo di disattivare la sincronizzazione verticale almeno per ottenere la massima velocità dai giochi MSX di grandi dimensioni.
- Occasionalmente una ROM non verrà eseguita, ma potrebbe essere un dump alternativo. Ad esempio, la versione 384K di R-Type è un po’ un pasticcio da gestire per l’emulatore, ma qualcuno ha creato una versione 512K pulita che si carica e funziona alla grande.
- Con un po’ di diligenza nel provare diverse combinazioni di mappatura/BIOS, dovresti essere in grado di ottenere una percentuale di esecuzione del 97% sui giochi MSX1.
- I giochi MSX2 non sono supportati e non verranno eseguiti.
La memoria MSX è strutturata come segue:
SLOT0: MSX BIOS (first 32K)
SLOT1: Cartridge Slot
SLOT2: Empty (0xFF)
SLOT3: RAM (64K)
Controller
Se si preferisce è possibile mappare i pulsanti sui controller P1 o P2, è inoltre disponibile il supporto completo per Spinner X (P1) e Spinner Y (P2) o mappare entrambi per ottenere supporto per i giochi di trackball.
Funzionano anche per giochi come Turbo Steering, è possibile modificare la sensibilità dello spinner su una delle cinque diverse impostazioni (Normal, Fast, Fastest, Slow, Slowest).
Per l’emulazione MSX, la tastiera ColecoVision è mappata come segue:
1 2 3
4 5 STOP
M1 M2 M3
SPC 0 RET
Dovrebbe essere sufficiente per far funzionare la maggior parte dei giochi da carrelli MSX1… In Game Options è possibile sostituire anche il tasto “5” per essere mappato in qualsiasi altro tasto MSX.
Blend Mode (DSi)
La modifica più interessante la troviamo nella nuova “modalità blend” proveniente dall’emulatore StellaDS. In questa modalità, due fotogrammi vengono fusi insieme, utile quando si eseguono giochi come Space Fury o Galaxian dove i proiettili sullo schermo sono larghi appena 1 pixel.
Questi giochi sono stati progettati per funzionare su di un vecchio televisore a tubo catodico con fosforo che decade lentamente in modo che l’occhio possa vedere lievi tracce mentre l’immagine svanisce.
Su console DSi l’utilizzo di questa nuova modalità renderà questo tipo di giochi davvero luminosi e visibili.
Il DSi XL/LL ha un refresh più lento sul display LCD e si avvicina di più ai vecchi televisori a valvole… quindi la modalità blend non è necessaria per i modelli XL/LL.
Tuttavia, l’utilizzo della modalità blend ha un costo della CPU del 25%. Il DSi può gestirlo, mentre il DS-LITE/PHAT potrebbe avere difficoltà con i giochi più complicati.
Quindi la mia raccomandazione è la seguente:
- DSi non XL/LL – Utilizzare la modalità Blend per i giochi che ne traggono vantaggio (Space Fury, Galaxian, ecc..).
- DSi XL/LL – Non preoccuparti… il decadimento dello schermo XL/LL è più lento e i giochi sembrano fantastici così com’è.
- DS-LITE/PHAT – Puoi provarlo ma il framerate potrebbe scendere sotto i 60 in alcuni giochi.
Per abilitare questa nuova modalità blend, scegliere il gioco e andare nel sottomenu “Game Options” per attivarlo.
Vertical Sync
La sincronizzazione verticale forzerà l’aggiornamento (aggiornamento) dello schermo quando il DS va nello spazio vuoto verticale. Ciò riduce lo strappo e gli artefatti grafici minori, ma ha anche un costo in termini di velocità.
Il DSi può gestirlo per quasi tutti i giochi (Princess Quest è un gioco in cui potresti disattivarlo) ma il DS può gestirlo solo per i giochi più semplici. Quindi per impostazione predefinita è abilitato per DSi e disabilitato per DS-LITE/PHAT. Puoi attivarlo nelle “Game Options” (e START=SALVA come desideri).
Una storia di due core
ColecoDS supporta 2 diversi core della CPU Z80. DrZ80 è molto veloce ma non è accurato al 100%, quindi alcuni giochi non funzionano correttamente. CZ80 è il 10% più lento ma è molto più vicino al 100% di precisione e i giochi generalmente funzionano alla grande.
Per DSi e versioni successive, il core CZ80 è l’impostazione predefinita. Per DS-LITE/PHAT, il core DrZ80 è l’impostazione predefinita.
Puoi attivare questa opzione (e salvare in base al gioco) in GAME OPTIONS. Se vuoi utilizzare il core CZ80 ma hai bisogno di un po’ più di velocità per rendere i giochi giocabili, puoi anche giocare con le impostazioni di Vertical Sync e Frame Skip.
Il bisogno di velocità
Se un gioco non funziona alla giusta velocità o ha periodi di rallentamento (non attribuiti al gioco reale), ecco le cose che puoi provare nell’ordine in cui le proverei personalmente:
- Disattivare Vertical Sync.
- Attivare Frame Skip.
- Settare Max Sprites su 4.
- Passare al core della CPU veloce DrZ80.
Changelog
- Aumento della gamma dinamica della frequenza del rumore AY: migliora i suoni MSX e CV-SGM.
- Aumento della gamma dinamica della frequenza del tono AY – migliora i suoni MSX e CV-SGM.
- La mappatura della croce direzionale diagonale ora è disponibile su SG-1000.
- Altre piccole pulizie secondo il tempo consentito.
Download: ColecoDS Phoenix-Edition v6.2
Download: cbios.txt
Download: Source code ColecoDS Phoenix-Edition v6.2
Fonte: gbatemp.net