Skip to content

trealregs

Record describing all processor registers.

Declaration

Source position: go32.pp line 64

type
  trealregs = record
    case Integer of
      1: (
        EDI : LongInt;
        ESI : LongInt;
        EBP : LongInt;
        Res : LongInt;
        EBX : LongInt;
        EDX : LongInt;
        ECX : LongInt;
        EAX : LongInt;
        Flags : Word;
        ES : Word;
        DS : Word;
        FS : Word;
        GS : Word;
        IP : Word;
        CS : Word;
        SP : Word;
        SS : Word;
      );
      2: (
        DI : Word;
        DI2 : Word;
        SI : Word;
        SI2 : Word;
        BP : Word;
        BP2 : Word;
        R1 : Word;
        R2 : Word;
        BX : Word;
        BX2 : Word;
        DX : Word;
        DX2 : Word;
        CX : Word;
        CX2 : Word;
        AX : Word;
        AX2 : Word;
      );
      3: (
        stuff : Array[1..4] of LongInt;
        BL : Byte;
        BH : Byte;
        BL2 : Byte;
        BH2 : Byte;
        DL : Byte;
        DH : Byte;
        DL2 : Byte;
        DH2 : Byte;
        CL : Byte;
        CH : Byte;
        CL2 : Byte;
        CH2 : Byte;
        AL : Byte;
        AH : Byte;
        AL2 : Byte;
        AH2 : Byte;
      );
      4: (
        RealEDI : LongInt;
        RealESI : LongInt;
        RealEBP : LongInt;
        RealRES : LongInt;
        RealEBX : LongInt;
        RealEDX : LongInt;
        RealECX : LongInt;
        RealEAX : LongInt;
        RealFlags : Word;
        RealES : Word;
        RealDS : Word;
        RealFS : Word;
        RealGS : Word;
        RealIP : Word;
        RealCS : Word;
        RealSP : Word;
        RealSS : Word;
      );
  end;

Description

The trealregs type contains the data structure to pass register values to a interrupt handler or real mode callback.