|
||||||||
--On Wednesday, August 6, 2003 3:05 PM +0200 Manuel Kasper <mk at neon1 dot net> wrote: > On Wed, 6 Aug 2003, Roberto Zilli wrote: > >> The boot seems ok, but when the kernel is loaded something goes wrong, >> the loading is VERY slow. >> I've try another CF to be shure about this failure. It't working on my >> desk! The working well CF card is a SanDisk. Don't you just love it when a program tells you that something is wrong, but refuses to say what? :-) > Umm, OK, so at least the boot1 stage is OK. Hmm, I'm not so sure anymore > that I didn't accidentally overwrite the patched loader (it needs a patch > to read only one sector at a time, too) with an unpatched version. > > The problem is just that I don't have a "broken" CF card, so I can't test > it myself. I'll have a look this evening and make another image available > with a known-patched loader so you can test again, if you don't mind. While you're fiddling with the loader, you may want to include this: --------------------------------------------------------------------------- --- sys/boot/i386/btx/btx/btx.s.orig Thu Dec 28 04:08:22 2000 +++ sys/boot/i386/btx/btx/btx.s Wed Aug 6 11:36:08 2003 @@ -293,7 +293,7 @@ testb $0x1,btx_hdr+0x7 # Reboot? exit.3: jz exit.3 # No movw $0x1234, BDA_BOOT # Do a warm boot - ljmp $0xffff,$0x0 # reboot the machine + ljmp $0xf000,$0xfff0 # reboot the machine # # Set IRQ offsets by reprogramming 8259A PICs. # --------------------------------------------------------------------------- It fixes "reboot" for the Soekris (or any other BIOS that starts with a near jump). Not sure whether FreeBSD copied the bug from GRUB or vice-versa. :-) I also added a conditional for the TERM_EMU problem: --------------------------------------------------------------------------- --- sys/boot/i386/libi386/Makefile.orig Fri Jul 19 11:46:28 2002 +++ sys/boot/i386/libi386/Makefile Tue Jul 22 02:02:15 2003 @@ -25,8 +25,10 @@ CFLAGS+= -DDISK_DEBUG .endif +.ifndef(BOOT_NO_TERM_EMU) # Include simple terminal emulation (cons25-compatible) CFLAGS+= -DTERM_EMU +.endif # Make "machine" required for all objects # (based on the more complete case in sys/i386/boot/Makefile.inc) --------------------------------------------------------------------------- This avoids needing a Soekris-specific Makefile. Fred Wright |