El controlador de pantalla de vídeo ( VDC ) MOS Technology 8568 era el procesador de gráficos responsable de la pantalla de 80 columnas [1] o RGB I en la computadora personal Commodore 128DCR . [1] [2] [3] [4] [5]
En el manual de servicio del Commodore 128, esta pieza se denomina " controlador CRT de 80 columnas ". El 8568 incorpora muchas de las características del antiguo controlador CRT monocromático 6545E más color RGBI. [2] El Commodore 128 original ("plano") y el Commodore 128D (carcasa de plástico europea) utilizaron el controlador de video 8563 para generar la pantalla de 80 columnas. El 8568 era esencialmente una versión actualizada del 8563, combinando la funcionalidad de este último con la lógica de pegamento que había sido implementada por componentes discretos en proximidad física al 8563. A diferencia del 8563, el 8568 incluía un bajo activo no utilizado (en el C-128). línea de solicitud de interrupción ( ), que se afirmó cuando el bit "listo" en el registro de estado del 8568 cambió de 0 a 1. La lectura del registro de control cancelaría automáticamente la afirmación . Debido a diferencias en las asignaciones de pines y la interfaz de circuitos, el 8563 y el 8568 no son eléctricamente intercambiables. [3] /INTR
/INTR
El Commodore 128 tenía dos modos de visualización de vídeo, que normalmente se utilizaban de forma singular, pero podían utilizarse simultáneamente si la computadora estaba conectada a dos monitores de vídeo compatibles. El chip VIC-II , que también se encuentra en el Commodore 64 , se asignó directamente a la memoria principal: la memoria de video y las CPU (los procesadores 8502 y Z80A) compartían una RAM común de 128 kB , y se accedía a los registros de control VIC-II como memoria. ubicaciones (es decir, fueron mapeadas en memoria ).
A diferencia del VIC-II, el 8568 tenía su propia RAM de video local, 64K en el modelo C-128DCR (vendido en Norteamérica) y, dependiendo de la fecha de fabricación de la máquina en particular, 16 o 64K en el C-128D. modelo (comercializado en Europa). El direccionamiento de los registros internos del VDC y de la memoria de vídeo dedicada debe realizarse por medios indirectos. Primero, el programa debe indicarle al VDC a cuál de sus 37 registros internos se debe acceder. A continuación, el programa debe esperar hasta que el VDC esté listo para el acceso, después de lo cual se puede realizar una lectura o escritura en el registro interno seleccionado. El siguiente código es típico de una lectura de registro:
ldx # regnum ;registro VDC para acceder a stx $d600 ;escribir en el bit del bucle del registro de control $d600 ;verificar el bit 7 del bucle bpl del registro de estado ;VDC no listo lda $d601 ;leer del registro VDC ...
El siguiente código es típico de una operación de escritura de registro:
ldx # regnum ;registro VDC para escribir en stx $d600 ;escribir en el bit de bucle del registro de control $d600 ;verificar el bit 7 del bucle bpl del registro de estado ;VDC no listo sta $d601 ;escribir en el registro VDC ...
Debido a este método algo engorroso de controlar el 8568, la máxima velocidad de fotogramas posible en modo de mapa de bits es generalmente demasiado lenta para los videojuegos de acción de estilo arcade, en los que se requiere una manipulación intensiva de bits de la pantalla.
Las versiones finales del 8568 tenían los códigos de revisión R9a o R9b añadidos al número de pieza, lo que aparentemente indica mejoras no documentadas.
Esta información fue adaptada de la Guía de referencia del programador del Commodore 128 [8]