KEYBOARD_INPUT_DATA

I have a query from a client, and since it is about keyboard input which
is an area I have never dealt with I am hoping the list will help. Are
the scan codes in KEYBOARD_INPUT_DATA keyboard type specific or are they
regularized by the time they come out of the keyboard class driver? If
they are not regularized any recommendations on how one determines the
scan code set being used, and how to regularize it?

Don Burn
Windows Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr

What is regularized? Windows expects a specific scan set bring reported by the underlying device. I can remember if it is set one or two. Look at the pnpi8042 sample in the vista wdk for the answer

d

debt from my phone


From: Don Burn
Sent: 3/23/2012 8:39 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] KEYBOARD_INPUT_DATA

I have a query from a client, and since it is about keyboard input which
is an area I have never dealt with I am hoping the list will help. Are
the scan codes in KEYBOARD_INPUT_DATA keyboard type specific or are they
regularized by the time they come out of the keyboard class driver? If
they are not regularized any recommendations on how one determines the
scan code set being used, and how to regularize it?

Don Burn
Windows Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

Doron,

By regularized I meant can differing keyboard present differing scan
code sets for the same keys in KEYBOARD_INPUT_DATA. And if so, which
still appears likely after looking at the pnpi8042 sample, any
suggestions on how to handle this in a filter above kbdclass that needs
to understand the input?

Don Burn
Windows Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr

“Doron Holan” wrote in message
news:xxxxx@ntdev:

> What is regularized? Windows expects a specific scan set bring reported by the underlying device. I can remember if it is set one or two. Look at the pnpi8042 sample in the vista wdk for the answer
>
> d
>
> debt from my phone
> ________________________________
> From: Don Burn
> Sent: 3/23/2012 8:39 AM
> To: Windows System Software Devs Interest List
> Subject: [ntdev] KEYBOARD_INPUT_DATA
>
> I have a query from a client, and since it is about keyboard input which
> is an area I have never dealt with I am hoping the list will help. Are
> the scan codes in KEYBOARD_INPUT_DATA keyboard type specific or are they
> regularized by the time they come out of the keyboard class driver? If
> they are not regularized any recommendations on how one determines the
> scan code set being used, and how to regularize it?
>
>
> Don Burn
> Windows Filesystem and Driver Consulting
> Website: http://www.windrvr.com
> Blog: http://msmvps.com/blogs/WinDrvr
>
>
>
>
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

To simplify the question, after some more digging it appears that i8042
keyboards the scan codes will be forced to scan code set 1, is this also
the case for USB keyboards?

Don Burn
Windows Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr

“Don Burn” wrote in message news:xxxxx@ntdev:

> Doron,
>
> By regularized I meant can differing keyboard present differing scan
> code sets for the same keys in KEYBOARD_INPUT_DATA. And if so, which
> still appears likely after looking at the pnpi8042 sample, any
> suggestions on how to handle this in a filter above kbdclass that needs
> to understand the input?
>
>
> Don Burn
> Windows Filesystem and Driver Consulting
> Website: http://www.windrvr.com
> Blog: http://msmvps.com/blogs/WinDrvr
>
>
>
>
> “Doron Holan” wrote in message
> news:xxxxx@ntdev:
>
> > What is regularized? Windows expects a specific scan set bring reported by the underlying device. I can remember if it is set one or two. Look at the pnpi8042 sample in the vista wdk for the answer
> >
> > d
> >
> > debt from my phone
> > ________________________________
> > From: Don Burn
> > Sent: 3/23/2012 8:39 AM
> > To: Windows System Software Devs Interest List
> > Subject: [ntdev] KEYBOARD_INPUT_DATA
> >
> > I have a query from a client, and since it is about keyboard input which
> > is an area I have never dealt with I am hoping the list will help. Are
> > the scan codes in KEYBOARD_INPUT_DATA keyboard type specific or are they
> > regularized by the time they come out of the keyboard class driver? If
> > they are not regularized any recommendations on how one determines the
> > scan code set being used, and how to regularize it?
> >
> >
> > Don Burn
> > Windows Filesystem and Driver Consulting
> > Website: http://www.windrvr.com
> > Blog: http://msmvps.com/blogs/WinDrvr
> >
> >
> >
> >
> >
> > —
> > NTDEV is sponsored by OSR
> >
> > For our schedule of WDF, WDM, debugging and other seminars visit:
> > http://www.osr.com/seminars
> >
> > To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

Yes. Basically windows expects input to only be SS1. Think of it another way by asking this question: where in the stack can you specify the scan set you are providing data in? Answer: you can’t, there is no IOCTL that lets a keyboard answer that question. Here are the external IOCTLs to the keyboard stack

IOCTL_KEYBOARD_QUERY_ATTRIBUTES
IOCTL_KEYBOARD_SET_TYPEMATIC
IOCTL_KEYBOARD_SET_INDICATORS
IOCTL_KEYBOARD_QUERY_TYPEMATIC
IOCTL_KEYBOARD_QUERY_INDICATORS
IOCTL_KEYBOARD_QUERY_INDICATOR_TRANSLATION
IOCTL_KEYBOARD_INSERT_DATA

None indicate the ability to report scan set. Thus, all keyboards are assumed to report the same scan set

d
-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Don Burn
Sent: Friday, March 23, 2012 10:06 AM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] KEYBOARD_INPUT_DATA

To simplify the question, after some more digging it appears that i8042 keyboards the scan codes will be forced to scan code set 1, is this also the case for USB keyboards?

Don Burn
Windows Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr

“Don Burn” wrote in message news:xxxxx@ntdev:

> Doron,
>
> By regularized I meant can differing keyboard present differing
> scan code sets for the same keys in KEYBOARD_INPUT_DATA. And if so,
> which still appears likely after looking at the pnpi8042 sample, any
> suggestions on how to handle this in a filter above kbdclass that
> needs to understand the input?
>
>
> Don Burn
> Windows Filesystem and Driver Consulting
> Website: http://www.windrvr.com
> Blog: http://msmvps.com/blogs/WinDrvr
>
>
>
>
> “Doron Holan” wrote in message
> news:xxxxx@ntdev:
>
> > What is regularized? Windows expects a specific scan set bring
> > reported by the underlying device. I can remember if it is set one
> > or two. Look at the pnpi8042 sample in the vista wdk for the answer
> >
> > d
> >
> > debt from my phone
> > ________________________________
> > From: Don Burn
> > Sent: 3/23/2012 8:39 AM
> > To: Windows System Software Devs Interest List
> > Subject: [ntdev] KEYBOARD_INPUT_DATA
> >
> > I have a query from a client, and since it is about keyboard input
> > which is an area I have never dealt with I am hoping the list will
> > help. Are the scan codes in KEYBOARD_INPUT_DATA keyboard type
> > specific or are they regularized by the time they come out of the
> > keyboard class driver? If they are not regularized any
> > recommendations on how one determines the scan code set being used, and how to regularize it?
> >
> >
> > Don Burn
> > Windows Filesystem and Driver Consulting
> > Website: http://www.windrvr.com
> > Blog: http://msmvps.com/blogs/WinDrvr
> >
> >
> >
> >
> >
> > —
> > NTDEV is sponsored by OSR
> >
> > For our schedule of WDF, WDM, debugging and other seminars visit:
> > http://www.osr.com/seminars
> >
> > To unsubscribe, visit the List Server section of OSR Online at
> > http://www.osronline.com/page.cfm?name=ListServer


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

I would expect AZERTY keyboards will still report the same scancode for A, as a QWERTY keyboard.

Language is not the same as scanset. Language maps to scan codes, the scan set defines how scan codes are delivered

d

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@broadcom.com
Sent: Friday, March 23, 2012 11:29 AM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] KEYBOARD_INPUT_DATA

I would expect AZERTY keyboards will still report the same scancode for A, as a QWERTY keyboard.


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer