INT 10H


INT 10h, INT 10H или INT 16 — инструкция на языке ассемблера для процессора архитектуры x86, генерирующая программное прерывание BIOS 10hex, 17-й вектор прерывания в архитектуре x86. BIOS, как правило, связывает с этим вектором обработчик прерывания в реальном режиме, предоставляющий видеосервис. Он включает установку видеорежима видеоадаптера, вывод символов и строк, графические примитивы (чтение и запись пикселей в графическом режиме).

Вызов INT 10h довольно медленный, поэтому многие программы получают доступ к видеоадаптеру напрямую, без BIOS. Установка видеорежима, производимая как правило единожды, может быть выполнена при помощи BIOS. Однако, отрисовка должна выполняться быстро, поэтому для этого лучше подходит прямой доступ к видеопамяти, чем вызов прерываний BIOS для каждого пикселя.

Обычно знакоместо имеет 8 строк, 0-7. Тогда CX=0607h — обычый курсор-подчеркивание, CX=0007h — всё знакоместо. Если задан 5-й бит CH, то это обычно означает «Скрыть курсор». Поэтому CX=2607h — невидимый курсор.

Некоторые видеокарты не используют 5-й бит CH. В таком случае, для скрытия следует задать CH > CL (например CX=0706h)

CH = номер верхней строки, CL = номер левого столбца, DH = номер нижней строки, DL = номер правого столбца