Hi, Rafa Velilla!
On 27 Jun 97 05:53:01 you wrote to All
RV> The problem is that if I don't call the old handler after my own
RV> handler it works only one time :-? But if I call the old handler it
RV> losses time in calculating the ascii code, and I don't need it.
RV> ¨does someone know how to change the handler without calling the
RV> old handler?
You have to handle all the stuff about the interrupt. At the end you must
notify the PIT and issue the EOI to port 0x20. If you do not do that the
system thinks you did not process the keystroke so no further keystrokes will
make interrupt. When you call the old handler, that does the job.
A regular PC program generally should not take over the interrupt processing.
Chaining in and calling the others is the practice avery program expect. A
plenty of other programs (including disk cache managers) hook the keyboard
vector and not calling it may result in data loss.
Paul
... Golden Dick Tracy
--- OS/2 Warp
---------------
* Origin: The FlintStones' Cave in BedRock (2:371/20)
|