Search This Blog

Friday, October 16, 2009

Enabling Virtualization on x64 processors (Insyde H2O Bios)

This post is for Sony VAIO laptops running the Insyde H2O bios

Microsoft Virtual PC, Sun Virtual Box and other VM are getting increasingly popular these days among the OS fans and die-hard modders.
Being a Windows 7 (64-bit) and Various Linux (primarily Ubuntu and OpenSolaris) user, I wanted to run some of my old programs of windows xp. I tried using the Sun VirtualBox but due to some unknown bug, my old DOS program never run on it. I tried Windows 7 32 bit, Win XP 32 bit and even Wine on Ubuntu, but my damn program never executed.
You might be wondering what this "program" is that I am so desperately trying to run. It is actually a FAR Manager with JDFlasher Plugin to mod SonyEricsson firmware based phones. (A useful utility for the modder). I can write a whole Blog on SE modding here, but not detouring, lets stick to the point. Perhaps my next article soon!

Another solution that came in front of me was to use Microsoft Virtual PC and the Windows XP Mode (special for Windows 7). Downloaded it...
To my bad luck, a message pops up when I run Windows XP Mode: That I need to enable virtualization in my BIOS.
Ok, no big deal : enter BIOS, look around...
Damn!! not even a single clue of virtualization settings...
Did a Processor ID check; Yuss, my processor supports virtualization.
Then why the heck it is not there.

This is why virtualization setting is locked in my BIOS:
Sony has this concept that it will not enable virtualization and advanced settings to the casual user. What the heck: Did I buy a hot-shot processor for this shit??
Or perhaps it is a market policy of the giant? Keep the virtualization undercover, gain monopoly, and when Windows 7 is officially launched and people will ask about Windows XP Mode then reveal it..
But nothing can escape the eye of the modder!!
I want that setting to enable 64 bit support in my virtual machines!!

Ok now this is a bit model specific:
Got this application that writes to the VSS of the BIOS.
A single change of a bit in the register enables Virtualisation. But that bit may vary for different BIOS versions : so heavy caution!
Boot this EFI from a USB
http://luna.vmars.tuwien.ac.at/%7Efroemel/insydeh2o_efi/BOOTX64.EFI

and there you go.. It is a GRUB loader that fails and enters the rescue mode.

setup_var 0x1af
this should return 0x0 (means that the register holds 0, virtualization disabled)

to change it to 0x1 type
setup_var 0x1af 0x1a

this should do the trick. restart the machine..

OOooo IT WORKS!

Now I have the Windows XP Mode running in MS Virtual PC.
And all the 64bit OS also run in Sun VirtualBox!!

Disclaimer: NO GUARANTEE THAT YOUR BIOS WILL WORK AFTER THIS
DO IT AT YOUR OWN RISK

Do email or comment here for any query.

Angad

2 comments:

  1. EACH AND EVERY WORD GOES OVER MY HEAD!!!

    ReplyDelete
  2. I would like to try this but I would also like some more information about it. If you are ok with helping me, Can I please have a hand?

    ~DJ~

    ReplyDelete

Powered By Blogger