Jump to content

МОП-технология 8563

VDC был разработан с офисного пакета учетом приложений . Здесь показан SpeedScript 128 текстовый процессор .

Контроллер видеодисплея 8563 ( VDC ) представлял собой интегральную схему , произведенную MOS Technology . Он использовался в компьютере Commodore 128 (C128) для создания 80-колоночного (640 × 200 пикселей ) RGB- видеодисплея, работающего вместе с VIC-II , который поддерживал графику, совместимую с Commodore 64 . В моделях DCR (а также в некоторых моделях D) C128 использовался более поздний и более технически совершенный контроллер 8568 [D] VDC .

История и характеристики [ править ]

Первоначально предназначенный для запланированного (но не выпущенного) бизнес-компьютера на базе UNIX на базе Zilog Z8000 , компания Commodore спроектировала VDC в несколько прототипов машин. Из них только Commodore 128 когда-либо производился. В отличие от более ранних видеочипов MOS, таких как популярный VIC-II, VDC имел выделенную видеопамять, 16 килобайт (16 384 байт; с возможностью расширения до 64 килобайт, 65 536 байт) в исходном или «плоском» C128 и 64 килобайта в C128DCR . Эта оперативная память не имела прямого доступа к микропроцессору .

Производить 8563 было труднее, чем большую часть остальной линейки MOS Technology, и начальная производительность была очень низкой. Первые устройства также имели серьезные проблемы с надежностью и имели тенденцию к саморазрушению из-за перегрева. [1] Кроме того, в VDC были проблемы с синхронизацией, которые приводили к сбоям в операциях косвенной загрузки и сохранения в его регистрах.

Официально VDC был только текстовым чипом, хотя внимательное чтение технической литературы MOS Technology, предоставленной первым разработчикам C128, показало, что растрового изображения возможен режим с высоким разрешением — он просто не был описан ни в одном документе. деталь. BASIC 7.0 , встроенный язык программирования C128, поддерживал только графику высокого разрешения в режиме 40 столбцов через устаревший чип VIC-II.

Эта Ultra Hi-Res демонстрация VDC возможности блиттера с помощью простой 3D-анимации каркасной модели куба демонстрирует .

режим VDC Вскоре после выпуска C128 растровый был подробно описан в книге Data Becker «Commodore 128 - Das große GRAFIK-Buch» (опубликованной в конце 1985 года в США компанией Abacus Software ) и в программе на языке ассемблера. была предоставлена ​​немецкими авторами Клаусом Лёффельманном и Дитером Вюллерсом, в которой можно было устанавливать или очищать любой пиксель или, используя BASIC для выполнения необходимых вычислений, генерировать растровые геометрические фигуры на 80-колоночном экране. [2] В феврале 1986 года, менее чем через год после Commodore 128 выпуска RUN , журнал опубликовал статью « Ultra Hi-Res Graphics », статью, описывающую растровый режим VDC и включающую программу ввода (написанную на 8502 языке ассемблера ), которая расширяла возможности Возможности BASIC 7.0 по поддержке графики высокого разрешения 640×200 с использованием 8563. [1] Авторы Лу Уоллес и Дэвид Дарус позже разработали утилиту Ultra Hi-Res в коммерческий пакет BASIC 8 . Одна из самых популярных сторонних утилит для C128, она предлагала более продвинутые возможности VDC с высоким разрешением широкой аудитории программистов.

Компания Commodore наконец предложила полную официальную документацию по VDC в Справочном руководстве программиста Commodore 128 . Режимы растрового изображения VDC широко использовались в версии C128 GEOS операционной системы .

В VDC не хватало возможностей создания спрайтов , что ограничивало его использование в игровых приложениях. Тем не менее, он содержал возможности копирования для автономного копирования небольших блоков памяти в выделенной видеопамяти. Пока VDC выполняет такое копирование, системный ЦП может продолжать выполнение кода при условии, что до завершения копирования не будет предпринято никаких других попыток доступа к VDC. Эти функции использовались ПЗУ экранного редактора C128 для быстрой прокрутки или очистки разделов экрана.

Технические характеристики [ править ]

8563 В постоянного тока и соответствующие микросхемы на материнской плате C128.
8563 В постоянного тока и соответствующие микросхемы на материнской плате C128.
  • Выход RGBI IBM CGA (RGB плюс интенсивность), совместимый со стандартом видео . *
  • Адресное пространство размером 16 или 64 килобайта для памяти дисплея, формы символов и атрибутов дисплея (выделенное, отдельно от системной памяти).
  • Разрешение видео до 720×700 пикселей в чересстрочном режиме (максимум при 64 кбайт видеопамяти). Возможны другие размеры изображения, в зависимости от потребностей программиста, например, 640 × 200 с чересстрочной разверткой, 640 × 400 с чересстрочной разверткой и т. д.
  • разрешение текста 80 × 25 символов (по умолчанию в ядре C128); возможны другие размеры, например 80 × 50 или 40 × 25.
  • 8 цветов по 2 интенсивности.

* Это относится только к моделям C128 с частотой 60 Гц, США. Машины C128 с частотой 50 Гц выдают сигнал с вертикальным обновлением 50 Гц. Хотя большинство мониторов CGA не соответствовали стандарту CGA, они могли без проблем отображать сигнал частотой 50 Гц. Однако некоторые мониторы либо не смогли разрешить сигнал, либо сумели его разрешить, но рано или поздно их схемы отклонения выходили из строя из-за электрического или термического напряжения и требовали ремонта.

Программирование [ править ]

Обращение к внутренним регистрам VDC и выделенной видеопамяти должно осуществляться косвенным путем. Сначала программа должна сообщить VDC, к какому из 37 внутренних регистров необходимо получить доступ. Затем программа должна дождаться, пока VDC будет готов к доступу, после чего можно будет выполнить чтение или запись в выбранный внутренний регистр. Следующий ассемблерный код типичен для чтения регистра:

         ldx #regnum       ;VDC register to access
         stx $d600         ;write to control register
 loop    bit $d600         ;check bit 7 of status register
         bpl loop          ;VDC not ready
         lda $d601         ;read from VDC register
         ...

Следующий код типичен для операции записи в регистр:

         ldx #regnum       ;VDC register to write to
         stx $d600         ;write to control register
 loop    bit $d600         ;check bit 7 of status register
         bpl loop          ;VDC not ready
         sta $d601         ;write to VDC register
         ...

То же самое возможно и на языке BASIC , вызывая определенные процедуры KERNAL :

Этот код типичен для чтения регистра VDC, где регистр — это число от 0 до 36, как показано ниже.

BANK15
...
SYS DEC("CDDA"),, register : RREG VDC
REM $ccda aka 52698 in decimal
PRINT VDC
         ...

этот код типичен для записи в регистр VDC, где регистр это число от 0 до 36, а значение это число от 0 до 255, которое вы хотите поместить в этот регистр.

BANK15
...
SYS DEC("CDCC"), value, register
REM $ccdc aka 52684 in decimal
         ...

Из-за этого несколько громоздкого метода управления VDC максимально возможная частота кадров в растровом режиме обычно слишком низкая для аркадных видеоигр, в которых требуется битовая обработка дисплея.

В стандартном текстовом режиме VDC ведет себя так же, как VIC-II, за исключением того, что у него 2 КБ экранной памяти вместо 1 КБ. Конфигурация по умолчанию при включении питания помещает память экрана в $0-$7FF и цветовая память на $800-$9FF и их можно перемещать в любое место памяти VDC, если она находится на границе 2 КБ. Атрибуты обрабатываются аналогично режиму высокого разрешения VIC-II с глобальным цветом фона и цветом переднего плана каждого символа, установленным индивидуально для каждой цветовой оперативной памяти. Помимо данных о цвете, последний также содержит данные атрибутов для каждого символа. Бит 4 заставляет символ мигать, если он включен, бит 5 создает подчеркнутые символы, а бит 6 инвертирует растровый шаблон символа. Бит 7 включает альтернативный набор символов. VDC может использовать до 512 символов. Если для данного символа включен флаг альтернативного символа, шаблон символа будет составлен из символов 256–511. Таким образом, если отображается символ 65, при включении флага альтернативного символа вместо него будет отображаться символ 321. Флаг альтернативного символа обычно используется, когда установлен режим верхнего/нижнего регистра — флаг включен для всех положений экрана VDC, в результате чего набор символов верхнего/нижнего регистра и его инверсные видеоверсии отображаются вместо набора символов верхнего/нижнего регистра/графики.

VDC не использует символьное ПЗУ, вместо этого шаблоны символьного ПЗУ VIC-II просто копируются в ОЗУ VDC как часть инициализации питания C128, включая шаблоны для инвертированных видеосимволов, хотя VDC способен инвертировать символы аппаратно. Для хранения шаблонов символов требуется 16 байт вместо 8, поскольку VDC имеет регулируемую высоту символов. Поскольку экран состоит из 25 строк, на практике высота символов ограничена 8 строками, что означает, что половина пространства для символьных данных остается неиспользованной и тратится впустую. Конфигурация по умолчанию при включении питания помещает символьные данные в $2000-$3FFF. $2000-$23FF содержать шаблоны для прописных/графических символов, $2C00-$33FF символы верхнего/строчного регистра, в то время как $2400-$2BFF и $3400-$3FFF содержат обратные видеошаблоны для каждого набора. Пользователь может свободно определять любые собственные символы и отображать их в памяти VDC.

Зарегистрировать листинг [ править ]

Эта информация была адаптирована из Справочного руководства программиста Commodore 128. [3]

Зарегистрироваться Шестнадцатеричный Бит 7 Бит 6 Бит 5 Бит 4 Бит 3 Бит 2 Бит 1 Бит 0 Описание
0
$00
HT7
HT6
HT5
HT4
HT3
HT2
HT1
HT0
Горизонтальный итог
1
$01
HD7
HD6
HD5
HD4
HD3
HD2
HD1
HD0
Горизонтальное отображение
2
$02
HP7
HP6
HP5
HP4
HP3
HP2
HP1
HP0
Положение горизонтальной синхронизации
3
$03
Фольксваген3
Фольксваген2
Фольксваген-1
ФВ0
HW3
HW2
HW1
HW0
Ширина вертикальной/горизонтальной синхронизации
4
$04
ВТ7
ВТ6
ВТ5
ВТ4
VT3
ВТ2
ВТ1
ВТ0
Вертикальный итог
5
$05
ВА4
ВА3
ВА2
ВА1
ВА0
Вертикальная регулировка
6
$06
ВД7
ВД6
ВД5
ВД4
ВД3
ВД2
ВД1
ВД0
Вертикальное отображение
7
$07
ВП7
ВП6
ВП5
ВП4
ВП3
ВП2
ВП1
ВП0
Положение вертикальной синхронизации
8
$08
IM1
ИМ0
Чересстрочный режим
9
$09
CTV4
CTV3
CTV2
КТВ1
Всего символов по вертикали
10
$0А
СМ1
CM0
CS4
CS3
CS2
CS1
CS0
Режим курсора, начать сканирование
11
0 миллиардов долларов
CE4
CE3
CE2
CE1
CE0
Линия сканирования конца курсора
12
$0C
ДС15
ДС14
ДС13
ДС12
ДС11
ДС10
ДС9
ДС8
Старший байт начального адреса дисплея
13
$0D
ДС7
ДС6
ДС5
ДС4
ДС3
ДС2
ДС1
ДС0
Младший байт начального адреса дисплея
14
0 долларов США
CP15
CP14
CP13
CP12
CP11
CP10
CP9
CP8
Старший байт позиции курсора
15
0 франков долларов
CP7
CP6
CP5
CP4
CP3
КП2
CP1
CP0
Младший байт позиции курсора
16
$10
ЛПВ7
ЛПВ6
ЛПВ5
ЛПВ4
ЛПВ3
ЛПВ2
ЛПВ1
ЛПВ0
Световое перо в вертикальном положении
17
$11
ЛПХ7
ЛПХ6
ЛПХ5
ЛПХ4
ЛПХ3
ЛПХ2
ЛПХ1
ЛПХ0
Горизонтальное положение светового пера
18
$12
UA15
UA14
UA13
UA12
UA11
UA10
UA9
UA8
Обновить старший байт адреса
19
$13
UA7
UA6
UA5
UA4
UA3
UA2
UA1
UA0
Обновить младший байт адреса
20
$14
АА15
АА14
АА13
АА12
АА11
АА10
АА9
АА8
Старший байт начального адреса атрибута
21
$15
АА7
АА6
АА5
АА4
АА3
АА2
АА1
АА0
Младший байт начального адреса атрибута
22
$16
CTH3
CTH2
CTH1
CTH0
CDH3
CDH2
CDH1
CDH0
Общее количество символов по горизонтали, отображение символов по горизонтали
23
$17
CDV4
CDV3
CDV2
CDV1
CDV0
Символьный дисплей по вертикали
24
$18
КОПИРОВАТЬ
РВС
СБРАТЭ
VSS4
ВСС3
VSS2
ВСС1
ВСС0
Вертикальная плавная прокрутка
25
$19
ТЕКСТ
ATR
ПОЛУ
двухместный номер
HSS3
HSS2
HSS1
HSS0
Горизонтальная плавная прокрутка
26
1 доллар США
ФГ3
ФГ2
ФГ1
ФГ0
БГ3
БГ2
БГ1
БГ0
Цвет переднего плана/фона
27
1 миллиард долларов
АИ7
АИ6
АИ5
AI4
AI3
AI2
AI1
AI0
Приращение адреса на строку
28
1 доллар США
CB15
CB14
CB13
БАРАН
Базовый адрес персонажа
29
1 динар.
UL4
UL3
UL2
UL1
UL0
Подчеркивание линии сканирования
30
1 евро
ЧМ7
ЧМ6
ЧМ5
Ч4
ЧМ3
туалет 2
туалет 1
WC0
Количество слов
31
1 миллион долларов
ДА7
ДА6
ДА5
ДА4
ДА3
ДА2
ДА1
ДА0
Регистр данных
32
$20
ВА15
ВА14
ВА13
ВА12
ВА11
ВА10
ВА9
ВА8
Старший байт стартового адреса блока
33
$21
БА7
ВА6
ВА5
ВА4
ВА3
ВА2
ВА1
ВА0
Младший байт начального адреса блока
34
$22
ДЕБ7
ДЕБ6
ДЕБ5
ДЕБ4
ДЕБ3
ДЕБ2
ДЕБ1
ДЕБ0
Включение дисплея, начало
35
$23
ДИ7
ДИЭ6
ДИ5
ДИЭ4
ДИЭ3
ДИЭ2
ДИЭ1
ДИ0
Дисплей Включить Конец
36
$24
СРБ3
СРБ2
СРБ1
ДРР0
Частота обновления DRAM

Ссылки [ править ]

  1. ^ «Commodore.ca | Продукты | Commodore 128, 128D, 128DCR, история, руководства, изображения и временная шкала» . www.commodore.ca . Архивировано из оригинала 26 июля 2003 г.
  2. ^ Глава 3.9.1 «VDC HI-RES-Grafik», стр. 213ff.
  3. ^ Commodore Capital, Inc., (1986). Справочное руководство программиста Commodore 128. Нью-Йорк, штат Нью-Йорк: Bantam Books, Inc.

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: d8382e5f58a4dc1405c0e89214e25cb0__1692769320
URL1:https://arc.ask3.ru/arc/aa/d8/b0/d8382e5f58a4dc1405c0e89214e25cb0.html
Заголовок, (Title) документа по адресу, URL1:
MOS Technology 8563 - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)