Uno de los mayores mitos que existen cuando hablamos de conversiones de juegos de máquinas arcade o recreativas a sistemas domésticos, es el de las conversiones Pixel Perfect de estos, algo que a dia de hoy se sigue repitiendo por parte de ciertos «expertos» que luego no tienen ninguna duda en hablar de la pureza de jugar a los videojuegos tal y como se hacía antaño, el problema es que antaño y en el caso de muchos videojuegos, tampoco se respetaba eso, pero era más bien por limitaciones técnicas.
¿Cuál era el sistema gráfico más común en videojuegos?
El chip más influyente en los videojuegos fue el TMS9918A de Texas Instruments, hasta la llegada de las consolas de 32 bits, todos los sistemas de videojuegos que salieron buena parte de los 80 y principios de los 90 copiaron su sistema de vídeo con mejoras a medida que iba pasando el tiempo. Bueno, todos no, hay excepciones, pero todos ellos se basaban en un sistema común de dos partes compartiendo memoria en sistemas domésticos.
Ambas partes utilizaban mapas de bits o patrones de un tamaño concreto en píxeles, así como un sistema de paleta de colores que se encontraban definidos en el mismo patrón, pero componían la imagen de dos formas distintas:
- El tilemap era un búfer de imagen, pero en vez de mostrar el color de cada pixel decía que patrón, de una lista limitada, era el que iba en esa sección, así como la paleta utilizada. Los patrones solían ser de 8 x 8 píxeles en general, aunque había excepciones.
- El generador de sprites, donde en una lista aparte se marcaba la posición del sprite según su altura y posición horizontal, además de los valores para el TileMap.
- El mecanismo de prioridad, que marcaba que carácter se mostraba en pantalla en el caso que el Tilemap y el Generador de Sprites dibujaran en esa posición.
Por el momento no vamos a entrar en ese punto, dado que se requiere una entrada más extensa para explicar el funcionamiento.
Las limitaciones en los sistemas domésticos
Uno de los puntos que dificultaba la conversión Pixel Perfect de muchos árcades a sistema domésticos era que por temas de coste, el tilemap y el generador de sprites se encontraban en un mismo chip. Todo ello que significa compartir la interfaz de memoria. Por lo que para funcionar ambos sistemas tenían que intercalar el acceso a la misma.
En cambio, contemporáneos a ellas, los chips de las recreativas separaban por completo ambas funciones. Por lo que los tiempos de acceso a la RAM de vídeo de cada uno eran el doble de rápido, permitiendo no solo el doble de sprites sino que:
- No tuviese que usarse la misma lista de patrones o bitmaps para fondos y sprites.
- Poder escalar en la cantidad de sprites en pantalla y de fondos, sobre todo en esto último.
- Cada parte tiene su propia paleta de colores, en vez de tener que compartirla, lo que le daba mayor variedad cromática a los juegos.
- Gracias al uso de varios chips para la lógica sistema gráfico también se hacía posible el uso de varios chips de memoria.
Obviamente, el coste de las recreativas se disparaba. Es más, su distribución era tan limitada que usaban chips de lógica programable, los cuales eran precursores de los FPGA de antaño. Si os habéis preguntado que son la mayoría de chips de las máquinas recreativa y a qué modelo externo corresponden, pues, a ninguno, ya que eran creados expresamente por las necesidades del juego. Es más, muchos PAL/PLA, incluso dentro de la misma familia de máquinas recreativa, se modificaba.
El problema del Dot Clock
La otra limitación era que la velocidad de reloj a la que funcionaba el subsistema gráfico, el cual tenía que ir a una velocidad múltiple de la memoria de video para sincronizarse. Si bien no vamos a explicar en detalle esto, os podemos decir que por lo general la resolución horizontal de un sistema a otro cambiaba enormemente, modificando su aspecto y haciendo imposible las conversiones Pixel Perfect de las distintas recreativas.
Un ejemplo de ello son las placas arcade de Capcom en la época, famosas por Final Fight, Street Fighter 2 y muchos otros juegos. El Dot Clock de su sistema gráfico era de 8 MHz, lo que le permitía colocar 384 píxeles en una línea de escaneo, muy superior en resolución horizontal a muchos sistema de la época, lo que hacía imposible las conversiones Pixel Perfect. La solución habitual era adaptar los patrones de bits gráficos a la resolución y limitaciones de la máquina o limitar el escenario visible.
Por ejemplo, cuando hicieron la conversión de SF2 a Super NES se encontraron que la resolución era de 256 píxeles, teniendo que redibujar todos los mapas de bits para que cupieran en una pantalla de menor resolución en horizontal, pese a que la resolución vertical, 224 píxeles fuese la misma. Esto se traducía en que el ratio entre la altura y la anchura de cada pixel fuese distinto entra ambas versiones, siendo de 1,143 en formato doméstico y de 0,714 en la placa arcade de Capcom y no es el único ejemplo de ello.
Los recortes en el audio tampoco se quedaban cortos
El otro punto era la calidad de sonido, y aquí muchos van a matar quién escribe esto, pero considero que el audio en PCM, es decir, por samples, no paso a superar a la FM hasta los años 90 con la aparición del CD-ROM y el abaratamiento de la RAM. Mucha gente habla maravillas del SPC700 de SNES solo por el hecho que fue un diseño de Kutaragi, pero su limitación a 64 KB de audio y el hecho de no tener un PSG de apoyo para los efectos de audio aparte de la música, es un horror, y lo mismo se puede decir y aún más del chip Paula del Commodore Amiga. ¿Significa esto que eran malos chips? No, solo que la memoria disponible en la época no era lo suficientemente grande como para marcar diferencia.
El sistema FM, en cambio, era procedural, es decir, en vez de tener un enorme archivo de audio donde estaban los datos de lo que se había de producir, lo que se hacía era programar los sintetizados de frecuencia modulada para que reprodujeran ese tipo de sonido. Se solía asignar un canal a cada instrumento, si bien también se usaban canales PCM, estos se solían utilizar para efectos de sonido complejos que no eran reproducibles con suficiente calidad por un PSG de apoyo.
Street Fighter 2, un ejemplo de cómo el audio tampoco era pixel perfect
¿A dónde quiero llegar con todo esto? En la persecución de conversiones pixel perfect, y sin salirnos del ejemplo de Street Fighter 2, muchos afirman que la versión de SNES en los 16 bits es la más fiel a la recreativa por el hecho que suena mejor que sus dos rivales. Sin tener en cuenta que la recreativa original se basa en un sistema mucho más complejo.
Aquí se puede ver a los 8 canales FM del Yamaha 2151 o más conocido como OPM funcionando a todo pulmón, se trata de un chip de audio que dispone de 4 operadores por canal. En cuanto al chip MSM6295 de OKI se encargaba de gestionar los 4 canales ADPCM para los efectos de sonido, los cuales se podían usar tanto en la banda sonora, como en los efectos de los juegos.
Hemos de tener en cuenta que en producción musical lo normal es que cuando hay menos interpretes e instrumentos, se termine por tener que adaptar todos los elementos que componen el audio final. Esto no significa que una versión sea mejor y otra sea peor, a lo que nos referimos es que muchas recreativas nunca tuvieron conversiones pixel perfect en lo que a audio se refiere por el simple hecho que para ahorrar costes en los chips y memoria escogidos.
Genesis/Mega Drive
En cambio, en Mega Drive/Genesis pese a usar un chip PCM el acompañamiento es el PSG de tres ondas cuadradas de Master System, por lo que ya tenemos una limitación. Por otro lado, y pese a que el YM2612 también 4 operadores por canal, es una versión recortada del YM2151 soportando únicamente 6 canales.
Por lo que Capcom no pudo portar a nivel pixel perfect el audio, sino que tuvo que adaptar la banda sonora a la capacidad de audio de la consola de SEGA, por lo que ya no era fiel a la recreativa.
SNES/Super Famicom
La última versión es la de SNES, curiosamente Capcom uso la base de esta versión para hacer la de Mega Drive/Genesis. Al igual que en los otros dos casos se guarda un canal para los efectos de audio del juego.
Sin embargo, nos encontramos de nuevo con otra conversión que no es pixel perfect en cuanto al audio, pero sí más cercana a la recreativa que los 16 bits de SEGA. El motivo de ello es que utiliza samples PCM y no modulación FM.
Con esto terminamos nuestro ejemplo, ahora cuando alguien os diga que una conversión de recreativas de antaño es «pixel perfect» o sí lo leéis de algún sitio, levantad la ceja en señal de incredulidad y más si la consola es cercana en el tiempo con la versión original para arcade, siempre y cuando no usen el mismo hardware, claro está, como es el caso de Neo-Geo de SNK o la System 12 de Namco.
La verdad no entiendo eso que pensaran que eran conversiones pixel perfect, las diferencias eran notorias, aunque los TV solían ser de 14” y eso mejora la nitidez grafica al compararla a un monitor de Arcade. El caso que más me llamó la atención fue Ridge Racer de PlayStation que no se veía como la recreativa en colores ni en framerate