2008-05-15 Bean <bean123ch@gmail.com>

* kern/i386/pc/startup.S (grub_console_getkey): Workaround for the
	keyboard hang problem in apple's intel mac.
This commit is contained in:
bean 2008-05-15 11:51:22 +00:00
parent 1cf4059a49
commit a079699e97
2 changed files with 22 additions and 0 deletions

View file

@ -1,3 +1,8 @@
2008-05-15 Bean <bean123ch@gmail.com>
* kern/i386/pc/startup.S (grub_console_getkey): Workaround for the
keyboard hang problem in apple's intel mac.
2008-05-09 Robert Millan <rmh@aybabtu.com>
* util/biosdisk.c (linux_find_partition, get_os_disk): Handle Virtio

View file

@ -1240,6 +1240,23 @@ FUNCTION(grub_console_getkey)
call prot_to_real
.code16
/*
* Due to a bug in apple's bootcamp implementation, INT 16/AH = 0 would
* cause the machine to hang at the second keystroke. However, we can
* work around this problem by ensuring the presence of keystroke with
* INT 16/AH = 1 before calling INT 16/AH = 0.
*/
1:
movb $1, %ah
int $0x16
jnz 2f
hlt
jmp 1b
2:
movb $0, %ah
int $0x16
movw %ax, %dx /* real_to_prot uses %eax */