[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] QEMU + -std-vga + XFree86

From: Kyle Hubert
Subject: Re: [Qemu-devel] QEMU + -std-vga + XFree86
Date: Mon, 26 Mar 2007 01:32:49 -0700

no obvious problem in the xf86config file.
when all fails, use the framebuffer :) and Xfbdev (fbdev driver instead
of vesa)

The framebuffer seems to miss every other vertical scan line. I'm not
sure if I make sense, but the video wraps around the screen onto
itself vertically. Thus rendering half of it on top (with vertical
black lines every other pixel)

you might need a patch called vesafb-tng to reach such size.
I haven't tried successfully though. Appending the proper
parameters -append "video=vesafb:address@hidden", I
basically reach at most 1280x1024.

I tried using the newer video appendage and it didn't seem to work. I
had to use the older vga=. I believe you are talking about the kernel
boot param, yes?

How about this for more information. The XFree86 VBE extension does
the following code:

   pInt->ax = 0x4F00;
   pInt->es = SEG_ADDR(RealOff);
   pInt->di = SEG_OFF(RealOff);
   pInt->num = 0x10;


Resulting in:

   TotalMem = B_O16(vbe->TotalMem);
   /* Some BIOS'es are off by one */
   TotalMem += TotalMem & 1U;

   xf86DrvMsgVerb(screen, X_INFO, 3, "VESA VBE Total Mem: %li kB\n",
                  TotalMem * 64);

Which is annoying it ignores the X config's manual VideoRam in the
device section.

Perhaps the vgabios doesn't correctly implement this interrupt?

Looking in the 0.6a release of vgabios, you see in vbe.c:

       // VBE Total Memory (in 64b blocks)
       vbe_info_block.TotalMemory = VBE_TOTAL_VIDEO_MEMORY_DIV_64K;

So, it's intended to return correctly. Yet the XFree86 driver reports
a zero return.

Perhaps the vgabios.bin coming with QEMU is incorrect? I don't see
anything in vgabios.diff which suggests this code was changed.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]