interrupt far functions in Microsoft 5.1

Martin O'Nions martino at logitek.co.uk
Tue Jan 22 01:03:31 AEST 1991


lorvig at gsg.UUCP (Don Lorvig) writes:


> have been using void far interrupt routines for some time now.  The
>addresses of this routines are passed to a TSR which executes them.
>Recently I began attempting to make this functions more complex. (They
>merely set flags before). When I attempt function calls from within
>these interrupt routines, strange behavior results.

Probable causes are assumptions made by the C as to the state of segment
registers, or stretching the stack beyond its intended length. I normally
use an assembler interrupt handler, and call the compiled C after setting
the stack and registers to appropriate values,changing them back afterwards.

Mail me if you want details - I may be able to resurect some code if I dig
deep enough.

Martin

--
DISCLAIMER: All My Own Work (Unless stated otherwise)
--------------------------------------------------------------------------
Martin O'Nions            Logitek Group Support      martino at logitek.co.uk
--------------------------------------------------------------------------
         Down the drinking well / Which the plumber built her
             Aunt Mathilda fell / - We should buy a filter....
         (Harry Graham - Ruthless Rhymes for Heartless Homes)



More information about the Comp.lang.c mailing list