Date: Fri, 6 Apr 2001 14:00:49 -0700 (PDT) From: Doug Ambrisko <ambrisko@whistle.com> To: ambrisko@whistle.com Cc: John Baldwin <jhb@FreeBSD.org>, mark@whistle.com, dhw@whistle.com, freebsd-hackers@FreeBSD.org Subject: Re: Fix for CDROM boot for IBM PC desktops Message-ID: <200104062100.OAA76025@whistle.com> In-Reply-To: From "(env:" "ambrisko)" at "Apr 6, 2001 12:48:56 pm"
next in thread | raw e-mail | index | archive | help
ambrisko writes: | I also have an update to the patch to make it work on IBM ThinkPads so | that we can boot a FreeBSD CD on a ThinkPad. The problem on the ThinkPad | is that it reads the values from the defined MSDOS boot sector and | uses them to figure out how to do the emulation. Which in our cause | is random code values. Since the BIOS didn't see the media type defined | as a floppy it made it a IDE device somewhere (such as ad11). This | confused the 3rd stage loader. I have confirmed that this works. So now we should be able to boot a FreeBSD CD on all IBM hardware that I can find around here. I will revise the PR. Doug A. | Here is the updated structure in boot1.s: | /* From OpenBSD biosboot.S with tuned values from Doug Ambrisko so | ThinkPads can boot from CDROM. I think the critical part | is setting the media type. | */ | .org 0x03, 0x00 | .asciz "FreeBSD" | /* BPB */ | .org 0x0b, 0x00 | bpb: .word 512 /* sector size */ | .byte 1 /* sectors/cluster */ | .word 1 /* reserved sectors */ | .byte 2 /* # of FAT */ | .word 224 /* root entries */ | .word 2880 /* small sectors */ | .byte 0xf0 /* media type (fd) */ | .word 144 /* sectors/fat */ | .word 18 /* sectors per track */ | .word 2 /* # of heads */ | | /* EBPB */ | .org 0x1c, 0x00 | ebpb: .long 16 /* hidden sectors */ | .long 0 /* large sectors */ | To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200104062100.OAA76025>