home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1987 / 07 / interrpt / beginint.inc next >
Encoding:
Text File  |  1987-06-10  |  1.0 KB  |  35 lines

  1. TYPE
  2.   PgmRegs_=
  3.     RECORD CASE Integer OF
  4.       1: (PgmDs, PgmEs, PgmSi, PgmDi,
  5.           PgmDx, PgmCx, PgmBx, PgmAx,
  6.           PgmSp, PgmBp, PgmIp, PgmCs,
  7.           PgmFlags        : INTEGER);
  8.  
  9.       2: (PgmDsAlt, PgmEsAlt, PgmSiAlt,
  10.           PgmDiAlt        : Integer;
  11.           PgmDl, PgmDh, PgmCl, PgmCh,
  12.           PgmBl, PgmBh, PgmAl, PgmAh
  13.                           : Byte);
  14.      END;
  15.  
  16. VAR
  17.   Dummy   : ARRAY [0..15] OF BYTE;
  18.   PgmRegs : PgmRegs_  ABSOLUTE Dummy;
  19.  
  20. BEGIN
  21.   Inline (
  22.     $FB/            { STI            }
  23.     $83/$C4/$10/    { ADD SP,10      }
  24.     $50/            { PUSH AX        }
  25.     $53/            { PUSH BX        }
  26.     $51/            { PUSH CX        }
  27.     $52/            { PUSH DX        }
  28.     $57/            { PUSH DI        }
  29.     $56/            { PUSH SI        }
  30.     $06/            { PUSH ES        }
  31.     $1E/            { PUSH DS        }
  32.     $2E/$A1/$A0/$00/{ MOV  AX,CS:[A0]}
  33.     $50/            { PUSH AX        }
  34.     $1F);           { POP  DS        }
  35.