Un MIST-ico Amiga

Diciamolo pure: noi appassionati di vecchi computer abbiamo un problema ineludibile, che prima o poi si presenterà. Il tempo passa, e le cose si rompono per usura: possiamo sostituire i pezzi guasti, ma si tratta sempre di oggetti che non vengono più prodotti. Una soluzione “soft” è costituita dagli emulatori software: possiamo così conservare “al sicuro” (fino a un certo punto: il tempo passa anche per gli oggetti lasciati a riposo) le nostre preziose vecchie macchine e usare moderni PC che le emulino. Ovviamente però si perde tutto il “feel”, tutto il gusto di lavorare con la vera macchina, essendo quanto mai evidente che trattasi sempre di una “finta”.

C’è una possibilità intermedia tra l’uso delle vecchie macchine e qualcosa di più nuovo: l’emulazione hardware. Ciò è reso possibile dalla tecnologia FPGA (Field Programmable Gate Array): si tratta di circuiti integrati le cui funzionalità sono programmabili via software. In sostanza all’avvio di una macchina dotata di integrati FPGA, vengono in essi “iniettate” delle istruzioni che fanno (ad esempio) comportare l’integrato come uno già esistente e del quale si vogliono riprodurre le funzionalità. All’esterno i segnali che entrano ed escono sono esattamente quelli dell’integrato preso come riferimento (a patto di aver programmato correttamente l’FPGA).

Per la gioia degli amanti di Amiga, il sito Lotharek produce e vende proprio una replica in FPGA di Amiga chiamata MIST (in realtà riproduce il funzionamento anche di altri sistemi come Atari ST, ma lo sviluppo di Amiga è quello al momento più avanti) che usa schede SD formattate FAT32 come memoria di massa. Molto incuriosito da questo progetto, ho deciso di acquistare il MIST e di provarlo. Il costo è di circa 200 € e dopo le prove che ho fatto, che sto per descrivere, penso che ne sia valsa la pena.

Aspetto esteriore

Il MIST si presenta con un design molto spartano e allo stesso tempo pulito. Pur essendo infatti un prodotto artigianale è di ottima fattura: la scheda viene fornita in un robusto e pratico case in metallo, di dimensioni 16 x 4 x 9 cm. Ecco come si presenta dai 4 lati:

Lato anteriore:

  • Led: (1) power del MIST, (2) power di Amiga, (3) spia di lettura da SD
  • Slot per la scheda SD
  • Tasti: (1) reset del MIST, (2) menu del firmware, (3) tasto programmabile da firmware

MIST - lato anteriore

Lato destro:

  • Porte joystick compatibili ATARI/Commodore o Mouse Amiga

MIST lato destro - porte joystick standard ATARI

Lato posteriore:

  • Interruttore power ON/OFF
  • Alimentazione 5V 300mA – microUSB compatibile con caricabatterie cellulari
  • 4 USB port compatibili con : mousetastierajoystick. Al momento non sono supportate memorie di massa come le chiavette USB
  • Uscita audio stereo mini-jack 3,5 mm
  • Uscita VGA standard 31 kHz, configurabile a 15 kHz per compatibilità con monitor/TV con presa SCART

MIST lato posteriore

Lato sinistro – solo modello con porta MIDI –

La scheda MIST include una sorta di slot di espansione, attraverso cui connettere periferiche. Al momento l’unica estensione disponibile per l’acquisto (qui il link1 e link2) è la schedina con le porte MIDI.

  • Porte MIDI – nel modello base non ci sono

left-midi

Collegamento periferiche

Tastiera e mouse

Procuriamoci anzitutto una tastiera e un mouse USB. È consigliabile una tastiera estesa, che comprende quindi il tastierino numerico (o keypad). Infatti in seguito in fase di configurazione sarà comodo utilizzare i tasti “ENTER” e “-” del keypad per aggiungere/rimuovere floppy drive virtuali. Vanno bene anche tastiere e mouse bluetooth purché utilizzino un ricevitore USB e il protocollo HID. Personalmente consiglio tastiere e mouse economici e “wired”, che non hanno sicuramente problemi.
Dal firmware ver. ATH160619 è possibile utilizzare mouse Amiga (in una sola delle due porte). Le porte laterali sono per joystick Atari.

Joystick

MIST è compatibile al 100% con i joystick Commodore e Atari, per cui è possibile collegare sulle prese laterali DB9 fino a due joystick di tale tipo.

MIST è anche compatibile con joystick USB che siano però “semplici”, quindi che si limitino alle 4 direzioni e con uno o più bottoni. I joystick economici di tipo “remake dei classici” che si trovano su Amazon non dovrebbero avere problemi.

A questo link trovate un elenco dei joypad USB compatibili.

Joystick Mapping: Il core Amiga riconosce la presenza di un mouse (USB) e fa in modo che quando il mouse è collegato, questo risulti sulla “porta 1” di Amiga, e mappa il joystick eventualmente connesso sulla “porta 2”. Nel momento in cui si connettono due Joystick, il MIST mappa questi sulle due porte ed esclude automaticamente il mouse. Più facile a dirsi che a farsi, questo meccanismo è spiegato per esteso nelle istruzioni, a questo link.

Monitor

Usando MIST con il core Amiga è possibile sia utilizzare l’uscita standard VGA “as-is”, sia utilizzare un cavo adattatore per collegarlo a un classico monitor/TV SCART. In seguito le (semplici) istruzioni per configurare l’uscita come SCART. Per il collegamento con un tale monitor il cavo è acquistabile anche da Lotharek (clicca qui), o in alternativa potete costruirvelo da soli, non è nulla di complicato.

Configurazione – parte 1

Vediamo come configurare velocemente una MIST per funzionare come un Amiga. Procuriamoci una SD formattata in FAT32 (e tenendo ben presente che la dimensione massima di un file su questo filesystem è di 4GB: è importante se vogliamo creare file immagine di hard disk). In seguito procuriamoci i seguenti file:

  • Core MIST per Amiga, abbiamo al momento tre possibilità:
    1. Core Minimig – dal github di MIST
    2. Core MinimigAGA – dal github di MIST
    3. Core MinimigAGA – dal sito di SoMuchGuru

    Personalmente consiglio il terzo (la versione di SoMuchGuru) in quanto al momento è il più recente e aggiornato. Una volta scaricato il file con estensione .rbf rinominatelo in core.rbf e copiatelo nella root della scheda SD.

  • Kickstart di Amiga. Essendo materiale protetto da copyright non metterò un link, potete procurarvelo ad esempio comprandolo da Cloanto. Rinominate il file in kick.rom e copiatelo nella root della scheda SD
  • Files ADF, cioè file immagine dei vostri dischetti preferiti, da inserire un po’ dove volete nella SD, magari creando cartelle e sotto-cartelle.
  • (opzionale) mist.ini: a questo punto bisogna solo capire se utilizzate un monitor VGA o un TV/monitor con presa SCART. Se usate un VGA, la SD è bella e pronta. Se invece usate un monitor SCART rimane solo da creare un semplice file di testo chiamato mist.ini da inserire nella root della SD, e contenente le seguenti due righe:
    [mist]
    scandoubler_disable=1

A questo punto la scheda SD è pronta per essere inserita nel MIST: quindi accendete la macchina e vi ritroverete di fronte alla familiare schermata del kickstart, in attesa dell’inserimento di un floppy. La configurazione “esterna al MIST” è terminata, ora resta la configurazione “on the road”, per inserire ed estrarre i dischetti virtuali ADF, per impostare la memoria a disposizione, eccetera.

Configurazione – parte 2

A questo punto, con la MIST in attesa di un floppy possiamo accedere al menu del firmware (detto “menu OSD – On Screen Display”) in tre modi:

  • premendo F12 sulla tastiera
  • premendo “option” sulla tastiera
  • premendo il tasto centrale del pannello frontale del MIST

Compare un menu scorribile con i tasti cursore UP e DOWN, da cui è possibile uscire premendo il tasto ESC, e nel frattempo l’elaborazione “sotto” continua. Nella prima schermata che ci si presenta è possibile inserire ed estrarre file ADF dagli (inzialmente) due drive DF0 e DF1 disponibili. Per aggiungere un drive, premere il tasto “ENTER” del keypad. Per rimuovere un drive, premere “-” dal keypad.

Muovendosi con i tasti cursore a destra e a sinistra è possibile accedere ad altri tipi di configurazione. In generale è possibile:

  • Cambiare il kickstart indicando un altro file .ROM
  • Cambiare il tipo di processore, tra: 68000, 68010 e 68020
  • Cambiare la quantità di ChipRAM, FastRAM e SlowRAM. I rispettivi valori massimi sono:
    • Chip RAM: 2 MB
    • Fast RAM: 24 MB
    • Slow RAM: 1.5 MB
  • Attivare o disattivare l’interfaccia IDE (del tipo della A600) per gli hard disk. Vengono supportati i file immagine HDF
  • Salvare e caricare fino a 5 “preset” di configurazioni

Supporto per Hard Disk (.HDF)

Come accennato, vengono supportati i file immagine HDF, gli stessi utilizzati da WinUAE. Consiglio l’uso di WinUAE per creare dei file HDF vuoti da copiare sulla SD del MIST. Viene emulata l’interfaccia IDE dell’Amiga 600

ATTENZIONE: la SD, che è formattata FAT32, supporta file grandi al massimo 4 GB. Pertanto non avvicinarsi “troppo” a questa soglia durante il dimensionamento degli hard disk virtuali (HDF). Utilizzare per sicurezza una dimensione di 3 GB.

Tasti “Amiga” e reset software

Sulla tastiera PC i tasti “Amiga” destro e sinistro sono mappati sui corrispondenti tasti “Windows”. Per effettuare il reset software (la famosa combinazione “CTRL + A + A”) usate invece i tasti CTRL + Alt sinistro + Alt destro.

Prestazioni

Come si può notare dalla seguente schermata di SysInfo, le prestazioni massime emulate (impostando CPU 68020 e il massimo della RAM) equivalgono a una CPU 68020 a 88MHz, paragonabile più o meno a 1.5 volte un Amiga 3000. Questo solo come velocità: non viene emulata né una MMU né una FPU.

MIST - SysInfo

Scambio di file

Per portare singoli file all’interno della MIST utilizzato il software ADFOpus per costruire su PC dei file immagine ADF contenenti i file di interesse, in seguito copiati su scheda SD. È inoltre possibile utilizzare WinUAE per leggere/scrivere gli stessi file .HDF utilizzati dal MIST.

Compatibilità

Questo è il vero punto interessante, nonché tallone d’Achille di tutte le applicazioni di questo tipo. In generale la compatibilità è buona anche se non totale. In molti casi il problema compatibilità è analogo a quelli degli Amiga veri, cioè bisogna fare i conti con dei software che prevedono una certa versione del Kickstart, la presenza o l’assenza del secondo drive, o la presenza o l’assenza di memoria FAST: questi sono casi relativamente “semplici”, in quanto basta riconfigurare il MIST. Il problema vero riguarda il software che neanche cambiano diverse configurazioni riesce a funzionare. Un esempio pratico: sono riuscito ad installare e far funzionare perfettamente AMOS Professional 1.12, mentre la versione 2.0 non c’è verso di installarla: l’installatore va in crash (ops… “Guru Meditation”) dopo pochi secondi. Lo stesso vale per Caligari 2.4 AGA: l’installazione riesce ma provando a eseguirlo va in crash.

C’è da dire che i core sono attivamente sviluppati quindi soggetti a continuo miglioramento da parte della comunità.

“Feel” e giudizio finale personale

Il mio personale e soggettivo giudizio è quello di un buon prodotto che vale tutti i soldi spesi. La sensazione è la stessa che si prova utilizzando un vero Amiga, con i seguenti vantaggi:

  • L’oggetto non ha 30 anni di usura sulle spalle
  • Dimensioni estremamente ridotte, case robusto e di ottima fattura
  • Emulazione hardware quindi consumi ridotti: 5V 300mA
  • Reverse engineering, e quindi core, in fase di attivo sviluppo
  • Compatibile 100% con joystick originali, e con alcuni USB
  • Si configura in un attimo: per fare backup basta salvare il contenuto della SD
  • Supporto sia di monitor VGA che di monitor SCART
  • Sensazione di utilizzo molto simile se non identica all’utilizzo di un Amiga vero, specie usando un monitor SCART

Prove sul campo

Non mi resta che augurarvi buon divertimento con la MIST e salutarvi con un po’ di foto relative a prove sul campo che ho effettuato prima di scrivere questo articolo. Alla prossima e buon retrocomputing a tutti!

Workstation di sviluppo – compilatori e utility

wbench31

hisoftC

Real 3D 1.4 – Modellazione e rendering

real1

real2

real3

Un classico – Kick Off

kickoff-intro

kickoff-play

Pinball Dreams e Switch Blade II

pinballdreams

switchblade2

Aggiornamenti: Firmware vers. ATH160619

  • Aggiunto supporto mouse Amiga originali
  • Corretto difetto del DMA che causava “scatti” durante la scrittura su disco

Leggi anche:

Link Esterni

 

Francesco Sblendorio

Francesco Sblendorio nasce nel 1977. Nel 1985 fa conoscenza con il mondo dei computer attraverso un Commodore 16: da quel momento la discesa verso il lato oscuro è inesorabile e si trasforma in un geek impenitente. Nell'ambito del retrocomputing ha un sogno: che i vecchi computer non debbano semplicemente sopravvivere (conservando la loro funzionalità), piuttosto devono vivere, attraverso nuovi software sviluppati oggi per i computer di ieri.

Potrebbero interessarti anche...