Going back on list..
On Sat, Jun 09, 2007 at 12:07:39AM +0600, Richard Neill Dabney wrote:
The illegal instruction is in the callbiosint16 function where CR0 is loaded to turn of protected mode.
Aha.
I looked at the emulator code and sure enough, that sequence of 'movl %cr0,%eax' (0x0f, 0x20,0xc0) is illegal. It makes no sense. Did this ever work?
It does work for several other VGA BIOSes. They probably do not try to switch to PM.
So I guess x86emu doesn't handle protected mode.
Could vm86 work instead of x86emu?
//Peter