bda in pmode

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
finda

bda in pmode

Post by finda »

I wonder why not change interrupt vector table in pmode(00:00 256dwords ). Is it for returning back to real mode?

And as a second question does bios data area works in pmode? I mean Daily timer counter(40:6ch) updated every int 8?Or does it give true results in protected mode?
Tim

Re:bda in pmode

Post by Tim »

finda wrote: I wonder why not change interrupt vector table in pmode(00:00 256dwords ). Is it for returning back to real mode?
Yes, or more likely, for use with V86 mode.
And as a second question does bios data area works in pmode? I mean Daily timer counter(40:6ch) updated every int 8?Or does it give true results in protected mode?
Only if you update it. Remember the BIOS isn't running in protected mode, so if you want to keep the BDA up to date, you must do it yourself. It's probably not worth it unless you want to run 16-bit apps (and even then you can give each app or virtual machine a 'virtual BDA').
finda

Re:bda in pmode

Post by finda »

So, if I dont run 16bit app. and dont run V86 mode, and if I dont planning to return to real mode again, I can use bda and interrupt vector table area for my own use in protected mode. And is there some other memory parts like v-ram that I dont use for my own purpose??
Tim

Re:bda in pmode

Post by Tim »

Yes.

The best way of determining which memory you can use and which you can't is from the BIOS memory map. The FAQ at this web site will tell you how. But in any case, the memory from 00A0_0000 to 0010_0000 is never 'real' memory, so don't try to use it as such.
Post Reply