di  -  sabato 21 Febbraio 2015

Questa settimana ospitiamo con estremo piacere il racconto di Fabio Carletti che ha deciso di realizzare “in casa” uno splendido Mini Arcade Cabinet.

 

Ho sempre avuto il sogno di avere in casa un cabinato arcade.

Se dovessi scegliere un solo titolo, direi Bosconian, in cui introducevo monetine da 100 lire quando riuscivo a stento ad arrivare al joystick.

Molti anni dopo arrivò il MAME, ma al pc non era proprio la stessa cosa. Giocare con la tastiera? Sacrilegio! Il joypad? Roba da ragazzini di un’altra epoca!

Anni fa ho iniziato a cercare informazioni in rete per costruirmi finalmente il mio cabinato arcade, eventualmente riciclando qualche vecchio cassone anonimo da restaurare. Ma due traslochi si mettono di traverso e il progetto si arena prima di cominciare per motivi logistici.

Le esigenze dell’uomo moderno erano nel frattempo mutate in “piccolo e che non sfiguri sopra al mobile in salotto“.

L’estate scorsa sfilo la scheda madre mini-itx da un vecchio media-center e inizio a costruirci attorno il M.A.C. (Mini Arcade Cabinet). Con il senno di poi, aumentando un po’ gli ingombri, avrei forse fatto meglio a cannibalizzare un netbook, sicuramente avrei speso meno ma tant’è.

Mi procuro un alimentatore atx pico-psu, in modo da utilizzare un alimentatore esterno da portatile e un monitor da 8” 4:3, un ottimo Xenarc. Investo un bel po’ nelle casse audio, un modello supercompatto (Logitech Z205) alimentato via usb.

Dal punto di vista hardware, la componente chiave è una piccola schedina usb, Ultimarc mini-PAC, che consente di interfacciare il joystick ed i vari pulsanti, emulando di fatto una tastiera.

Ciò che restituisce il feedback dell’originale è l’uso di componenti puramente arcade, un JLF Sanwa i cui microswitch suonano come nessun joypad ha mai fatto e 6 pulsantoni da 30mm, sempre rigorosamente Sanwa, da malmenare con violenza. Sono esattamente gli stessi che erano montati sul cabinato di Street Fighter II e resistevano senza problemi ad orde di adolescenti che non ci andavano certo delicati.

Come front-end ho utilizzato il noto Maximus Arcade per configurare i vari emulatori e passare agilmente da un gioco all’altro.

La parte difficile, ma anche la più divertente, è stata realizzare il cabinet vero e proprio. Per fare un lavoro pulito ho optato per il metacrilato colato — comunemente detto plexiglass — tagliato al laser.

È necessario armarsi di illustrator per ottenere un disegno vettoriale che riproduca esattamente tutti i pannelli di cui abbiamo bisogno.

Ho consegnato il disegno ad un negozio specializzato che nel giro di qualche giorno mi ha consegnato tutti i pezzi perfettamente tagliati e rifiniti; è bastato assemblarli con della colla solvente (corretta con un po’ di cloroformio) et voilà. L’importante è prendere bene le misure e tutto si incastra alla perfezione.

È comunque possibile rimuovere la base e il pannello posteriore (che sono avvitati) per avere accesso all’interno.

Oltre agli arcade con il MAME, sono perfettamente emulati MegaDrive, SNES e Amiga. Perdendo un po’ di tempo nella configurazione di Maximus Arcade e del mini-PAC si può personalizzare qualsiasi emulatore disponibile.

Per essere un oggettino vintage low tech non è male!

 

Grazie per l’ospitalità, se avete domande o curiosità cercherò di rispondere (postatele nei commenti, ndr).

mac_8

mac_7

mac_6

mac_5

mac_4

mac_3

mac_2

mac_1

71 Commenti »

I commenti inseriti dai lettori di AppuntiDigitali non sono oggetto di moderazione preventiva, ma solo di eventuale filtro antispam. Qualora si ravvisi un contenuto non consono (offensivo o diffamatorio) si prega di contattare l'amministrazione di Appunti Digitali all'indirizzo info@appuntidigitali.it, specificando quale sia il commento in oggetto.

  • # 1
    Pingui
     scrive: 

    Hai detto tutto ma hai anche detto niente.
    Non hai segnato un solo prezzo. Non hai riportato uno straccio di configurazione ne hardware che software: c’è una serie di operazioni da fare per rendere windows buono a far girare in maniera trasparente il tutto, oltretutto il mame è bello esigente quindi se si recupera un pc vecchio bisogna andarci cauti sulle pretese. Non hai spiegato come si cablano i fili dai controlli al ultimarc: può sembrare banale ma vallo a spiegare a chi è titubante di fronte la spesa e teme di incartarsi lungo la strada.

  • # 2
    Phabio76
     scrive: 

    Ciao Pingui,
    la mb mini-itx è basata su un AMD Fusion APU E-350 dual-core che con il MAME se la cava egregiamente, la pagai all’epoca meno di 100 euro. Ho aggiunto 4Gb di RAM DDR3-1600 e un hd Seagate 2,5″ da 500Gb recuperato dal mediacenter. L’alimentatore, piccolo e fanless, è un Pico PSU da 90W http://www.mini-box.com/picoPSU-90 di solito usato nei car-pc che hanno alimentazione 12V. Ho preso un modello che accetta diversa voltaggi per usare un alimentatore da portatile universale (sarebbe più corretto utilizzare il termine trasformatore) a 19V con connettore asus.
    L’unica “complicazione” dell’assemblaggio consiste nell’alimentazione del monitor: ho “spellato” il cavo dell’alimentazione e l’ho collegato a un molex che fornisce i 12v richiesti. Da un vecchio cabinet ho recuperato il pulsante di accensione atx, quello da cui escono i cavi che vanno ai pin della mb. Il tasto l’ho fisicamente sostituito con un pulsante sanwa (uguale quelli del pannello frontale) e alloggiato sul retro. La pressione del tasto di accensione, oltre ad accendere il pc, accende anche il monitor; essendo un pulsante atx può essere configurato per chiudere le applicazioni e spegnere il tutto quando viene premuto una seconda volta.
    Il cablaggio del joystick e dei pulsanti è semplicissimo, seguendo l’ottima documentazione fornita da Ultimarc
    http://www.ultimarc.com/Mini-PAC%20Manual1.pdf
    e usando degli appositi cavi con connettori faston venduti in kit con il mini-pac http://www.arcadeworlduk.com/products/Mini-PAC-Keyboard-Encoder-Kit.html puoi risparmiarti anche la più semplice saldatura.
    Mini-pac, joystick e pulsanti sanwa con circa 50€ ci stiamo dentro.

    Come OS ho usato Win7. Comprendo che la scelta può essere discutibile ma volevo usare Maximus Arcade che gira solo per windows. Lato software non sono ricorso a configurazioni particolari, ho solo personalizzato la schermata iniziale e messo maximus arcade in esecuzione automatica all’avvio.

  • # 3
    Phabio76
     scrive: 

    Ciao Pingui, ti ho risposto ma il commento è in fase di moderazione perchè contiene diversi link.
    Intanto vediamo se qualcuno riconosce il gioco di calcio in una delle foto…

  • # 4
    Pingui
     scrive: 

    Quindi a livello hardware sei andato su una macchina tutt’altro che vecchia e perfettamente usabile in un contesto moderno. Sarebbe bello riuscire a recuperare qualcosa di più vecchio tipo un Athlon xp o precedente: ovviamente si dovrebbe rinunciare ad un po’ di titoli in 3D ma su dieci persone saranno al massimo in due a sentire la mancanza di tekken tag o dead or alive (ci sono sempre htle console per questi) mentre tutti gli altri andranno tranquillamente a nozze con titoli più stagionati.
    Per il sistema operativo credo sia sufficiente xp senza aggiornamenti che rallentano e comunque se non deve andare su internet non servono: 2000 sarebbe ancora meglio ma da una certa release in poi del mame hanno fatto qualche cavolata in fase di compilazione e non gira più. L’unica sarebbe ricompilarlo a mano e nel mentre si cercano le istruzioni per far sparire le odiose e antiestetiche note di copyright.
    So per certo che il costo di un kit per due giocatori (leve, una quindicina di pulsanti, ultimarc e cavi) può costare anche un centinaio di euro ai quali vanno sommati il multistrato da 1,8cm (il mio obiettivo è fare quello grosso), il plexiglass per lo schermo, neon, casse, gettoniera, alimentazione, vernice, adesivi… Costa caro purtroppo, non è un’impresa da cinque minuti anche riciclando l’hardware…
    Il gioco di calcio ? Seconda metà anni 80 forse inizio 90. Non vedo scritte tipiche di un arcade quindi potrebbe anche non essere un gioco da sala (o semplicemente sono fuori dallo spazio dello schermo causa troppo stretching della risoluzione)

  • # 5
    Phabio76
     scrive: 

    Per un cabinet full size il costo paradossalmente è inferiore. Un Athlon xp di quasi quindici anni fa dovrebbe avere più potenza computazionale di un Atom single core che equipaggiava la maggior parte dei netbook da poco usciti dal mercato. Un bel monitor crt da 21″ con tubo trinitron se hai la fortuna di trovarlo, puoi portartelo a casa per pochi euro. E il multistrato costa molto meno del plexiglass. Piuttosto che utilizzare hardware recuperato dalla discarica sarebbe più interessante usare un Raspberry Pi che promette molto bene e ultimamente è usato anche per progetti del genere.
    Il mio scopo era costruire un bartop da salotto che ho volutamente lasciato privo di adesivi, piccolo e con un occhio al design… che è comunque molto soggettivo.
    Come per tutte le passioni personali, non ne farei una questione prettamente economica ma se l’obiettivo principale è spendere il meno possibile penso che un netbook usato da cannibalizzare + ultimarc minipac + kit sanwa e cabinet in legno possiamo agevolmente rimanere sotto i 200 euro.

  • # 6
    Phabio76
     scrive: 

    Per il gioco di calcio emulato sul M.A.C.
    Acqua…

  • # 7
    Pingui
     scrive: 

    Ipotizzando un cassone tradizionale ci vogliono almeno 4 pannelli in multistrato: costo a pannello in segheria (rigorosamente aumma aumma dedicato con amore agli sgherri del fisco) tra i 20 ed i 25 euro.
    C’è da considerare però che i pannelli vanno ancora tagliati e montati.
    Se già si possiede l’apparecchio per tagliare (che adesso il nome mi sfugge ma per intenderci è praticamente un dremel gigante), solo il disco partono altri 10/15 euro, poi è il turno di cerniere e viti che pare un discorso pulcioso ma alla fine sono più i dettagli ad incidere rispetto il “grosso”.
    Ricordiamo ancora i fori dove piazzare leve e pulsanti: di nuovo o si possiedono (e la vedo dura in un garage normale) le frese per trapano della dimensione giusta o li partono un’altra bella mazzata di soldi salvo bazar di cinesi a tiro.
    A questo punto si dovrebbe avere la struttura portante del cassone pronta ma ancora grezza e tra una cosa e l’altra sono partiti già almeno 150 euro a stare bassi: vanno ancora ricordati vernici, adesivi, battiscarpa metallici, luce al neon plexiglass per lo schermo e bianco per il marquee, gettoniera e le casse (ideale sarebbe recuperarle da uno stereo e affiancarle ad un ampli per auto ma ci si può accontentare con le cineserie).
    Solo quest’altra informata si mangia altri 100 euro tutti e forse non bastano.
    Aggiungi i controlli, altro centone, metti finalmente il computer: si rischia si sfondare il tetto dei 400 euro, una cifra assolutamente non indifferente e la macchina non è neanche nuova ecco spiegato perchè è importante spiegare per filo e per segno come va realizzato il tutto perchè di fronte una simile spesa si richia di smorzare l’entusiasmo sul nascere

  • # 8
    Pingui
     scrive: 

    Ok ricordato il nome “dell’apparecchio per tagliare”, il vecchio flessibile

  • # 9
    marco
     scrive: 

    molto interessante anche se, ad essere puristi, i giochi arcade andrebbero giocati su un CRT, la differenza rispetto a un LCD è abissale. Personalmente ho la fortuna di non aver avuto problemi di spazio e sono andato alla ricerca di un buon cabinato full size con, rigorosamente, un Hantarex ovviamente CRT a cui ho cambiato solo l’elettronica di controllo che ancora si trova. Il problema è che prima o poi i CRT andranno inesorabilmente scomparendo per esaurimento del cannone….

  • # 10
    Phabio76
     scrive: 

    Pensare che pochi anni fa, quando c’è stato un ricambio generazionale dei monitor, tutte le agenzie e i service che si occupavano di grafica sono passati ad un iMac o a un lcd ips, accantonando dei crt Sony, Lacie o Eizo da almeno 21″, dispositivi professionali di qualità assoluta che appena immessi sul mercato costavano un patrimonio.

  • # 11
    Cesare Di Mauro
     scrive: 

    Il problema più grosso è che pochi monitor CRT agganciano i 15Khz, cioé la frequenza del segnale televisivo che era usato anche nei cabinati.

    P.S. Ho conservato ancora il mio 19″ Hitachi proprio perché non se ne trovano in giro. All’epoca lo pagai un milione e mezzo più IVA, se non ricordo male. E’ l’unico pezzo di hardware obsoleto che non ho tolto dal garage.

  • # 12
    Pingui
     scrive: 

    Concordo con Phabio76: potendo scegliere andrei subito su un vga di quella portata.
    Ovvio che il CRT hantarex sarebbe meglio ma costa ed i loro naturali sostituti, le classiche tv di una volta tipo mivar, sono pericolose. Se il circuito della scart non è fatto bene può scaricare brutta roba dritta nell’uscita TV della scheda video e sono guai. L’unica è mettere in mezzo un convertitore vga-rgb e cacciare altri soldi ma se schioppa non si porta dietro il pc.
    Meglio quindi recuperare un monitor e piazzare un filtro scanlines direttamente dal mame.

  • # 13
    Phabio76
     scrive: 

    Oppure, con buona pace dei puristi, si scende a qualche compromesso e ci si accontenta. Vi posso garantire che il piccolo lcd Xenarc da 8″ che ha una risoluzione nativa di 800×600 non sfigura affatto. Secondo me un vero monitor arcade ha senso solo se si sta restaurando un cabinet originale.

  • # 14
    Sisko212
     scrive: 

    A parte le ovvie prestazioni, qualcuno ha mai pensato di usare la Raspberry ?
    Ovviamente le limitazioni dell’hardware ti impongono di usare videogames fino ai primi anni ’90 (poi l’emulazione diventa troppo pesante), però per Bosconian, Pacman, BombJack, Ghost n’Goblins, etc.etc. ho provato e funziona egregriamente.
    Ora poi è uscita la raspberry B+ che dovrebbe essere un pò più performante.
    Inoltre la Raspberry ha anche uscita videocomposito, per cui si dovrebbe interfacciare abbastanza facilmente con i vecchi crt Hantarex…
    C’è anche un progetto apposito, mi pare si chiami PiPlay, che frà l’altro mette a disposizione delle indicazioni per interfacciare i joystick etc. in standard Jamma, usando il connettore gpio.

  • # 15
    Pingui
     scrive: 

    Il nuovo raspberry dovrebbe andare abbastanza bene anche se con il mame non si può mai dire

  • # 16
    phabio76
     scrive: 

    Il nuovo Raspberry usa un soc quad-core ARM Cortex-A7 @900Mhz che dovrebbe avere una discreta potenza. Non ho esperienze dirette ma ciò che mi lascia da pensare è lo stato di maturità di tutto il software.
    Dopo essere finalmente riuscito a configurare (sotto Maximus Arcade) il WinUAE con le immagini degli hd Amiga, ho poca voglia di ricominciare da capo con le sperimentazioni…

  • # 17
    amigone
     scrive: 

    phabio76, come bisogna fare perchè i giochi dell’amiga vengano caricati senza cambiare i dischetti, hai la procedura?

  • # 18
    Pingui
     scrive: 

    E’ proprio quello il punto: la maturità del software mame.
    Nel nome della più assoluta portabilità spesso e volentieri manca di un sacco di ottimizzazioni e questo fa sì che anche per emulare un banale pac man ci vuole un sacco di potenza bruta.
    Il mondo dei soc arm ha guadagnato un certo rispetto dal punto di vista prestazionale proprio perchè si fa largo uso di ottimizzazioni presenti sia a livello di architettura che di gpu.
    Basta prendere uno smartphone android e provare ad abilitare l’accelerazione gpu per notare, soprattutto nei modelli più scarsi, un netto incremento di fluidità.
    A volerla dire tutta, se si pensa di montare dentro il cabinato un vecchio pc, conviene lasciare da parte il mame e trovare degli emulatori dedicati ad ogni singola piattaforma tipo final burn alpha per le cps ed i neogeo, raine per i giochi taito e via discorrendo.

  • # 19
    phabio76
     scrive: 

    Emulare l’Amiga e gestire WinUAE da frontend era per me un requisito imprescindibile! La procedura di configurazione è un po’ macchinosa ma alla fine ha funzionato: http://joomla.maximusarcade.com/phpbb/viewtopic.php?f=24&t=1755&sid=0df1bacb454c783e84a81029789cf68b
    Attenzione perchè le rom non saranno nel comune formato adf ma verranno lette tramite whdload come immagini del disco.

    Nessuno riconosce il gioco di calcio più divertente della storia?

  • # 20
    Pingui
     scrive: 

    Uhm… fare il DG della juve fino a quando non ti pizzicano a comprare le partite ?
    Ma lo facevano su amiga ? :P

  • # 21
    NickNaylor
     scrive: 

    è fichissimo, complimenti.
    potresti postarci anche un video che mostra come si comporta dall’avvio al gioco? giusto per rendersi conto di quanto è maturo il lavoro.
    inoltre mi chiedo se è stabile o si tende a farlo traballare vista la dimensione nelle fasi di gioco tipo street fighter, perchè mi chiedo quanto possa esser affidabile un disco meccanico su una roba del genere se uno ci gioca come ci giocherei io.

  • # 22
    Phabio76
     scrive: 

    Altro che Street Fighter… Lo stress test da superare sono i 110m a ostacoli di Track & Field !!!
    Che dire, per essere un bartop il baricentro del joystick è abbastanza in basso, la struttura in plexiglass è pesante e i piedini in silicone aiutano. Qualche colpetto dagli amici più scalmanati lo ha incassato (con mia malcelata preoccupazione) ma finora l’hd non ha smesso di funzionare.

  • # 23
    Pingui
     scrive: 

    Ragionando in termini di cassone il pericolo non si pone: pesa troppo per essere capottato però per i bartop forse sarebbe meglio una soluzione su memorie flash tipo una bella CF di classe industriale da 32/64GB (ovviamente roba che non si prende con 20 euro)

  • # 24
    Cesare Di Mauro
     scrive: 

    @phabio76: il nuovo Raspberry è più veloce del primo, grazie principalmente alla maggior frequenza, ma non di molto. Ricordo che un emulatore sfrutta generalmente un solo core/thread, perché si tratta di un processo strettamente sequenziale.

    Al limite si può utilizzare un altro core/thread per gestire l’interfacciamento col s.o. (sostanzialmente I/O: event-loop della GUI, invio del framebuffer e dell’audio buffer all’apposita periferica, lettura/scrittura su disco, ecc.). Certamente aiuta (ed è comodo averne un core o thread hardware in più), ma il cuore dell’emulatore è il processo/thread che si smazza tutto il lavoro di emulazione (o simulazione) della piattaforma.

    Forse al caso vostro potrebbe essere interessante una di queste schede: http://www.minnowboard.org/meet-minnowboard-max/

    @amigone: per evitare il leva e metti dei dischi su WinUAE, ti conviene utilizzare WinUAE con WHDLoad, com’è stato suggerito da Fabio, che consente di giocare avendo tutto su hard disk (incluso il salvataggio dei punteggi). Buona parte dei giochi Amiga sono stati portati su WHDLoad. Nel famoso sito di Back to the Roots puoi trovare tanti giochi che sono disponibili per uso strettamente personale (i detentori dei diritti ne hanno rilasciato una licenza o liberatoria): http://back2roots.abime.net/News/

    @Pingui: non è corretto. Il MAME è molto maturo, anzi il suo “problema” è che diventa sempre più maturo a ogni release che passa. E non è nemmeno la portabilità la causa delle sue scarse prestazioni, visto non manca nemmeno di ottimizzazioni.

    Il nocciolo della questione è che il MAME ormai da anni è orientato alla simulazione, quindi alla riproduzione quanto più fedele possibile dell’hardware dell’arcade, e questo ovviamente incide molto, anche moltissimo, sulle prestazioni richieste allo scopo. Specialmente quando hai da emulare circuiti analogici, anche un vecchissimo gioco può mettere in ginocchio il computer.

    Gli altri emulatori non hanno quest’obiettivo, per cui girano molto più velocemente. Ma, ribadisco, non è che manchino le ottimizzazioni al MAME.

    @phabio76: non mi sono mai interessato dei giochi di calcio arcade, fatta eccezione per Exciting Soccer, e il mitico Mexico ’86. :P Per cui mi sfugge quello di cui hai inserito l’immagine. :-/

  • # 25
    Pingui
     scrive: 

    Sinceramente non ci credo alla storia della simulazione. Negli anni ho notato empiricamente questo fenomeno: all’aumentare della versione, aumenta lo spazio occupato e, a parità di configurazione hw di riferimento, si riducono le prestazioni anche con i titoli più leggeri addirittura nell’ordine di un banale arkanoid. Adesso non per dire ma il solo eseguibile del mame sfonda i 60MB, tutto la si può definire meno che ottimizzazione.
    Se guardiamo anche il lato grafico, directx e forse open gl vengono usate solo per offrire qualche belletto come filtri trilineari ma non offrono nessun supporto concreto al calcolo della grafica neanche a posizionare i vertici dei poligoni.
    A questo aggiungiamoci la questione del singolo core, cosa semplicemente assurda perchè i sistemi arcade del passato spesso vantavano più cpu quindi non si capisce perchè non smistare l’emulazione su più core con una a fare da controllo in modo da tenerle sincronizzate, alla fine si capisce che il mame vince solo ed unicamente sulla quantità.
    Se vuoi emulare daytona usa aspetti il mame o vai di supermodel3 (che tra l’altro ottimizza talmente tanto da tirare fuori dei piccoli capolavori in alta risoluzione, gpu permettendo) ?

  • # 26
    Pingui
     scrive: 

    Vorrei poi ancora aggiungere una cosa. Scilab è un programma in grado di effettuare simulazioni matematiche e solo per far muovere un punto nello spazio è capace di piegare un core 2 duo.
    Dal momento che anche il gioco più scrauso necessita molto più di un segnale che si muove, questa storia della simulazione nel mame è di fatto la scusa ideale per giustificare il crollo di prestazioni almeno per i prossimi cinquant’anni e facilmente non si riuscirà mai a colmare il gap.

  • # 27
    Cesare Di Mauro
     scrive: 

    A te sembrerà assurdo, ma è così. Qui: http://wiki.mamedev.org/index.php/FAQ:Performance è spiegato bene tutto, inclusa le questioni “dimensione dell’eseguibile” e “uso di più core”.

  • # 28
    Pingui
     scrive: 

    Ok ma come mai prendi due versioni del mame e lo stesso gioco finisce per girare più lentamente ?
    Devo veramente bermi che i programmatori del mame rifiniscono ossessivamente l’emulazione di ogni titolo ad ogni nuova versione ? Stiamo parlando non di dieci titoli ma di qualche migliaio.
    Possono raccontare quello che vogliono ma i risultati sono palesi e sotto gli occhi di tutti. Va preso atto che i tempi delle cpu macina Ghz sono finiti da tempo, adesso si deve lavorare di multicore e ottimizzazioni lato gpu ed il mame semplicemente non lo fa e dove lo fa, lo fa male.
    Fosse l’unico emulatore sulla terra allora tutte le scuse sarebbero accettate ma è pieno di esempi che mostrano una realtà nettamente contraria a quanto raccontato

  • # 29
    Cesare Di Mauro
     scrive: 

    Non capita per tutti i giochi, ovviamente, ma se alcuni giochi utilizzano lo stesso chip, e il codice che lo emula cambia portando a una precisione/fedeltà più elevata, allora è chiaro che ne risentiranno tutti i giochi.

    Altre volte è stato cambiato il sottosistema grafico, passando dagli 8 ai 16 bit come “minimo”, per cui questo ha pesato più o meno in tutti i giochi.

    Riguardo al multicore, è stato già spiegato perché non si può fare uso di più core. Non puoi semplicemente lanciare un thread/processo per ogni processore da emulare, e poi sincronizzare “quando capita” (magari usando un altro thread/processo). Sarebbe fattibile se i processori da emulare fossero totalmente indipendenti, ma spesso hanno porzioni di risorse in comune (memoria e/o periferiche), e l’accesso a queste va regolato e gestito opportunamente, pena il malfunzionamento o un risultato con artefatti.

    Ecco perché si usa lo stesso thread/processo, che si smazza POCHE istruzioni (o funzionalità) di un processore, per poi passare a un altro, e così via. In questo modo si elimina la necessità della sincronizzazione, perché si riduce a monte la possibilità di conflitti.

    In casi estremi si passa alla cosiddetta modalità “cycle-exact”, dove la macchina in questione viene emulata un ciclo di clock alla volta, dove ovviamente e a maggior ragione si utilizza esclusivamente un thread/core allo scopo. Alcuni emulatori Commodore 64 o Amiga funzionano in questo modo e richiedono CPU con elevate prestazioni su singolo core/thread.

    Infine la GPU non può essere usata ovunque; tutt’altro. Il problema più grosso è rappresentato dal fatto che la GPU / sezione video del sistema emulato tante volte condivide la memoria col resto del sistema, per cui capita che la CPU abbia elaborato una scena e l’abbia “spedita” alla GPU, ma condividendo la memoria in realtà non c’è nessuna spedizione, per cui la GPU può accedere immediatamente ai dati della scena che deve processore.

    Una roba del genere in un normale PC non è fattibile, perché CPU e GPU normalmente non condividono la stessa memoria (e quando lo fanno c’è di mezzo lo spazio d’indirizzamento che è separato per i due), per cui l’emulatore dovrebbe provvedere a sincronizzare opportunamente la VRAM col contenuto della RAM di sistema, per poi chiedere alla GPU di eseguire le operazioni di rendering (che, tra l’altro, vanno convertite dal formato usato dal sistema emulato a quello della GPU, visto che sono diverse, e anche di molto). Ciò, quindi, rallenta molto le operazioni, e funge da collo di bottiglia.

    Altra cosa, capita che la GPU elabori dei dati, che poi vengono usati dalla CPU, per cui si verifica il problema opposto: sincronizzare la RAM attingendo opportunamente dalla VRAM. Cosa che col precedente bus di comunicazione AGP letteralmente ammazzava le prestazioni, visto che la banda di memoria in questo caso era di un ordine di grandezza inferiore.

    Lo scenario peggiore è, ovviamente, quello in cui CPU e GPU sinergicamente si scambiano operazioni e dati da fare per ottenere il risultato finale.

    Infine, e non meno importante, le operazioni eseguite dalla GPU emulata è facile che producano risultati diversi rispetto alle medesime che, però, sono eseguite sulla GPU del PC. Quindi è la fedeltà dell’emulazione a venire meno, e questo è chiaramente contro lo scopo che s’è prefisso il MAME (preservare il gioco, cercando di mantenere l’emulazione quanto più precisa possibile all’originale).

    Per tutti questi motivi viene usato un software renderer che fa carico, ovviamente, sulla sola CPU.

  • # 30
    Pingui
     scrive: 

    Sarà tutto vero ma te quanti artefatti vedi nelle ultime versioni di emulatori anche pesanti come nulldc, dolphin, pcsx2 ?
    Il dreamcast usava un’accoppiata PowerVR2 (abbastanza esotica per quella faccenda di calcolare pezzi di scena 3d non visibile) più istruzioni custom aggiunte alla cpu stessa (non si tratta di un SH4 tradizionale) mentre la ps2 è sempre stato un casino anche solo descriverlo a parole eppure per giocare shemmue o gran turismo 3 non stiamo aspettando la quinta o sesta evoluzione dell’informatica a partire da oggi: ci giochiamo adesso e pure bene senza tutti questi fantomatici artefatti. Se un gioco gira male oggi, veramente, basta aspettare un paio di versioni nuove dell’emulatore per veder cambiare drasticamente le cose.
    Se prendo invece un gioco x e due versioni del mame, quella nuova difficilmente offrirà delle differenze palpabili ma il crollo di fluidità sarà evidente.

  • # 31
    phabio76
     scrive: 

    Grazie Cesare per la dettagliatissima spiegazione!

  • # 32
    Amigone
     scrive: 

    Grazie phabio76 e Cesare per le procedure amiga, anche se il mio inglese è molto molto molto scolastico…

    Qualche dritta in italiano?

  • # 33
    Amigone
     scrive: 

    Inoltre mi ritrovo inoltre un macmini con core 2 duo regalato tra le mani, e pensavo di tentare un progetto di mini cabinet su quello…

    Su Mac os X esiste FS UAE come emulatore amiga, che funziona molto bene… Inoltre ho anche un porting di mame per mac che non da problemi… Sapete se esiste un agglomeratore di emulatori come Maximus Arcade anche per OS X?

    Giusto per capire se posso usare os x come os o se devo installare windows sul macmini

  • # 34
    phabio76
     scrive: 

    Su OSX non conosco alternative a Maximus arcade, forse http://attractmode.org/about.html ma non mi sembra paragonabile.
    Ti consiglio di risparmiare il macmini per un uso più consono…

  • # 35
    Amigone
     scrive: 

    purtroppo attactmode non è ancora disponibile per os x…

    Ma almeno sarebbe gratuito mentre maximus arcade costa 25$… Il mio obbiettivo sarebbe quello di utilizzare quello che ho con meno spesa possibile per l’extra… e il macmini si addice proprio a questo dato che mi è stato regalato da un amico che non lo usava più…

    Qualche spiegazione con amiga e gli hard disk in italiano per piacere, magari se fattibile anche con FS UAE… grazie in anticipo

  • # 36
    Cesare Di Mauro
     scrive: 

    @Pingui: sull’argomento avevo già scritto un paio di articoli un po’ di anni fa, che sono ancora validi. Ecco i link:

    http://www.appuntidigitali.it/16656/il-mame-e-sempre-piu-distante-dalla-gente/
    http://www.appuntidigitali.it/16679/emulazione-simulazione-e-limiti-tecnologici/

    Ti consiglio di leggerti anche i commenti, perché si parla del PCSX2 (e c’è pure un link al loro blog, MOLTO tecnico, in cui parlano proprio di più processori e GPU).

    Se hai ancora dubbi, ne possiamo parlare magari in uno di quegli articoli, senza inquinare questo.

    @Fabio: di nulla. Per me è un piacere parlare di queste cose. :)

  • # 37
    Ares17
     scrive: 

    Non ricordo il titolo del gioco Felice.
    Ricordo che si segnava tirando in diagonale dal limite dell’area oppure facendo passaggio basso dalla linea di fondo (e puntuale c’era un tuo giocatore che segnava in scivolata).
    Per saltare i difensori dovevi girarci intorno (e mi sono sempre meravigliato di come quei joistic riuscissero a superare quelle angherie.
    C’era poi lo scatto del giocatore, ma quando lo eseguivi 3-4 volte di fila andava in affanno e praticamente passaggiava.
    E’ un ricordo talmente vago che potrei inserire il gioco nei primissimi anni 80.
    La partita iniziava con la discesa in campo attraverso il tunnel e si vedeva sugli spalti la sigla della softwarehouse (konami?)

    C’era la parola soccer nel titolo?

  • # 38
    Pingui
     scrive: 

    >> sull’argomento avevo già scritto un paio di articoli un po’ di anni fa, che sono ancora validi

    Dove avete riportato esattamente le mie idee quindi è palese che c’è un senso generale di malessere

    Ti faccio notare questa tua frase:

    “E’ stato detto che l’obiettivo del team, dichiarato dallo stesso autore, è di perseguire la “preservazione” dei videogiochi originali, privilegiando l’accuratezza alla velocità di esecuzione. Una tendenza alla perfezione, quindi, senza compromessi.”

    Non ci noti un controsenso grosso come una casa ? Se lo scopo è la preservazione attraverso l’accuratezza come si può non considerare la velocità di esecuzione parte della stessa ?

  • # 39
    Cesare Di Mauro
     scrive: 

    No, perché al team di MAME interessa che il risultato finale, a livello di grafica e sonoro, sia quanto più fedele possibile all’originale, e senza alcun compromesso.

    Questa, purtroppo, è la nota dolonte, che allontana quest’applicazione dalla massa. Alla gente non interessa in alcun modo la preservazione, ma impugnare il joystick e… giocare! Esattamente quello che faceva in sala giochi.

    Ecco perché sono stati sviluppati altri emulatori che, al contrario del MAME, hanno l’obiettivo opposto: rendere quanto più possibile fruibile un gioco, anche se questo significa ricorrere ad hack o a compromessi.

    Ed è ciò che condivido, ovviamente. Da programmatore preferisco tenere conto delle esigenze dei miei utenti, piuttosto che degli ideali di perfezione che non servono a nessuno, se non ad appagare i programmatori stessi.

  • # 40
    phabio76
     scrive: 

    @Ares17
    NON è degli anni ’80
    NON è un gioco da sala
    NON è della Konami
    NON puoi far scattare il giocatore

    Nel titolo c’è la parola “Soccer” ma lo stesso gioco era noto anche con un altro titolo.
    Indizio: se ingrandisci la foto puoi notare Nicola Berti che si sta involando palla al piede…

  • # 41
    paolinux
     scrive: 

    Per chi si vuole cimentare a recuperare un vecchio cabinato da sala giochi con cablaggio jamma e vuole “godersi” i 15khz, non sono sufficienti i 15khz ma è fondamentale che i giochi girino a risoluzione originale, questo lo sottolineo perchè i giochi hanno tutti una risoluzione diversa, es. donkey kong 256*224, l’ideale è fare come ho fatto io ed evitare windows, basta acquistare una scheda che interfaccia pc al cabinato, tipo la jammasd, e usare un pc, anche non nuovissimo con un linux particolare, che si chiama groovyarcade, già settato per uscire a 15khz ma soprattutto per far uscire i giochi a risoluzione nativa, caratteristica fondamentale per avere il look anni ’80 dei vecchi giochi arcade.

  • # 42
    Pingui
     scrive: 

    >> No, perché al team di MAME interessa che il risultato finale, a livello di grafica e sonoro, sia quanto più fedele possibile all’originale, e senza alcun compromesso.

    La preservazione grafica in un gioco non è solo poter dire che lo sprite viene visualizzato con tutti i colori a posto come nell’originale ma anche che si comporti nell’ambiente circostante come l’originale quindi deve potersi muovere alla stessa velocità che si vede nell’originale. Se premo un pulsante ed “a pelle”, a memoria, so che quel determinato disegno deve fare una certa cosa in un determinato lasso di tempo, allora è preservazione grafica anche questa parte.
    Idem con patate con l’audio anzi peggio ancora: una musica è strettamente legata al tempo di esecuzione altrimenti non è la stessa musica.
    Non si può parlare di perfezione, mirare a questo ideale e poi pretendere di scegliere cosa è più o meno perfetto.
    Certi modi di ragionare da furbi lasciamoli alla politica quando va in giro a dire che la disoccupazione è bassa dimenticandosi, pretendendo di considerare solo alcuni specifici gruppi di persone, come ho letto qualche tempo fa in un dispaccio dell’ASL che quasi faceva tenerezza.

  • # 43
    gionaz
     scrive: 

    complimenti per il case del mini arcade !!! wow non è che si potrebbero avere i disegni che hai fatto magistralmente: anche io potrei farmeli tagliare al laser ;-)
    grazie e complimenti ancora
    ciao !

  • # 44
    Cesare Di Mauro
     scrive: 

    @Pingui: lo so bene. Ma la risposta che troverai dagli sviluppatori MAME è: se il tuo PC non è sufficiente per fare girare un gioco a piena velocità, o in modo che sia fruibile decentemente, compratene un nuovo più potente.

    Lo puoi vedere tu stesso dalla risposta che è stata data come motivazione alla chiusura del difetto che era stato aperto, dal mio primo articolo.

  • # 45
    Pingui
     scrive: 

    E se quel nuovo pc non esistesse ? E se qualcuno si togliesse lo sfizio di provare frogger su un blue gene e andasse a scatti pure lì ? Lo vanno a dire ad IBM che il suo mostro non è abbastanza potente ?

  • # 46
    Amigone
     scrive: 

    @Pingui:

    fossi in te aprirei una petizione online…

  • # 47
    Amigone
     scrive: 

    @Phabio76:

    il giochillo di calcio è per caso:

    “Emlyn Hughes International Soccer” o “Retee!” ?

  • # 48
    Cesare Di Mauro
     scrive: 

    @Pingui: non è un problema loro. E se si sono convinti così, nessuno gli farà cambiare idea. Ti conviene abbandonare il MAME e passare ad altro, come hanno fatto in tanti ormai.

  • # 49
    Amigone
     scrive: 

    @Cesare Di Mauro:

    Ma le versioni “non ufficiali” del M.A.M.E. tipo questa:

    http://mameplus.sourceforge.net/

    avrebbero lo stesso problema del mame ufficiale?!?

    Lo chiedo perchè io la sto utilizzando da tempo senza problemi su OS X con core 2 duo via porting con WINE…

    E’ anche vero che non ci ho mai caricato giochi pesanti vettoriali dei coin’s op di ultima generazione, ma sono sicuro che frogger non mi darebbe alcun problema anche se non l’ho mai usato…

  • # 50
    Phabio76
     scrive: 

    @Amigone
    Ah, mancato per un soffio… comunque si, è l’ultima evoluzione di Emlyn Hughes International Soccer, sempre della Audiogenic, sviluppato da Graham Blighe per Amiga nel 1993.
    Lothar Matthäus Soccer Simulation o Retee2! che dir si voglia.
    Riprendeva la stessa meccanica di gioco del capolavoro per c64 ma introduceva anche la gestione della tattica di squadra. Molto rudimentale si, però vedere il terzino che si involava sulla fascia mentre avevamo il possesso a centrocampo ci faceva sentire tutti un po’ zemaniani!

  • # 51
    Amigone
     scrive: 

    @Phabio76:

    ero convinto che “retee 2!” avesse solo la visione dall’alto per quello che non l’ho detta… ma la visione laterale non era solo nei replay?

  • # 52
    Amigone
     scrive: 

    con una piccola ricerca tra l’altro ho scoperto che il gioco era stato distribuito da ocean con diversi nomi tra gli altri:

    Lothar Matthäus interactive football

    e

    European Champions

    Un casino insomma…

    Comunque nel 1993 erano già due anni che avevo messo nell’armadio l’amiga 500… tra l’altro nel 1992/93 ero a militare… Niente più amiga…

  • # 53
    Phabio76
     scrive: 

    @gionaz
    mi fa piacere che il cabinet riscuota consensi ma le sue dimensioni (e i suoi incastri) sono strettamente legati alla componentistica interna che andrai a utilizzare… è come un vestito fatto su misura.
    Ho comunque uppato un file .eps con il disegno qui: http://www.wemedia.it/mac/3mm.eps
    Lo puoi modificare secondo le tue esigenze. Ad esempio i fori per i supporti di una scheda madre mini-itx sono standard, ma il monitor da 8″ ha di standard solo l’attacco vesa posteriore e ti sfido a trovarne uno con le stesse dimensioni.

  • # 54
    Cesare Di Mauro
     scrive: 

    @Amigone: sì, anche il MAMEPlus ha gli stessi problemi del MAME, perché riusa lo stesso codice.

    Forse è soltanto AdvanceMAME che consente di usare alcune vecchie routine: http://advancemame.sourceforge.net/

  • # 55
    Amigone
     scrive: 

    Sarà come dici Cesare, non lo metto in dubbio, ma io tutta questa pesantezza con frogger ed altri non l’ho mai notata… e non lo uso neanche nativamente su windows, facendolo girare con WINE su OS X con un core 2 duo del 2008…

    boh sarò io che non vedo il problema?!?

  • # 56
    Amigone
     scrive: 

    per sicurezza ho appena provato Frogger su mamep 0.158 su os x e il gioco non ha alcun problema se non il mio di attraversare la strada, non mi ricordavo quel giochillo così difficile… :)

  • # 57
    Pingui
     scrive: 

    Infatti il test era stato svolto su un thunderbird e neppure dei più veloci

  • # 58
    phabio76
     scrive: 

    A parte qualche titolo “difficile” come Defender, con giochi bidimensionali, diciamo fino al NeoGeo della prima metà del 90′, non ho mai riscontrato grossi problemi di performance, neanche con un Atom.
    Sto usando attualmente la versione a 64 bit del MAME e ho potuto apprezzare un guadagno di un 10-15% con l’AMD e-350 dual core @1.6Ghz

  • # 59
    Sisko212
     scrive: 

    Stò articolo ha già ricevuto 58 commenti… significa che l’argomento suscita un certo interesse….
    Perchè non ci mettiamo d’accordo e facciamo una bel padiglione del retro-computer o retro-games in qualche fiera dell’elettronica o dell’informatica ?
    Oramai allo Smau, sono 5-7 anni che non ci vado più… li c’è qualche cosa ?

  • # 60
    Felice Pescatore (Autore del post)
     scrive: 

    @Sisko212, mi aggancio alla tua proposta per informarvi che stiamo preparando un evento a tema ad Avellino per l’1-2-3 Maggio di quest’annno. Chi volesse partecipare può contattarmi in privato.

    Saluti

  • # 61
    Lori
     scrive: 

    vi consiglio questo tutorial che spiega passo passo la costruzione
    https://www.youtube.com/watch?v=juQRQx_eZIk&list=PLGBd2fq6xt_LsJwH7aN8vb5IlFI2uLPCR&index=25

  • # 62
    Amigone
     scrive: 

    Ottimo il tutorial Lori, bello anche farselo così grande…

    Ma io sono impazzito per questo, è dotato di tutto persino dei pulsanti laterali per i flippers del visual pinball:

    https://www.youtube.com/watch?v=LfbXhZZBbP8

  • # 63
    Amigone
     scrive: 

    si può seguire anche il progetto Weecade:

    http://www.koenigs.dk/mame/eng/stepweecade.htm

  • # 64
    Pingui
     scrive: 

    Il weecade lo vedo un po’ sacrificato nel ricircolo d’aria. La cpu non dovrebbe scaldare molto (non è certo un Athlon da 125W) però, vista la predilezione di un certo emulatore a fare le cose male, un buchino dietro per una ventola dedicata glielo farei stare.

  • # 65
    Phabio76
     scrive: 

    Non è male il Weecade!
    Se non avete problemi di spazio (ha un volume pari a quattro volte il mio M.A.C.) e sapete trattare bene il legno, è ottimo da mettere insieme con qualsiasi hardware usato vi capita, senza badare tanto al millimetro.
    Sarebbe preferibile usare una cpu ULV per evitare problemi di calore e ventole che ronzano.

  • # 66
    Pingui
     scrive: 

    Si ma poi ci gira frogger ? :P
    Non è che sta benedetta rana comincia a muoversi come Neo con tanto di bullet effect appena si affacciano un paio di tir ?

  • # 67
    Dais
     scrive: 

    Ciao mi puoi mandare al mio indirizzo i file x tagliare il plexiglas????? I link che hai postato non vanno

  • # 68
    Proteo
     scrive: 

    Come mai sono finiti di punto in bianco i commenti a questo interessantissimo articolo ??
    Dove siete finiti tutti ??
    Peccato ……

  • # 69
    Cesare Di Mauro
     scrive: 

    Concordo. Era un bell’articolo con parecchi punti di discussione. :-/

  • # 70
    Antonio
     scrive: 

    Ciao,
    Complimenti per il lavoro che hai fatto, è il piu bel mini cabinato che abbia mai visto.
    Ne sto progettando uno.
    Domanda:
    Ma all’interno devo per forza mettere un pc o c’è un’altro modo?
    Per la pulsantiera comandi:
    Devo usare un joystick, smontarlo e saldare i cavi sfruttando lo stesso o c’è un’altro sistema?
    Grazie

  • # 71
    Vasco
     scrive: 

    Ciao e complimenti,
    sto iniziando a realizzarne uno come questo, vorrei chiederti come hai fatto a tenere uniti i pezzi internamente visto che dalle foto non si vedono viti.
    Grazie

Scrivi un commento!

Aggiungi il commento, oppure trackback dal tuo sito.

I commenti inseriti dai lettori di AppuntiDigitali non sono oggetto di moderazione preventiva, ma solo di eventuale filtro antispam. Qualora si ravvisi un contenuto non consono (offensivo o diffamatorio) si prega di contattare l'amministrazione di Appunti Digitali all'indirizzo info@appuntidigitali.it, specificando quale sia il commento in oggetto.