Mail Archives: djgpp/2000/02/18/14:02:45
Eli Zaretskii writes:
>>> Try pressing Ctrl-BREAK instead, and it should produce a regsiter
>>> dump and a stack traceback.
>>
>> Allegro catches Ctrl+Break in its keyboard handler.
>
> Does it gobble Ctrl-BREAK without a trace? It obviously doesn't do
> that with Ctrl-C (see above).
The Allegro handler doesn't kill the program in response to ctrl+c
(that wouldn't be desirable for a majority of game/graphics type
applications), but it does have an emergency exit combo, ctrl+alt+del
or ctrl+alt+end, which is mapped onto the same thing (calls
__djgpp_hw_exception with %al = 0x79), which causes libc to print
the message about ctrl+c being pressed.
> If Allegro does cause Ctrl-BREAK disappear without a trace, I'd say
> that's a misfeature: the fact that Ctrl-BREAK generates a full
> traceback is a valuable feature, designed just for such cases where a
> program gets stuck in an endless loop.
Allegro doesn't know about ctrl+break (because I didn't until just
now :-) but I presume this would be hooked in the same way as calling
the ctrl+c handler, just with a different code?
Shawn Hargreaves.
- Raw text -