PK>> No, you are getting distracted again. Once the OS/2 Desktop is
>> visible, then the BIOS is TOTALLY out of the picture and has
>> absolutely NO AFFECT on the Keyboard/Mouse. The "stop working"
>> referred to above refers to when the BIOS is in control of the
>> Keyboard/Mouse during the initial boot process.
ML> Not entirely true when running in a VDM. According to the IBM
ML> manual "OS/2 V3 Virtual Device Driver Reference," most VDM keyboard
ML> support (particularly INT 16H) still uses the BIOS. From the CD-ROM
ML> Online Library - OS/2 Collection for January 1996:
ML>
ML> "Since the BIOS INT 16h service only references the BIOS data area
ML> for keystrokes, the BIOS continues to provide this service."
Or, in other words:
"Since it doesn't actually touch the hardware in any way, and relies
on the keyboard buffer managed in the BDA, which is filled by the
VKBD.SYS device driver, we didn't see any reason to write a protected
mode VDD when we could just let DOS applications call the 8086 mode
code located in the BIOS ROM."
Or, in yet other words still:
"This cannot possibly be the cause of the keyboard or mouse
`freezing'."
INT 16h doesn't really qualify as "keyboard support". It's actually quite a
high-level part of the system in many respects. In a VDM on OS/2, the
keyboard hardware is completely under the control of the native OS/2,
protected mode, physical keyboard device driver, IBMKBD.SYS. It is this that
actually "supports the keyboard" on OS/2. It communicates with VKBD.SYS,
which takes keystrokes intended for the VDM and places them into the buffer in
the BDA in the VDM's memory space. INT 16h merely pulls the first entry out
of that buffer.
Peter was right. INT 16h in a VDM is nothing but a distraction in this
particular case.
¯ JdeBP ®
--- FleetStreet 1.22 NR
143/1
* Origin: JdeBP's point, using Squish (2:257/609.3)
|