summarylogtreecommitdiffstats
path: root/intelmac.patch
diff options
context:
space:
mode:
authorronald2011-08-03 19:21:09 +0000
committerronald2011-08-03 19:21:09 +0000
commit2597ac00f7328c869b9b8b9172b5567b841b7b52 (patch)
tree70e281639c8a838f321d949701af49771a1363a6 /intelmac.patch
downloadaur-2597ac00f7328c869b9b8b9172b5567b841b7b52.tar.gz
upgpkg: grub 0.97-18
fix compile issues; handle new kernel naming scheme in install-grub script; make install-grub script slightly smarter (though still not very smart) git-svn-id: file:///srv/repos/svn-packages/svn@134414 eb2447ed-0c53-47e4-bac8-5bc4a241df78
Diffstat (limited to 'intelmac.patch')
-rw-r--r--intelmac.patch67
1 files changed, 67 insertions, 0 deletions
diff --git a/intelmac.patch b/intelmac.patch
new file mode 100644
index 000000000000..a3fabc7330d1
--- /dev/null
+++ b/intelmac.patch
@@ -0,0 +1,67 @@
+--- grub-0.97.orig/stage2/asm.S 2004-06-19 18:55:22.000000000 +0200
++++ grub-0.97/stage2/asm.S 2006-04-21 11:10:52.000000000 +0200
+@@ -1651,7 +1651,29 @@
+ jnz 3f
+ ret
+
+-3: /* use keyboard controller */
++3: /*
++ * try to switch gateA20 using PORT92, the "Fast A20 and Init"
++ * register
++ */
++ mov $0x92, %dx
++ inb %dx, %al
++ /* skip the port92 code if it's unimplemented (read returns 0xff) */
++ cmpb $0xff, %al
++ jz 6f
++
++ /* set or clear bit1, the ALT_A20_GATE bit */
++ movb 4(%esp), %ah
++ testb %ah, %ah
++ jz 4f
++ orb $2, %al
++ jmp 5f
++4: and $0xfd, %al
++
++ /* clear the INIT_NOW bit don't accidently reset the machine */
++5: and $0xfe, %al
++ outb %al, %dx
++
++6: /* use keyboard controller */
+ pushl %eax
+
+ call gloop1
+@@ -1661,9 +1683,12 @@
+
+ gloopint1:
+ inb $K_STATUS
++ cmpb $0xff, %al
++ jz gloopint1_done
+ andb $K_IBUF_FUL, %al
+ jnz gloopint1
+
++gloopint1_done:
+ movb $KB_OUTPUT_MASK, %al
+ cmpb $0, 0x8(%esp)
+ jz gdoit
+@@ -1684,6 +1709,8 @@
+
+ gloop1:
+ inb $K_STATUS
++ cmpb $0xff, %al
++ jz gloop2ret
+ andb $K_IBUF_FUL, %al
+ jnz gloop1
+
+@@ -1991,6 +2018,11 @@
+ ENTRY(console_getkey)
+ push %ebp
+
++wait_for_key:
++ call EXT_C(console_checkkey)
++ incl %eax
++ jz wait_for_key
++
+ call EXT_C(prot_to_real)
+ .code16
+