RCade: Arcade comunitario para programadores

Fuentes: RCade: Building a Community Arcade Cabinet — frankchiarulli.com

El proyecto RCade es una iniciativa del Recurse Center, un programa de aprendizaje para programadores, que consiste en una máquina arcade comunitaria construida desde cero. El objetivo principal era crear una plataforma accesible para que los miembros de la comunidad (llamados Recursers) desarrollen y compartan sus propios juegos, tanto si están físicamente presentes como si son remotos.

La máquina RCade se distingue por su uso de un monitor CRT (tubo de rayos catódicos) de los años 80, que funciona a una resolución de 320x240, una resolución común en los juegos arcade clásicos. Para lograr esto, fue necesario superar desafíos técnicos significativos, ya que los monitores CRT arcade utilizan una frecuencia de barrido horizontal (15.7 kHz) mucho menor que los monitores VGA modernos (31.5 kHz). La conexión directa no es posible, por lo que se desarrolló una adaptación, inicialmente con un adaptador vga666 basado en una Raspberry Pi, que permitía generar las señales analógicas necesarias. Sin embargo, esta solución inicial tenía limitaciones en cuanto a la profundidad de color (18 bits), lo que resultaba en bandas de color visibles. Posteriormente, Stephen D. creó un adaptador de pantalla personalizado basado en un STM32H750, que solucionó este problema al permitir una salida de 24 bits de color, mejorando significativamente la calidad de imagen.

Además del hardware, el proyecto se centró en facilitar la contribución de juegos. Se implementó un sistema de despliegue sencillo basado en GitHub, permitiendo a cualquier Recurser enviar sus juegos a la máquina con facilidad. También se desarrolló un reproductor web y un simulador local para que los Recursers puedan probar y desarrollar sus juegos desde cualquier lugar. Actualmente, hay más de 44 juegos disponibles en la máquina.

Algunas consideraciones importantes incluyen la complejidad técnica involucrada en la adaptación del monitor CRT, la necesidad de conocimientos especializados en electrónica y programación para el desarrollo de los adaptadores, y la dependencia de componentes específicos como el RP2040 para los controladores de entrada. Aunque existen alternativas como el uso de monitores LCD, el equipo optó por el CRT para mantener la autenticidad de la experiencia arcade y fomentar la creatividad a través de las limitaciones impuestas por el hardware retro.