INT 2F - PTS-DOS 6.51, S/DOS 1.0+ - BACKDOOR INTERCEPT INT 2Fh CHAIN AX = 12F0h CX:DX -> user INT 2F handler CF set Return: CF clear if successful CX:DX -> previous INT 2F handler CF set on error Notes: This function is known to be supported by Paragon Technology Systems PTS-DOS 6.51 and S/DOS 1.0, and probably was also supported in earlier releases. It is handled from within the kernel's INT 2Fh dispatcher. Resident system extensions should call INT 2Fh/12F0h to intercept the INT 2Fh chain. The main idea of this call is to allow them to be moved to the HMAsee High Memory Area and intercept INT 2Fh without querying A20(Address line 20) The 80286 and higher CPUs allow addresses in real mode to extend slightly beyond the one megabyte mark, which causes an incompatibility with some older programs which expect such addresses to wrap back to the beginning of the address space. For complete compatibility with the 8088, newer machines thus contain circuitry which permits the twenty-first address line (A20) to be disabled. The CPU then effectively has only twenty address lines in real mode, just as the 8088 does, and addresses which would extend beyond the one megabyte mark wrap to the beginning of the address space. See also High Memory Area, Real Mode. state and without interception of the INT2Fh vector. This is why the "Chain2F" variable must be instanced by placing it to the SDAsee Swappable Data Area. On chain entry of the far procedure, CF must be set. All registers except for AX, BP, and DS remain unchanged. If a handler cannot process the call, it must set CF and do a far jump to the previous one in the chain in order to indicate an error. If CF is still set on exit, the call will be ignored.