Huhu!

Ich hoffe, ihr könnt mir helfen. Ich muss unter Linux Interrupt 15 aufrufen, in AH soll dabei 0xC0 stehen. Das Ergebnis des Interrupts befindet sich dann in AX.

Durch diverse Inline-Assembler-Tutorials bin ich zu folgendem Gewurschtel gekommen:
Code:
long accu;

__asm__ ("int $0x15" : "=a" (accu) : "0" (0x00C0)); 
printf("EAX: %Xl\n", accu);
Doch leider stürzt das Programm beim Aufruf mit einem Segfault (selbst als root mit sudo) ab. Der Code ist eigentlich für einen IBM PS/2 gedacht, bei dem würde man auf diese Weise die Modell- und Submodellnummer herausbekommen, und könnte so die Hardware des Systems relativ exakt bestimmen. Es wird wohl so sein, dass mein PC-Kompatibler (auf dem ich kompiliere) bei diesem Interrupt garnix oder was total Anderes macht. Aber er könnte mir doch wenigstens den Inhalt des Akkus zurückgeben, oder? Kann mir bitte Jemand weiterhelfen?

LG,
Saskia