Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
MOS 6569R3 (версия PAL) на основной плате C64

ВИК-II ( видеоинтерфейс Чип II ), в частности , известны как МОП - технологии 6567/8562/8564 ( NTSC версий), 6569/8565/8566 ( PAL ), является микрочип поставлена задача генерации Y / C видеосигналов ( в сочетании с композитный видеосигнал в модулятор RF ) и сигналы обновления DRAM в домашних компьютерах Commodore 64 и C128 .

Преемник оригинальной VIC MOS (использованной в VIC-20 ), VIC-II был одним из двух чипов, в основном ответственных за успех C64 (другой чип - 6581 SID ).

История развития [ править ]

Микросхема VIC-II была разработана в основном Элом Шарпентье и Чарльзом Винтерблом из MOS Technology, Inc. в качестве преемника MOS Technology 6560 «VIC» . Команда MOS Technology ранее не смогла произвести два графических чипа под названием MOS Technology 6562 для компьютера Commodore TOI и MOS Technology 6564 для Color PET из-за ограничений скорости памяти. [1]

Чтобы построить VIC-II, Шарпантье и Винтербл провели обзор рынка современных домашних компьютеров и видеоигр , перечислив текущие функции и те функции, которые они хотели иметь в VIC-II. Идея добавления спрайтов пришла от компьютера Texas Instruments TI-99 / 4A и его графического сопроцессора TMS9918 . Идея поддержки обнаружения столкновений пришла от Mattel Intellivision . Atari 800 также добывал желаемые функции. [2] [3] Около 3/4 поверхности чипа используется для функций спрайта. [4]

Микросхема была частично разложена с использованием средств автоматизации электронного проектирования от Applicon (теперь входит в состав UGS Corp. ), а частично вручную на пергаментной бумаге . Конструкция была частично отлажена путем изготовления микросхем, содержащих небольшие подмножества конструкции, которые затем можно было тестировать отдельно. Это было легко, поскольку у MOS Technology была лаборатория исследований и разработок и завод по производству полупроводников в одном месте. [5] Чип был разработан по технологии 5 микрометров. [2]

Работа над VIC-II была завершена в ноябре 1981 года, когда Роберт Яннес одновременно работал над микросхемой SID . Оба чипа, как и Commodore 64 , были готовы к выставке Consumer Electronics Show в первые выходные января 1982 г. [6]

Особенности VIC-II [ править ]

Некоторые графические режимы на 64-м действительно странные, и у них нет аналогов Atari или Apple, например, возможность изменять цвет основы персонажа на экране. Это дало нам много цветовых возможностей, которые не использовались.

-  Крейг Нельсон из Epyx, 1986 [7]
  • 16 КБ адресного пространства для памяти экрана, символов и спрайтов
  • Разрешение видео 320 × 200 пикселей (160 × 200 в многоцветном режиме)
  • Разрешение текста 40 × 25 символов
  • Три режима отображения символов и два режима растрового изображения
  • 16 цветов
  • Одновременная обработка 8 спрайтов на строку сканирования , каждый размером 24 × 21 пиксель (12 × 21 многоцветный)
  • Прерывание растра (подробнее см. Ниже)
  • Плавная прокрутка
  • Независимое динамическое обновление ОЗУ
  • Мастеринг шины для системной шины в стиле 6502 ; ЦП и VIC-II обращаются к шине во время чередующихся половинных циклов (VIC-II останавливает ЦП, когда ему требуются дополнительные циклы)

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

MOS 6567 VIC-II разводка .

Обратите внимание, что ниже адреса регистров указаны так, как их видит ЦП в C64. Чтобы получить номера регистров, которые обычно указаны в таблицах данных (т. Е. Начиная с 0), следует опустить начальную букву «D0».

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

Supratechnic , программа для набора текста , опубликованная бюллетенем COMPUTE! В ноябре 1988 г., демонстрирует осторожное использование растровых прерываний для отображения информации за пределами стандартных границ экрана (здесь: верхняя и нижняя границы).

VIC-II программируется путем манипулирования своими 47 регистрами управления (по сравнению с 16 в VIC), память отображается в диапазоне $ D000– $ D02E в адресном пространстве C64. Из всех этих регистров, 34 касаются исключительно спрайт контроля (спрайты называют мобов, от «Подвижные блоки объектов», в VIC-II документации). Как и его предшественник, VIC-II обрабатывает ввод с помощью светового пера и с помощью стандартного символьного ПЗУ C64 предоставляет оригинальный набор символов PETSCII с 1977 года на дисплеях с такими же размерами, что и серия PET с 40 столбцами .

Перезагружая регистры управления VIC-II с помощью машинного кода, подключенного к программе обработки растровых прерываний (прерывание строки развертки), можно запрограммировать микросхему на генерацию значительно более 8 одновременных спрайтов (процесс, известный как мультиплексирование спрайтов ), и, как правило, дать каждой программе -определяемый фрагмент экрана с разными параметрами прокрутки, разрешения и цвета. Аппаратное ограничение в 8 спрайтов на строку сканирования можно было бы еще больше увеличить, позволив спрайтам быстро включаться и выключаться. Чтобы раскрыть возможности VIC-II, необходимо владеть растровым прерыванием. Многие демонстрации и некоторые более поздние игры устанавливали фиксированный «шаг блокировки» между ЦП и VIC-II, так что регистрами VIC можно было манипулировать точно в нужный момент.

Графика персонажей [ править ]

C64 поставлялся с набором символов PETSCII в ПЗУ размером 4 КБ, но, как и VIC-20 до него, фактические данные для символов считывались из памяти в указанном месте. Это место было одним из регистров VIC-II, что позволяло программистам создавать свои собственные наборы символов, помещая соответствующие данные в память; каждый символ представлял собой сетку 8x8, байт представлял 8 битов по горизонтали, поэтому для одного символа требовалось 8 байтов, и, таким образом, полный набор из 256 символов использовал в общей сложности 2048 байтов. Теоретически можно использовать до восьми наборов символов, если были заполнены все 16 КБ видеопамяти. [8]

В дополнение к кодировкам VIC-II также использует 1000 байтов для хранения 25 строк по 40 символов в строке, по одному байту для каждого символа, что в конфигурации по умолчанию при включении питания стоит от 400 до 7E8 долларов. [8] Цветное ОЗУ доступно как биты с 8 по 11 видеоматрицы; [9] в 64 и 128, он расположен в пространстве ввода-вывода по адресу $ D800- $ DBFF и не может быть перемещен из этого места. Он содержит значения цвета 1 (цвет 3 в многоцветном режиме) каждого символа.

Символьное ПЗУ отображается в двух из четырех «окон» VIC-II, в $ 1000-1FFF и 9000- $ 9FFF, хотя ЦП не может видеть его там (символьное ПЗУ может быть переключено в $ D000- $ DFFF, где он виден ЦП, но не VIC-II). Таким образом, буферы графических данных или видео не могут быть размещены в $ 1000–1FFF или 9000–9FFF, потому что VIC-II вместо этого увидит символьное ПЗУ. Поскольку эти области ОЗУ не могли использоваться графическим чипом VIC-II, они часто использовались для музыкальных / звуковых эффектов (чип SID). C64 может иметь ОЗУ и ПЗУ по одному и тому же адресу в памяти, но ЦП «видит» одно, а чип VIC-II «видит» другое.

В символьном режиме высокого разрешения по умолчанию передний план каждого символа может быть установлен индивидуально в цветном ОЗУ. В режиме многоцветных символов цвет 3 ограничен первыми восемью возможными значениями цвета; четвертый бит затем используется как флаг, указывающий, должен ли этот символ отображаться с высоким разрешением или многоцветным, что позволяет смешивать оба типа на одном экране. [8] Цвета 1 и 2 устанавливаются регистрами в $ D022 и $ D023 и являются глобальными для всех символов. [8]

Если используется режим расширенного цвета фона, два верхних бита кода символа используются для выбора одного из четырех регистров цвета фона. Это позволяет использовать четыре разных цвета фона на экране, но за счет разрешения только 64 различных символов вместо 256. Поскольку это ограничение, игры редко использовали его.

Режим растрового изображения [ править ]

Добавление режима растрового изображения с адресацией всех точек было одной из основных целей команды разработчиков Commodore, поскольку VIC-I не обладал такой функцией. Однако, чтобы использовать как можно меньше дополнительных схем, они организовали его так же, как и в символьном режиме, то есть плитки 8x8 и 4x8. Для растровой графики требуется страница размером 8 КБ для данных пикселей, и каждый байт соответствует одной строке из восьми или четырех пикселей. Следующий байт - это строка под ним и после 8-го ряда, возвращающаяся к вершине следующей плитки.

В растровых изображениях с высоким разрешением экранная RAM используется для хранения цветов переднего плана и фона каждой плитки (старший и младший полубайт каждого байта). Это единственный режим VIC-II, в котором не используется цветовая память в $ D800 или регистр цвета фона в $ D021.

Режим многоцветного растрового изображения позволяет использовать три цвета на плитку (четвертый - цвет фона, установленный в $ D021). Цвета 1 и 2 выбираются битами в экранной RAM (так же, как и в случае с растровыми изображениями), а третий - из цветной RAM.

Несмотря на высокий уровень цветовой детализации и возможности адресации всех точек в режиме растрового изображения, он, как правило, непрактичен для игровой графики из-за необходимости большого количества системных ресурсов (8 КБ для пиксельных данных плюс значительно большее количество циклов ЦП для изменения каждого плитка) и обычно не может быть прокручена. Таким образом, его чаще всего можно увидеть на экране загрузчика, а иногда и на титульном экране.

Спрайты [ править ]

Спрайты VIC-II могут быть монохромными 24x21 или многоцветными 12x21. Подобно символьной графике, последние имеют один индивидуальный цвет для каждого спрайта и два глобальных. VIC-II имеет восемь спрайтов, каждый из которых использует для хранения 64 байта памяти, но, с некоторыми ограничениями, он может отображать намного больше. Мультиплексирование спрайтов - это распространенный метод вывода на экран более восьми изображений (хотя по-прежнему их может быть не более восьми на строку развертки). Счетчики строк сканирования VIC-II опрашиваются до тех пор, пока на экране не будет достигнута желаемая точка, после чего программа быстро меняет координаты спрайта. Этот программный трюк и другие обходные пути могут привести к отображению на экране более двадцати спрайтов за один раз. Однако для демонстрации лимит значительно более гибкий.

Теоретически максимальное количество одновременно видимых спрайтов составляет 256 (при условии, что страница VIC-II заполнена целиком). К ним обращаются с помощью номера блока для ссылки на каждый шаблон спрайта в памяти, начиная с 0 и заканчивая 255 ($ FF), в зависимости от их положения на странице видео. (если используется второй видеобанк (с номерами 0, 1, 2 и 3), блок 0 будет относиться к спрайту, хранящемуся в $ 4000, а блок 255 будет в $ 7FC0).

Каждый спрайт может быть увеличен в два раза по вертикали, горизонтали или по обоим направлениям. Это не увеличивает спрайт (кроме визуального) и не добавляет к спрайту больше пикселей, а просто увеличивает масштаб существующих пикселей.

Поскольку регистр горизонтального положения для спрайтов составляет один байт и ограничен максимальным значением 255, он не может охватывать все 320 пикселей области экрана VIC-II, поэтому для этого предусмотрен дополнительный регистр, называемый флагом наиболее значимого байта.

$ D01E и $ D01F содержат регистры столкновений фона и спрайтов со спрайтами. Первый используется редко, потому что он не может предоставить информацию о конкретном фоновом объекте, которого касается спрайт.

$ D01B содержит регистр приоритета Sprite To Background, который используется для управления перемещением спрайта позади или перед фоновыми объектами. Когда спрайт входит в то же пространство, что и другой спрайт, спрайт с меньшим номером всегда будет проходить над спрайтом с большим номером.

Прокрутка [ править ]

Для прокрутки экрана символов VIC-II устанавливается в режим с 38 столбцами и / или 24 строками через регистры в $ D011 и $ D016. Это создает внеэкранный буфер, в который помещается строка прокручиваемых символов. Регулируя биты прокрутки в вышеупомянутых регистрах, одна строка может перемещаться на экране, после чего она повторяется, если в буфер не помещается новая строка. Цветное ОЗУ прокручивается одновременно с ОЗУ экрана и работает таким же образом.

Прокрутка VIC-II - относительно сложная задача с интенсивным использованием ЦП, хотя программисты игр C64 нередко обманывали, создавая графику таким образом, чтобы цветная RAM оставалась статичной. Другой стандартный прием - закрыть нижние или верхние 25% экрана счетчиком очков, чтобы уменьшить количество выполняемой прокрутки. Наконец, обычно необходимо использовать дополнительный 1 КБ ОЗУ для записи символьных данных, а затем «копировать» их в ОЗУ экрана, чтобы предотвратить разрыв экрана, хотя это невозможно сделать с ОЗУ для цветных изображений.

В конце коммерческой жизни C64 был обнаружен эксплойт, известный как VSP (Virtual Screen Positioning), который включал манипуляции с управляющими битами в $ D011 для обеспечения быстрой прокрутки при гораздо меньшей стоимости цикла ЦП, чем стандартные регистры прокрутки, однако это требовало осторожности. , циклическое кодирование и не работало надежно в некоторых ревизиях VIC-II, также его можно было использовать только для горизонтальной прокрутки. Он особенно используется в Mayhem in Monsterland .

Растровые прерывания [ править ]

Использование растровых прерываний - важная часть программирования игр на C64. При включенном по умолчанию состоянии компьютера первая микросхема CIA технологии MOS генерирует маскируемое прерывание (IRQ) 60 раз в секунду (NTSC) или 50 (PAL), которое отправляет CPU обработчику IRQ ядра по цене $ EA31. Обработчик подтверждает IRQ CIA, обновляет часы, сканирует клавиатуру и мигает курсором на BASIC.

Игры обычно отключают прерывание ЦРУ и вместо этого настраивают VIC-II для генерации прерываний при достижении определенной строки сканирования, что необходимо для прокрутки разделенного экрана и воспроизведения музыки. Игра переназначает вектор IRQ в $ 0314 / $ 0315 на свой растровый обработчик, который выполняет эти функции, а затем, при необходимости, выполняет инструкцию JMP $ EA31, чтобы вернуть управление ядру.

В некоторых играх используется только один IRQ; однако вложенные более распространены и улучшают стабильность программы. В этой настройке IRQ переназначается на вторую процедуру и так далее для каждой, пока последняя не восстановит его по адресу первого IRQ. Когда используются вложенные IRQ, в цепочке требуется только одна инструкция JMP $ EA31, а остальные можно завершить с помощью JMP $ EA81, который просто переходит в конец обработчика ядра. Также игры нередко отключают ядро ​​и вместо этого используют собственный обработчик IRQ. NMI может использоваться для дополнительного потока прерывания, хотя нежелательные побочные эффекты могут возникнуть в результате случайного нажатия клавиши Restore, поскольку при ее нажатии запускается NMI.

VIC-II может также генерировать растровое прерывание из регистров коллизий, но эта функция используется редко.

Отображение памяти [ править ]

VIC-II имеет 14-битную адресную шину и может использовать любой из четырех сегментов 16k пространства памяти C64 для видеоданных. Чтобы справиться с этим, биты порта CIA вносят два дополнительных адресных бита. $ 0000- $ 3FFF - это значение по умолчанию при включении питания. Второй сегмент ($ 4000–7FFF) обычно является лучшим выбором для программирования на BASIC, поскольку это единственный сегмент, который представляет собой полностью свободную RAM без отображаемых на него ПЗУ или регистров ввода / вывода. Четвертый сегмент ($ C000– $ FFFF) также является хорошим выбором при условии использования машинного языка, так как ПЗУ ядра должны быть отключены, чтобы ЦП получил доступ для чтения, и он позволяет избежать разрозненного программного кода и данных, которые могут возникнуть в результате используя $ 4000- $ 7FFF. Обратите внимание, что графические данные могут свободно храниться под BASIC ROM в $ A000- $ BFFF, ROM ядра в $ E000- $ FFFF или регистрах ввода / вывода и цветном RAM в $ D000– $ DFFF,поскольку VIC-II видит только RAM, независимо от того, как настроено отображение памяти CPU; Символьное ПЗУ отображается только в первом и третьем сегментах, поэтому, если используется сегмент два или четыре, программист должен предоставить свои собственные символьные данные. ОЗУ экрана, растровая страница, спрайты и наборы символов должны занимать одно и то же окно сегмента (при условии, что биты CIA не изменяются посредством прерывания строки развертки). Последние шесть байтов системной памяти ($ FFFA- $ FFFF) содержат IRQ, NMI и векторы сброса, поэтому, если верхняя часть памяти используется для хранения набора символов или данных спрайта, необходимо будет пожертвовать одним символом или спрайтом. чтобы избежать перезаписи векторов.программист должен предоставить свои собственные символьные данные. ОЗУ экрана, растровая страница, спрайты и наборы символов должны занимать одно и то же окно сегмента (при условии, что биты CIA не изменяются посредством прерывания строки развертки). Последние шесть байтов системной памяти ($ FFFA- $ FFFF) содержат IRQ, NMI и векторы сброса, поэтому, если верхняя часть памяти используется для хранения набора символов или данных спрайта, необходимо будет пожертвовать одним символом или спрайтом. чтобы избежать перезаписи векторов.программист должен предоставить свои собственные символьные данные. ОЗУ экрана, растровая страница, спрайты и наборы символов должны занимать одно и то же окно сегмента (при условии, что биты CIA не изменяются посредством прерывания строки развертки). Последние шесть байтов системной памяти ($ FFFA- $ FFFF) содержат IRQ, NMI и векторы сброса, поэтому, если верхняя часть памяти используется для хранения набора символов или данных спрайта, необходимо будет пожертвовать одним символом или спрайтом. чтобы избежать перезаписи векторов.необходимо будет пожертвовать одним персонажем или спрайтом, чтобы избежать перезаписи векторов.необходимо будет пожертвовать одним персонажем или спрайтом, чтобы избежать перезаписи векторов.

Регистры [ править ]

VIC-II имеет 47 регистров чтения / записи, перечисленных ниже:

Цвета [ править ]

Микросхема VIC-II имеет фиксированную 16-цветовую палитру, показанную выше.

В режиме многоцветных символов (160 × 200 пикселей, что используется в большинстве игр) символы имели 4 × 8 пикселей (символы все еще были примерно квадратными, поскольку пиксели были двойной ширины) и 4 цвета из 16 цветов. Четвертый цвет был одинаковым для всего экрана (цвет фона), а остальные 3 можно было установить индивидуально для каждой такой области 4 × 8 пикселей. Два цвета загружались из активного текстового экрана, а третий - из цветного ОЗУ. Спрайты в многоцветном режиме (12 × 21 пиксель) имели три цвета: два общих для всех спрайтов и один индивидуальный. Художнику приходилось подбирать общие цвета так, чтобы сочетание с отдельными цветами производило красочное впечатление. Некоторые игры перезагружали общие цвета во время прерывания растра; например, игра Turrican II'sподводная область (которая четко выделялась по вертикали) имела разные цвета. Другие, такие как Epyx «s летних игры и электронны!» S Gazette ' s Basketball Sam & Ed , выложите два спрайта с высоким разрешением , чтобы два цвета переднего плана , которые будут использоваться без ущерба для горизонтального разрешения [1] . Конечно, этот прием уменьшил количество доступных спрайтов вдвое.

На PAL C64s линия задержки PAL на мониторе или телевизоре, которая усредняет цветовой оттенок , но не яркость, последовательных экранных линий, может использоваться для создания семи нестандартных цветов путем чередования экранных линий, показывающих два цвета одинаковой яркости. Таких пар цветов в микросхеме VIC семь.

Команда C64 не тратила много времени на математический расчет 16-цветовой палитры. Роберт Яннес, который участвовал в разработке VIC-II, сказал:

Боюсь, что на выбор цвета ушло не так много усилий, как вы думаете. Поскольку у нас был полный контроль над оттенком, насыщенностью и яркостью, мы выбрали цвета, которые нам нравились. Однако, чтобы сэкономить место на чипе, многие цвета были просто противоположной стороной цветового круга по сравнению с выбранными нами. Это позволило нам повторно использовать существующие значения резисторов, вместо того, чтобы иметь полностью уникальный набор для каждого цвета. [10]

Обратите внимание, что ранние версии VIC-II, используемые в PAL C64s, имеют цветовую палитру, отличную от более поздних версий. [11]

Полная палитра из шестнадцати цветов представлена ​​ниже:


VIC-IIe [ править ]

В 8564/8566 VIC-IIe в Commodore 128 использовалось 48 контактов, а не 40, поскольку он генерировал больше сигналов, в том числе часы для дополнительного процессора Zilog Z80 этого компьютера. У него также было два дополнительных регистра. Один из дополнительных регистров предназначался для доступа к добавленной цифровой клавиатуре и другим дополнительным клавишам этого компьютера; эта функция была добавлена ​​к VIC просто потому, что это оказалось самым простым местом в компьютере для добавления необходимых трех дополнительных выходных контактов. Другой дополнительный регистр предназначался для переключения между системными часами 1 МГц и 2 МГц; на более высокой скорости видеовыход VIC-II просто отображает каждый второй байт в коде, поскольку черный цвет нанимает битовый узор на экране, что предполагает использование 80-столбцового режима C128 на этой скорости (через 8563 В постоянного токаRGB-чип). Скорее неофициально два дополнительных регистра были также доступны в режиме C64 C128, что позволяло использовать дополнительные ключи, а также выполнять код, привязанный к процессору (например, интенсивные численные вычисления), с двойной скоростью (например, интенсивные численные вычисления) самостоятельно. сделал программы на C64. [12] Дополнительные регистры также были одним из источников незначительной несовместимости между режимом C64 C128 и реальным C64 - несколько старых программ C64 случайно записали в бит переключения 2 МГц , который вообще ничего не сделал бы на реальном C64, но приводит к неправильному отображению на C128 в режиме C64.

ИКС-IIe имеет малоизвестную возможность создать дополнительный набор цветов, манипулируя регистров определенным образом , что ставит цвет сигнала вне фазы с тем, что другие части чипа считают его в. [ Править ]

Используя специфическое поведение тестового бита VIC-IIe, он, кроме того, способен создавать реальное чересстрочное изображение с разрешением 320 × 400 (режим найма) и 160 × 400 (многоцветный режим).

Список версий VIC-II [ редактировать ]

Commodore внесла множество изменений в VIC-II за время своего существования. Compute! С Gazette " первый выпуск с, в июле 1983 года, сообщил , что уже было восемь , так как в Commodore 64 в выпуске в середине 1982 года. [13]

  • PAL
    • MOS Technology 6569 - ( PAL-B , используется в большинстве стран PAL)
    • MOS Technology 6572 - ( PAL-N , используется только в южной части Южной Америки)
    • MOS Technology 6573 - ( PAL-M , используется только в Бразилии)
    • MOS Technology 8565 - версия HMOS-II для материнских плат "C64E"
    • MOS Technology 8566 - версия VIC-II E (PAL-B) C128
    • MOS Technology 8569 - версия VIC-II E (PAL-N) C128
  • NTSC
    • Технология MOS 6566 - предназначена для адресных линий SRAM / без мультиплексирования (используется в Commodore MAX Machine )
    • MOS Technology 6567 - оригинальная версия NMOS
    • MOS Technology 8562 - версия HMOS-II
    • MOS Technology 8564 - версия VIC-II E C128

Примечания

Во всех моделях C64 VIC-II вставлен в разъем для облегчения замены, но важно отметить, что 6569, 6572, 6573, 6566 и 6567 используют 12 вольт и 5 вольт, тогда как 8565 и 8562 используют только 5 вольт. Замена старой версии новой версией без модификации материнской платы приводит к уничтожению 8565 и 8562, если они включены в самые старые версии материнских плат C64.

Существует несколько ревизий 6569: 6569R1 (обычно позолоченный), 6569R3, 6569R4 и 6569R5. Самая распространенная версия 8565 - 8565R2.

См. Также [ править ]

  • Контроллер видеодисплея
  • Список домашних компьютеров по видеооборудованию

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

  1. Перейти ↑ Bagnall, Brian (2005). «Секретный проект 1981». На грани: захватывающий взлет и падение Коммодора (1-е изд.). Виннипег, Манитоба: Variant Press. С. 224–225. ISBN 0-9738649-0-7.
  2. ^ a b Perry, Tekla S .; Уоллич, Пол (март 1985). «История разработки: Commodore 64» (PDF) . IEEE Spectrum . Нью-Йорк, Нью-Йорк: Институт инженеров по электротехнике и электронике : 48–58. ISSN 0018-9235 . Проверено 12 ноября 2011 .  
  3. Перейти ↑ Bagnall, Brian (2005). «Секретный проект 1981». На грани: захватывающий взлет и падение Коммодора (1-е изд.). Виннипег, Манитоба: Variant Press. п. 227. ISBN. 0-9738649-0-7.
  4. Перейти ↑ Bagnall, Brian (2005). «Секретный проект 1981». На грани: захватывающий взлет и падение Коммодора (1-е изд.). Виннипег, Манитоба: Variant Press. п. 229. ISBN 0-9738649-0-7.
  5. Перейти ↑ Bagnall, Brian (2005). «Секретный проект 1981». На грани: захватывающий взлет и падение Коммодора (1-е изд.). Виннипег, Манитоба: Variant Press. п. 230. ISBN 0-9738649-0-7.
  6. Перейти ↑ Bagnall, Brian (2005). «Секретный проект 1981». На грани: захватывающий взлет и падение Коммодора (1-е изд.). Виннипег, Манитоба: Variant Press. п. 242. ISBN. 0-9738649-0-7.
  7. ^ Yakal, Kathy (июнь 1986). «Эволюция коммодорной графики» . Compute! S Gazette . С. 34–42 . Проверено 18 июня 2019 .
  8. ^ a b c d Каупер, Оттис Р. (1986). Составление карты Commodore 128 . Гринсборо, Северная Каролина: ВЫЧИСЛИТЕ! Книги. ISBN 0-87455-060-2.
  9. ^ "Чип видеоинтерфейса 6567: Спецификация" (PDF) . Commodore Semiconductor Group. листы 2 и 5.
  10. ^ Тиммерманн, Филипп. "Анализ цвета Commodore VIC-II (предварительный просмотр)" . Проверено 11 февраля 2018 .
  11. ^ Sjöstedt Илкка. «Старые цвета VIC-II и смешение цветов» . Блог ilesj . Проверено 11 февраля 2018 .
  12. ^ Cowper, Ottis R .; Флоранс, Дэвид; Heimarck, Todd D .; Краузе, Джон; Миллер, Джордж В .; Никитин, Кевин; Нельсон, Филипп I .; Виктор, Тим (октябрь 1985). «Глава 7. Архитектура системы». 128 Руководство программиста COMPUTE ! . Гринсборо, Северная Каролина: ВЫЧИСЛИТЕ! Публикации . С. 348–349. ISBN 0-87455-031-9.
  13. ^ Halfhill, Том Р. (июль 1983). "Обновление видео Commodore 64" . Compute! S Gazette . п. 40 . Проверено 6 февраля +2016 .
  • «Приложение N: Технические характеристики микросхем 6566/6567 (VIC-II)». Справочное руководство программиста Commodore 64 (PDF) (1-е изд.). Commodore Business Machines . 1982. С. 436–456. ISBN 0-672-22056-3.

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

  • Видеоконтроллер MOS 6567/6569 (VIC-II) и его применение в Commodore 64 - подробное описание оборудования VIC-II.
  • Commodore VIC-II Color Analysis (предварительный просмотр) - попытка предоставить точную информацию о цветовой палитре VIC-II, сделанная Филипом Тиммерманном.
  • Описание графических режимов C64 - простые объяснения с примерами изображений общих режимов, используемых для графики C64, включая взломанные и программные режимы.
  • Режимы видео с реальной чересстрочной разверткой с использованием VIC-IIe.
  • Информация о программировании VIC на Codebase64.
  • Кадры VIC-II