Results 1 to 5 of 5

Thread: windows/bios keyboard buffer question...

  1. #1

    Thread Starter
    Lively Member Brandito's Avatar
    Join Date
    Nov 2000
    Location
    Here, There, Every Where!
    Posts
    106

    windows/bios keyboard buffer question...

    I have a question... I started up my trusty "cmd" prompt under windows and I dumped the part of BIOS memory related to the keyboard buffer (16words). The problem is that it only contains keyboard information captured from inside the prompt. It does not capture key strokes from Internet Explorer, for example.

    So my question is:
    What is going on?
    Does windows use different interrupts? INT9 INT16?

    I guess I am lost.

    Thanks,
    Brandito
    Master of Cyber Fu - A Temple of Digital Chi

  2. #2
    I'm about to be a PowerPoster!
    Join Date
    Jan 2005
    Location
    Everywhere
    Posts
    13,647

    Re: windows/bios keyboard buffer question...

    Windows doesn't use interrupts, it uses window messages. If there is a keystroke buffer it would be maintained by the keyboard driver.

  3. #3
    Lively Member
    Join Date
    Nov 2005
    Posts
    68

    Re: windows/bios keyboard buffer question...

    Take a look for hook functions in windows sdk also

  4. #4
    New Member
    Join Date
    Jun 2006
    Posts
    1

    Re: windows/bios keyboard buffer question...

    Hiho,

    sorry for bringing up this old topic but I'm somewhat confused.

    "Windows doesn't use interrupts, it uses window messages. If there is a keystroke buffer it would be maintained by the keyboard driver."

    I dont quite understand how this can work without an interrupt. What exactly happens when I physically press a key on my keyboard on a Windows (lets just assume WinXP although I dont know if 2k would make a difference) system and what is the difference in doing this in a Dos box ?

    I hope someone can clear this up.

    Greetings JG

  5. #5
    PowerPoster
    Join Date
    Feb 2006
    Location
    East of NYC, USA
    Posts
    5,691

    Re: windows/bios keyboard buffer question...

    The Windows kernel uses the keyboard interrupt to fill its own buffer, which is turned into Windows messages. The default low-memory keyboard buffer is program-specific - it's the buffer used by the command string interpreter, which is what's running in DOS. That buffer never gets filled when other programs are running unless they don't maintain their own buffers. (Most DOS programs used the buffer as-is, but some defined their own buffer for various reasons.)

    Quote Originally Posted by Javageek321
    What exactly happens when I physically press a key on my keyboard on a Windows ... system
    The keyboard driver services the keyboard interrupt and loads the typed character into its (the keyboard driver's) buffer.
    and what is the difference in doing this in a Dos box ?
    I believe that the Windows keyboard driver still services the interrupt, but puts the character into the "DOS" keyboard buffer (sends a Windows message to the DOS box).
    The most difficult part of developing a program is understanding the problem.
    The second most difficult part is deciding how you're going to solve the problem.
    Actually writing the program (translating your solution into some computer language) is the easiest part.

    Please indent your code and use [HIGHLIGHT="VB"] [/HIGHLIGHT] tags around it to make it easier to read.

    Please Help Us To Save Ana

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width