mirror of
https://git.savannah.gnu.org/git/grub.git
synced 2026-10-21 14:59:34 +00:00
2009-12-25 Vladimir Serbinenko <phcoder@gmail.com>
* kern/i386/pc/startup.S (grub_biosdisk_get_diskinfo_int13_extensions): Ignore return status if CF is cleared. (grub_biosdisk_get_diskinfo_standard): Likewise.
This commit is contained in:
commit
db9433999c
2 files changed
+16
No files matched your search
@@ -764,6 +764,11 @@ FUNCTION(grub_biosdisk_get_diskinfo_int13_extensions)
|
||||
movw %cx, %ax
|
||||
movw %bx, %ds
|
||||
int $0x13 /* do the operation */
|
||||
jc noclean
|
||||
/* Clean return value if carry isn't set to workaround
|
||||
some buggy BIOSes. */
|
||||
xor %ax, %ax
|
||||
noclean:
|
||||
movb %ah, %bl /* save return value in %bl */
|
||||
/* back to protected mode */
|
||||
DATA32 call real_to_prot
|
||||
@@ -807,6 +812,11 @@ FUNCTION(grub_biosdisk_get_diskinfo_standard)
|
||||
.code16
|
||||
movb $0x8, %ah
|
||||
int $0x13 /* do the operation */
|
||||
jc noclean2
|
||||
/* Clean return value if carry isn't set to workaround
|
||||
some buggy BIOSes. */
|
||||
xor %ax, %ax
|
||||
noclean2:
|
||||
/* check if successful */
|
||||
testb %ah, %ah
|
||||
jnz 1f
|
||||
|
||||
Reference in new issue
Block a user