Untitled
#include <dos.h> #include <stdio.h> int main() { union REGS in, out; // Проверка дали драйверът за мишка е инсталиран in.x.ax = 0x0000; // Функция 0: Инициализиране на драйвера за мишка int86(0x33, &in, &out); // Прекъсване 0x33 - за управление на мишката if (out.x.ax == 0) { // Ако AX = 0, драйверът не е инсталиран printf("Драйверът за мишка не е инсталиран.\n"); } else { // Драйверът е инсталиран printf("Драйверът за мишка е инсталиран.\n"); // Проверка на версията на драйвера in.x.ax = 0x0024; // Функция 24h: Вземане на версията на драйвера int86(0x33, &in, &out); unsigned int majorVersion = out.x.bx; // Основна версия unsigned int minorVersion = out.x.cx; // Минорна версия printf("Версия на драйвера за мишка: %u.%u\n", majorVersion, minorVersion); // Тип на мишката printf("Тип на мишката: "); switch (out.x.dx) { case 0: printf("Няма открита мишка\n"); break; case 1: printf("Мишка с един бутон\n"); break; case 2: printf("Мишка с два бутона\n"); break; case 3: printf("Мишка с три бутона\n"); break; default: printf("Непознат тип\n"); } } return 0; }
Leave a Comment