Interested Article - Текстовый видеорежим

FAR Manager работает в текстовом режиме.

Текстовый видеорежим — режим компьютерного видеоадаптера , в котором экран представлен в виде решётки знакомест (а не пикселей , в отличие от графических режимов ). В каждом из знакомест может находиться один символ из ограниченного набора.

Текстовые видеотерминалы начали заменять телетайпы в начале 1970-х годов и изменили способ ведения диалога оператора с компьютером. Вместо командной строки появился текстовый интерфейс пользователя ; в шрифты начали вводить псевдографические символы для рисования рамок и имитации элементов графического интерфейса . Одна из кодировок с псевдографикой — CP437 ( IBM ).

Текстовый режим даёт превосходство над графическим в скорости и простоте программирования. К тому же в те времена (1970-е годы) считалось расточительством ставить в терминал столько видеопамяти , чтобы хранить каждый пиксель экрана. В текстовом режиме изображение генерируется динамически из матрицы знакомест и изображений символов с помощью особой схемы — знакогенератора . На более ранних ЭВМ использовались также знакопечатающие кинескопы , которые генерировали символы без сложных схем знакогенератора, используя трафарет . Вторым преимуществом текстовых интерфейсов, связанным с терминалами, стали низкие требования к скорости связи терминала и ЭВМ.

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

Многие ОС позволяют не только эмулировать телетайп, но и писать в любое возможное знакоместо. Для этого есть два стандарта: ANSI-графика и команды, совместимые с VT100 .

Грань между текстовыми и графическими режимами размыта: например, некоторые программы ( Norton Utilities ) динамически переопределяют шрифт, чтобы отображать графические знаки или графический курсор мыши. Компьютер « Корвет » мог одновременно выводить текст поверх графического изображения. Иногда текстовый режим из-за его скорости применялся и в играх. Недокументированный 16-цветный графический режим CGA 160×100 с точки зрения программирования являлся текстовым режимом .

Интерфейс командной строки и эмуляторы терминала имитируют поведение компьютера в текстовом режиме.

Технические подробности

L \ C 0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
1
1
0
0
1
0
0
0
0
1
0
1
0
0
1
1
0
0
0
1
1
1
00000000
11111111
00001111
00110011
01010101
11…
00…
00…
00…
01…
00000
00001
00010
00011
00100
00101
00110
00111
01000
01001
… … …

Внизу: схема простейшего знакогенератора (32×24 знакоместа без атрибутов, 8×8 пикселей в каждом). Вверху: одна из позиций шрифта для этого знакогенератора.

Видеоадаптер , способный работать в текстовом режиме, имеет две особых области видеопамяти — текстовый буфер и шрифт. Шрифт — изображения всех возможных символов (как правило, битовые ). Текстовый буфер — массив по количеству знакомест. Для каждого из знакомест в текстовом буфере хранятся код символа и дополнительная информация — . В зависимости от модели адаптера, атрибут может хранить цвета символа и фона, флаги инверсии , яркости, подчёркивания , мигания, девятый бит кода символа .

Работой текстового режима управляет схема видеоадаптера, именуемая знакогенератор . Работает он так. В видеоадаптере есть два счётчика : строк ( Y ) и пикселей в строке ( X ). Эти координаты делятся с остатком на размер знакоместа. Частные — координаты в текстовом буфере; остатки — координаты в шрифте. Если размеры знакоместа — степени двойки , то деление с остатком представляет собой просто отсечение верхних и нижних битов.

Координаты в текстовом буфере направляются, как нетрудно понять, в текстовый буфер. Тот возвращает код символа и атрибут. Код символа, X и Y в шрифте проходят через шрифтовую память, которая возвращает один бит — 0, если в этой позиции фон, и 1, если изображение. Схема применения атрибута (на рисунке справа не указана) превращает линии атрибута и этот бит в окончательный сигнал, пригодный к прогонке через ЦАП . В простейшем случае эта схема — мультиплексор на два входа по 4 бита, переключающий между цветом изображения и цветом фона. Эта же схема рисует текстовый курсор .

Шрифт хранится, в зависимости от модели видеоадаптера, в ПЗУ или ОЗУ . В последнем случае шрифт можно переопределить — это позволяет компьютер или, изменяя шрифт синхронно с развёрткой, делать пиксельную графику (так работают, например, TMS9918 , MOS Technology VIC и Nintendo Game Boy ).

В некоторых текстовых режимах (например, на том же VT100) существуют и атрибуты строк. Строка может иметь двойную ширину.

В ранних терминалах шрифт был встроен в так называемую буквопечатающую ЭЛТ .

Текстовые режимы на IBM-совместимых компьютерах

На IBM-совместимых машинах существует огромный выбор текстовых режимов.

Разре-
шение
Кол-во
цветов
Размер
символа
Графическое
разрешение
Адаптеры
80×25 Чёрно-белый 9×14 720×350 MDA , Hercules
CGA/EGA/VGA также поддерживают этот режим, качество эквивалентно 80×25, 16 цветов
40×25 16 цветов 8×8 320×200 CGA и выше
80×25 16 цветов 8×8 640×200 CGA
8×14 640×350 EGA
9×16 720×400 VGA
80×43 16 цветов 8×8 640×350 EGA и выше
80×30 16 цветов 8×16 640×480 VGA
80×34 16 цветов 8×14 640×480 VGA
80×50 16 цветов 9×8 720×400 VGA
80×60 16 цветов 8×8 640×480 VESA -совместимые Super VGA
132×25 16 цветов VESA-совместимые Super VGA
132×43 16 цветов VESA-совместимые Super VGA
132×50 16 цветов VESA-совместимые Super VGA
132×60 16 цветов VESA-совместимые Super VGA

MDA позволяет выделять текст ярким цветом, инверсией, подчёркиванием и миганием; цветные — содержат атрибут из 4-битного цвета текста и 4-битного цвета фона. Верхний бит в цвете фона может становиться битом мигания. Видеоплаты в целом совместимы «сверху вниз» : так, EGA поддерживает все MDA- и CGA-режимы. В CGA и большинстве совместимых шрифт записан в ПЗУ и русифицируется только перепрошивкой, в EGA и выше — в ОЗУ.

Наиболее распространённый режим, применяемый как в DOS, так и в консольных программах Windows — 80×25 символов, 16 цветов. В этом режиме EGA и VGA дают более качественные шрифты, чем CGA. 40-символьные режимы использовались в играх и на телевизорах. Размеры символов в SVGA-режимах зависят от производителя. Также SVGA позволяют уменьшить количество цветов с 16 до 8, зато выводить целых 512 разных символов. Некоторые платы (например, S3 ) поддерживают огромные текстовые режимы (до 160×120). Чтобы работать с такими режимами в консолях Linux , применялась программа .

В настоящее время

Некоторые из современных графических программ моделируют те или иные дизайнерские ходы текстового ПО. Например, в текстовых редакторах принят моноширинный шрифт ; многие roguelike не отказываются от текстовой эстетики, дополняя её широкой цветовой палитрой, недоступной в текстовом режиме, и экзотическими символами . Существует ПО, эмулирующее текстовые режимы: эмуляторы терминала или консоль ОС. Иногда (например, в Windows) эмулированную консоль можно переключить в настоящий текстовый режим (нажатием Alt + ↵ Enter ).

Консоль Linux работает в текстовом режиме. Большинство вариантов Linux поддерживают несколько консолей, между которыми можно переключаться нажатием Ctrl + Alt + F1 , F2 и т. д.

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

Примечания

  1. Elliott, John (англ.) (13 ноября 2004). Дата обращения: 10 октября 2006. 8 февраля 2012 года.
  2. Большинство чёрно-белых видеоадаптеров
  3. Большинство чёрно-белых видеоадаптеров, ZX Spectrum
  4. Многие видеоадаптеры, в том числе все для IBM PC
  5. Отдельные видеоадаптеры S3 Graphics .

См. также

Ссылки

Источник —

Same as Текстовый видеорежим