JAMMA Generico - krahsdevil/Retropie-CRT-Edition GitHub Wiki



Especificaciones del Adaptador

Fabricante: Antonio Villena Sitio web
Compatible con Raspberry: SI Necesario adaptador Addon πcrt
Compatible con PC: SI ADAPTADOR GENERICO
Compatible con Retropie CRT Edition: SI Configurar segun Addon πcrt

Señales de Audio y Video

Entrada Video: Conector VGA RGB 15Khz; VGA pinout estandar
Entrada Audio: Conector mini Jack Audio estéreo
Salida Video: Conector JAMMA RGB 15Khz
Salida Audio: Conector JAMMA Audio estéreo con amplificador PAM8403

Compatibilidad Arcade - JAMMA

Interfaz JAMMA: SI JAMMA Estándar
Controles Jugadores: SI Xin Mo USB Controller XM-10 (micro-USB)

Accesorios EXTRA

Adicionalmente es necesario disponer de un adaptador Addon πCRT del mismo fabricante para extraer señal RGB 15Khz de la Raspberry Pi.

Introducción

Cuando utilizamos pantallas o monitores CRT para emular, generalmente encontramos conexiones SCART o BNCs separados para cada color y sincronismo sin embargo, podría darse el caso de que estas pantallas se encuentren dentro de una configuración JAMMA, como era el caso de las máquinas recreativas.

Esto significa, que si queremos conectar una señal 15Khz generada desde una Raspberry Pi a este tipo de monitores deberemos o bien saltarnos el cableado JAMMA para acceder directamente al monitor arcade o, por el contrario, conectarnos al conector JAMMA existente mediante una interfaz apropiada.

JAMMA

JAMMA es el acrónimo de las siglas en inglés Japan Amusement Machinery Manufacturers Association, y se refiere al grupo que definió el conector estándar de 56 pines usado como interfaz para PCBs arcade. Las definiciones del cableado y conector fueron establecidas en 1985, y también son conocidas en conjunto como arnés JAMMA. Los gabinetes Arcade cableados con éste, permiten utilizar todos los juegos que cumplan con dicha especificación. El estándar se popularizó y adoptó por la industria a finales de los años ochenta y, por lo mismo, la gran mayoría de los juegos de ese momento en adelante son compatibles. Es posible conectar placas que no cumplan con el estándar fabricando un convertidor que realice las conexiones de la manera apropiada. Esto es necesario para todas aquellas placas de manufactura previa a la definición del estándar. También existen placas que a pesar de cumplir con el cableado JAMMA, cuentan con extensiones para botones extra o controles para más de dos jugadores, éstas se conocen de manera generalizada como JAMMA+. (Ref: http://wiki.arcades.mx/index.php/JAMMA)

Hoy en día se siguen conservando muebles arcade con esta clase de configuraciones y casi siempre es requerido (si no indispensable) conservar este cableado para conectar sistemas modernos de emulación como por ejemplo, una Raspberry Pi corriendo Retropie CRT Edition.

Adaptador genérico JAMMA

Existen varias soluciones específicas para Raspberry Pi que podemos utilizar, entre ellas pi2jamma, ARpiCADE o JAMMA RGB-Pi pero en esta ocasión analizaremos uno genérico, un adaptador que puede ser utilizado tanto en PC, un sistema MiSTer o incluso Raspberry Pi.

Estamos hablando de un adaptador desarrollado por Antonio Villena quien nos ha hecho llegar una unidad para que la probemos con Retropie CRT Edition.

Características técnicas

Desde el punto de vista técnico el diseño es modular y eso a su vez, lo convierte en algo muy interesante como veremos más adelante.

No es necesario suministrar corriente al adaptador por separado ni tampoco es extraída del conector JAMMA. Cada uno de los modulos que conforman el adaptador JAMMA se alimentan por separado de las diferentes conexiones que tienen hacia la Raspberry Pi (en este caso), vía USB para el Xin Mo y vía VGA (pin 9) para el amplificador de audio lo que significa, que es necesario alimentar la Raspberry Pi a través de su alimentador convencional para que el conjunto funcione.

Identificamos cuatro conexiones en el adaptador:

  • JAMMA: Es el interfaz que utilizaremos para conectar con el arnés JAMMA del mueble arcade, desde aquí se comunica con la instalación principal que tiene nuestra recreativa: audio, video y controles.

  • Xin Mo USB Controller XM-10 (micro-USB): Se encarga de codificar las diferentes pulsaciones de los controles de nuestra recreativa hacia el dispositivo de emulación que tengamos conectado vía USB (PC, Raspberry o MiSTer).

    Es dual player lo que significa que a través del mismo controlador daremos soporte a ambos jugadores simultáneamente y además, se identificará a nivel de sistema operativo como dos joysticks diferentes.

    Tiene en torno a 4,2ms de Controller Lag lo que podríamos considerar como un dato bastante bueno. Aquí encontramos como referencia, una comparativa con otros controladores: https://inputlag.science/controller/results

  • VGA: Conectaremos el video generado en el dispositivo de emulación. Corresponde a un conector VGA estándar para señal 15Khz que es la que normalmente un monitor arcade puede reproducir.

    El sincronismo horizontal y vertical entran al adaptador JAMMA por separado (HSYNC y VSYNC) por lo que para poder generar CSYNC que es lo que necesita el monitor, este adaptador combinará ambas sincronías mediante puerta lógica XNOR.

  • Audio (Mini Jack estéreo): Conectaremos el audio que se genera en el dispositivo de emulación.

    Dispone de un módulo amplificador interno PAM8403 Clase-D alimentado a 5v (suministrados por el VGA). Podemos regular el volumen mediante un potenciómetro que también ha sido integrado en el PCB, una ruleta ubicada en uno de los laterales del adaptador JAMMA.

    Especificaciones técnicas del PAM8403:

    • Rango de alimentación 2.5 – 5.5V.
    • Potencia de salida: 3W.
    • Relación señal a ruido (SNR): 90dB.
    • Eficiencia mayor al 90%.
    • Apagado térmico.
    • Bajo ruido superior.
    • Protección para corto circuitos.
    • No requiere filtro.

Tanto el Xin Mo como el amplificador son módulos que es posible conseguir por separado por lo que en caso de fallo la reparación es realmente accesible, simplemente hay que reemplazar el módulo con problemas por uno nuevo.

Uso con Raspberry Pi

Podemos usar este adaptador con Raspberry Pi y Retropie CRT Edition ya que, en términos generales, cualquier dispositivo que sea capaz de sacar audio, video (IMPORTANTE: 15Khz) y disponga de USB, podría.

Del mismo modo, es necesario recordar que para generar una señal 15Khz VGA en la Raspberry Pi necesitaremos de un adaptador adicional para este propósito. Debemos utilizar el Addon πcrt también de Antonio Villena. A partir de aquí solo es realizar las conexiones pertinentes hacia el adaptador JAMMA y disfrutar.

Con el Addon πcrt de Antonio Villena para Raspberry Pi, la señal de audio también pasa a través del mismo conector VGA. El adaptador JAMMA está desarrollado por el mismo fabricante por lo que está preparado para este diseño propietario que recordemos, aprovecha pines disponibles del VGA para transferir audio estéreo.

Si en lugar de conectar directamente el adaptador JAMMA al Addon πcrt empleamos un alargador VGA estandar, es posible que el audio no funcione. Esto no debería ser un problema ya que Raspberry Pi dispone de un conector mini jack estéreo de salida que es el que utilizaríamos mediante un cable audio adicional para conectar con el adaptador JAMMA (ambos extremos mini jack macho). Esta conexión prevalece sobre la integrada en el conector VGA por lo que esta última siempre será anulada si una fuente de audio se conecta vía mini jack.

El Xin Mo controller debe ser configurado en raspbian para que identifique correctamente dos joysticks diferentes bajo el mismo encoder. Pese a que Retropie CRT Edition ya está preconfigurado aquí podéis encontrar la nota técnica de Retropie que indica los pasos a seguir para su correcta configuración:

https://github.com/RetroPie/RetroPie-Setup/wiki/Xin-Mo-Controller

Dispositivos como este nos permiten tener una configuración modular que se adapta a nuestras necesidades. Si dispones de una recreativa JAMMA es una opción a tener en cuenta, independientemente de si tienes Raspberry Pi o prefieres usar un PC trabajando a 15Khz.