[SeaBIOS] SeaBIOS not fully working when compiled on FreeBSD

Kevin O'Connor kevin at koconnor.net
Thu Apr 16 15:43:33 CEST 2015


On Thu, Apr 16, 2015 at 01:46:41PM +0200, Roger Pau Monné wrote:
> El 16/04/15 a les 3.43, Kevin O'Connor ha escrit:
> > If you know which "int 15h" is returning bogus values, you can also
> > use gdb with qemu and set a break point.  See
> > http://seabios.org/Debugging .
> 
> I've tried this, the function is handle_15c0. This happens quite late 
> in the boot process, the FreeBSD code that triggers this issue is at:
> 
> http://fxr.watson.org/fxr/source/dev/atkbdc/atkbd.c#L1163
> 
> I've tried to run gdb against SeaBIOS, but it seems like breakpoints are 
> not correctly working. I've launched Qemu with:
> 
> # qemu-system-x86_64 -bios out/bios.bin -nographic /dev/zvol/tank/freebsd -s -S
> 
> And then:
> 
> # gdb782 out/rom16.o

Looks like this broke in gdb at some point.  It definitely used to
work.  You can use this sequence instead:

$ objcopy --adjust-vma 0xf0000 out/rom16.o rom16offset.o
$ gdb out/rom16.o
(gdb) target remote localhost:1234
(gdb) set architecture i8086
(gdb) symbol-file rom16offset.o
(gdb) break handle_15
(gdb) continue

-Kevin



More information about the SeaBIOS mailing list