Page 1 of 1

BIOS INT 0x15 EAX 0xEC00

Posted: Wed Aug 26, 2015 1:45 pm
by BrightLight
According to the Wiki:
In order for the firmware built into the system to optimize itself for running in Long Mode, AMD recommends that the OS notify the BIOS about the intended target environment that the OS will be running in: 32-bit mode, 64-bit mode, or a mixture of both modes. This can be done by calling the BIOS interrupt 15h from Real Mode with AX set to 0xEC00, and BL set to 1 for 32-bit Protected Mode, 2 for 64-bit Long Mode, or 3 if both modes will be used.
But the BIOS is usually not called from protected mode or long mode. What exactly does this function do?
BTW, if I return back to real mode to call the BIOS, should I use this function or not?

Re: BIOS INT 0x15 EAX 0xEC00

Posted: Wed Aug 26, 2015 1:56 pm
by kzinti

Re: BIOS INT 0x15 EAX 0xEC00

Posted: Wed Aug 26, 2015 1:57 pm
by kzinti

Re: BIOS INT 0x15 EAX 0xEC00

Posted: Fri Aug 28, 2015 9:28 pm
by SpyderTL
This function should be called once when the CPU is still in Real Mode before switching to 32-bit mode.

If your OS does not use 64-bit mode, you should pass a 1 to this function.