grub-devel
[Top][All Lists]
Advanced

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

Re: status grub2 port of grub-legasy map command


From: Christian Franke
Subject: Re: status grub2 port of grub-legasy map command
Date: Sun, 31 May 2009 21:35:52 +0200
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.21) Gecko/20090403 SeaMonkey/1.1.16

Vladimir 'phcoder' Serbinenko wrote:

Do not do this. Some BIOS functions (like ah=08h) return data in dl.
Clients should not expect data in registers to be preserved across
interrupt calls. I don't know if there is something like a 8086/PC-BIOS
ABI document that we can find to confirm the non-preservation of dl, but
the FreeDOS MBR should be fixed then.
Thank you for pointing ah=8 function
AFAIK there is no normative reference. The source which was mainly
used for long years is helppc and it states following:
        - registers DS, BX, CX and DX are preserved
(http://heim.ifi.uio.no/~stanisls/helppc/int_13.html)
But now this reference is terribly outdated.
SeaBIOS preserves %dl too

T13 EDD provides a probably more up to date documentation of int13.

There was no requirement to preserve registers is in EDD (2000) and EDD-2 (2002). It appeared in EDD-3 (2004) and is still in first EDD-4 draft (2009):

"The values in all registers that are not explicitly defined in the following sections shall be preserved at the completion of each function call" From Section 8 of: BIOS Enhanced Disk Drive Services - 3 (T13/1572D Revision 3)

Fortunately, T13 docs are (unlike T10 and SATA-IO) still publicly available:
http://www.t13.org/Documents/MinutesDefault.aspx?DocumentType=4&DocumentStage=2

--
Regards,
Christian Franke





reply via email to

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