El TMS9918 es un controlador de pantalla de video (VDC) fabricado por Texas Instruments e introducido en 1979. [ 1 ] En los manuales de TI se le llama "Procesador de pantalla de video" (VDP). El TMS9918 y sus variantes se utilizan en Casio PV-2000 , Coleco Adam , ColecoVision , CreatiVision , Hanimex Pencil II , MSX , Memotech MTX , NABU Personal Computer , PECOS , SG-1000 , SC-3000 , SV-318 , SV-328 , Sord M5 , TI-99/4 , Tatung Einstein , Tomy Tutor , Nichibutsu My Vision , Bit Corp. Bit 90, Frael Bruc 100, Dina 2 en 1 , Asiel Sistemas PECOS, Zemmix CPC/CPG series y MFJ-1480B. También se utilizó en complementos para los ordenadores Samsung SPC-1000 , BBC Micro , COSMAC Elf y Apple II .
El TMS9918 es un diseño avanzado para su época. Cuenta con cuatro modos gráficos basados en una disposición de píxeles de 256 de ancho por 192 de alto, que puede utilizarse como pantalla de caracteres de 40 × 24 , de 256 × 192 píxeles o de 64 × 48 píxeles, la cual consume menos memoria. Dispone de una paleta de colores fija: 15 colores más el transparente. Además, admite 32 sprites monocromáticos de 8 × 8 o 16 × 16 píxeles , numerados del 0 al 31, donde los sprites de menor número se superponen a los de mayor número. Esto permite crear efectos de capas y perspectiva. También incluye una entrada de vídeo y un pin de sincronización, lo que permite visualizar vídeo de otra fuente debajo de los gráficos generados por el chip. Esto se puede utilizar para superponer la salida de varios 9918 o para usar el 9918 como sistema para títulos y superposiciones en otras fuentes de vídeo.
Para admitir este conjunto avanzado de funciones, el 9918 requiere un acceso rápido a la memoria. Cuenta con un grupo de RAM dedicado de 16 KB , separado de la memoria principal del ordenador. TI se refería a esto como VRAM . Esto significa que la CPU solo puede actualizar la pantalla de vídeo a través de un bus de datos independiente de 8 bits, mientras que el VDP transfiere datos a través del bus hacia y desde su RAM dedicada. Esto limitaba la velocidad de comunicación entre la CPU y el 9918. También implica que la solución habitual de usar el chip de vídeo para actualizar la memoria no se puede utilizar y debe implementarse en hardware independiente. Si bien estas son complicaciones menores en comparación con los sistemas que compartían memoria en un único grupo, el resultado fue una pantalla con colores más vivos y más parecida a las pantallas de los videojuegos arcade .
El Yamaha V9938 es una versión mejorada del TMS9918.
Descripción
información general


El TMS9918 se encapsuló en un encapsulado DIP ( Dual In-line Package ) de 40 pines . La alimentación se suministró como +5 V en el pin 33, V CC , y la tierra en el pin 12, V SS . Un cristal de cuarzo que funcionaba a 10,7386 MHz, tres veces la frecuencia de ráfaga de color NTSC , se conectó entre los pines 40, XT1, y 39, XT2. La salida de vídeo se encontraba en el pin 36, COMVID, y la entrada, si se utilizaba, en el pin 35, EXTV, con la conexión de blindaje de su conector conectada a tierra. [ 3 ]
Para lograr el rendimiento de memoria necesario para admitir el funcionamiento a todo color, el sistema utilizó un área dedicada de DRAM a la que denominaron VRAM. Para operar esta memoria, el sistema incluyó un conjunto separado de pines que formaban un bus de direcciones de 8 bits en los pines 3 (AD7) al 10 (AD0) y un bus de datos de 8 bits en los pines 25 (RD7) al 32 (RD0), con soporte de un control de lectura/escritura en el pin 11, y RAS y CAS en los pines 1 y 2. [ 3 ]
La comunicación con el ordenador anfitrión se realizaba a través de un bus de datos independiente de 8 bits en los pines 17 a 24, D7 a D0. El pin 13, MODE, controla si los datos en ese bus son una dirección o datos. Para escribir en el TMS9918, la CPU primero establece el modo y escribe datos en un registro de direcciones interno; luego escribe los datos en el bus y cambia el modo para que los datos se depositen en esa dirección. Después de leer el byte de datos, el TMS9918 incrementa el puntero en el registro de direcciones, lo que permite escribir una serie de bytes sucesivamente. [ 4 ]
El TMS9918 organiza lógicamente los gráficos en varias capas: 32 capas de sprites en la parte superior, una capa de gráficos o texto, un fondo con un solo color sólido que llena la pantalla y, finalmente, una capa de vídeo externa. El plano del fondo es ligeramente más grande que los demás, por lo que llena completamente la pantalla. El sistema utiliza una paleta de 15 colores, junto con el color 0, que es transparente. En cualquier ubicación de píxel en la pantalla, el sistema comprueba si hay un objeto en particular en esa ubicación y si está configurado como transparente o no. Si es transparente, examina el siguiente objeto, y así sucesivamente, hasta llegar a la capa de vídeo externa (que a menudo no se utiliza). [ 5 ] Las siguientes descripciones están ordenadas de esta misma manera.
Sprites
Una característica clave de la serie 9918 era su compatibilidad con sprites . Utilizaba una serie de 8 bytes en la VRAM para almacenar patrones para sprites de 8 x 8 píxeles, un byte por cada línea de 8 píxeles. También tenía un segundo modo con sprites de 16 x 16 píxeles, 2 bytes por fila y 16 filas. [ 6 ] Además, cualquiera de los tamaños de sprite podía ampliarse al doble para que los sprites se vieran más grandes en la pantalla. Los datos de los patrones para los sprites, en entradas de 8 o 32 bytes, se almacenaban en un bloque de memoria conocido como tabla generadora de sprites (SGT). [ 7 ]
Además de las entradas de 8 o 32 bytes que contenían los patrones, existía una tabla de atributos de sprite (SAT) independiente que definía cómo se interpretaban y mostraban los datos. Esta incluía valores de 8 bits para la posición horizontal y vertical del sprite, un puntero al inicio de los datos de ese sprite en la SGT (que denominaban nombre ) y un código de color en los cuatro bits inferiores, para un total de 4 bytes por sprite, lo que sumaba un total de 128 bytes en la SAT. [ 6 ]
Para determinar qué color mostrar en un píxel específico de la pantalla, el sistema buscaba qué sprites eran visibles en esa ubicación y luego recorría los patrones hasta encontrar el primero que contenía un 1 en esa posición. A continuación, dibujaba el color encontrado en el SAT de ese píxel. Esto hacía que los sprites se mostraran en orden, de modo que los sprites con números más bajos aparecían encima de los de números más altos. Esto significaba, por ejemplo, que el sprite 0 siempre aparecía arriba. Si no había ningún sprite con un 1 en esa ubicación de la pantalla, ese píxel era transparente y se mostraban los gráficos de fondo. [ 8 ]
Como los sprites se dibujaron en orden, a veces es necesario cambiar ese orden para producir los efectos de superposición deseados. Este es el propósito de las entradas del campo "nombre" en el SAT. Por ejemplo, si se quiere cambiar la visualización para que el sprite 10 aparezca delante del 5, se pueden intercambiar los valores de las entradas del campo nombre de ambos, evitando así tener que mover los datos del patrón. Mediante una cuidadosa disposición del orden de los sprites, el sistema puede producir fácilmente efectos de desplazamiento pseudo-3D y de paralaje . [ 9 ]
Debido a problemas de rendimiento, solo se pueden mostrar cuatro sprites en cada línea de escaneo. Si se especifican más en una línea determinada, simplemente no se mostrarán. El VDP tiene un registro de estado que informa el número del primer sprite que se tuvo que descartar. Es responsabilidad del programador diseñar su sistema para garantizar que no se alcance este límite. Un truco para emular más sprites en una línea se puede lograr cambiando las prioridades intercambiando los valores de nombre cada dos fotogramas, de modo que se muestre un conjunto de cuatro en un fotograma y luego otro en el siguiente. Esto permite hasta ocho sprites en una línea, pero produce un parpadeo perceptible.
El indicador de colisión de sprites se activa cuando coinciden bits de patrón distintos de cero de dos sprites, incluso si alguno de ellos es transparente. El VDP no indica qué sprites han colisionado, sino simplemente que al menos dos lo han hecho. Normalmente, esto se utiliza para activar rutinas de detección de colisiones más avanzadas dentro del software, que pueden determinar la ubicación exacta de la colisión y actuar en consecuencia.
Modos gráficos
Los gráficos del 9918 se basaban en una disposición de píxeles subyacente de 256 de ancho por 192 de alto. [ 5 ] Estas cifras son típicas de los sistemas de la época que utilizaban señales de vídeo analógicas para la salida en una pantalla de escaneo progresivo . Esto se acerca a la resolución máxima alcanzada en los televisores de la época, que era de alrededor de 320 por 240, debido a la complejidad de las señales de radiofrecuencia NTSC . [ a ]
Existían cuatro formas de utilizar la capa gráfica:
El modo 0 , o modo texto , dividía la pantalla en una disposición de 40 por 24 "bloques", cada uno de 6 píxeles de ancho y 8 de alto. Cada bloque podía contener un valor de 0 a 255, que normalmente representaba un conjunto de caracteres ASCII expandido . Los patrones de cada uno de los 256 caracteres se almacenaban en la VRAM y podían modificarse cargando los valores de la VRAM mediante la CPU. Cada línea de caracteres se definía como una serie de píxeles "encendidos" o "apagados", almacenados en un byte por línea y 8 bytes por carácter. Dado que los bloques eran de 6 por 8 en la pantalla, el diseñador debía disponer los caracteres en una cuadrícula de 5 por 7 para dejar espacio entre ellos. El color de los bits "encendidos" y "apagados" en los patrones podía ser cualquiera de los 15 colores disponibles y se almacenaba en la VRAM. [ 3 ]
El Modo 1 , o Gráficos I , era esencialmente una modificación del Modo Texto que dividía la pantalla en un diseño de 32 por 24, de modo que cada bloque era de 8 por 8 píxeles en lugar de 6 por 8. El patrón para cualquier píxel dado en la pantalla se buscaba en la misma tabla de patrones de bits de 256 entradas que la que contenía los caracteres en el Modo Texto. Como había 768 ubicaciones posibles y solo 256 patrones posibles, este modo estaba limitado en los tipos de pantallas que podía producir. Gráficos I también agregó una sección separada de VRAM que almacenaba los valores de color para los píxeles encendidos y apagados para cualquier bloque dado, con 768 entradas. Esto significaba que cada bloque de 8 por 8 píxeles podía tener sus propios dos colores, pero los píxeles dentro de cualquier bloque tenían que ser todos iguales. [ 7 ] Esta no es una solución infrecuente para la época, y conduce a un problema bien conocido llamado conflicto de atributos cuando no es posible elegir colores que no hagan que los bordes de las celdas sean visibles.
El Modo 2 , o Gráficos II , fue una modificación adicional de Gráficos I, que permitía patrones separados para los 768 bloques, así como configuraciones de color separadas para cada línea dentro de los bloques. Esto significaba que cualquier bloque podía usar los 15 colores, aunque solo dos por línea. Esta pantalla permite dibujar cualquier imagen y mostrar más colores, lo que produce una pantalla direccionable por píxeles y adecuada para el dibujo de alta resolución de imágenes arbitrarias. El costo es que requiere 32 entradas de color para cada una de las 192 líneas, así como un mapa de patrones extendido con 768 entradas separadas, lo que aumenta la VRAM necesaria para almacenar todos los datos a aproximadamente 12 KB. [ 10 ]
El modo 3 , o modo multicolor , dividía la pantalla en bloques de 64 por 48, para un total de 3072 bloques. En este modo no había patrones; la celda completa estaba encendida o apagada. Cada bloque tenía una entrada en la tabla de colores, por lo que cada bloque podía seleccionar su propio color. Esto producía una pantalla de baja resolución pero con alta gama cromática utilizando menos de 3 KB de VRAM. [ 11 ]
Una limitación del sistema era que no incluía soporte para desplazamiento fino por hardware y solo permitía el desplazamiento a lo largo de los límites de las celdas, normalmente de 8 líneas de altura. El desplazamiento se realizaba moviendo el patrón ya almacenado en la VRAM y añadiendo datos para la nueva línea o columna, lo que requería cierto tiempo. Además, dado que todos los modos gráficos eran esencialmente modos de caracteres con caracteres personalizados en cada celda, los patrones que abarcaban varias celdas, como líneas o círculos, debían calcular los píxeles de cada línea de cualquier celda y cargar esos valores en los conjuntos de caracteres.
Detalles del modo de pantalla 2
Técnicamente, el modo 2 es un modo de caracteres con un conjunto de caracteres a color. La pantalla se divide horizontalmente en tres áreas de 256 × 64 píxeles, cada una con su propio conjunto de caracteres. Al imprimir secuencialmente los caracteres del 0 al 255 en las tres áreas, el programa puede simular un modo gráfico donde cada píxel se puede configurar individualmente. Sin embargo, el búfer de fotogramas resultante no es lineal.
El programa también puede usar tres conjuntos de caracteres idénticos y luego manejar la pantalla como un modo de texto con un conjunto de caracteres coloridos. Los patrones de fondo y los sprites consisten entonces en caracteres coloridos. Esto se usaba comúnmente en los juegos, ya que solo se necesitaban mover 32 × 24 bytes para llenar y desplazar toda la pantalla.
El problema de usar el modo 2 del TMS9918 radicaba en que cada área de 8x1 píxeles solo podía tener dos colores: primer plano y fondo. Estos se podían elegir libremente de la paleta de 16 colores, pero para cada área de 8x1, solo podían existir dos colores. Al renderizar una línea recta en diagonal, era fácil superar el límite de dos colores por área de 8x1 y producirse un desbordamiento de color .
Modos no documentados
Texas Instruments originalmente solo documentó los cuatro modos enumerados anteriormente. Sin embargo, el bit que habilita el modo 2 es en realidad un bit modificador para los otros modos. Habilitarlo hace tres cosas: [ 12 ]
- Amplía el tamaño de la tabla de colores para que pueda contener entradas para cada celda.
- Divide la pantalla horizontalmente en tercios.
- Cambia dos bits de dirección de las tablas de patrones y colores por bits de máscara, lo que controla si cada tercio de la pantalla tiene su propia tabla de patrones y colores (modo 2) o no (modo 1).
Al activar o desactivar este bit en el código, se habilitan tres modos adicionales. Cabe destacar que, si bien los chips TMS9918A originales admiten estos modos, es posible que los clones y emuladores no lo hagan.
- Modo 0 (Texto) + Modo 2 (Gráfico 2) : Conocido como Modo de texto de mapa de bits . Este modo permite imágenes de mapa de bits de dos colores, sin tabla de colores. Esto ahorra memoria, a costa de una resolución horizontal ligeramente reducida (el modo de texto tiene una resolución horizontal de 240 píxeles en lugar de 256 píxeles como los modos gráficos).
- Modo 1 (Gráfico 1) + Modo 2 (Gráfico 2): Conocido como Modo de mapa de bits medio . Texas Instruments documentó este modo de pantalla "no documentado" en su manual titulado "Video Display Processors Programmers Guide SPPU004" . [ 13 ] En la sección 8.4.2, " Jugar con direccionamiento de VRAM" , [ 13 ] explican cómo este modo combina el ahorro de memoria del modo 1 con el detalle de color del modo 2. Sin embargo, como indican, este modo limita el número de sprites que se pueden mostrar a 8 en lugar de 32. Por lo tanto, el término "no documentado" utilizado para describir este modo es un nombre inapropiado. No obstante, debido a que este manual no era ampliamente conocido, este modo se considera generalmente uno de los modos no documentados. En general, la única razón para usar este modo en lugar del Modo 2 es reducir el consumo de memoria.
- Modo 3 (multicolor) + Modo 2 (gráfico 2) : conocido como modo multicolor de mapa de bits. Este modo es más bien una novedad, ya que no ofrece nada más allá de lo que ya puede hacer el modo multicolor estándar.
Vídeo externo
Otra característica clave de la serie 9918 era su capacidad para leer una fuente de vídeo externa y transmitir esa señal a la salida, siempre que todos los objetos situados encima fueran transparentes. Esto permitía al sistema generar gráficos que luego podían superponerse a una fuente analógica, como una cámara de vídeo o una cinta de vídeo. Para asegurar la correcta sincronización de las dos pantallas, también era necesario introducir la señal de reloj de la fuente externa, sustituyendo así la señal de reloj que normalmente generaría un cristal de cuarzo . Asimismo, se requería un sistema para igualar la intensidad de la señal de entrada con la de salida, de modo que ninguna señal anulara a la otra. [ 14 ]
Bandera
Los chips de la familia TMS9918 utilizaban una paleta de vídeo compuesto . Los colores se generaban a partir de una combinación de valores de luminancia y crominancia para el TMS9918A y Y , y RY (Pr) y BY (Pb).Los valores corresponden al TMS9928A/9929A. [ 15 ]
Valores de la hoja de datos
El TMS9918 tiene una paleta fija de 16 colores , compuesta por 15 colores mostrados y un color "transparente", el color 0.
- Cuando se utiliza "transparente" para los sprites, se mostrará el plano gráfico.
- Cuando se utiliza "transparente" para el plano de texto/gráficos, se mostrará el fondo.
- Cuando se utiliza la opción "transparente" para el fondo, se mostrará la señal de vídeo externa (si está habilitada); de lo contrario, aparecerá en negro.
Según la "Tabla 2.3 - Asignaciones de color" de la hoja de datos, los niveles de salida son los siguientes: [ 15 ]
Nota: Los colores son meramente ilustrativos, utilizando la conversión automática de YPbPr a sRGB y asumiendo la colorimetría SMPTE C ; consulte la siguiente sección para obtener las conversiones de color correctas.
Pantalla CRT
Hasta ese momento, solo se disponía de tubos de rayos catódicos (CRT) para monitores de ordenador y televisores, y estos CRT tenían una corrección gamma . Los chips de la serie TMS9918 se diseñaron para funcionar con dichos televisores y sus CRT tenían una corrección gamma de 1,6 (nota: los CRT de los monitores Macintosh tenían 1,8 y los de los monitores de PC, 2,2). Los paneles planos digitales no tienen corrección gamma . Por esta razón, los colores del TMS9918 se ven algo pálidos, como en la primera tabla anterior. La siguiente tabla utiliza los valores corregidos por gamma, que son (escritos en decimal y hexadecimal):
Derivación:
Para convertir Y, RY y BY a RGB es necesario considerar el origen de Y:
Y = R * 0,30 + G * 0,59 + B * 0,11
Esto nos lleva a las siguientes fórmulas:
R = RY + Y B = BY + Y G = (Y - 0,30 * R - 0,11 * B) / 0,59
Pero para todos los colores que no tienen crominancia (es decir, negro, gris y blanco), RY y BY no son 0%, sino que todos tienen un desplazamiento del 47%. Por lo tanto, este desplazamiento debe restarse primero de todos los valores de RY y BY.
Luego viene la conversión a RGB, cuyos resultados deberían estar entre el 0 % y el 100 %. Sin embargo, para el color "rojo claro", el valor de R es del 113 %. Esto podría deberse a un error tipográfico en la hoja de datos, donde RY no debería ser superior al 80 %. Pero al medir las señales de salida del chip con un osciloscopio, se observa que todos los valores de la tabla son correctos. Por lo tanto, el error se encuentra dentro del chip y provoca la saturación de la señal roja . Por esta razón, este valor debe corregirse al 100 %.
Finalmente, la corrección gamma debe realizarse elevando los valores a la potencia de 1,6.
Los valores hexadecimales se pueden obtener transformando el rango de valores de 0...100 a 0...255, multiplicándolos por 2,55 y luego redondeándolos.
Familia de productos
Todos los circuitos integrados de esta familia suelen denominarse TMS9918, a veces con el sufijo "A". La "A" indica una segunda versión del chip que incorporó nuevas funciones, principalmente la adición de un modo de mapa de bits (Gráfico II).
Las características clave de este chip son, como se destacó en una presentación de 1980 de Karl Guttag (uno de los diseñadores): [ 1 ]
- 256 x 192 píxeles a todo color por pantalla
- 15 colores y/o tonalidades diferentes
- Salida de vídeo compuesto en color no entrelazado
- Cableado directo a memorias RAM dinámicas tipo RAS/CAS
- Actualización automática de memorias RAM dinámicas
- Interfaz de CPU de tipo mapeado en memoria de 8 bits de uso general
- La CPU accede a la RAM a través de VDP (no necesita DMA ).
- 32 caracteres dinámicos por pantalla
- Treinta y dos patrones de 8×8 por fila, 24 filas por pantalla.
- Modo texto con cuarenta patrones de 6×8 por fila.
- Modo multicolor con 64 x 48 cuadrados de color asignables mediante memoria.
- Entrada y control de vídeo externo
- Funcionamiento con una sola fuente de alimentación de +5 voltios.
- Tecnología de puerta de silicio de canal N estándar
TMS9918
El TMS9918 solo se utilizó en la TI-99/4; la TI-99/4A y las demás computadoras tenían la versión A del VDC.
TMS9918A, TMS9928A y TMS9929A

Las consolas TMS9918A y TMS9928A emiten una señal de vídeo de 60 Hz , mientras que la TMS9929A emite una de 50 Hz. La diferencia entre el "1" y el "2" en las versiones "TMS9918A" y "TMS9928A" radica en que la versión "1" emite vídeo compuesto NTSC , mientras que las versiones "2" (incluida la TMS9929A) emiten señales analógicas de luminancia Y y de diferencia de color RY y BY. La necesidad de estas últimas era predominante en el ámbito de los 50 Hz , incluyendo Europa, debido a los diferentes estándares de señal de vídeo PAL y SECAM . Resultaba más rentable emitir Y, RY y BY y codificarlas en PAL o SECAM en el modulador de RF , que intentar tener una consola diferente para cada estándar de color. La versión "1" también incluye una entrada de vídeo compuesto externa, lo que la convertía en un chip muy útil para usar en "tituladores" de vídeo que podían superponer texto o gráficos en el vídeo, mientras que la versión "2" no la tiene.
Las variantes originales del TMS9918 eran NMOS de carga de agotamiento y se fabricaban en un proceso de 4,5 μm; fue uno de los primeros chips NMOS de carga de agotamiento que fabricó Texas Instruments, a diferencia del microprocesador TMS9900 , que utilizaba el proceso NMOS de carga de enriquecimiento más antiguo que requería tres voltajes de alimentación. Debido al gran tamaño del chip y a la velocidad interna relativamente alta, el TMS9918 se calentaba lo suficiente como para necesitar un disipador de calor; algunos dispositivos, como la consola taiwanesa DINA (un híbrido Colecovision/SG-1000), no instalaron disipadores y sufrieron fallos de funcionamiento del chip. En 1983, Texas Instruments redujo el tamaño del chip a 3 μm, lo que hizo que funcionara a menor temperatura y ya no requiriera un disipador. Las máquinas MSX y la Sega SG-1000 utilizaban el chip TMS9918 de 3 μm, más moderno, mientras que la mayoría de las Colecovision tenían la variante original de 4,5 μm (la última serie de consolas producidas en 1985 tenía el modelo TMS9918 más nuevo).
TMS9118, TMS9128 y TMS9129

Una variante posterior de los chips de la serie TMS9918, los TMS9118 , TMS9128 y TMS9129 , se lanzaron a mediados y finales de la década de 1980, pero nunca fueron muy populares. Se modificó la función de un pin y la asignación de la memoria de vídeo permite utilizar dos chips de 16K×4 bits en lugar de los ocho chips de 16K×1 bit que requiere el TMS99xx. Por lo demás, los chips son completamente idénticos a los TMS9918A, TMS9928A y TMS9929A, respectivamente.
Presupuesto
- Memoria de vídeo: conexión directa a 4, 8 o 16 KB.
- Modos de texto: 40 × 24 y 32 × 24
- Resolución: 256 × 192
- Colores: 15 colores + transparente
- Sprites: 32, 1 color, máximo 4 por línea horizontal
Legado
El TMS9918A de Texas Instruments fue sucedido por el Yamaha V9938 , que incorporó modos de mapa de bits adicionales, sprites más coloridos , un registro de desplazamiento vertical a pantalla completa, registros de desplazamiento vertical y horizontal, un blitter de hardware y una paleta personalizable . El V9938 fue diseñado para el estándar de computadoras MSX2 y posteriormente se utilizó en una actualización de terceros para la TI-99/4A : la Geneve 9640 , una "computadora en una tarjeta".
El V9938, a su vez, fue sucedido por el V9958 , que incorporó algunos modos de alta resolución y un registro de desplazamiento horizontal de dos páginas. Estos chips se utilizaron en los sistemas MSX2+/ turboR .
Toshiba fabricó un clon llamado T6950 que no admite la función de enmascaramiento de tabla de patrones/colores no documentada en el modo gráfico 2. [ 16 ] Posteriormente, Toshiba lanzó el T7937A MSX-Engine con un VDP integrado con funciones de enmascaramiento operativas. Ambos VDP de Toshiba presentan una paleta ligeramente diferente (colores más vivos) a la de los VDP de TI.
El VDP de la consola Master System es una evolución del TMS9918. Este, a su vez, evolucionó hasta convertirse en el VDP de la consola Genesis/Mega Drive , que reemplaza la mayoría de los modos gráficos del VDP de Master System con versiones más potentes.
Véase también
- TMS34010 , un microprocesador de 1986 con instrucciones gráficas dedicadas.
- Los ordenadores Atari de 8 bits tienen un hardware gráfico comparable, introducido el mismo año.
- Motorola 6845 , un controlador de pantalla ampliamente utilizado en computadoras de 8 bits.
- Motorola 6847
- Yamaha V9938
- Yamaha V9958
- Lista de tarjetas gráficas de hardware de computadora de 8 bits
Notas
Referencias
Citas
- 1 2 "TMS9918 Simposio Técnico de Arizona Borrador - Desarrollo - ¡SMS Power!" . www.smspower.org .
- ↑ Página 65 de http://cini.classiccmp.org/pdf/byte/Hi-Res%20Graphics%20TMS9918%20BYTE%200882.pdf.pdf y http://mainbyte.com/ti99/hardware/chips/tms9918a_pins.jpg
- 1 2 3 Ciarcia 1982 , pág. 65.
- ↑ Ciarcia 1982 , pág. 66.
- 1 2 Ciarcia 1982 , pág. 58.
- 1 2 Ciarcia 1982 , pág. 62.
- 1 2 Ciarcia 1982 , pág. 63.
- ↑ Ciarcia 1982 , págs .
- ↑ Ciarcia 1982 , pág. 60.
- ↑ Ciarcia 1982 , págs .
- ↑ Ciarcia 1982 , pág. 64.
- ↑ Procesador de visualización de vídeo / Modos híbridos. , que también se utiliza.
- 1 2 Procesadores de visualización de vídeo - Guía del programador (PDF) . Texas Instruments.
- ↑ Ciarcia 1982 , pág. 57.
- 1 2 Manual de datos de los procesadores de visualización de vídeo TMS9918A/TMS9928A/TMS9929A (PDF) . Texas Instruments. Noviembre de 1982. págs. 2–17 .
- ↑ "Modo no documentado 1 + 2 : Encuesta/Discusión | Centro de recursos de MSX (Página 2/4)" .
Bibliografía
- Ciarcia, Steve (agosto de 1982). "Gráficos en color orientados a sprites de alta resolución" (PDF) . Byte . págs. 57–67 , 80.
Enlaces externos
- Ficha de datos
- Guía del programador
- Reemplazo moderno F18A
- Reemplazo de SRAM para VRAM TMS9x18
- Introducciones relacionadas con la informática en 1979
- chips gráficos
- TI-99/4A
- Consolas Coleco
- Hardware de Texas Instruments
- Hardware MSX