/* Zugriff mit Interrupt: BIOS Parameter */ /* Datei: llint1.c */ #include #include #include union REGS r; /* CPU-Register */ struct SREGS sr; /* MMU-Register */ int main () { unsigned char far * fcp; unsigned char i; clrscr(); printf ("Ausgabe der BIOS-Kennung\n\n"); fcp = (unsigned char far *) 0xf000fffeL; i = *fcp; printf("\nBIOS Kennung: 0x%02x",i); r.h.ah = 0xc0; int86x (0x15,&r,&r,&sr); fcp = (unsigned char far *) MK_FP(sr.es, r.x.bx); /* fcp = (((long)sr.es << 16) | r.x.bx); */ printf ("\nModel Byte: \t%02x", * (fcp+2)); printf ("\nSubmodel Byte: \t%02x", *(fcp +3)); printf ("\nBIOS revision: \t%02x", * (fcp +4)); printf ("\nFeature Byte: \t%02x", * (fcp+5)); return 0; }