Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

PETSCII ( PET S tandard C ода I нформация I nterchange ), также известный как CBM ASCII , является набор символов , используемый в Commodore Business Machines (СВМ) «ы 8-битных домашних компьютеров , начиная с ПЭТ с 1977 года и в том числе C16 , C64 , C116 , C128 [1] , CBM-II , Plus / 4 и VIC-20 .

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

Набор персонажей был в значительной степени разработан Леонардом Трамиэлем (сыном генерального директора Commodore Джека Трамиэля ) и дизайнером ПЭТ Чаком Педдлом . Графические символы PETSCII были одним из расширений Commodore, указанных для Commodore BASIC при изложении желаемых изменений в существующем Microsoft 6502 BASIC для Microsoft Ric Weiland в 1977 г. [1] VIC-20 использовал тот же пиксельный шрифт.как PET, хотя символы казались шире из-за 22-колоночного экрана VIC. Commodore 64, однако, использовал слегка переработанный, тяжелый шрифт верхнего регистра, по сути, более толстую версию PET, чтобы избежать цветовых артефактов, создаваемых экраном с более высоким разрешением. Строчные символы C64 идентичны строчным символам системного шрифта Atari 800 (выпущенного несколькими годами ранее).

Педдл утверждает, что включение символов масти карт было вызвано требованием, чтобы было легко писать карточные игры на ПЭТ (как часть списка спецификаций, который он получил). [2]

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

Экран запуска C64 со смещенным и несмещенным режимами PETSCII и двумя символами из ASCII-1963
Диаграмма PETSCII, отображаемая на C64 в сдвинутом и несмещенном режимах. (Не показаны управляющие коды, а также символы в диапазоне $ C0– $ FF, которые являются стандартными кодами клавиш в верхнем регистре, возвращаемыми с клавиатуры, и которые отражаются в диапазоне $ 60–7F.)

PETSCII основан на версии ASCII 1963 года (а не на версии 1967 года , в которой большинство, если не все другие компьютерные наборы символов основаны на использовании ASCII). Если предположить , что графики режим несмещенный , PETSCII имеет только прописные буквы в его включении питания состояния, вверх-стрелка (↑) вместо вставки (^) в позиции $ 5E и стрелка влево (←) вместо подчеркивания (_) в позиции $ 5F эти два варианта являются общими в ASCII-1963. [2] Кроме того, в версиях VIC-20 и C64 обратная косая черта (\) в позиции $ 5C занята знаком британского фунта (£) (перед использованием того же кода ASCII в японской и корейской версиях ISO. 646для соответствующих символов валюты). В режиме без сдвига коды $ 60–7F и $ A0– $ FF назначаются специфическим для CBM графическим символам блока (горизонтальные и вертикальные линии, штриховки, тени, треугольники, круги и масти карт ). Диапазоны $ 00–1F и $ 80–9F имеют управляющие коды.

В Commodore PET «s отсутствие программируемого битовой карты -mode для компьютерной графики , а также она не имея возможностей переопределяемы набора символов, может быть одной из причин PETSCII была разработана; творчески используя хорошо продуманную блочную графику, можно достичь более высокой степени сложности экранной графики, чем при использовании простых букв / цифр / знаков препинания ASCII. В дополнение к относительно разнообразному набору геометрических форм, которые могут быть получены таким образом, PETSCII допускает несколько уровней градаций серого , предоставляя шахматную доску с разной штриховкой.квадраты / полуквадраты. Наконец, режим обратного видео (см. Ниже) используется для завершения диапазона графических символов, так как он обеспечивает зеркальные полуквадратные блоки.

В PETSCII также есть текстовый режим , в котором строчные буквы занимают диапазон $ 41–5A, а прописные буквы - диапазон $ C1– $ DA. Режим переключается удерживанием одной из клавиш SHIFT, а затем нажатием и отпусканием клавиши Commodore . Независимо от того, претерпел ли чип этот графический "сдвиг", в диапазоне $ E0-FF есть графические символы блока. Это позволяет отличить PETSCII от тех типов ASCII, которые восходят не дальше ASCII-1967, поэтому любая передача текста между 8-битной машиной Commodore и машиной, использующей ASCII 1967 года, приведет к тексту, в котором прописные буквы кажутся строчными. , и строчные буквы в верхнем регистре. Нет простого логическогооперация для изменения этих регистров на правильный регистр. Таким образом, как и в случае с другими компьютерами, использующими нестандартные наборы символов ASCII, требуется преобразование программного обеспечения при обмене текстовыми файлами и / или связи со стандартными системами ASCII. Остальные диапазоны не изменяются в сдвинутом режиме; это означает, что другие символы, добавленные в ASCII-1967, кроме строчных букв - т. е. серьезный ударение, фигурные скобки, вертикальная черта и тильда - не существуют в PETSCII.

В PETSCII является курсор и управление экрана кода, такими как {HOME}, {CLR}, {RVS ON}, и {RVS OFF}(последние два включения / выключения отображения символа обратного видео). Коды управления появлялись в списках программ в виде обратных видео-графических символов, хотя некоторые компьютерные журналы, пытаясь предоставить более понятные списки, красиво печатали коды, используя их настоящие имена, как в приведенных выше примерах. Такие имена обычно заключались в фигурные скобки в списках. Это предотвратило двусмысленность, поскольку, как уже упоминалось, в PETSCII не было фигурных скобок. Коды управления экраном были по существу похожи на escape-коды для текстовых компьютерных терминалов.

Как указано выше, PETSCII обеспечивает переключение между набором символов верхнего регистра + графические символы по умолчанию при включении питания (без сдвига) и альтернативным (смещенным) набором символов нижнего + верхнего регистра (где смещенный набор содержит подмножество символов блочной графики из набора без сдвига) . Переключение между режимами осуществляется путем ввода позиции 59468 со значением 14 для выбора альтернативного набора или 12 для возврата к стандартному. На C64 наборы чередуются путем переворачивания бита 2 байта 53272. На некоторых моделях PET это также может быть достигнуто с помощью специального управляющего кода, PRINT CHR$(14)который регулирует межстрочный интервал, а также изменяет набор символов; метод POKE по-прежнему доступен и не меняет межстрочный интервал. [3]Таким образом, изменение состояния экранного редактора вместо использования отдельных кодов ASCII используется для выбора между одинарным (все заглавные буквы) и двойным регистром. В машинах VIC-20, C64 и более поздних версий (за исключением бизнес-компьютеров CBM) цветовые коды дополняют другие коды управления экраном. (Цвета VIC-20 и C64 / 128 перечислены в статье VIC-II .)

Набор символов [ править ]

Не все символы, закодированные с помощью PETSCII, являются «графическими», и не все из них имеют соответствующее представление Unicode . В следующей таблице для символов PETSCII показаны соответствующие символ Unicode и кодовая точка . Управляющие символы и другие непечатаемые символы представлены своими именами. Если конкретная кодовая точка кодирует как сдвинутый, так и несмещенный символ, отображаются оба символа, причем несмещенный символ находится слева, а сдвинутый символ - справа. Заголовки строк и столбцов указывают комбинации шестнадцатеричных цифр для получения восьмибитового значения кода; например, буква L имеет кодовое значение $ 4C.

Обратите внимание, что таблица ниже предназначена для Commodore 64 , Commodore 16 и Commodore 128 . Управляющие символы на этих машинах различаются и представлены в отдельных таблицах . Другие машины Commodore использовали несколько иные версии PETSCII, в которых использовались другие управляющие символы, а в некоторых случаях и другие графические символы. Например, на машинах CBM до VIC-20 символы $ 2C и $ 6C оба давали символ запятой, хотя и с немного другой семантикой. [4]

Фактическое ПЗУ генератора символов использовало другой набор назначений. Например, чтобы отобразить символы «@ABC» на экране путем непосредственной записи в память экрана , нужно ВЫПОЛНИТЬ десятичные значения 0, 1, 2 и 3, а не 64, 65, 66 и 67. [5]

  Письмо  Число  Пунктуация  Символ  Другой  Неопределенный


Управляющие символы [ править ]

Некоторые коды PETSCII не могут быть напечатаны и используются только для ввода с клавиатуры (например, F1, RUN / STOP).

Раскладка клавиатуры PET 2001 , иллюстрирующая графические символы PETSCII

Управляющие символы Commodore 64 [ править ]


Коммодор 16 управляющих символов [ править ]


Commodore 128, символы управления режимом с 40 столбцами [ править ]


Commodore 128, символы управления режимом с 80 столбцами [ править ]

Прототип Commodore 65, управляющие символы режима с 80 столбцами [ править ]

База 128 [ править ]

Из первых 192 кодов PETSCII 164 имеют видимые представления (для кодов управления они видны в кавычках ): 5 (белый), 17–20 и 28–31 (цвета и элементы управления курсором), 32–90 ( эквивалент ASCII ). , 91–127 (графика), 129 (оранжевый), 133–140 (функциональные клавиши), 144–159 (цвета и элементы управления курсором) и 160–192 (графика). Это теоретически разрешает кодирование, такое как base128, в операторах DATA или, возможно, между машинами, говорящими на языке PETSCII; например, 33–127, 160–192.

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

  • ATASCII
  • Набор символов Atari ST
  • Набор символов ZX Spectrum
  • Расширенный ASCII
  • Текстовая полуграфика

Примечания [ править ]

  1. ^ Семействодомашних / персональных компьютеровAmigaиспользует стандарт ISO-8859-1.
  2. ^ см. «На краю» Брайана Бэгнолла,ISBN 0-9738649-0-7, стр. 43, 54–55.

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

  1. Разговор с Чаком Педдлом, Билом Хердом, Джери Эллсуорт - часть 3 (видеоконференция 2009 г., 06:30). Архивировано 9 января 2011 г. на Wayback Machine.
  2. Дженнингс, Томас Дэниел (20 апреля 2016 г.) [1999]. «Аннотированная история некоторых кодов символов или ASCII: Американский стандартный код для проникновения информации» . Мировые энергетические системы (WPS) . Архивировано из оригинального 22 мая 2016 года.
  3. ^ КОМПЬЮТЕР COMMODORE для домашних животных / ФАЙЛ ЧАСТО ЗАДАВАЕМЫХ ВОПРОСОВ - ВЕРСИЯ 1.7 (Обновлено 25 ноября 2000 г.) ЛАРРИ АНДЕРССОН, КОЛЛЕКТОР COMMODORE И ЛЮБИТЕЛЬ ЗОНОТА
  4. Commodore Trivia Edition # 26, ответы за февраль 1996 г.
  5. ^ "C64VPRI.TXT", L2 / 19-025: Предложение о добавлении символов из старых компьютеров и телетекста в UCS (PDF) , 4 января 2019 г.
  6. ^ a b c d e Oy, Aivosto (2014), Наборы символов Commodore PETSCII (PDF)
  7. ^ "ReadMe.txt", L2 / 19-025: Предложение о добавлении символов с устаревших компьютеров и телетекста в UCS (PDF) , 4 января 2019 г.
  8. ^ "C64IPRI.TXT", L2 / 19-025: Предложение о добавлении символов из старых компьютеров и телетекста в UCS (PDF) , 4 января 2019 г.
  9. ^ "C64IALT.TXT", L2 / 19-025: Предложение о добавлении символов с устаревших компьютеров и телетекста в UCS (PDF) , 4 января 2019 г.
  10. ^ Спецификация системы C64DX

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

  • Карта символов PETSCII, часть 1 , часть 2 , часть 3 ( JPEG )
  • Попытка преобразования PETSCII в Unicode, без сдвига , со сдвигом
  • Другое сопоставление PETSCII в Unicode и шрифт TrueType, использующий это сопоставление
  • Управляющие символы Commodore 128 PETSCII
  • Типографика в 8 битах: Системные шрифты
  • Онлайн редактор PETSCII-art
  • PETSCII-art