Chawter
1
I
Svstem
Calls
CONTROL-C
Exit
Address
Interrupt
23H
If
the
display
tor
in
user types
CONTROL-C
during keyboard input
or
output, control transfers
to
the Interrupt 23H vec-
the interrupt table. This address is copied into the
Program Segment Prefix from the Interrupt 23H vector
when the segment is created. You can set this address us-
ing Function Call 25H.
If the CONTROL-C routine saves all registers, it can end
with an IRET instruction (return from interrupt)
to
con-
tinue program execution. When the interrupt occurs, all
registers are set
to
the value they had when the original
call
to
MS-DOS was made. There are no restrictions on
what
a
CONTROL-C handler can do (including MS-DOS
function calls) as long as the registers are unchanged if
IRET is used.
If Function 09H
or
OAH (Display String or Buffered Key-
board Input) is interrupted by CONTROL-C, the
3
byte
sequence 03H-0DH-0AH (ETX-CR-LF) is sent
to
the dis-
play and the function resumes at the beginning
of
the
next line.
If the program creates a new segment and loads
a
second
program that changes the CONTROL-C address, termina-
tion of the second program restores the CONTROL-C ad-
dress
to
the value it had before execution of the second
program.
16