Untitled

 avatar
unknown
plain_text
25 days ago
1.0 kB
3
Indexable
#include <dos.h>
#include <stdio.h>

int main() {
    union REGS in, out;

    in.x.ax = 0x0000; 
    int86(0x33, &in, &out); 

    if (out.x.ax == 0) {
        
        printf("Mouse driver is not installed.\n");
    } else {
        
        printf("Mosue driver is installed.\n");

        
        in.x.ax = 0x0024; 
        int86(0x33, &in, &out);

        unsigned int majorVersion = out.h.bh; 
        unsigned int minorVersion = out.h.bl; 
        printf("Mouse driver version is: %u.%u\n", majorVersion, minorVersion);

        
        printf("Mouse type: ");
        switch (out.h.ch) {
            case 0: printf("No mouse found\n"); break;
            case 1: printf("Mouse with one button\n"); break;
            case 2: printf("Mouse with 2 buttons\n"); break;
            case 3: printf("Inport moyuse\n"); break;
            case 4: printf("Ps/2 mouse\n"); break;
            case 5: printf("HP mouse\n"); break;
            default: printf("Unknown type\n");
        }
    }

    return 0;
}
Leave a Comment