Intervista a Mats Eirik Hansen

Mats Eirik Hansen è colui che ha portato il MAME (Multi Arcade Machine Emulator) su Amiga ed è inoltre uno dei coders del famoso gruppo norvegese "Triumph " della Demo Scene norvegese.

AMIGAzette: Solita prima domanda: dicci qualcosa di te.

Mats Eirik Hansen: Be', ho 26 anni e ho avuto il mio primo Amiga nel 1989. Ho conseguito una laurea in cibernetica dell'ingegneria e ora lavoro come ingegnere del software.

AMIGAzette: Perché ti sei spostato dalla Demo Scene a un progetto complesso quale è portare il MAME sugli Amiga 68k e PPC?

Mats Eirik Hansen: Quando ho trovato in rete che MAME supportava Commando, ho scaricato i sorgenti e l'ho fatto funzionare nel giro di un paio di giorni. La nostalgia è stata il fattore motivante principale.

AMIGAzette: Su che computer lavori e che software usi?

Mats Eirik Hansen: Ho un Amiga 4000 con 604e/060 e una CyberVisionPPC su cui sviluppo. Uso CygnusEd e il GeekGadgets come tools.

AMIGAzette: Raccontaci qualche aneddoto o le più grandi difficoltà sul tuo lavoro di porting.

Mats Eirik Hansen: Il problema principale con la manutenzione del MAME è che il framework interno cambia in continuazione. Ciò significa che devo spesso riscrivere parti che funzionavano nella versione precedente.

AMIGAzette: Quali sono le differenze tra le versioni 68k e PPC del MAME?

Mats Eirik Hansen: La differenza fondamentale è che la versione PPC lavora normalmente in maniera asincrona e usa due screen buffer internamente così che il lato 68k può renderizzare un buffer sullo schermo mentre il PPC genera il frame seguente nell'altro buffer. Perciò ho introdotto l'opzione ASYNCPPC per disabilitare questo comportamento.

AMIGAzette: Quanto tempo ci vuole per portare una nuova revisione del MAME? Quanto ci vuole per compilare l'intero progetto, invece?

Mats Eirik Hansen: Dipende pesantemente da quanti cambiamenti devono essere fatti nel codice di supporto Amiga. La compilazione da zero impiega circa un ora con un gcc compilato per ppc (credo). Faccio la prima compilazione su Linux per risparmiare tempo. Il problema principale è che ci vogliono diversi minuti anche solo per linkare, il che è molto seccante quando sto facendo veloci cambiamenti e ricompilando. Ho ora modificato il sistema make così spero che ridurrò questo tempo.

AMIGAzette: Parlaci di ottimizzazione del codice: quali sono le modifiche fondamentali al codice originale che hai fatto o stai per introdurre? E' linguaggio C al 100% o ci sono, invece, alcune parti che hai sviluppato in assembler 68k? E Assembler PPC?

Mats Eirik Hansen: Riscrissi alcune funzioni grafiche di basso livello in asm 68k oltre un anno fa, ma non ebbe nessun effetto visibile così non sono state mantenute e non funzionano più correttamente. La routine chunky to planar è il asm 68k ed è stata scritta da Mikael Kalms.

AMIGAzette: Cosa ti spinge a continuare questo duro lavoro di conversione? Lavori da solo, a quanto sappiamo.

Mats Eirik Hansen: Be', lavoro solo quando mi va. Questo rende più facile per me continuare ma rende anche impossibile essere al passo con le release PC e Mac. Ma i sorgenti sono disponibili e chiunque è libero di creare e distribuire nuove versioni.


[recentemente sono comparse alter versioni di MAME basate su quei sorgenti, NdR]

AMIGAzette: Visto che una buona percentuale delle schede PowerUp è stata venduta grazie al tuo MAME PPC (che è stato uno dei primissimi programmi a sfruttare in pieno le schede PowerUp), hai ricevuto (come minimo! ;-) ) ringraziamenti da Phase5?

Mats Eirik Hansen: Non ho ricevuto nulla ufficialmente da Phase5, ma ho dialogato parecchio con Ralph Schmidt ed è stato di grande aiuto.

AMIGAzette: Uno sguardo al passato: dicci delle tue esperienze nella Demo Scene.

Mats Eirik Hansen: Be', ho scritto la mia ultima demo nel 1991 (credo). Non ero molto bravo ma è stato un bel divertimento.

AMIGAzette: Hai abbandonato la scena?

Mats Eirik Hansen: Sì.

[le risposte seguenti si riferiscono alla situazione quale era a settembre 1999, NdR]

AMIGAzette: Uno sguardo al futuro: cosa vorresti dagli AmigaNG? Descrivici le caratteristiche tecniche che vorresti avere nel tuo AmigaNG ideale.

Mats Eirik Hansen: Vorrei proprio un buon computer multimediale con sistema operativo realtime e ambiente compatibile POSIX. Così sono stato deluso quando hanno abbandonato QNX.

AMIGAzette: Cosa ci dici dell'OS 3.5 e della politica di Amiga Inc.?

Mats Eirik Hansen: Be', rende migliore la distribuzione standard, ma non apporta nulla di realmente nuovo.

AMIGAzette: Ci prometti un port di MAME per AmigaNG? ;-)

Mats Eirik Hansen: Se avrò un AmigaNG e nessun altro lo avrà fatto. Allora probabilmente lo farò io. Ma non prometto mai niente. :)

AMIGAzette: Ti ringraziamo per il tempo che ci hai gentilmente dedicato.

Mats Eirik Hansen: Che il sorgente sia con voi. :-)

[in lingua originale:"May the source be with you", che richiama il famoso "May the force be with you", NdT]

Roberto Ragusa