![](https://retrofixer.it/wp-content/uploads/2022/04/MiSTer-768x480.png)
Cos'è il MiSTer?
![](https://retrofixer.it/wp-content/uploads/2022/05/mario-block-150x150.png)
Cos'è il MiSTer?
Diciamo che il MiSTer è, in linea teorica, il “riassunto” di quanto di meglio possa offrire oggi l’emulazione; dico in linea teorica perché tutto dipende dalla conoscenza dell’hardware reale che va ad emulare. Ma andiamo un pochino più nel dettaglio.
FPGA sta per field-programmable gate array, un tipo di circuito integrato che può essere riconfigurato dopo la produzione.
A differenza di un tradizionale chip per computer, gli FPGA utilizzano blocchi logici programmabili ed interconnessioni che possono essere riconfigurati per adattarsi ad una varietà di scopi diversi. In sostanza, un FPGA può essere riprogrammato più e più volte per agire come qualsiasi tipo di circuito digitale. Mentre i vecchi FPGA utilizzavano schemi circuitali, quelli nuovi utilizzano invece la programmazione basata su testo per descrivere il comportamento.
Questo ovviamente è possibile solamente se si conosce a fondo come il chip lavori a livello hardware, cosa che ultimamente sta diventando molto dettagliata soprattutto per i chip proprietari grazie al gran lavoro di decapping e successive analisi e ricostruzioni circuitali partendo dalle fotografie al microscopio che alcuni devs (come il francese Furrtek) stanno portando avanti. Una volta compreso lo schema questo viene tradotto in HDL (Hardware Description Language), che nel MiSTer diventa un “core”, permettendo così all’FPGA di emulare come se fosse il vero hardware.
In questo modo, se la riproduzione del chip è corretta al 100%, si avrà una strettissima vicinanza con la macchina reale visto che l’emulazione stavolta è effettuata ad un livello più “basso”, quello hardware, permettendo dunque un lavoro delle varie componenti della scheda madre originale emulate in parallelo (quindi avremo anche gli stessi bugs presenti nelle macchine originali!) senza eventuali rallentamenti, lags o altre problematiche intrinseche degli emulatori software che per definizione devono ovviare in qualche modo all’impossibilità di far lavorare il software in parallelo..
PROGRAMMIAMO IL DE10-nano
Questo gioiellino rappresenta il (costoso!) cuore del dispositivo ! E’ purtroppo possibile utilizzare soltanto questa scheda per avere tutte le funzioni disponibili create dalla comunità di sviluppatori.
Acquistando il kit di sviluppo (che è scontato di circa il 25-30% se dimostrate di essere studenti o professori universitari!) sarete già pronti per installare i dati su microSD e configurare il dispositivo anche in assenza degli accessori !
TOOLS NECESSARI
- Win32 Disk Imager o qualunque altro tool in grado di “spalmare” l’immagine di una SD (balenaEtcher, dd, ecc)
- microSD (anche quella originale del de10-nano) con capienza di almeno 4GB
- L’ultima versione dell’immagine SD di Mr. Fusion scaricabile da qui: https://github.com/MiSTer-devel/mr-fusion/releases
- Un HUB USB
- Una tastiera USB
Dopodiché:
Backuppare la microSD in dotazione al de10-nano utilizzando Win32 Disk Imager (non necessario ma contiene il software/firmware originale ed è sempre bene averne una copia anche se inutile per il MiSTer)
2) Estrarre e flashare l’ultima versione dell’immagine SD di Mr. Fusion nella microSD
3) inserire la microSD nel de10-nano ed avviarlo
4) dopo pochi secondi si accenderà il LED arancione e, se avete collegato anche il cavo HDMI, a schermo apparirà una schermata blu seguita da uno splash screen:
5) Ora collegate la tastiera USB ed andate alla voce “Scripts” (se non vede il menu premete F12 per farlo comparire) e confermate al messaggio di rischio che apparirà;
6a) Se avete una chiavetta USB WiFi scegliere lo script chiamato “wifi” per configurare la vostra rete (se avete il cavo LAN non è necessario);
6b) Andate ora su “Scripts” -> Yes -> downloader per avviare la procedura; vedrete scaricare, verificare ed installare una marea di files e questo potrebbe durare anche 25-30 minuti !
Se tutto è configurato correttamente alla fine il sistema si riavvierà, apparirà il menu ed avrete nuovi cores aggiornati cosi come il menu e l’eseguibile principale del MiSTer (insieme ad una marea di nuovi scripts a disposizione):
![](https://retrofixer.it/wp-content/uploads/2022/04/mister_pic3.jpg)
7) Ora scaricate da qui lo script update_all.sh e copiatelo all’interno della cartella \scripts della microSD interna; reinserite la microSD nel MiSTer ed avviatelo; vi verrà chiesto se proseguire con l’esecuzione dello script (tasto DOWN) o se modificare le impostazioni (tasto UP): premete dunque UP; a questo punto verrà proposta una serie di opzioni da abilitare/disabilitare; per comodità impostate come segue ed avviate il tutto:
![](https://retrofixer.it/wp-content/uploads/2023/01/uall.jpg)
Il sistema si riavvierà ed avrete tutto aggiornato con tanto di ROMs per i cores arcade, per gli altri sistemi dovrete trovarle da soli.
COMPONENTI PER COSTRUIRLO (necessari e non)
Necessario:
Terasic DE-10 Nano FPGA board Development Kit (include alimentatore, cavo mini e microUSB + microSD da 8GB)
Opzionale :
I/O Board : utile per l’uscita VGA/RGB e i tasti
Hub USB : molto utile per connettere varie periferiche
SDRAM : necessaria per far girare diversi core
RTC : mantiene la data e l’ora
- MiSTer SDRAM Extra Slim Board (da 32 a128MB a seconda delle necessità):
Qui per vedere quali cores consoles la richiedono, qui per i cores computer. - Scheda Hub USB 7 porte dedicata (se ne avete già uno autoalimentato potete usare quello sulla porta microUSB)
- Adattatore microUSB per alimentare anche la schedina USB 7 porte (se non la utilizzerete non servirà)
- Scheda I/O con uscita video VGA, audio, 3 tasti, 3 led di stato, slot microSD aggiuntivo (oltre quello già presente nel de10-nano), porta alimentazione simile USB 3.0 (ma non utilizzabile come USB) e connettore ventola.
- Ventolina (se non inclusa nella board I/O)
- Schedina RTC (non necessaria se si utilizza una connessione di rete)
- Cavetto sdoppiatore alimentazione (per alimentare la scheda I/O e il DE-10 contemporaneamente)
- Cavo HDMI
- Tastiera USB
- Chiavetta WIFI (opzionale, potete tranquillamente utilizzare un cavo di rete in alternativa – funziona anche da RTC se connessa alla rete internet)
- Adattatore Bluetooth (necessario se volete un controller wireless, qui un elenco con le varie latenze riscontrate – funzionano benissimo anche i controllers USB ma il dispositivo è piccolino e piuttosto leggero quindi rischiate di fare danni avendo collegato un controller con il filo)
Come si può vedere le parti necessarie per costruirselo da soli sono diverse e questo è l’unico modo per evitare di pagarlo troppo ! Prima della carenza di microchip dovuti al covid19 si poteva acquistare pre-costruito e già programmato per circa 300-350€, ora con tale cifra oggi riusciamo a farcelo per conto nostro.
Dobbiamo infatti spendere dai 180€ ai 210€ per il de10-nano (sul sito ufficiale Terasic) ed altri 85-90€ per gli accessori (prendendoli in maniera molto oculata su AliExpress).
Alcuni di voi diranno che è una cifra assurda ed in parte lo condivido è però anche vero che per una spesa “una tantum” si hanno quasi tutte le macchine a disposizione (anche i vecchi computers e numerosi arcades!) a portata di mano !
Se volete leggere ulteriori informazioni riguardanti il funzionamento delle macchine reali ed i loro rapporti con il mondo dell’emulazione potete leggere questo articolo e la intro di quest’ altro articolo.
Quanti giga vi occorrono ? Date uno sguardo a questo articolo.
Tasti utili
F1 – cambia il background ciclicamente con le modalità predefinite (static, wallpaper, color bars, black).
F9 – Avvia la shell Linux (login:pwd = root:1 – F12 per tornare al menù).
F11 – Menu pairing Bluetooth.
F12 – Premendolo si passa dal menù principale al menu dei cores
Left Ctrl + Left Alt + Right Alt – corrisponde alla pressione del tasto “USER” nella I/O board che di solito effettua un reset del core in cui ci si trova.
Left Shift + Left Ctrl + Left Alt + Right Alt – effettua un reboot rapido del MiSTer.
Windows + Left Shift + Print Screen – Salva uno screenshot (i files di screenshot creati vengono salvati in una cartella \screenshot sulla partizione FAT della scheda SD); questa cartella conterrà quindi sottocartelle che prendranno il nome dal core corrispondente in cui è stata acquisita una schermata; il formato di salvataggio è il PNG.
Principali icone
![](https://retrofixer.it/wp-content/uploads/2022/04/mister_pic4.jpg)
![](https://retrofixer.it/icon/de_net.png)
![](https://retrofixer.it/icon/de_wifi.png)
![](https://retrofixer.it/icon/de_bt.png)
La presenza (o meno) del modulo SDRAM è indicata così:
![](https://retrofixer.it/icon/de_sram0.png)
![](https://retrofixer.it/icon/de_sram1.png)
![](https://retrofixer.it/icon/de_sram2.png)
![](https://retrofixer.it/icon/de_sram3.png)
TIPS
Il MiSTer, da quello che abbiamo potuto vedere, cerca da solo le ROMs in base alle estensioni dei files, in ogni caso è bene avere una struttura organizzata e quella di base (della microSD interna) è quella di avere la cartella:
root:\games\
dentro la quale abbiamo le cartelle specifiche per ogni core e cioè root:\games\NomeSistema\
come nell’immagine sottostante:
dentro le quali inserire le rispettive ROMs (le ROMs arcade vanno nella cartella root:\games\mame o root:\games\hbmame).
Quindi potete ricreare questa struttura sia su un dispositivo USB, copiare i files, inserire la chiavetta, accendere il MiSTer, caricare il core e dal suo menu caricare le ROMs !
CONFIGURARE UN JOYPAD BLUETOOTH
I pad USB funzionano non appena collegati; per quelli bluetooth è necessario avere un dongle USB che ne permetta il funzionamento. Io ho utilizzato l’ ASUS modello USB-BT21 (lo stesso usato per effettuare la softmod sulla Wii Mini !) ed ha funzionato benissimo. Potete leggere l’estesissima lista di prodotti testati con relativi tempi di latenza e ranking qui.
La procedura è sostanzialmente la stessa per quasi tutti i dispositivi e cioè:
– Andare su “Scripts” Yes bluetooth_pair entro 60 secondi premere sul pad il tasto (o la combinazione di tasti) per farlo andare in pairing mode (es per il pad della PS4 i tasti da premere sono PS + SHARE finchè non viene riconsociuto dal MiSTer).
Per alcuni joypads la procedura è invece specifica come ad esempio per quello PS3:
1 – Collegare il pad tramite USB al MiSTer.
2 – Premere il pulsante PS button ed attendere che i LED rossi smettano di lampeggiare (pochissimi secondi) e ne rimane acceso soltanto uno.
3 – Scollegare il pad – le luci ricominceranno a lampeggiare finchè non si collegherà e rimarrà acceso soltanto 1 LED.
4 – Una volta connesso il pad si va sul menu con F12, opzione “Define joystick buttons” dove si avràla possibilità di mappare tutti i pulsanti (verrà chiesto di mappare anche i “pulsanti” relativi al movimento, al click del mouse ed il tasto per evocare il menu di sistema).
AVVIARE UN CORE E RELATIVO GIOCO
Per avviare i giochi si deve prima avviare uno specifico core dall’apposito menu di selezione che appare appena avviate il MiSTer (suddiviso in Arcade, Computers, Consoles, Others, ecc).
Una volta avviato il core dal menu utilizzate la prima voce “Load…” per scegliere la ROM (se il menu non appare in automatico premete F12 o il relativo tasto del pad che avete configurato). Prima di caricarla potete trafficare con le varie impostazione a disposizione (audio, video, cheats, ecc). Ricordate che si potranno avviare SOLTANTO i giochi del sistema caricato (es. se avviate il core Genesis scordatevi di poter avviare da qui ad esempio titoli NES).
Per uscire dal core e selezionarne un altro andate nella schermata che si trova tutta a destra nel menu ed utilizzate la voce “Core”.
Per riavviare il sistema: sempre dalla schermata dei menu che si trova tutta a destra selezionate l’ultima opzione “Reboot (hold cold reboot)”; in alternativa potete premere sulla tastiera, se è ancora collegata, la combo Left Shift + Left Ctrl + Left Alt + Right Alt; questo reboot “warm” impiegherà circa 2 secondi. Tenendo invece premuto per pochi secondi sulla voce “Reboot (hold cold reboot)” il sistema si riavvierà totalmente ed impiegherà circa 7 secondi.
NON E’POSSIBILE SPEGNERE IL DISPOSITIVO, per farlo dovete togliere la corrente nel modo che preferite !
COME MONTARE IL MiSTer FPGA !
Partiamo da questi componenti dicendo che NON ci saranno saldature da fare:
Come potete vedere la scheda di espansione USB, rispetto a quella mostrata più sopra, ha ben 9 porte anziché 7;
1 di queste [PWR1], è utilizzata per l’alimentazione;
nel kit mostrato in foto è infatti differente anche il cavetto sdoppiatore in quanto ha un barrel jack ed un USB (anziché 2 barrel jack come quello della foto più in alto);
questo è dovuto al fatto che esistono diverse versioni di queste schede di espansione USB, scegliete quella che vi piace di più e, se la prendete a parte, assicuratevi di comprare anche il cavetto sdoppiatore ed il corrispondente connettore USB per far passare i dati (vedi oltre).
![](https://retrofixer.it/wp-content/uploads/2022/05/Mister_mnt11.jpg)
![](https://retrofixer.it/wp-content/uploads/2022/05/Mister_mnt12.jpg)
IL VOSTRO MiSTer E' FINALMENTE PRONTO !!!!
Vogliamo un case per il nostro MiSTer ?
Iniziamo con il dire che di solito il case è fornito con un MiSTer già precostruito ma, al bisogno, possiamo creacene uno da soli. Il problema sta tutto nella versione di hub USB che andremo ad utilizzare; attualmente infatti i case che si possono acquistare separatamente sono sviluppati per una revisione dell’hub inferiore all’ultima attualmente disponibile (che è la 2.1 e che è quella che potete vedere nell’articolo) quindi la disposizione dei fori laterali potrebbe non corrispondere.
Noi di retrofixer ne abbiamo sviluppata una con il nostro logo che si adatta perfettamente (o quasi!) alla revisione hub USB 2.1 assieme alla revisione della scheda I/O 6.1 (sempre quella descritta in questo articolo):
![](https://retrofixer.it/wp-content/uploads/2023/01/fpbOQwc-1024x703.jpg)
Per utilizzare questo case abbiamo utilizzato questa base applicando alcune modifiche ai fori ed il montaggio finale differisce, rispetto a quello descritto in precedenza, nell’utilizzo dei separatori che collegano insieme le 3 schede. Abbiamo infatti utilizzato i distanziatori e relative viti che potete vedere qui di fianco. Si trovano sia in plastica che in ottone, l’importante è che la misura sia M3 e che le lunghezze in millimetri corrispondano a quelle delle immagine.
![](https://retrofixer.it/wp-content/uploads/2023/01/MnN5DJc.jpg)
![](https://retrofixer.it/wp-content/uploads/2023/01/RDmTa8P-887x1024.jpg)
Il risultato finale è quello a lato.
Che “esploso” in modo completo (e cioè con le piastre del case già montate) risulta come quello a lato.
![](https://retrofixer.it/wp-content/uploads/2023/01/YDw0VZ2.png)
![](https://retrofixer.it/wp-content/uploads/2023/01/7UyyJHE.jpg)
Per una soluzione finale di questo tipo.
Ora, l’unica modifica da fare rimasta è quella di distanziare i 2 connettori maschio USB che permettono il passaggio dei dati tra il de10-nano e l’hub USB; per farlo si deve dissaldare il connettore che si infila nella porta microUSB del de10-nano e risaldarlo sulle piazzole già presenti leggermente più in alto nel suo piccolo PCB (si, questo aggeggino è stato evidentemente studiato anche per questa soluzione). Nell’immagine potete vedere le differenze di distanza tra le 2 versioni:
![](https://retrofixer.it/wp-content/uploads/2023/01/uGChlzp.png)
F.A.Q.
SDRAM si o SDRAM no ?
La maggior parte dei cores NON richiede l’espansione SDRAM.
32MB sono richiesti da alcuni titoli GBA (ma non necessari in quanto il MiSTer può prendere i MB mancanti dalla DDR3 del de-10 nano però con potenziale scapito della resa emulativa che è lo scopo del MiSTer quindi tanto vale prendere il modulo con più di 32MB) mentre 128MB sono richiesti da alcuni titoli Neo Geo. 64MB è una configurazione possibile ma poco utilizzata.
Vi mancano i BIOS ?
Andate qui, scaricate lo script “update_all.sh”, copiatelo nella cartella degli script della microSD ed avviatelo; all’avvio vi verrà chiesto se proseguire con l’update o configurare lo script: configuratelo ed accertatevi che la voce relativa d i BIOS si “enbled” !
E’un casino trovare le ROMs di MAME e HBMAME ?
Qui gli scripts che fanno per voi ! E’ obbligatorio avere già installato i cores .mra dei titoli/piattaforme arcade che desiderate (es cps1/cps2) perché gli scripts analizzano quelli per andare a pescare i relativi dati di gioco.
Se volete dei bellissimi wallpaper in background scaricate ed eseguite i files di questo script; scaricherà per voi delle fantastiche immagini che vedrete cambiare ad ogni reset (anche rapido) del MiSTer; per farlo, una volta avviato, premete F1 finché non vedrete il primo wallpaper; a questo punto ad ogni riavvio lo sfondo cambierà (NON tentate di scorrerli premendo F1, non funzionerà !).
Il formato .zip è utilizzato da diversi cores ma controllate la dimensione del cluster della formattazione che utilizzate nella periferica USB di memoria: se la dimensione è “grande” ed avete tanti files delle dimensioni INFERIORI a quella della dimensione del cluster (es. molto materiale per C64) allora NON CONVIENE zippare; in alcuni casi il formatto zippato non funziona come ad esempio con le immagini dei CD; per queste ultime diversi cores (es. PSX, SegaCD, PC Engine CD) supportano il formato CHD del MAME che potete trovare all’interno della sua vastissima SoftwareList !
Se utilizzate invece files in formato immagine (ISO, CHD, ecc) il file .zip DEVE risiedere all’interno della cartella dove è presente l’immagine del disco.
SOG = Sync on Green – Questo interruttore controlla se i segnali di sincronizzazione sono inseriti all’interno del canale del colore verde (alcuni CRT meno recenti utilizzavano il sync-on-green). Se impostato su Auto è il core a decidere se utilizzarlo, ma si può forzare l’impostazione settandolo su OVR.
![[IMG]](https://i.imgur.com/gD5DoWF.png)
in questo caso consigliano di rimuovere C6 al di sotto dello switch in questione:
![[IMG]](https://i.imgur.com/eJ6X92I.png)
Consigliate qualche periferica in particolare ?
Diciamo che per tenere tutto piuttosto compatto e poco “sporgente” sarebbe buona cosa optare per periferiche USB molto contenute. Di seguito quelle testate e funzionanti senza dover installare nulla; da sinistra a destra abbiamo:
MODULO WiFi – HomeSpot 150Mbps Wireless N WiFi USB Nano Adapter [VID:PID = 0BDA:8176 = Realtek RTL8188CU]
LETTORE uSD – Realtek Card Reader [VID:PID = 0BDA:0136]
MODULO BLUETOOTH – ASUS USB-BT21 [VID:PID = 0B05:1715]
Notare in particolare come il lettore uSD sia costruito in modo tale da inserire la schedina dalla parte opposta del “foro” per il connettore USB femmina limitando al minimo lo spazio occupato:
Ricordate infine che le periferiche bluetooth hanno specifiche di funzionamento ben definite quindi verificate che versione bluetooth è necessaria per far funzionare il dispositivo (es. controller) che volete connettere e controllate che la chiavetta bluetooth connessa al MiSTer corrisponda. Ad esempio per far riconoscere il controller Switch server un dongle versione 3.0, per un controller Stadia serve un dongle bluetooth versione 4.2 mentre per il controller Luna serve un bluetooth 5.0.
Di seguito un modello che supporta contemporaneamente il WiFi 2.4/5GHz ed il Bluetooth 5.0 in un unica chiavetta testato e funzionante:
Realtek [VID:PID = 0BDA:C820]
![[IMG]](https://i.imgur.com/SLVN7yC.jpg)
Dato che tagliare non è però molto carino e noi amiamo soluzioni più “eleganti” abbiamo scelto un adattatore che disconnette tale pin semplicemente interponendosi tra il cavo e la femmina HDMI DEL MONITOR (NON del MiSTer!!). Se lo cercate online ha nomi del tipo “NO CEC HDMI / NON CEC / MENO CEC”. Quello utilizzato con successo nei nostri test è questo:
![](https://i.imgur.com/gWluYjf.jpg)
![](https://www.reboot.ms/forum/styles/default/xenforo/clear.png)
NOTA: quando il parametro vga_scaler è impostato al valore 0, la porta VGA della I/O board fa uscire il segnale originale 240p per la maggior parte dei cores, il vecchio standard per le televisioni a 15khz. Molti monitor LCD potrebbero non riconoscerlo perchè al di sotto del minimo standard della VGA su CRT (480p/31khz); per questo motivo se il segnale non viene mostrato con collegamento VGA il parametro vga_scaler va impsotato ad 1, così da avere una uscita come quella della porta HDMI port (720p se si utilizza in congiunzione al parametro video_mode=0).
![[IMG]](https://i.imgur.com/eJwV8CL.jpg)
![](https://i.imgur.com/Tu5wfa3.jpg)
![](https://www.reboot.ms/forum/styles/default/xenforo/clear.png)
![[IMG]](https://i.imgur.com/SB8FWRe.png)
vga_scaler=0
Consigliate qualche monitor in particolare ?
Di recente, grazie alla soffiata da parte di Bisboch, sono incappato in un bellissimo display Retina LCD ricondizionato direttamente incastonato all’interno di un frame:
Come potete vedere è disponibile in 2 versioni: con VGA, 1 HDMI e senza microUSB oppure con 2 miniHDMI senza VGA ma con una comodissima porta microUSB dalla quale poterlo direttamente alimentare !!!
Le specifiche del prodotto (che potete dunque realizzare anche da soli):
– LCD LG LP097QX1 (oppure SAMSUNG LTN097QL01) – 9.7″ – 2048X1536 – QXGA (4:3) 264PPI – 3MegaPixel [entrambi i modelli sembrano essere identici nelle specifiche nonostante i diversi produttori]
– Driver board: VS-RTD09703-V1 (o almeno finora questo è stato trovato all’interno quindi non si garantisce che nel tempo non cambino board !)
– Spessore delle 2 versioni: 13mm (modello senza VGA) e 22mm (modello con VGA)
(possibilità di aggiungere un pannello esterno per renderlo anche touchscreen)
La cosa stupenda è che, scegliendo la versione con possibilità di alimentazione via microUSB e con un power bank che eroghi almeno 3A, potrete alimentare sia il MiSTer (di base richiede circa 1.3A) che il display (che consuma circa 1.04A):
rendendo il tutto assolutamente “portable” !
Il display è anche dotato di 2 speaker all’interno:
Nel thread dedicato consigliano di abbinarlo ad un cavo miniHDMI di buona fattura, quello in dotazione potrebbe non raggiungere la risoluzione massima descritta nelle specifiche del pannello LCD.
Link al prodotto: https://it.aliexpress.com/item/1005001689746001.html
Posso cambiare risoluzione senza editare il file Mister.ini ?
Si, usando lo script chiamato “ini settings”, alla voce “video_mode” (che di solito è la prima) è possibile cambiare risoluzione senza dover estrarre la scheda microSD.
Varie/Backup
Se volete tornare alla SD originaria del MiSTer come fornita dalla Terasic, qui trovate un dump della microSD originale
L’immagine (.img) è stata compressa in rar.
Potete scaricare gratuitamente 7-Zip per aprire anche questo formato, mentre per la scrittura sulla SD potete usare BalenaEtcher