On Sun, May 29, 2011 at 1:55 PM, cinap_lenrek@gmx.de wrote:
Hi,
working on a bootloader, we added apm initialization code to the bootloader so the kernel doesnt have to switch to realmode and can just do 32 protected mode calls.
the bootloader does the following things in realmode before starting the kernel:
- do apm installation check (INT 0x15, AX=0x5300)
- do apm disconnect (INT 0x15, AX=0x5304)
- do apm connect to 32bit protected mode interface (INT 0x15, AX=0x5303, BX=0)
- save and pass the register contents after the connect call in some form to the kernel
but doing this seems to disable VESA bios functionality on some machines (via epia and p3-sbc) (INT 0x10, AX=0x4F00 doesnt return any modes)
i dont have the machines where this happens and i dont know the exact return conditions of the vbe calls yet, but i plan to debug this using our realmode emulator but it might take us some time...
my question is are we on the right track? is it possible that doing these APM calls disables VBE?
-- cinap
Hi cinap,
It sounds like you may have an interrupt vector chaining problem or register corruption problem in you interrupt installation.
Marc