qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [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

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).