« Arquitectura del Neo Geo (index)

Arquitectura del Neo Geo

Chapter 4: Gráficos


Tabla de contenidos

  1. Diseño
    1. El chipset
  2. Organización del contenido
  3. Construcción del frame
    1. Tiles
    2. Plano fijo
    3. Sprites
    4. Resultado
    5. Emisión del frame

El Neo Geo representa la cima de los gráficos basados en tiles; su riqueza de color es comparable a la de los sistemas basados en frame buffer (que solo se volvieron asequibles cuatro años después). Sea como fuere, en materia de efectos, la Super Nintendo ha logrado hacer más con menos.

Diseño

El subsistema gráfico gira en torno al modelo habitual del Video Display Controller (VDC), aunque en este caso está rodeado de un considerable número de componentes. El fruto es una consola capaz de mostrar ingentes cantidades de sprites —tantos, de hecho, que las icónicas capas de fondo dejan de tener relevancia. Tiene sentido, pues los fondos se idearon originalmente para compensar el número limitado de sprites.

Image
Metal Slug 3 (2000).

Image
Neo Turf Masters (1996).

Image
Neo Drift Out (1996).

Image
Art of Fighting 3: The Path of the Warrior (1996).

Image
Windjammers (1993).

Ejemplos de juegos del Neo Geo.

Dicho esto, la consola emite un frame compatible con las señales NTSC y PAL (la elección depende de la región). En este caso, las dimensiones son de 320 x 224 píxeles (para NTSC) o 320 x 256 píxeles (para PAL) .

El chipset

El grupo de chips encargado de generar la imagen en la televisión ha ido evolucionando a medida que se publicaban nuevas revisiones. Con el paso de los años, SNK alternó entre NEC y Fujitsu para fabricar sus circuitos integrados.

Image
El chip 'LSPC-A2'.

Image
El chip 'NEO-B1'.

En la revisión de mi placa base, estos dos componentes forman el Video Display Processor (VDC). Ambos fueron fabricados por Fujitsu.

A efectos explicativos, comencemos por describir los chips más destacados del conjunto:

No te preocupes si la explicación anterior resulta densa. Todo esto se explicará con más calma en las siguientes secciones. Pasemos ahora a analizar la información con la que operan estos chips.

Organización del contenido

Los datos gráficos están distribuidos entre dos placas distintas. La primera es la placa base de la consola, y la otra se encuentra en el cartucho de juego. Es posible que recuerdes una disposición similar en la NES/Famicom.

Image
Arquitectura de memoria del subsistema gráfico

En la placa base encontramos:

La placa correspondiente del cartucho de juego se denomina CHA Board e incorpora lo siguiente:

Construcción del frame

Ahora que ya tienes una visión general de los componentes más importantes, déjame resumirte cómo transforma el subsistema gráfico los datos en una imagen —en otras palabras, cómo renderiza un frame—:

  1. La CPU rellena la VRAM con las referencias necesarias para la capa de sprites y la capa Fix.
  2. A partir de la información en la VRAM, el VDC lee gráficos de las C ROM y la S ROM, y los almacena en los line buffers.
  3. Mientras tiene lugar la lectura, el VDC utiliza la información de los line buffers para leer la Palette RAM. Esto hace que esta envíe los datos de color de los píxeles al Video DAC.
  4. El Video DAC emite una señal de vídeo a la televisión.

Con estos pasos en mente, analizaré en detalle cada etapa usando Art of Fighting 3 como ejemplo.

Tiles

Image
Varios tiles.

Image
Un grupo de cuatro tiles.

Algunos tiles de la C ROM.

Conocidos tradicionalmente como bitmaps de 8 x 8 píxeles, los tiles son el ingrediente principal para construir los gráficos de la cuarta generación. Por sus características particulares, el Neo Geo solo dibuja dos tipos de gráficos: fix tiles y sprites. Así, los tiles se codifican y almacenan por separado según el tipo gráfico. En ambos casos, cada píxel se codifica con 4 bits (es decir, 4 bpp), lo que permite seleccionar hasta 15 colores más transparencia.

En cuanto a la composición de color, la Palette RAM permite almacenar 256 paletas de colores . Cada paleta consta de dieciséis colores definidos como valores RGB de 16 bits. Entre todas las ranuras disponibles, hay dos entradas reservadas: el 'Color de referencia', que debe estar fijado en $8000 (negro puro), y el 'Color de fondo', que codifica un color arbitrario que se muestra cuando no hay tiles.

La CPU puede actualizar la Palette RAM en cualquier momento, pero solo debería hacerlo durante los periodos de borrado. De lo contrario, aparecerá un efecto de nieve.

Plano fijo

Image
El plano fijo con un fondo negro.

El Fixed plane es una capa de 320 x 256 píxeles (40 x 32 tiles) de ancho , que ocupa prácticamente toda la pantalla. Sus tiles son completamente estáticos y solo tienen acceso a 16 paletas de color. En la práctica, se utiliza para mostrar información 'siempre visible', de forma similar a la capa window de la Game Boy.

Al emitirse en una pantalla CRT, el área mostrada será menor. Por tanto, su zona segura mide 38 x 28 tiles.

Los tiles fijos se declaran en una región de la VRAM denominada Fix map. Este adopta la forma de una tabla de 40 x 32, y cada entrada corresponde a una posición en la pantalla.

La S ROM del cartucho almacena los tiles exclusivos del Fixed plane. El VDC solo puede direccionar hasta 128 KB, pero esta limitación puede ampliarse incluyendo un mapeador .

Sprites

Image
La capa de sprites; obsérvese cómo se utiliza para todas las áreas de la escena (no solo los dos personajes).

Como ya sabes, los sprites son tiles de movimiento libre. Sin embargo, en el Neo Geo los sprites emplean tiles de 16 x 16 píxeles, una dimensión inusual. Teniendo esto en cuenta, el VDC puede componer sprites que van desde 16 x 16 píxeles (1 x 1 tiles) hasta 16 x 512 píxeles (1 x 32 tiles). El motivo de ofrecer composiciones tan altas es que cualquier sprite también puede combinarse horizontalmente 'uniéndose' al anterior (aunque siguen contando como sprites independientes). En total, el límite es de 96 sprites por línea de escaneo y 381 por frame , una cifra elevada en comparación con sus competidores.

En cuanto a los efectos, los sprites pueden ser volteados y/o reducidos. Estos atributos se almacenan en el bloque 'rápido' de VRAM, lo que permite a la CPU actualizarlos sin una latencia apreciable.

Dada su complejidad, los sprites se codifican en cuatro áreas de la VRAM denominadas Sprite Control Blocks (SCB), cada una de las cuales almacena los siguientes atributos :

Como puede apreciarse, por razones prácticas, los tres últimos bloques se almacenan en la VRAM rápida, mientras que el primero se almacena en la VRAM lenta .

Resultado

Image
Frame resultante mostrado en pantalla.

Mientras que los competidores son conocidos por renderizar al ritmo del haz del CRT, el Neo Geo implementa un sistema de renderizado por line buffer. Con este enfoque, la consola almacena las líneas de escaneo renderizadas en dicho buffer, en lugar de enviarlas directamente a la pantalla. Como el VDC incorpora memoria suficiente para dos líneas de escaneo, esto le permite renderizar una línea mientras muestra la otra, lo que permite a los juegos actualizar los gráficos durante la visualización activa (además del H-Blank y el V-Blank).

A decir verdad, el VDC seguirá accediendo a la VRAM al mismo tiempo, por lo que la CPU debe esperar entre 12 y 16 ciclos (según la operación) antes de volver a acceder a la VRAM; de lo contrario, la operación siguiente será ignorada (de ahí el uso de dos variantes de VRAM).

Emisión del frame

Para emitir las líneas de escaneo renderizadas, el proceso varía según la variante de consola (AES o MVS).

El modelo doméstico incorpora un codificador de vídeo para generar las señales compuestas y RGB. El conector A/V es algo similar al del Master System y el MegaDrive, aunque no son intercambiables.

En el modelo MVS no existe nada parecido, ya que el protocolo JAMMA delega esa tarea al monitor del mueble. Por tanto, la placa base envía una señal RGB pura más sincronismo.


Previous: 3. CPU

Next: 5. Audio


Rodrigo Copetti © 2026 RSS Feed

Ir a la edición moderna

Inicio · Escritos · Soporte · Acerca del autor · Acerca del sitio web