I recently noticed that my A20 enable routine looked very different to the one in the OSFAQ, and decided to redevelop it to make it more compatible with older machines. Along the way I discovered that Bochs is actually starting up with A20 enabled already. I commented out my A20 code altogether. Still working. Great. That means I can't use Bochs to check A20 enable and all my code could be garbage. ::)
Tried the same experiment on a real machine and got similar results. Displaying the keyboard output port value at bootup confirms that the A20 bit is high. Ok, so let's try a disable I thought. Works ok in Bochs, but my real machine won't accept the disable. A20 is still working and tested with some memory tests.
So.... Is it right that the realworld motherboard starts with A20 enabled and won't let me disable it? Or is my code still garbage?
(Attached is the source for those that really want to know what I've been up to...)
<edit:pype> please, start a new thread if you're dealing with a new problem.
A20 issues (was Re:SVGA question)
Re:SVGA question
That could well be, lots of them (I heard) boot up with it enabled.jimboynugget wrote: So.... Is it right that the realworld motherboard starts with A20 enabled and won't let me disable it? Or is my code still garbage?
(Attached is the source for those that really want to know what I've been up to...)
Re:SVGA question
IIRC it is enabled on all machines (since the 386 at least) when they power on as that is just it in its natural working state, and it is up to the BIOS to turn it off sometime before jumping to the boot code (where it is almost always turned back on ;D ).