I'm currently developing some framebuffer blitting code.
I'm using v86 to find and switch to a VBE mode with linear framebuffer and just write into the physical base address I get from VBE.
Now, on qemu everything works fine, but in VMware the mode switch happens, the window resizes and I just see some stretched text on the display. Any write operation in the linear framebuffer doesn't seem to have any effect.
All VBE operations (get device information, get mode information and switch mode) don't return any error.
I've been searching for an hour now and I'm out of ideas.
Any advises?
edit:
Just to clarify. I'm currently writing a whole bunch of 0x00FFFFFF into every pixel in a 32 bit mode to test if I can see anything, but nothing happens on the display:
Code: Select all
uint32_t* bla = (uint32_t*)vbe_currentVbeMode.physbase;
for(int i = 0; i < 1000*10000; i++)
*bla++ = 0x00FFFFFF;
I also don't have paging enabled and didn't configure any kind of caching.