Системне програмування. Розроблення системних програм №3 (ID:1025688)
Зміст
ВСТУП 6
1. АНАЛІЗ ТЕХНІЧНОГО ЗАВДАННЯ 7
1.1 Частина 1. Керування системним таймером та звуком 7
1.2 Частина 2. Робота з маніпулятором миші 9
2. АНАЛІЗ ВЗАЄМОДІЇ СИСТЕМНОЇ ПРОГРАМИ З АПАРАТНОЮ ЧАСТИНОЮ КОМП’ЮТЕРА ТА ОПЕРАЦІЙНОЮ СИСТЕМОЮ 11
2.1. Керування системним таймером та звуком 11
2.2. Робота з маніпулятором миші 12
2.2.1 Ініціалізація миші 13
2.2.2 Вмикання(вимикання) курсору миші 13
2.2.3 Встановлення форми курсору в графічному режимі 14
3. РОЗРОБКА АЛГОРИТМУ ПРОГРАМИ 15
4. РОЗРОБКА ПРОГРАМНОГО КОДУ 27
5. ЗВІТ ПРО ВИПРОБУВАННЯ ПРОГРАМИ 41
ВИСНОВКИ 45
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ 46
Зразок роботи
2.2.1 Ініціалізація миші
Для ініціалізації миші використовується функція з кодом "00h", яка відповідає за скидання параметрів миші до початкового стану та встановлення драйверу миші. Функція "21h" дозволяє встановити драйвер миші в початковий стан без скидання параметрів миші.
Після виклику функції з реєстром AX=0000h на виході отримуємо стан миші (в регістрі AX) та кількість клавіш у миші (в регістрі BX).
Значення регістру AX вказує на наявність драйвера миші: якщо воно 0000h, то драйвер відсутній, а якщо 0FFFFh, то драйвер є і можна використовувати інші функції для роботи з мишею.
Значення регістру BX показує кількість клавіш у миші: 0001h для двох клавіш, 0002h для миші системи Mouse Systems з трьома клавішами та 0000h, якщо клавіші в миші більше або менше двох.
2.2.2 Вмикання(вимикання) курсору миші
Функція "01h" увімкнення курсора миші дозволяє увімкнути або вимкнути курсор миші за допомогою передачі значення 0001h у регістр AX. Керування видимістю курсора здійснюється за допомогою внутрішнього лічильника. Лічильник можна збільшувати за допомогою функції "01h" переривання "33h" та зменшувати за допомогою функції "02h".
Функція "02h" вимикання курсора миші зменшує значення лічильника видимості курсора на одиницю при передачі значення 0002h у регістр AX. Якщо значення лічильника стає рівним -1, курсор зникає з екрану. Перед оновленням екрану програміст повинен згасити курсор, а після завершення оновлення - відобразити його знову, особливо якщо використовується прямий запис у відеопам'ять.
КП.125.КІБ-21015б.13466323 Арк.
13
Змн. Арк. № докум. Підпис Дата
2.2.3 Встановлення форми курсору в графічному режимі
Функція "09h" дозволяє програмі в графічному режимі змінювати форму курсора миші та його положення на екрані. Після виклику цієї функції необхідно передати значення в регістр AX=0009h, а в регістрі ВХ вказати номер позиції точки-покажчика курсора, СХ - номер рядку точки-покажчика, а ES:DX - покажчик на растрове зображення курсора.
Функція "0Ah" встановлення форми курсору в текстовому режимі дозволяє змінити форму курсору миші. Керуванням здійснюється за допомогою передачі значень в регістри: AX=000Ah, BX - тип курсору, СХ - маска екрану або кінцевий рядок курсора, DX - маска курсору або кінцевий рядок курсора. В залежності від значень регістрів ВХ, СХ і DX драйвер миші використовує апаратний або програмний курсор та налаштовує його відповідно до вказаних параметрів.
Інші роботи з даної категорії: