Executes a specified software interrupt.
procedure Intr(IntNo: Byte; var Regs: TRegisters);
- IntNo is the software interrupt number (0...255).
- TRegisters is a record defined in the WinDos unit.
Windows, Real, Protected
IntNo is the software interrupt number (0..255). Registers is a record defined in the Dos unit; TRegisters is a record defined in theSee the declaration of and the declaration of
Before executing the specified software interrupt, Intr loads the 8086 CPU's AX, BX, CX, DX, BP, SI, DI, DS, and ES registers from the Regs record. When the interrupt completes, the contents of the AX, BX, CX, DX, BP, SI, DI, DS, ES, and Flags registers are stored back into the Regs record.
To avoid general protection faults when running in Windows standard mode or Windows 386 enhanced mode, always initialize the DS and ES fields of the TRegisters record with valid selector values, or set the fields to zero.
Do not use software interrupts that:
- depend on specific values in SP or SS on entry.
- modify SP or SS on exit.
Avoid general protection faults when running in Windows standard or Windows 386 enhanced mode by initializing the DS and ES fields of the TRegisters; use valid selector values, or set the fields to zero.
In Turbo Pascal version 3.0, the Registers variable was a user-defined type. In versions 5.0 or greater, Registers must be of type Registers defined in the