[syslinux] com32: custom int3 handler

Jeff Kalikstein jeff at kalikstein.com
Fri Nov 19 12:14:21 PST 2004

I am having problems installing a custom int3 handler
from a com32 app.  Here is what I have tried:

void int3_handler()

void init_handlers()
        struct {
                unsigned long limit     : 16;
                unsigned long base      : 32;
        } __attribute__((packed)) idtr;

        __asm__("sidt (%0)" :: "r"(&idtr));

        unsigned long *idt = (void*)idtr.base;
        idt[3] = int3_handler;

        put_str("about to try int3");


When I execute the init_handlers function, I see
"DONE!", but not "int3!!!".  put_str() and anykey()
functions do as you expect, and put_str does not call
any interrupts (it writes directly to CGA memory).

More information about the Syslinux mailing list