Microsoft Virtual PC
Microsoft Virtual PC
Hi guys, iv just got my hands on a copy of Microsoft's Virtual PC.
I would just like to know what you guys think about the use of this software, maybe you know of some issues or should i stay with bochs???
I would just like to know what you guys think about the use of this software, maybe you know of some issues or should i stay with bochs???
Re:Microsoft Virtual PC
I suggest that you'd better stay with bochs as you guy can never use an original disk image within VPC.You know ,sometimes an original disk image is more convinent.
Re:Microsoft Virtual PC
Actually you can use an original image, but only as a 720 kb floppy or 1.44 mb. Another option is a (virtual) CD. I have Daemon Tool installed and I can mount a CD image which Virtual PC can boot from.
Personally the more stuff I can test on the better. I'm currently playing around with QEMU, VirtualPC and two actual computers. If I start doing some serious work I'll add Bochs and VMWare.
Most virtual machines offer different levels of hardware they emulate or support. For example, I'm playing with QEMU since it can emulate a 64-bit CPU and multiple CPU's. VirtualPC on the other end has support for ACPI and a Plug & Play BIOS which QEMU is lacking.
Personally the more stuff I can test on the better. I'm currently playing around with QEMU, VirtualPC and two actual computers. If I start doing some serious work I'll add Bochs and VMWare.
Most virtual machines offer different levels of hardware they emulate or support. For example, I'm playing with QEMU since it can emulate a 64-bit CPU and multiple CPU's. VirtualPC on the other end has support for ACPI and a Plug & Play BIOS which QEMU is lacking.
Re:Microsoft Virtual PC
MS Virtual PC is able to open a ISO file.
"Capture a image file..." or something like that, just click on it under cdrom drives and select your os cd image.
"Capture a image file..." or something like that, just click on it under cdrom drives and select your os cd image.
- Colonel Kernel
- Member
- Posts: 1437
- Joined: Tue Oct 17, 2006 6:06 pm
- Location: Vancouver, BC, Canada
- Contact:
Re:Microsoft Virtual PC
I found that Virtual PC didn't emulate 90x60 text mode VGA properly, so I didn't bother testing with it further.
Top three reasons why my OS project died:
- Too much overtime at work
- Got married
- My brain got stuck in an infinite loop while trying to design the memory manager
Re:Microsoft Virtual PC
You probably already know, but 90 x 60 is not a standard textmode. So it may not work properly on real hardware either.
If you switch to 640 x 480 x 16 graphics and use the BIOS' font tables you can get 80 x 60 (although that might look a bit cramped). That is supported on every vga card though.
If you switch to 640 x 480 x 16 graphics and use the BIOS' font tables you can get 80 x 60 (although that might look a bit cramped). That is supported on every vga card though.
- Colonel Kernel
- Member
- Posts: 1437
- Joined: Tue Oct 17, 2006 6:06 pm
- Location: Vancouver, BC, Canada
- Contact:
Re:Microsoft Virtual PC
What does it mean to be a "standard" mode? I set 90x60 by programming the VGA registers and loading my own font data directly. It works fine on every real machine I've tested it on.
My code is based on what I found here:
http://my.execpc.com/~geezer/software/90x60.asm
My code is based on what I found here:
http://my.execpc.com/~geezer/software/90x60.asm
Top three reasons why my OS project died:
- Too much overtime at work
- Got married
- My brain got stuck in an infinite loop while trying to design the memory manager
Re:Microsoft Virtual PC
It also has an odd problem where the invlpg instruction seems to be ignored on the fourth time it is used. Sounds really odd, but I don't think its due to anything I'm doing wrong, because Bochs and all real PCs I've tested it on work fine. To work around it, just reload CR3.
I'm sure it was designed to implement a bare minimum of features to allow Windows to run.
So in short, it _should_ work, but there are definitely better emulators out there. Besides, with Bochs you get the log file... try debugging a triple fault on virtual pc!
Mike
I'm sure it was designed to implement a bare minimum of features to allow Windows to run.
So in short, it _should_ work, but there are definitely better emulators out there. Besides, with Bochs you get the log file... try debugging a triple fault on virtual pc!
Mike
Re:Microsoft Virtual PC
Colonel, the asm says "should work with VGA video board and VGA monitor", notice the *should*. Basically if it cannot be set through normal or VESA BIOS extensions, like the 80 x 50 is, then I would not consider it a "normal mode".
It works since the source basically retimes your vga card, which I guess is fine if you know exactly which card your working on and what the limits are (like a specific driver would know).
Personally for "production" code I like to stick to something normal or VESA bios can set.
Mike: I would re-check that, I found a list and it seems to run a lot of operating systems (don't know if they use invlpg or not, of course) so it does seem a bit unlikely:
http://vpc.visualwin.com/
Again I like to have as many different test setups as possible. A resetting computer is definitely not something you want to debug under that. But it's a great way to test some ACPI / PnP code.
It works since the source basically retimes your vga card, which I guess is fine if you know exactly which card your working on and what the limits are (like a specific driver would know).
Personally for "production" code I like to stick to something normal or VESA bios can set.
Mike: I would re-check that, I found a list and it seems to run a lot of operating systems (don't know if they use invlpg or not, of course) so it does seem a bit unlikely:
http://vpc.visualwin.com/
Again I like to have as many different test setups as possible. A resetting computer is definitely not something you want to debug under that. But it's a great way to test some ACPI / PnP code.
Re:Microsoft Virtual PC
no this is not true -- VPC was not even written by MS -- it was written to work with all OSs -- not just windows (officially, MS only offers tech support for windows, though i have heard that they don't actually enforce that) and it does work with all major OSs (including all forms of linux, BSD, solaris, windows, etc)Mike wrote: I'm sure it was designed to implement a bare minimum of features to allow Windows to run.