

El VIC (Video Interface Chip) , conocido específicamente como MOS Technology 6560 ( versión NTSC ) / 6561 ( versión PAL ), es el circuito integrado responsable de generar gráficos de vídeo y sonido en el ordenador doméstico VIC-20 de Commodore. Fue diseñado originalmente para aplicaciones como terminales CRT de bajo coste , monitores biomédicos, pantallas de sistemas de control y consolas de videojuegos arcade o domésticas . [ 1 ]
El chip fue diseñado por Al Charpentier en 1977, pero Commodore no pudo encontrar un mercado para él. En 1979, MOS Technology comenzó a trabajar en un chip de video llamado MOS Technology 6564, destinado a la computadora TOI, y también había trabajado en otro chip, el MOS 6562, destinado a una versión en color de la Commodore PET . Ambos chips fracasaron debido a las limitaciones de temporización de la memoria (ambos requerían SRAM muy rápida y, por lo tanto, costosa , lo que los hacía inadecuados para la producción en masa). Antes de comenzar a usar finalmente el VIC en la VIC-20, el diseñador de chips Robert Yannes incorporó características del 6562 (un mejor generador de sonido) y del 6564 (más colores) al 6560, por lo que antes de comenzar la producción en masa para la VIC-20, había sido revisado exhaustivamente.
Sus características incluyen:
- Espacio de direcciones de 16 kB para la memoria de pantalla, caracteres y color (solo 5 kB apuntan a la RAM en el VIC-20 sin una modificación de hardware).
- 16 colores (los 8 superiores solo se pueden usar en el fondo global y en los colores auxiliares).
- Dos tamaños de caracteres seleccionables (8×8 o 8×16 bits; el ancho del píxel es de 1 bit para caracteres "hires" y de 2 bits para caracteres "multicolor").
- La resolución máxima de vídeo depende del sistema de televisión (176 × 184 es el estándar para el firmware VIC-20, aunque es posible hasta 248 × 232p/464i en la máquina NTSC y hasta 256 × 280 en la máquina PAL [ 2 ] ).
- Sistema de sonido de 4 canales (3 ondas cuadradas + ruido blanco + ajuste de volumen global)
- DMA en el chip
- convertidor analógico-digital de dos bits y 8 bits
- Compatibilidad con lápiz óptico
A diferencia de muchos otros circuitos de vídeo de la época, no ofrecía capacidad de actualización dinámica de la RAM . Por ello, el VIC-20 utilizaba chips de RAM estática (SRAM), más caros. Probablemente, esta sea la razón por la que la máquina se vendía con tan solo 5 KB de RAM. Las expansiones de memoria para el VIC-20 también utilizaban SRAM o implementaban su propio circuito de actualización.
El VIC se programaba manipulando sus 16 registros de control , cuya memoria se asignaba al rango de direcciones de memoria $9000 – $900F en el espacio de direcciones del VIC-20. Los convertidores analógico-digitales integrados se utilizaban para la lectura de la posición de las dos paletas por parte del VIC-20, que también utilizaba la función de lápiz óptico del VIC . El VIC precedió al mucho más avanzado VIC-II , utilizado por los sucesores del VIC-20, el C64 y el C128 .
Los VIC-20 con RAM de expansión tienen su memoria de vídeo (506 bytes, 22x23) en $1000 y, cuando no está presente, en $1E00. Los conjuntos de caracteres definidos por el usuario deben ubicarse dentro de los primeros 5k de la RAM del sistema. La ROM de caracteres PETSCII predeterminada está en $8000 y cada carácter ocupa 8 bytes. Se pueden usar hasta 256 caracteres a la vez. Si bien el PET tenía una barra invertida (\) en su conjunto de caracteres, esta fue reemplazada en el VIC-20 (y en todas las máquinas Commodore posteriores) por el símbolo de la libra esterlina (£).
Los caracteres programables son la única forma de crear gráficos y animaciones en el VIC, ya que el chip no tiene sprites ni un modo de mapa de bits direccionable en todos los puntos. Sin embargo, sí tiene un modo de caracteres de doble altura, por lo que, configurando correctamente una pantalla de 240 caracteres, se puede lograr un modo de mapa de bits efectivo de 160x192 en un Vic20. De los 16 colores de la paleta, ocho se pueden usar para el primer plano (según la RAM de color en $9400) y el borde, mientras que los demás se limitan al fondo y a los multicolores auxiliares. El bit más significativo (MSB) de la RAM de color es un indicador que se usa para señalar si ese carácter es multicolor o de alta resolución. Debido a la extrema pixelación de los primeros, la mayoría de los juegos del VIC-20 usan caracteres de alta resolución.
El VIC no admite desplazamiento ni interrupciones de trama como el VIC-II, pero los contadores de líneas de exploración podían consultarse para obtener un punto específico de la pantalla y así producir efectos de trama. Esta función se usó raramente en los juegos, salvo en algunos títulos como Demon Attack de Imagic .
La programación de sonido en el VIC se realiza introduciendo un valor de frecuencia en uno de los cuatro registros situados entre $900A y $900D (se desactivan escribiendo un cero en ellos). Los tres primeros son generadores de onda cuadrada con una diferencia de frecuencia de media octava entre sí, y el cuarto se utiliza para generar ruido blanco.
Registros
El VIC tiene 16 registros de lectura/escritura que se enumeran a continuación:
Paleta de colores
La paleta completa de dieciséis colores se generó a partir de variaciones de las señales YPbPr :
Nota: Y tiene 5 valores posibles (0, 0,25, 0,5, 0,75 y 1); Pb y Pr tienen 7 valores posibles (-0,9238795, -0,7071068, -0,3826834, 0, 0,3826834, 0,7071068, 0,9238795)
Lista de VIC IC
- Tecnología MOS 6560 NTSC
- Versión cerámica PAL 6561E de MOS Technology , utilizada en los primeros VIC-20.
- MOS Technology 6561-101 PAL
Véase también
Referencias
- Bagnall, Brian (2005). Al límite: El espectacular ascenso y caída del Commodore . Variant Press. ISBN 0-9738649-0-7.
- Específico
Enlaces externos
- Información sobre el chip VIC de la página de homenaje al VIC-20 de Rick Melick.
- Hoja de datos del MOS VIC (formato GIF, comprimida)
- Circuitos integrados con tecnología MOS
- chips gráficos
- chips de sonido
- VIC-20