SNES (Super Nintendo)

A pesar de usar una CPU de 16 bits, la 65c816, la SNES no es mucho más rápida que la NES. Además, al contrario que otros sistemas de 16 bits, el bus de datos de SNES es de sólo 8 bits. La verdadera potencia de esta consola radica en sus dos procesadores gráficos, que manejan casi todo el apartado visual, y que hace posible la gran calidad técnica asociada a sus juegos. A pesar de ser una máquina no muy rápida, está muy optimizada para el juego, y el resultado práctico fue sobresaliente. Pero si dedicáramos la SNES a cualquier otra tarea, sobretodo si requiriera mucha capacidad de procesamiento, nos encontraríamos ante una máquina bastante lenta y limitada.

Respecto a la NES, supone un gran avance en todos los campos. Pasa de tener 2Kbytes de RAM a tener 128Kbytes, eliminando así la necesidad de incluír memoria RAM adicional en los cartuchos, práctica habitual en la veterana 8 bits. La SNES puede manejar muchos más colores, y tiene una calidad y capacidad de sonido que deja tirada completamente a su predecesora.

La SNES puede acceder a mucha más memoria que la NES. Es decir, puede direccionar más memoria. La NES sólo podía manejar 64Kbytes, lo que hacía necesario el uso de circuitería adicional para poder correr la mayoriía de sus juegos. La SNES puede direccionar hasta 16Mbytes. Esto se debe a que su bus de direcciones pasa de 16 a 24 bits (basta con elevar 2 al número de bits de este bus para saber cuanta memoria puede manejar un procesador). Con este aumento desaparece en la SNES la necesidad de mapeador, como requerían la NES, la Master System, la GameBoy o Game Gear, entre otros.

El diseñador de la Super Nintendo quería que fuera retrocompatible con la NES, pero por problema de costes esta idea fue desestimada. Sin embargo, el 65c816 puede funcionar emulando a un 6502, el procesador de la NES. Sin embargo, este hecho es del todo insuficiente de cara a ser retrocompatible, pues todo el apartado gráfico y sonoro es totalmente incompatible.

Respecto a su competidora, la Megadrive, era capaz de hacer juegos técnicamente superiores, con más colores, planos, mejor sonido,... y todo a pesar de que la Megadrive tiene una CPU tanto o más potente, el 68000 de Motorola. La clave de esta ventaja es el potente sistema gráfico de la consola de Nintendo, que ofrecía mayores posibilidades. Sin embargo hay ciertos aspectos gráficos donde Megradrive supera a SNES; como por ejemplo en la flexibilidad del scroll, y del orden de dibujado de los sprites. Además, cabe destacar que la programación de la SNES es ligeramente más compleja.


La consola...


CPU

La unidad central de proceso, en otras palabras, el chip encargado de procesar los programas, y de controlar el sistema. Es un 65816, una versión de 16 bits del procesador de la NES, y que funciona a 2.68 o 3.58 Mhz, en función de la tarea que esté realizando. Puede funcionar en modo de compatibilidad del 6502, es decir, de la CPU de la NES, y ejecutar el mismo código. Pero como el resto de la arquitectura de la SNES es distinta, los juegos no son compatibles.

PPU

Picture procesing unit, o en español, unidad de proceso de imagen. La SNES tiene 2 PPUs, y estos chips le otorgan a la SNES casi todo su potencial gráfico. Se encargan de manejar y dibujar los gráficos y los sprites, del scroll, etc. Han sido diseñadas específicamente para la SNES, pero al contrario que la NES, son iguales en la versión NTSC que en la PAL, con la diferencia de que uno de sus pines está puesto a 5V o a tierra.

WRAM

Memoria RAM principal, que usa como almacenamiento temporal, y que es accesible directamente desde la CPU. Se le suele llama WRAM (supongo que Work RAM, memoria de trabajo). Tiene 128Kb; los juegos rara vez requieren más. No hay que olvidar que el software en estas consolas se introducía por cartuchos, en memorias ROM, que son de muy rápido acceso, por lo que la RAM no se usa para cargar partes del juego como se hace en los sistemas de CD-ROM y ópticos en general ("loading...").

VRAM

Memoria que se usa para almacenar los gráficos en uso, los niveles y sus atributos.? Para los sprites y las paletas la consola dispone de otras pequeñas memorias adicionales en el interior del chip gráfico (de tan sólo 544 y 512 bytes respectivamente).? Sólo es accesible a través de la PPU, por lo que no cuenta como espacio dentro del mapa de memoria de la CPU.

Para poder escribir en ella, el procesador debe hacer solicitarlo a la PPU a través del uso de puertos. Puede además hacer uso de un flexible controlador de DMA de ocho caneles, para acelerar la transferencia de información entre el espacio de memoria de la CPU y el del sistema gráfico.

CIC

Seguro que mucha gente sabe que las consolas no pueden funcionar con juegos extranjeros que no hayan salido para la zona donde se compró. Realmente hay tres grandes zonas, Europa (PAL), Estados Unidos (NTSC) y Japón (NTSC).
El CIC es el mecanismo que usó Nintendo para evitar que se pudiera jugar con juegos de otras zonas en una SNES, y es un chip que va en la consola, y otro en el cartucho. Hay un CIC para versiones PAL, y un CIC para versiones NTSC. Al encender la consola, su CIC y el del cartucho se comunican. Si la consola es de una zona y el juego de otra, los CIC de consola y cartucho serán distintos, y por lo tanto, el sistema se bloquea (queda como en estado de reset indefinido).


Los cartuchos...


ROM

Es la memoria que almacena el juego. Al contrario que la NES, que usaba una ROM para almacenar los tiles (gráficos), y otra para el programa, la SNES usa una sola ROM. Y también al contrario que la NES, no necesita de mapeador, como ya he dicho. No obstante, para adaptar las necesidades de cada cartucho al mapa de memoria de la consola, el cartucho suele llevar incorporado un decodificador de direcciones, distinto en cada tipo de cartucho, y que indica al cartucho si la SNES está queriendo acceder a una u otra ROM (la ROM puede estar metida en un solo chip, o en dos), o a la memoria de salvar partidas, por ejemplo.

SRAM

Es una memoria RAM que sirve básicamente para salvar partidas, y que es opcional . No todos los juegos la tienen. Para retener la información al retirar el cartucho de la consola, éste lleva una pila que alimenta la SRAM para que no se borre, ya que es lo que ocurre cuando se desconecta una memoria RAM, o en nuestro caso cuando sacamos el cartucho.

Decoder (decodificador)

Ya comentado. Siempre que hay más de un chip en la cartucho, ya sean 2 chips para la ROM, o una ROM y una RAM para salvar partida, por ejemplo, es necesario que haya un decoder para interpretar las direcciones que da la consola, y saber a qué chip se está refiriendo.