Amos Kong wrote:
[CS base address = CS segment selector * 16] F000H * 16 = F0000H ^^^^^^ (it's not 0xFFFF0000)
==> "CS base address" is not "base address in CS register" ?
Study real mode vs. protected mode. x86 starts in real mode. For backwards compatibility, 386 CPUs (the first with full 32-bit addressing) and later also start in real mode, but with CS in a twilight state, so that the first instruction is actually fetched from near top of 4GB, where the boot flash chip is decoded.
- If I only compile seabios, and load the bios.bin to qemu,
coreboot will not be used?
Of course not. If you compile Linux, and load bzImage from LILO, will gPXE be used? coreboot is one project and SeaBIOS is another. They can both be used together and separately.
what's the relationship between coreboot and seabios ?
coreboot picks SeaBIOS as default payload, if the person building coreboot does not explicitly provide a payload.
On qemu the initialization done by coreboot is simple, and has been included into SeaBIOS instead, probably for convenience, I don't know.
//Peter