ATASCII

Кодировка символов, используемая в 8-битных домашних компьютерах Atari
Весь видимый набор символов ATASCII, как обычные, так и инверсные глифы, увеличен в 2 раза для лучшего отображения деталей.

Набор символов ATASCII , от ATA RIS standard Code for Information Interchange , также известный как AT ARI ASCII , — это кодировка символов, используемая в 8-битных домашних компьютерах Atari . ATASCII основан на ASCII , но не полностью совместим с ним.

Первыми компьютерами в серии Atari 8-bit стали Atari 400 и 800, выпущенные в 1979 году, а более поздние модели выпускались в течение 1980-х годов. Последним компьютером, использовавшим набор символов ATASCII, был Atari XEGS , выпущенный в 1987 году и снятый с производства в 1992 году. Семейство компьютеров Atari ST использует другой набор символов Atari ST .

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

Выполнение

8-битные системы Atari имеют три различных набора кодов: коды обмена (ATASCII), внутренние коды (также называемые экранными кодами) и коды клавиатуры. [1] [2]

Коды клавиатуры представляют собой коды, отправленные клавиатурой. Нажатие одной из двух клавиш-модификаторов ( Shift и Control ) изменяет вводимое значение нажатием других клавиш. Из-за наличия двух клавиш-модификаторов существует четыре различных кода клавиатуры, которые могут быть отправлены каждым символом; однако несколько клавиш (точные клавиши зависят от модели) не отправляют управляющий код, если они нажаты при удерживании Shift и Control. [1] При вводе текста обработчик клавиатуры Atari преобразует эти сигналы в ATASCII. [3]

Коды ATASCII и внутренние коды содержат один и тот же набор символов, но индексируются по-разному. Коды ATASCII используются BASIC , в то время как внутренние коды используются для поиска способа отображения символа на экране. [1]

Системы Atari 8-bit имеют несколько различных графических режимов; эти режимы можно классифицировать как чисто текстовые режимы, чисто графические режимы или смешанные режимы. Режимы 0, 1 и 2 представляют чисто текстовые режимы, в то время как режимы 3 и выше представляют смешанные или чисто графические режимы (точное количество различных режимов зависит от модели). [4] Режим 0 отображает символы в размере по умолчанию, режим 1 отображает их в два раза шире (но той же высоты), а режим 2 отображает их в два раза шире и в два раза выше. [4] Режим 0 является графическим режимом по умолчанию и поддерживает 128 уникальных символов в одном из двух цветов (обычное или инверсное видео , в зависимости от старшего бита); режимы 1 и 2 поддерживают только 64 уникальных символа, но поддерживают четыре разных цвета (поскольку вместо этого они используют два старших бита в качестве цветовой информации). [2] 64 символа, доступные в режимах 1 и 2, являются первыми 64 символами во внутреннем коде, которые соответствуют кодам ATASCII от 32 до 95 (от 0x20 до 0x5F). [3] Сюда входят все заглавные буквы и знаки препинания, но не входят строчные буквы и графические символы.

Редактор экрана Atari реализует текстовый курсор, просто инвертируя символ в позиции курсора (исключающим ИЛИ с 0x80). Он не мигает.

Обратное видео

ATASCII имеет только 128 уникальных графических символов, причем верхние 128 графических символов (индексы от 128 до 255) являются инверсными видеовариантами нижних 128 графических символов (индексы от 0 до 127). Если старший бит установлен на символе (т. е. если байтовое значение символа находится между 128 и 255), символ обычно отображается как инверсный видеовариант его аналога между 0 и 127, используя побитовое отрицание глифа символа. Это делается чипом ANTIC .

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

Альтернативные наборы символов

Международный набор символов, включенный в модели XL и XE

Atari 8-битные компьютеры, через сопроцессор ANTIC , поддерживали косвенность графики набора символов, позволяя программе переопределять графические глифы, которые появляются для каждого символа ATASCII. [2] Это может быть использовано как новый шрифт для текста, для поддержки дополнительного набора символов или для плиточной графики в видеоигре или другом приложении. Цикличность между несколькими переопределенными наборами символов может использоваться для обеспечения простой анимации при очень небольших затратах ЦП (в обмен на память, используемую для хранения данных набора символов). Изменение набора символов в ОЗУ также может использоваться для анимации.

В линейках XL и XE ПЗУ Atari OS включает «международный набор символов», который заменяет 29 графических глифов латинскими алфавитными символами, содержащими диакритические знаки , такими как e-acute (é). Операционная система, встроенная в Atari 1200XL , единственную 8-битную модель Atari с функциональными клавишами , позволяла пользователям переключаться между стандартным и альтернативным наборами символов нажатием CTRL+ F4. [5] Более поздние модели XL и XE требовали от пользователя обновления регистра в ОЗУ (например, с помощью команды POKE в BASIC ). [2]

В некоторых регионах вместо международного набора символов по умолчанию был включен другой набор символов, чтобы лучше соответствовать целевому рынку, включая польский, арабский и иврит. Системы Atari 192XT и 256XT, распространяемые в Восточной Европе компанией PZKaren, имели польский набор символов вместо международного набора символов. [6] [7] Atari 65XE Najm, распространяемый на Ближнем Востоке, имеет арабскую кодировку символов в качестве кодировки по умолчанию и отображает текст справа налево , в то время как международный набор символов был заменен стандартной кодировкой ATASCII. [7] [8] [9] [10] Еврейские версии Atari 600XL и 800XL распространялись в Израиле, в которых вместо международного набора символов использовался еврейский набор символов. Еврейский набор символов содержал еврейские буквы вместо строчных латинских букв, но сохранял заглавные латинские буквы. При наборе текста в режиме иврита ввод латинских букв перемещает курсор вправо, а ввод еврейских букв перемещает курсор влево. [7] [11]

Набор символов

Графические символы по умолчанию

В следующей таблице показан набор символов ATASCII по умолчанию. Управляющие символы с графическим представлением отображаются с использованием этого представления. Каждый символ отображается с эквивалентом Unicode .

АТАСКИИ [12] [13]
0123456789АБСДЭФ
0x🮇🮂
1x
2x СП !"#$%&'()*+,-./
3x0123456789:;<=>?
4x@АБСДЭФГЧАСяДж.КЛМНО
5xПВРСТУВВтХИЗ[\]^_
6xабсгефгчасяджклмно
7xпдгсттывжхуз|🢰
8x🮅
9x🮊ЭОЛ
Топор!"#$%&'()*+,-./
Вх0123456789:;<=>🯄
Сх@АБСДЭФГЧАСяДж.КЛМНО
ДксПВРСТУВВтХИЗ[\]^_
Бывшийабсгефгчасяджклмно
Фхпдгсттывжхуз-🢰

Символы, рисующие прямоугольники, располагаются относительно соответствующих им буквенных клавиш на клавиатуре Atari, появляясь на 64 кодовых точки раньше соответствующей заглавной буквы. Например, ┌, ┬ и ┐ — это графические символы, которые находятся на верхних левых клавишах Q, W и E и появляются на 64 кодовых точки раньше этих заглавных букв в ATASCII.

Международный набор символов

В следующей таблице показана нижняя половина международного набора символов ATASCII. Верхняя половина — это инверсные видеоварианты нижней половины, точно так же, как и стандартный набор символов ATASCII.

Международный набор символов ATASCII [14]
0123456789АБСДЭФ
0xаùСЭçоòя£яüдÖуóö
1xÜвûяéèсêåаÅ
2x СП !"#$%&'()*+,-./
3x0123456789:;<=>?
4x@АБСДЭФГЧАСяДж.КЛМНО
5xПВРСТУВВтХИЗ[\]^_
6x¡абсгефгчасяджклмно
7xпдгсттывжхузÄ|🢰
  Отличается от стандартного ATASCII

Управляющие символы

ATASCII имеет 16 управляющих символов, определенных в четырех отдельных диапазонах (от 0x1B до 0x1F, от 0x7D до 0x7F, от 0x8B до 0x8F и от 0xFD до 0xFF). [15] Это ключевое различие между ASCII и ATASCII — в ASCII есть 32 управляющих символа, определенных в диапазоне от 0 до 31 (от 0x00 до 0x1F).

Все управляющие символы ATASCII, за исключением End of Line (0x9B), имеют графическое представление, которое может быть получено путем экранирования этого символа нажатием клавиши Escape перед вводом этого управляющего символа. [15] Например, ввод «Escape» с последующим «cursor right» создаст стрелку вправо. Уникально, управляющий символ End of Line всегда отображает новую строку, независимо от наличия предшествующего escape-символа. [15]

Управляющие символы ATASCII [3]
ШестигранникДесятичная дробьФункцияНажатие клавиши
27Клавиша выходаESC
28Курсор вверхCTRL+-
1D29Курсор внизCTRL+=
30Курсор влевоCTRL++
1 этаж31Курсор вправоCTRL+*
7D125Очистить экранCTRL+ <или +⇧ Shift<
126Удалить← Backspace
127ВкладкаTab ↹
155Конец строкиRETURN
156Удалить строку⇧ Shift+← Backspace
9D157Вставить строку⇧ Shift+>
158Очистить табуляциюCTRL+Tab ↹
159Установить табуляцию⇧ Shift+Tab ↹
ФД253ЗуммерCTRL+2
ФЭ254Удалить символCTRL+← Backspace
ФФ255Вставить символCTRL+>

Интероперация

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

Некоторые BBS на базе Atari использовали эту разницу, прося клиента нажать клавишу «Return». Если он получал 13 (ASCII CR), то использовался стандартный ASCII. Если он получал 155 (ATASCII CR), то он переключался на ATASCII, позволяя полностью использовать графический набор ATASCII. Некоторые BBS на базе Atari также блокировали функции (или даже полностью блокировали доступ) для пользователей, не являющихся пользователями Atari. [ необходима цитата ]

Текстовые файлы, закодированные в ATASCII, также нуждаются в преобразовании для просмотра на современных ПК и наоборот — для этого существуют утилиты. [16]

Анимации ATASCII

Управляющие коды в ATASCII могут передаваться на другие компьютеры, такие как BBS, и возможны грубые анимации. Эти анимации, также известные как «мультики-брейки», часто принимают форму коротких мультфильмов и были популярной особенностью Atari BBS в их расцвете. [17]

Поскольку операции управления курсором представлены одним символом (в отличие от многобайтовых последовательностей, которые были распространены в других схемах, таких как ANSI или VT100 ), делать такие анимации довольно легко. Их можно создать с помощью короткой программы BASIC, которая захватывает команды клавиатуры, выводит их на экран и сохраняет в файл. [18] Atari также позволяла вводить и захватывать команды как часть своей операционной системы. Конечно, это требовало осторожности, чтобы сделать это правильно, но после нескольких попыток это обычно становилось довольно легко. Простые программы захвата не имели функций редактирования, поэтому фильмы ATASCII часто имели ошибки, которые исправлялись путем изменения положения курсора и печати поверх ошибки.

Смотрите также

Ссылки

  1. ^ abcd Card, Орсон Скотт (1984). "Чтение кодов клавиатуры". Третья книга Atari от Compute!. Книги Compute!. ISBN 978-0-942386-18-9.
  2. ^ abcde Уилкинсон, Билл (март 1986 г.). "INSIGHT: Atari—Atari Character Codes". Compute!. Том 8, № 70. Compute! Publications. С. 112–113. ISSN  0194-357X.
  3. ^ abcd Чедвик, Ян (1985). «Приложение 10 — ATASCII и внутренние значения кодов символов». Отображение Atari (пересмотренное издание). Compute! Books. стр. 180–181. ISBN 0874550041.
  4. ^ abc Halfhill, Tom R. (1982). "Основы графики Atari". Первая книга Compute! по графике Atari. Книги Compute!. ISBN 978-0-942386-08-0.
  5. Руководство пользователя домашнего компьютера Atari 1200XL. Atari. 1982.
  6. ^ "АТАСКИИ". Атарики (на польском языке). 5 мая 2020 г.
  7. ^ abc Current, Майкл (29 мая 2023 г.). «Список часто задаваемых вопросов по 8-битным компьютерам Atari». Группа новостей comp.sys.atari.8bit . Получено 29 ноября 2023 г.
  8. ^ Ности (13 июля 2007 г.). «Атари Аллаха». Atari Online.pl (на польском языке).
  9. ^ Parent, Eric. "ATASCII Character Sets". Joyful Coder . Архивировано из оригинала 16 марта 2016 г.
  10. ^ Savetz, Kevin (19 ноября 2003 г.). «Изучение «Звезды» на арабском языке Atari 65 XE». Atari 8-Bit Computer WebRing . Получено 29 ноября 2023 г.
  11. Современный компьютер Atari 8bit (11 октября 2017 г.). «Hebrew ATARI XL Computer». YouTube . Получено 29 ноября 2023 г. .{{cite web}}: CS1 maint: числовые имена: список авторов ( ссылка )
  12. ^ Беттанкур, Ребекка Г. «Преобразование ATASCII в Unicode». Kreative Korp .
  13. ^ Беттанкур, Ребекка (2018-04-20), "ATARI8IG.TXT", L2/19-025: Предложение добавить символы из устаревших компьютеров и телетекста в UCS (PDF)
  14. ^ Беттанкур, Ребекка (2018-04-20), "ATARI8II.TXT", L2/19-025: Предложение добавить символы из устаревших компьютеров и телетекста в UCS (PDF)
  15. ^ abcd Atari 400/800: Руководство пользователя операционной системы домашнего компьютера Atari. Atari. 1982. С. 68–70, 183–184.
  16. ^ "ATASCII". Просто решите проблему с форматом файла .
  17. ^ "AtasciiTube". Вломиться в чат .
  18. Рэтклифф, Мэтью (август 1985 г.). «Atari 'Toons». Antic . Том 4, № 4.
  • Краткий графический обзор ATASCII ( изображение GIF размером 4,2 КБ )
  • Типографика в 8 бит: системные шрифты
Взято с "https://en.wikipedia.org/w/index.php?title=ATASCII&oldid=1224118951"