a20 gate
a20 gate
i have a question about the a20 gate. first of all if i choose to enable it through the keyboard controller why is 0xDF the "special code" for enabling that gate. second...if i want to have a backup method of enabling the gate and i dont want to check if the keyboard controller method worked or not...will the port 0x92 method mess up the a20 enabling if the first method is successful in enabling the a20 gate? thank you ppl. bye
Re:a20 gate
I suggest you don't use the 0x92 port, because this is NOT a standard method on a x86 architecture dispite the fact that (some) systems support it.
You should use the keyboard controller instead :
First, you must wait until the keyboard controller is ready (read port 0x64 and check 2nd bit status), then you must send 0xD1 to the port 0x64 (this is the keyboard controller).
Then you must wait until the controller is ready (ie wait until it understand what you sent before) and then only you can send 0xDF to the port 0x60.
When this is done, the A-20 gate is opened
You should use the keyboard controller instead :
First, you must wait until the keyboard controller is ready (read port 0x64 and check 2nd bit status), then you must send 0xD1 to the port 0x64 (this is the keyboard controller).
Then you must wait until the controller is ready (ie wait until it understand what you sent before) and then only you can send 0xDF to the port 0x60.
When this is done, the A-20 gate is opened