This Question is really directed towards maman, but if anyone else has some input feel free to add it (Borg Number One perhaps).
I want to be able to test my code development of a PCI Option ROM using VMWare as my test / debug environment (So I don't hose my system). I have followed the example for PCI Option ROM on maman's site but VMWare just doesn't want to execute it.
Are there any settings that I would have to change in the other portions of the VMWare BIOS to get it to search for option ROMs, or is this a lost cause?
Thanks
PCI Option ROM in VMWARE
-
- Master Flasher
- Posts: 173
- Joined: Sun Mar 31, 2002 2:08 pm
- Location: Taka Bonerate National Park, Indonesia
- Contact:
I've never tried it before. I'm not sure wheter it will work or not. But perhaps, you'd better try it and tell us about the result here . However, there are some peculiarities in mainboard/system BIOS handling of PCI ROM between different BIOS/mainboard.
Anyway, my primary purpose of placing my code in PCI expansion ROM is to make an embedded x86 kernel as (perhaps) you've read from my article. So, to test the kernel I made only one code base but using certain makefile command I'm able to make a "to be loaded from floppy" binary and I can test this version using the readily available x86 emulator, i.e. Bochs or other. The difference between generating PCI ROM version and floppy version binary is only on the kernel loader which is in the case of PCI ROM will be a valid PCI ROM whereas in floppy version will be a boot sector of the floppy.
Another consideration is, if the feature that you expect from x86 emulator is hardware dependent feature. For example you want tol be able to initialize certain chipset register, then I think that's out-of-question. I mean the emulator will be very likely do not support such a feature.
Anyway, my primary purpose of placing my code in PCI expansion ROM is to make an embedded x86 kernel as (perhaps) you've read from my article. So, to test the kernel I made only one code base but using certain makefile command I'm able to make a "to be loaded from floppy" binary and I can test this version using the readily available x86 emulator, i.e. Bochs or other. The difference between generating PCI ROM version and floppy version binary is only on the kernel loader which is in the case of PCI ROM will be a valid PCI ROM whereas in floppy version will be a boot sector of the floppy.
Another consideration is, if the feature that you expect from x86 emulator is hardware dependent feature. For example you want tol be able to initialize certain chipset register, then I think that's out-of-question. I mean the emulator will be very likely do not support such a feature.
-
- Master Flasher
- Posts: 169
- Joined: Sun May 02, 2004 7:47 pm
- Contact:
Hi, smheoc.
What did you do to test your selfmade PCI BIOS ROM in VMware?
Belong to different specifications, PCI BIOS ROMs also contain Product ID and Vendor ID for a real available device (e.g. PCI card).
So, PCI BIOS ROMs will only boot if there is a hardware available with the same vendor ID and product ID.
To avoid different troubles, convert the PCI BIOS ROM to a ISA BIOS ROM.
You should also check the ATA Security eXtension BIOS:
http://fitzenreiter.de/ata/ata_eng.htm
-->
http://fitzenreiter.de/ata/atasx100.zip
Inside the zip archive there is a program which can simply convert the "pre-release"-BIOS ROM to a ISA BIOS ROM or to a PCI BIOS ROM.
Compare both generated files and you will see the differences between ISA BIOS ROMs and PCI BIOS ROMs
What did you do to test your selfmade PCI BIOS ROM in VMware?
Belong to different specifications, PCI BIOS ROMs also contain Product ID and Vendor ID for a real available device (e.g. PCI card).
So, PCI BIOS ROMs will only boot if there is a hardware available with the same vendor ID and product ID.
To avoid different troubles, convert the PCI BIOS ROM to a ISA BIOS ROM.
You should also check the ATA Security eXtension BIOS:
http://fitzenreiter.de/ata/ata_eng.htm
-->
http://fitzenreiter.de/ata/atasx100.zip
Inside the zip archive there is a program which can simply convert the "pre-release"-BIOS ROM to a ISA BIOS ROM or to a PCI BIOS ROM.
Compare both generated files and you will see the differences between ISA BIOS ROMs and PCI BIOS ROMs
I tried also test maman PCI Protected mode OS in VMware. This only work on real machines e.g. Award BIOS 6.00PG, virtual machines MS VPC 2007 and also Qemu with seabios . I make ISA option ROM code from maman PCI code. Read this topic on flatassembler forum.
Unfortunatelly, ISA and PCI option ROM not working in VMware (tested versions 5 and 8 ) and Bochs emulator
Unfortunatelly, ISA and PCI option ROM not working in VMware (tested versions 5 and 8 ) and Bochs emulator