===== Вывод на экран ===== [[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 ==== Задание ==== Написать функцию сохранения и установки режима терминала, функцию вывода строки на экран. Объединить с программой на Си