> The basic problem is that INT 15.4F is a BIOS function that can be
> called by any program at any time.
completely wrong.

int 15.4f is supposed to be called from the BIOS from the
INT 09 handler, and NOBODY else.


> It's true that it is always
> supposed to be called by the INT 09 handler (though even that
> doesn't necessarily always happen, such as in Windows or certain
> other programs that provide their own INT 09 handler).  For a long
> time, people have assumed that INT 15.4F can ONLY be called by INT
> 09, and that is simply not true.  MS itself gives an example of
> issuing an INT 15.4F from outside the INT 09 handler here:

>   http://support.microsoft.com/kb/67929
that it can be called from a batch file to boot the system is a nice
trick, nothing else.




> Because it can be called from outside the INT 09 handler, there are
> all kinds of issues that must be taken into account in the
> implementation, including the fact that it must be fully-re-entrant
why in hell do you think it must be reentrant ?

no single DOS or BIOS call is 'fully' reentrant, but suddenly INT
15.4F is 'fully reentrant' because you can use it to boot your system ?
the logic of this escapes me.


> and it must never issue any I/O requests to the keyboard controller
> or the PIC or anything else.
that's why it was created in the first place: to free the KEYB
implementation from the burden of supporting micro channel machines,
where it's not as easy as 'handling INT 09'


> In short, INT 15.4F must only do what
> the IBM Technical Reference (and RBIL) say it should do: translate
> one scan code to another, or return a flag indicating that the
> scancode should be ignored.  INT 15.4F is not supposed to actually
> "process" any scancodes at all (modify the BDA, insert keys into the
> keystroke buffer, issue INT 05 if <PrintScreen> is pressed, handle
> the <Pause> key, handle Power/Sleep/Wakeup and multimedia keys
> (Volume Controls, Play/Pause/etc.) for keyboards that have them,
> etc.).  Only the INT 09 handler proper is supposed to do that.

if you show me the point in the IBM Technical Refence, I might
consider this.

otherwise I tell you that MKEYB does all of these nasty things
mentioned above, and it works beautifully.

Tom


------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user

Reply via email to