===== Вывод на экран =====
[[http://www.wasm.ru/article.php?article=lfbdos|Работа с LFB в DOS /05.10.2006/]] - хорошая статья о программировании в SVGA режимах (позволяет использовать режимы до 1600x1200x16 бит)
==== Режимы адаптеров ====
((устарели, но до сих пор поддерживаются))
^ Режим ^ Разрешение ^ Количество цветов ^ Тип^
| 00h | 40x20 | 16 | Text|
| 01h | 40x25 | 16 | Text|
| 02h | 80x25 | 16 | Text|
| 03h | 40x20 | 16 | Text|
| 04h | 320x200 | 4 | Graph|
| 05h | 320x200 | 4 | Graph|
| 06h | 640x200 | 2 | Graph|
| 07h | 80x25 | 2 | Text|
| 08h | 160x200 | 16 | Graph|
| 09h | 320x200 | 16 | Graph|
| 0ah | 640x200 | 4 | Graph|
| 0bh | Reserved||||
| 0bh | Reserved||||
| 0dh | 320x200 | 16 | Graph|
| 0eh | 640x200 | 16 | Graph|
| 0fh | 640x350 | 2 | Graph|
| 10h | 640x350 | 4 | Graph|
| 10h | 640x350 | 16 | Graph|
| 11h | 640x480 | 2 | Graph|
| 12h | 640x480 | 16 | Graph|
| 13h | 320x240 | 256 | Graph|
==== Функции BIOS для работы с текстовым режимом ====
=== Установка режима ===
mov ah,00h
mov al,номер режима
int 10h
=== Получение режима ===
mov ah,0fh
int 10h
При возврате:
ah=число столбцов символов на экране
al=режим
bh=активная страница
=== Установка позиции курсора ===
mov ah,02h
mov bh,страница
mov dh,y-координата
mov dl,x-координата
int 10h
// Примечания //
(0,0) - верхний левый край экрана
=== Запись символа и атрибута в позицию курсора ===
mov ah,09h
mov al,символ
mov bh,страница
mov bl,атрибут
mov cx,число повторений
int 10h
// Примечания //
* В //al// специальные символы не распознаются
* Переноса курсора не происходит
=== Рисование пикселя ===
mov ah,0ch
mov al,цвет
mov bh,страница
mov cx,x-координата
mov dx,y-координата
int 10h
=== Запись символа в режиме телетайпа ===
mov ah,0eh
mov al,символ
mov bh,страница
mov bl,цвет (в графических режимах)
int 10h
=== Запись строки в режиме телетайпа ===
mov ax,seg буфер строки
mov es,ax
mov bp,offset буфера строки
mov ah,13h
mov al,режим записи
mov bh,страница
mov bl,атрибут, если al = 01 или 00
mov cx,длина строки
mov dh,y-координата
mov dl,x-координата
int 10h
==== Задание ====
Написать функцию сохранения и установки режима терминала, функцию вывода строки на экран. Объединить с программой на Си