Zugriff auf BP Register nach int86x

Diskussion zum Thema Programmierung unter DOS (Intel x86)
Antworten
markusk
Norton Commander
Beiträge: 132
Registriert: Fr 19. Apr 2013, 11:12

Zugriff auf BP Register nach int86x

Beitrag von markusk »

Hallo!

Hab folgendes Problem in C: Ich ruf über int86x den Interrupt 10h auf um die Adresse des VGA-Zeichensatzes zu ermitteln. Die Funktion liefert im Registerpaar ES:BP die Adresse zurück. Aber wie komme ich zum Inhalt des BP Registers? Dieses ist im UNION REGS und in der struct SREGS nicht enthalten.

lg, Markus
markusk
Norton Commander
Beiträge: 132
Registriert: Fr 19. Apr 2013, 11:12

Re: Zugriff auf BP Register nach int86x

Beitrag von markusk »

Hallo!

Hab's mittlerweile selbst rausgefunden. Man kommt an den Inhalt des BP Registers wenn man stattdessen die struct REGPACK zur Register-Übergabe verwendet und den Interrupt dann mit dieser Struktur als Parameter aufruft.

struct REGPACK cpu;

intr (0x10, &cpu);

bpvalue=cpu.r_bp

lg, Markus
Antworten