* [Qemu-devel] [BUG] QEMU BIOS - El Torito no emulation boot address incorrect seg:off
@ 2008-07-23 9:44 Jarno Rajala
2008-07-23 14:12 ` Anthony Liguori
0 siblings, 1 reply; 2+ messages in thread
From: Jarno Rajala @ 2008-07-23 9:44 UTC (permalink / raw)
To: qemu-devel
Hello
I believe I've located a minor bug in QEMU BIOS. According to the El
Torito specification the no emulation mode should load the boot code to
the real mode address seg:0 and start executing from there. However,
QEMU jumps to 0:seg*16, which is the same absolute address, but wrong
segment:offset.
The QEMU BIOS version I have is
QEMU BIOS - build: 02/13/08
$Revision: 1.194 $ $Date: 2007/12/23 19:46:27 $
Options: apmbios pcibios eltorito rombios32
The following boot code illustrates the problem. It prints JJ to the top
of the screen on a real PC, but prints JA instead on QEMU. (The boot
image is set to load into the segment 0x7c8)
test_code:
call .call
.call:
pop bx
mov ax,cs
shl ax,4
add ax,bx
.l1
cmp ax,0x7c83
jne .l1
mov ax,0xb800
mov es,ax
mov [es:0],word 0x074a
mov ax,cs
cmp ax,0x7c8
jne .l2
mov [es:2],word 0x074a
jmp .loopy
.l2
cmp ax,0
jne .loopy
mov [es:2],word 0x0741
.loopy:
jmp .loopy
Jarno Rajala
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [Qemu-devel] [BUG] QEMU BIOS - El Torito no emulation boot address incorrect seg:off
2008-07-23 9:44 [Qemu-devel] [BUG] QEMU BIOS - El Torito no emulation boot address incorrect seg:off Jarno Rajala
@ 2008-07-23 14:12 ` Anthony Liguori
0 siblings, 0 replies; 2+ messages in thread
From: Anthony Liguori @ 2008-07-23 14:12 UTC (permalink / raw)
To: qemu-devel
Jarno Rajala wrote:
> Hello
>
> I believe I've located a minor bug in QEMU BIOS. According to the El
> Torito specification the no emulation mode should load the boot code
> to the real mode address seg:0 and start executing from there.
> However, QEMU jumps to 0:seg*16, which is the same absolute address,
> but wrong segment:offset.
It could be a bug, but then again, specifications aren't always
correct. At any rate, the BIOS code is part of the Bochs project so I
would suggest bringing it up there.
Regards,
Anthony Liguori
> The QEMU BIOS version I have is
>
> QEMU BIOS - build: 02/13/08
> $Revision: 1.194 $ $Date: 2007/12/23 19:46:27 $
> Options: apmbios pcibios eltorito rombios32
>
> The following boot code illustrates the problem. It prints JJ to the
> top of the screen on a real PC, but prints JA instead on QEMU. (The
> boot image is set to load into the segment 0x7c8)
>
> test_code:
> call .call
> .call:
> pop bx
> mov ax,cs
> shl ax,4
> add ax,bx
> .l1
> cmp ax,0x7c83
> jne .l1
> mov ax,0xb800
> mov es,ax
> mov [es:0],word 0x074a
> mov ax,cs
> cmp ax,0x7c8
> jne .l2
> mov [es:2],word 0x074a
> jmp .loopy
> .l2
> cmp ax,0
> jne .loopy
> mov [es:2],word 0x0741
> .loopy:
> jmp .loopy
>
> Jarno Rajala
>
>
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2008-07-23 14:13 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-07-23 9:44 [Qemu-devel] [BUG] QEMU BIOS - El Torito no emulation boot address incorrect seg:off Jarno Rajala
2008-07-23 14:12 ` Anthony Liguori
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).