Newsgroup: it.comp.software.emulatori
Titolo: [FAQ] Joystick arcade per MAME [Periferiche di input alternative per gli emulatori], ver. 1.2

 Joystick arcade per MAME: periferiche di input alternative
 per gli emulatori, ver. 1.2
 -Cambiamenti rispetto alla ver. 1.1: 
Aggiornata la licenza secondo la GNU Free Documentation License,
come suggerito da Davide Inglima, qualche limatura di forma qua e la',
aggiornati i link di riferimento.
 -Cambiamenti rispetto alla ver. 1.0:
Corretti alcuni svarioni linguistici e di formattazione, aggiunto il sito
IEP segnalato da Massi cadenti (i vecchi frequentatori di IC[S]E non
potranno fare a meno di notare i due tizi insieme nei credits..
giuro che la cosa e' del tutto casuale) :-)
 -Preambolo
Considerato che negli ultimi tempi sono molto aumentate le richieste sul ng
it.comp.software.emulatori su come utilizzare joystick di tipo arcade o
<<il joypad della Playstation>> con MAME, ho pensato di coagulare in una FAQ
tutte (sono un illuso..) le informazioni passate qua nei mesi scorsi
o comunque presenti in rete.
Correzioni e integrazioni sono benaccette e inserite in eventuali versioni
successive della FAQ.
 -Licenza
Questa FAQ viene rilasciata secondo la GNU Free Documentation License
http://www.fsf.org/licenses/fdl.txt
 -Disclaimer di rito
Per quanto i progetti e gli accessori di seguito presentati siano stati
lungamente testati e usati con soddisfazione da molte persone, me compreso,
se qualcosa andasse storto nell'utilizzo e il vostro PC restasse fulminato
da un corto circuito sono solamente *cavoli vostri* e potrete prendervela
solo con la vostra sfiga e col destino cinico e baro.
I link a siti commerciali sono indicati a puro titolo di esempio
(vabbe', la verita' e' che sono il proprietario di TUTTI quei siti e voglio
farmi un po' di pubblicita', che c'e' di male??).
 -Convenzioni
D'ora in poi, per comodita', ci si riferisce indifferentemente a stick,
joystick o joypad intendendo il medesimo concetto.
Viene principalmente trattata la possibilita' di connettere periferiche
PSX-N64 per la loro maggior diffusione e semplicita' di collegamento,
ma vengono citate anche altre soluzioni e progetti per interfacce di altri
computer e console (Amiga, Neo Geo, NES, PC Engine, SNES, ecc.), vedi link
a fondo pagina.
Inoltre si tiene conto del loro uso perlopiu' con gli emulatori, ma
e' da tener presente che tutti questi prodotti possono essere usati con
*qualunque* applicazione che faccia uso di una periferica di gioco.
In parole povere: potrete usare i joystick arcade anche con Unreal T. o con
FIFA Soccer di Windows se credete.. che vi possa sembrare meraviglioso
o assurdo e' un altro discorso, mi sembra comunque importante sottolineare
che l'utilizzo non e' limitato ai soli emulatori.
 -Ringraziamenti
Al MAME Team per la fantastica macchina del tempo che e' MAME;
alle menti brillanti che hanno ideato questi progetti e interfacce.
                                    ---oOo---
Gli utenti di emulatori, in particolare di quelli arcade, si rendono
presto conto che la tastiera o il joystick standard dei PC non sono
esattamente il massimo per controllare l'azione di un gioco arcade;
la domanda che prima o poi sorge spontanea e': si puo' usare con MAME
un joystick come quello dei cabinati?
(Per la verita' ce n'e' pure un'altra: si puo' usare il joypad della PSX?)
La risposta a entrambe e': si', si puo' fare.
Esistono varie strade, con difficolta' e costi variabili.
Iniziamo dalla piu' facile, via via a salire per complessita' e impegno
di realizzazione.
Ovviamente il criterio di difficolta' e' soggettivo, quello che a me sembra
il piu' difficile, per qualcun altro potrebbe essere il piu' facile..
ad ogni modo:
 -Joystick espressamente creati per l'emulazione arcade
Alcune ditte, cogliendo la recente domanda di joystick arcade da parte
del target dei videogiocatori emulanti, hanno pensato bene di metterli
in vendita.
Ideali per chi desidera un oggetto "real arcade" di alta qualita', pronto
all'uso e che non bada a spese per averlo.
http://www.hanaho.com
http://home.iprimus.com.au/ozstick/
http://www.massystems.com
http://www.x-arcade.com
 -Adattatori per joypad PSX-N64
Esistono in commercio adattatori per porta parallela o USB che consentono
di collegare al PC questi joypad.
Qualunque negozio decente di console (online o meno) e' in grado di
procurarvelo, ad un costo variabile dai 20 ai 30 Euro.
L'installazione e' semplice: si collega l'adattatore -e relativo joypad-
alla porta, si installa il driver, si configura e si calibra la periferica
e il Sistema Operativoą la riconoscera' come un normale dispositivo di
gioco, utilizzabile quindi da qualunque emulatore o gioco che supporti
un joystick.
Mettono a disposizione fino a 10 tasti per giocatore e supportano il force
feedback (per ora solo i giochi PSX-N64 emulati e quelli DirectX);
alcuni modelli possono collegare due joypad contemporaneamente e anche
il Multitap (in versione modificata, vedi link a fondo pagina), per un
totale di quattro joypad sullo stesso PC.
E' l'opzione piu' semplice per chi non vuole preoccupazioni di fai da te:
si collega, si installa il driver e si gioca.
 -Utilizzo di una joystick PC come base per un joystick arcade
Presuppone gia' una certa manualita' e dimestichezza con schemi e saldatore.
Consiste nel procurarsi un comune stick-pad per PC, non necessariamente
il piu' costoso, ricavare la parte elettronica e i contatti elettrici
e usarlo come base di partenza per collegarci stick e pulsanti di tipo
arcade, reperibili online o presso i rivenditori/noleggiatori di arcade,
ottenendo cosi' un joystick del tutto simile nelle prestazioni (e se siete
bravi pure nell'estetica..) a quelli in vendita di cui sopra.
Ovviamente il numero di tasti disponibili sara' pari a quello presente
nello stick di partenza. 
Trattandosi di una periferica PC non e' necessario costruire interfacce
o adattatori, poiche' utilizza la porta giochi standard o quella USB in modo
gia' compatibile a livello elettrico.
Esistono decine di siti e  progetti sull'argomento, uno su tutti
http://www.arcadecontrols.com
Un altro sito: IEP, nome storico nel panorama italiano, non piu' aggiornato
ma pieno di informazioni sempre valide 
http://iep.ath.cx/faq/misc/arcade_joy/arcade_joy.htm
Se l'adattatore gia' pronto vi sembra troppo facile o volete creare il
joystick con la disposizione dei tasti e l'estetica che avete sempre
sognato, questa e' la soluzione che fa per voi.
 -Costruzione dell'interfaccia per pad PSX-N64 su porta parallela
Apparentemente piu' semplice della precedente, in realta' e' potenzialmente
in grado di causare grossi danni alla porta parallela o alla scheda madre
se non si pone la dovuta cura nella realizzazione.
E' composta di pochi componenti passivi (resistenze e diodi) e dunque
semplice da realizzare.
E' utilizzabile con pressoche' tutti i Sistemi Operativi che girano nel PC.
Richiede l'installazione di un driver (link indicato a fondo pagina).
Alcuni progetti:
http://www.alltechbox.com/pc/pc006_pg01_ita.php3
http://www.globalfox.it/psx/dexpad/dexpad.htm
http://home.t-online.de/home/stephan.hans/gamepads.htm
Ripeto ancora di controllare due, tre, quattro volte le saldature
e di essere certi di averlo fatto nel modo giusto: questi progetti implicano
l'invio di tensioni all'adattatore e un collegamento sbagliato puo'
danneggiare irreversibilmente la porta parallela o la scheda madre!
Se non siete interessati al force feedback potete tranquillamente evitare
la connessione che invia l'alimentazione ai motorini del pad, avrete
comunque un joypad funzionante in modo standard.
Se non siete sicuri di saper realizzare tutto come si deve, investite poche
decine di euro in un adattatore gia' fatto, risparmierete arrabbiature
e spese ben piu' ingenti in seguito.
Nota: per esperienza personale, non tutte le periferiche PSX si comportano
nello stesso modo col driver Directpad: i joypad originali Sony vanno bene
con i valori di default del driver, altri, quelli economici e non originali,
sembrano malfunzionare inspiegabilmente.
Nel secondo caso, prima di buttare via tutto in preda all'ira, convinti di
aver sbagliato qualche saldatura, provate a modificare, aumentandolo,
lo Scan Delay nelle Proprieta' Avanzate del driver e procedete nuovamente
alla configurazione e calibrazione: il joypad potrebbe miracolosamente
iniziare a funzionare :-)
Altri joypad, pur se di ottima qualita', ad esempio il Mad Catz, sembrano
mettere in crisi il driver indipendentemente dalle regolazioni della
calibrazione e dello scan delay.
Vorrei sapere se qualcun altro ha avuto esperienze simili e come ha risolto.
Per quanto riguarda Linux, sulla mailing list di Xmame e' stata segnalata
questa modifica per diminuire la latenza del driver gamecon.o:
---
"Edit /usr/src/linux/drivers/char/joystick/gamecon.c
near line 216 (for 2.4.17, at least) should be:
#define GC_PSX_DELAY    60              /* 60 usec */
change this to 30
then, hop down to about line 268 (again, this might vary):
         udelay(GC_PSX_DELAY * 2);
get rid of the * 2 so you have:
         udelay(GC_PSX_DELAY);
save, exit, remove gamecon.o from the same folder as gamecon.c, and
recompile the module. This should improve your fps about 200% or better
from the crappy one you're getting."
---
 -Costruzione dell'interfaccia per pad PSX-N64 su interfaccia USB
Piu' complessa rispetto alla precedente, in quanto occorre anche un
microcontroller programmabile e relativo firmware.
Ecco un progetto per chi volesse provarci
http://www.stndev.btinternet.co.uk/usbpads.htm
A differenza della versione su parallela non funziona sotto DOS puro.
- Stick a 19 (!) pulsanti a partire da una tastiera
Per chi pensa che i tasti con MAME non bastino mai, ecco un progetto
che ne mette a disposizione *molti*, evitando il cosiddetto ghosting,
ovvero quel fenomeno per cui non si possono premere piu' di un certo numero
di tasti contemporaneamente senza evitare il conflitto e la perdita di
alcuni o di tutti gli input impartiti.
Trattandosi di 19 tasti, siamo chiaramente oltre la possibilita' delle mani
di una persona, ma e' interessante per assegnare i restanti 9 tasti a un
eventuale secondo giocatore utilizzando comunque una periferica standard
gia' compatibile col PC.
http://home.t-online.de/home/stephan.hans/tricks.htm
 -Encoders di input dedicati per l'emulazione arcade
Interfacce specializzate nel gestire molteplici input simultanei, trackball
e spinner compresi. 
Ideali per chi voglia costruirsi un cabinato MAME che richieda il massimo
nella potenza e flessibilita' nella gestione degli input di tipo arcade,
senza nessuna limitazione.
http://www.arcade66.homestead.com/files/index.html
http://www.hagstromelectronics.com
http://www.happcontrols.com
http://www.oscarcontrols.com
http://www.ultimarc.com
 
 -Link di riferimento
Arcadecontrols, il piu' grande portale sull'argomento
http://www.arcadecontrols.com
Interfacciare una trackball tramite il mouse
http://www.mameworld.net/pc2jamma/trackball.html
Link a progetti vari
http://www.epanorama.net/documents/joystick/
Directpad, il primo driver per Win9x, discontinuato.
E' comunque reperibile su numerosi siti mirror
http://www.arcadecontrols.com/Mirrors/www.ziplabel.com/dpadpro/dpadpr50.zip
Driver per Windows 2000/NT/XP
http://www.ntpad.com.ar/
http://speed.dynu.com/index_e.php
Modificare il Megatap PSX per usare 4 joypad con Directpad
http://www.stndev.btinternet.co.uk/megatap.htm
Interfaccia per collegare un joystick Amiga-Atari-C64 al PC
http://fsinfo.cs.uni-sb.de/~stahl/com/index_uk.html
Connettere 6 joypad PC Engine alla porta parallela 
http://www2.burg-halle.de/~schwenke/parport.html
Driver per Linux
http://atrey.karlin.mff.cuni.cz/~vojtech/input/
Mailing list di Xmame
http://toybox.twisted.org.uk/mailman/listinfo/xmame
Google
http://www.google.com
ąWin9x, ME, 2k, XP.
 Gli emulatori DOS devono supportare direttamente l'interfaccia, come
 ad esempio MAME DOS con lo switch -joy psxlpt1.
 Per Linux e' presente un modulo apposito, gamecon.o.
                                    ---oOo---
-- 
(o<
//\   GnuPGid: B8B68C17 
V_/_  pinguino 186198 @ 
http://counter.li.org
* Questo post e` inviato tramite un sistema di autopostatore automatico. *
*  Macchina originaria di proprieta` di Massi cadenti connessa con ADSL  *
*      Consigli e problemi via e-mail: autopostatore (at) 
libero.it
      *
*  Per consigli o problemi sul contenuto del post rispondete all'autore  *
* FAQ sull'Autoposter: 
http://digilander.libero.it/massicadenti/auto.txt
 *

  -Joystick espressamente creati per l'emulazione arcade
[cut]
Ho scovato un joystick FAVOLOSO ad una fiera dell'elettronica.
E' un Genius Power Station a 6 tasti (grandi come bocce :).
L'ho pagato 5 euro.
Mi pare un buon affare, no?

...[CUT]...
Se puo' essere utile a qualcuno sul mio sito potete trovare il progetto del
joystick arcade che ho realizzato anni fa.
http://tako.altervista.org/joy_serve.php
--
Saluti, Federico.
------------------------------------
 Fede wa takoyaki ga suki desu!
 
http://tako.altervista.org/index.php
------------------------------------

 Mi pare un buon affare, no?
Argh.. hai depredato un povero rivenditore inconsapevole :-)
Un saluto ai vecchi IC[S]ERS in ascolto..


 
http://tako.altervista.org/joy_serve.php
Se per te non ci sono problemi aggiungo il link alla FAQ.


Se per te non ci sono problemi aggiungo il link alla FAQ.
Al solito, mandami (su Tiscali) la FAQ aggiornata quando e` pronta.
-- 
マッシ　カデンティ - E-mail massi.cadenti(at)
tiscali.it
 <-- NEW
Mastro di chiavi della GHOULS
Obiettore di coscienza ufficiale della BOBBLE
Dittatore di IBC-CIF (Rebirth)

 Se per te non ci sono problemi aggiungo il link alla FAQ.
Nessun problema, anzi mi fa piacere! ^_^
