[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] BIOS calls in 16bit protected mode

From: Roy Tam
Subject: Re: [Qemu-devel] BIOS calls in 16bit protected mode
Date: Thu, 14 Jun 2012 11:58:03 +0800

2012/6/14 Natalia Portillo <address@hidden>:
> Hi Kevin,
> Long time ago I read about OS/2 calling 16-bit protected mode BIOS, but the 
> documentation didn't specified if this was constrained to the separate 
> protected mode BIOS included by PS/2 systems or the real mode BIOS included 
> by the same PS/2 systems and the whole rest of PC computers.

IIRC Borland Pascal 7.0 programs did use 16-bit protected mode (
http://www.monstersoft.com/tutorial1/PM_intro.html ), but I don't have
such programs in hand.

> Regards,
> Natalia Portillo
> El 14/06/2012, a las 04:13, Kevin O'Connor escribió:
>> Hi,
>> I am trying to determine if there are legacy applications or operating
>> systems that invoke standard BIOS real-mode interrupt handlers while
>> in 16bit protected mode.  (The legacy real-mode entry points - like
>> "int 0x13" - not the declared 16bit protected mode entry points
>> defined by the PnP and APM specs.)
>> I am considering changes to SeaBIOS that would make 16bit protected
>> mode callers much less likely to work.  (Specifically, enhancing
>> SeaBIOS to use memory in the e-segment which is unlikely to be mapped
>> in protected mode.)
>> Most documents I've seen state that calling the real-mode entry points
>> in protected mode will not work.  Though, I am aware that the PCI BIOS
>> spec specifically requires this support for calls to "int 0x1a
>> ah=0xb1".
>> The advantage of making these changes is that it will allow SeaBIOS to
>> use notably less stack space and therefore be more compatible with old
>> applications that call the BIOS with very little stack space.  For
>> example, these changes enable DOS 1.0 to boot and run under SeaBIOS.
>> What would really help is pointers to applications and/or program
>> images that use 16bit protected mode calls to real-mode entry points.
>> Specifications or documents detailing valid or invalid uses would also
>> be helpful.
>> For those that are willing to run tests, one can compare the standard
>> SeaBIOS v1.7.0 image (for KVM/QEMU) at:
>> http://git.seabios.org/downloads/get/bios.bin-1.7.0.gz
>> to a test image with the new code at:
>> http://git.seabios.org/downloads/get/bios.bin-test-20120613.gz
>> Thanks,
>> -Kevin

reply via email to

[Prev in Thread] Current Thread [Next in Thread]