ACTUALIZACIÓN 25-11-16Ultimo rediseño del circuito:
Cambios de resolución al vuelo:
---------------------------------------------
PRIMER MENSAJEHace un tiempo que no escribo en el foro pero me parece interesante compartir este proyecto con la comunidad y poder colaborar activamente para conseguir el mejor sistema de imagen y sonido para emulación basado en RPi+CRT.
Se trata de sacar de una Raspberry Pi señal RGB a 15Khz de forma nativa SIN conversores digitales HDMI ni reescalado que retoque la imagen, conseguiremos resoluciones nativas 100% pixel perfect a 15kHz para monitores CRT por un puerto SCART, con sonido y todo ello por el GPIO sin la necesidad de ningún cable extra.
Para conseguir este logro lo primero es sacar señal RGB por los pines del GPIO, esto necesita de la creación de un circuito que convierta los 0 y 1 de las salidas digitales del GPIO en una señal analógica, luego de esto vamos a mover también el audio del puerto mini jack de la RPi a unos pines del GPIO, el sonido sale sin filtrar con mucho ruido de alta frecuencia por lo que es necesario sumar al circuito unos filtros, con todo esto y un conector scart ya podemos montar nuestro circuito:
Ahora vamos con la parte del soft, hay que crear "custom modelines" para tener resoluciones a 15kHz por lo que es necesario editar el config.txt de la RPi y utilizar los llamados "hdmi_timing", en esta parte del soft es donde mas colaboración puede haber por parte de la comunidad ya que hay un gran numero de resoluciones a generar y es un proceso manual y de prueba y error.
De momento no es posible cambiar la resolución de la RPi al vuelo por lo que hay que reiniciar cada vez que queramos cambiar de juego a no ser que compartan una misma resolución en el caso de emuladores dedicados a un solo sistema, esto puede cambiar conforme se vaya desarrollando la parte del software, tampoco es posible utilizar de forma simultanea la salida HDMI y la RGB que estamos diseñando.
Una vez tenemos hecho un hdmi_timing correcto reiniciamos y:
320x224p 60Hz 15kHz de forma nativa, sin conversiones ni reescalados de ningún tipo.
Esta es una foto de lo primero que probé con una versión compilada para raspbian de advancemame y no comparte la misma resolución que el modeline generado por lo que hay un poco de tearing y la cámara del móvil no ayuda nada.
Pero ahí está, ahora solo queda ir haciendo el trabajo sobre los emuladores existentes para RPi y por otra parte estoy diseñando el circuito en cad para tener algo mas pequeño y practico.
Me ha parecido importante compartir con ésta comunidad el proyecto ya que EOL fue una de las primeras webs sobre temática consolera en las que participe por allá por el año 2000 y creo que es donde mas ilusión y colaboración va a tener el proyecto.