Прерывание 10h (Видео BIOS) и Прерывание 16h (клавиатура)
функции прерывания 10h:
Функция 00h – Установка видеорежима
AL – номер видеорежима
Функция 01h – Установка размера и формы курсора
CH – начальная строка (CH=20h – подавить)
CL – конечная строка.
Функция 02h – Установить позицию курсора
BH – видеостраница
DH, DL – строка, колонка (начиная с 0).
Функция 03h – Читать позицию и размер курсора
BH – видеостраница,
DH, DL – текущие строка, колонка курсора
CH, CL – текущая начальная и конечные строки курсора
Функция 05h – Выбрать текущую видеостраницу
AL – номер страницы
функции прерывания 16h:
Функция 00h – Читать следующую нажатую клавишу
Выход:
AH – Сканкод (или расширенный код ASCII,)
AL – ASCII символ
Функция 01h – Проверить готовность символа (и показать его если так).
Выход:
ZF=1 – символ не готов
ZF=0 – символ готов
Функция 02h – Читать состояние shift-клавиш.
Выход: AL – статус клавиатуры:
bit 0 – правый Shift bit 4 – режим ScrollLock
bit 1 – левый Shift bit 5 – режим NumLock
bit 2 – Ctrl bit 6 – режим CapsLock
bit 3 – Alt bit 7 – режим Insert
AL – номер видеорежима
Функция 01h – Установка размера и формы курсора
CH – начальная строка (CH=20h – подавить)
CL – конечная строка.
Функция 02h – Установить позицию курсора
BH – видеостраница
DH, DL – строка, колонка (начиная с 0).
Функция 03h – Читать позицию и размер курсора
BH – видеостраница,
DH, DL – текущие строка, колонка курсора
CH, CL – текущая начальная и конечные строки курсора
Функция 05h – Выбрать текущую видеостраницу
AL – номер страницы
функции прерывания 16h:
Функция 00h – Читать следующую нажатую клавишу
Выход:
AH – Сканкод (или расширенный код ASCII,)
AL – ASCII символ
Функция 01h – Проверить готовность символа (и показать его если так).
Выход:
ZF=1 – символ не готов
ZF=0 – символ готов
Функция 02h – Читать состояние shift-клавиш.
Выход: AL – статус клавиатуры:
bit 0 – правый Shift bit 4 – режим ScrollLock
bit 1 – левый Shift bit 5 – режим NumLock
bit 2 – Ctrl bit 6 – режим CapsLock
bit 3 – Alt bit 7 – режим Insert