Ok, you may find a non-standard x86 system, but if that's the case, you still need to know exactly where the video bios for real mode is located... my response was because someone said to scan the PCI bus. I am not sure if you can get the correct rom bios location from scanning the PCI bus, because it's hard mapped (shadowed) into a known location on bootup. If you find a non pc-compatible x86 system, then you obviously can't expect pc-compatible memory layout and you'd have to find out where it is mapped (if it even is, or just relies on having a proper driver).Octocontrabass wrote:Not all x86 systems are PC-compatible.Ready4Dis wrote:Actually, for an x86 system, the video bios is at a 'known' location at boot. It is always located at 0x000C0000.![]()
It doesn't really matter where you get the video BIOS, as long as you're getting the right thing. (I wonder what would happen if you tried to use VBE for multiple video cards...)
Is entering VBE modes is real without interrupts or VM86?
Re: Is entering VBE modes is real without interrupts or VM86
- Combuster
- Member

- Posts: 9301
- Joined: Wed Oct 18, 2006 3:45 am
- Libera.chat IRC: [com]buster
- Location: On the balcony, where I can actually keep 1½m distance
- Contact:
Re: Is entering VBE modes is real without interrupts or VM86
The PC bios copies it from the rom image on the PCI card. If you don't have a PC bios, what you do is scan the PCI bus for a graphics card with an option ROM, and copy that option rom somewhere into memory - it doesn't really matter where it ends up because you're emulating that as well.
Re: Is entering VBE modes is real without interrupts or VM86
Do you mean the OS provides the video BIOS? For emulator to receive anything it should know the exact location of "anything".Octocontrabass wrote:The emulator receives a copy of the video BIOS from the video card's ROM, which means it doesn't have to do anything special to handle a new video card.
Ok, PCI driver locates the video BIOS, but what are the entry points of the video BIOS? Usually it doesn't matter because the system's BIOS knows everything and we just fire an interrupt without any information about video BIOS internals (and even without knowledge about any other BIOS except the system's one).Octocontrabass wrote:For example, locating the video BIOS will most likely be a responsibility of the PCI driver, assuming a PCI video card.
And a bit more general question - what other kinds of BIOSes can be present on a machine? One kind is system BIOS, second is video BIOS, are there more kinds? Essentially the system BIOS responsibility can be very limited in case every device have it's personal BIOS. But may be it's a question about the preinstalled software architecture. OSDev wiki seems describes just the system BIOS and misses other kinds.
My previous account (embryo) was accidentally deleted, so I have no chance but to use something new. But may be it was a good lesson about software reliability 
Re: Is entering VBE modes is real without interrupts or VM86
May be "by emulating a full x86 environment"? And providing the emulator with BIOS(es) location(s) and a chunk of free memory.Ready4Dis wrote:No, it bypasses the switch completely by setting up a full x86 environment (using the existing bios/video rom)
Yes, now I see it.Ready4Dis wrote:So yes, it is a third way, and it alleviates the problems associated with vm86 and/or dropping back into real mode.
My previous account (embryo) was accidentally deleted, so I have no chance but to use something new. But may be it was a good lesson about software reliability 
Re: Is entering VBE modes is real without interrupts or VM86
Yes sir, now you have it. You basically give it a full emulated environment, but when it does things like use IN and OUT, you ACTUALLY pass those along and do them, so the emulator process will need certain access rights if you have protection setup.
- abcdef4bfd
- Member

- Posts: 492
- Joined: Fri Apr 03, 2015 9:41 am
Re: Is entering VBE modes is real without interrupts or VM86
I'm tried gfxpayload GRUB2 option, but nothing is happened.