Операционные системы, среды и оболочки. Лабораторная работа 2. Прерывание int10h. Общее задание: Выполнить свой вариант задания первой работы, используя вместо обращений к видеопамяти вызовы обработчика прерывания int10h. Порядок работы: 1. Запомнить текущее положение курсора. 2. Установить курсор в нужной позиции. 3. Записать/считать в позиции курсора символ с атрибутом. 4. Восстановить исходное положение курсора. Пункты 1 и 4 имеет смысл выполнить один раз, в начале и в конце программы соответственно. Краткое описание основных используемых функций обработчика прерывания int10h: Функция 03h - получить положение курсора. вход: ah - 3 (номер функии) bh - 0 (страница) выход: dl - ... (горизонтальная координата) dh - ... (вертикальная координата) Функция 02h - позиционировать курсор. вход: ah - 2 (номер функии) bh - 0 (страница) dl - ... (горизонтальная координата) dh - ... (вертикальная координата) Функция 09h - записать символ с атрибутом. вход: ah - 9 (номер функии) bh - 0 (страница) cх - 1 (количество повторений) al - ... (символ) bl - ... (атрибут) Функция 08h - считать символ с атрибутом. вход: ah - 8 (номер функии) bh - 0 (страница) выход: al - ... (символ) ah - ... (атрибут) Простой способ вызова обработчика прерывания int10h в Borland Pascal: 1. определить переменую стандартного типа registers (запись с набором полей, соответствующим набору регистров) 2. записать входные параметры в поля регистровой переменной. 3. вызвать стандартную процедуру intr(N,R), где N - номер прерывания (в данном случае - $10), R - регистровая переменная. 4. считать выходные параметры из полей регистровой переменной.