int 16h is keyboard interface. Put the desired function in ah and issue int 16h interrupt. See this link for one of many links that describe the services. When ah is 0 (as in xor ax,ax) then int16h will wait for keystroke.

Edited 5 Years Ago by Ancient Dragon: n/a

int 16h is keyboard interface. Put the desired function in ah and issue int 16h interrupt. See this link for one of many links that describe the services. When ah is 0 (as in xor ax,ax) then int16h will wait for keystroke.

Thanks, but thats not what I ment. What I want to know is what code does int 0x16 execute?
Is there a way to get around needing to use an interrupt to access to keyboard buffer?

Edit: You can see where it becomes a bit slow at 1:31 in my video.

Edited 5 Years Ago by Goalatio: n/a

use a debugger and you should be able to step into the interrupt function. I don't know what code it executes but at some point it will have to access the keyboard device driver. You can install your own int16h interrupt handler but that is not advisable.

use a debugger and you should be able to step into the interrupt function. I don't know what code it executes but at some point it will have to access the keyboard device driver. You can install your own int16h interrupt handler but that is not advisable.

I'll look into a debugger, thanks for the help.

It is possible to get input from the keyboard without calling int 16h, but I would not recommend it unless you know exactly what you are doing and the effects that it would have on the rest of the system. I am assuming that you are not writing an OS, so I would recommend that you simply use what you already have.

Edited 5 Years Ago by rbrt13: n/a

It is possible to get input from the keyboard without calling int 16h, but I would not recommend it unless you know exactly what you are doing and the effects that it would have on the rest of the system. I am assuming that you are not writing an OS, so I would recommend that you simply use what you already have.

Actually I am writing an OS.. did you look at my video?

No, I am stuck with dial-up, so most videos are not an option for me, sorry. On a side note, since you are writing an OS, I would recommend taking a look at http://wiki.osdev.org/Main_Page, very much very useful information there (I know from experience). Good luck, an OS is a lot of work.

No, I am stuck with dial-up, so most videos are not an option for me, sorry. On a side note, since you are writing an OS, I would recommend taking a look at http://wiki.osdev.org/Main_Page, very much very useful information there (I know from experience). Good luck, an OS is a lot of work.

Thanks for the link.
I know it's a lot of work. I've been working on mine for almost a month now and only have simple console-based GUI with a decent kernel framework built around it. :)

This question has already been answered. Start a new discussion instead.