I'm building a small bootloader for x86 as a project. For the moment I'm writing several functions to handle the screen, since it's a bit tedious. Most BIOS interrupt functions involve a page number argument, and I can't tell what this is for. Wikipedia hasn't nothing to say, I think.
Does anyone know what the page number represents?
Thanks
BIOS interrupt calls can be thought of as a mechanism for passing messages between BIOS and BIOS client software such as an operating system. The messages request data or action from BIOS and return the requested data, status information, and/or the product of the requested action to the caller.
June 2015. INT 10h, INT 10H or INT 16 is shorthand for BIOS interrupt call 10hex, the 17th interrupt vector in an x86-based computer system. The BIOS typically sets up a real mode interrupt handler at this vector that provides video services.
Interrupt 16h -- Keyboard I/O BIOS provides keyboard service routines under INT 16H. We list here some examples. This BIOS function can be used to read a character from the keyboard. If the keyboard buffer is empty, it waits for a character to be entered.
There's enough video memory to allow multiple text screens side-by-side. The page numbers allow you to do double-buffering, where you draw to an off-screen page, and then when it's ready change the currently visible page to the new one.
See the infamous and still invaluable Ralph Brown's Interrupt List for more (well, a little more) information:
http://www.ctyme.com/intr/rb-0087.htm
In particular, look at int 0x10 AH=0x05, which lets you change the current visible page.
Just use page 0, which is the default current page.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With