Pre-2.0.31 minor change in arch/i386/boot/setup.S

tenthumbs@cybernex.net
Thu, 08 May 1997 21:29:29 GMT


As86 can do 16-bit unconditional jumps. It just can't do them automatically, so you have
to specify them with the "br" instruction. There seems to be no reason to perpetuate
incorrect assumptions, so here's a simple patch on top of the pre-2.0.31 patch to fix it.

Thanks

--- linux-pre-2.0.31/arch/i386/boot/setup.S Wed May 7 19:54:25 1997
+++ linux-pre-2.0.31/arch/i386/boot/setup.S.new Thu May 8 17:15:37 1997
@@ -251,8 +251,7 @@
popf ! Restore CF error flag
jnc int15_88_good ! CF = 1 indicates error
movb [0x228], #0x01 ! Return the result code
- lea cx, end_memdetect ! gas can't do 16-bit offset jumps. very annoying.
- jmp cx
+ br end_memdetect ! We're through
int15_88_good:
cmp eax, #0x00010000 ! check AX for memory >= 64M
jge testfor_int15_c7 ! if >= 64M, check for more advanced BIOS calls