Hi!
I own an MSI GX-600PX notebook, which also has an AMI Aptio based BIOS and a Intel VT capable CPU, but unfortunately no option in the BIOS to turn it on (they've put an AHCI option, but no VT option). I've tried two tools from Igor (vtpatch and uefidecomp) but they won't work (I'm actually not surprised, I don't have a sony vaio, only the bios is the same). Actually vtpatch says that the CPU is VT capable, it is disabled but unlocked. Setting the bits by hand to 0xD at every restart works, but is a bit tedious, and for example hyper-v needs that bit set at startup to boot (I could create a grub loader that would do the job at every restart, but patching the bios would be the best option for me). Is there any (easy) way to add this MSR change to the PE part of the bios, or should I start reverse-engineering the bios?
Thanks,
SztupY
-
Hello... i am joining request for MSI GX600
Please igor can you help us?
There is bios http://download1.msi.com/files/downloads/bos_exe/163a_10z.zip
I have same problem... Intel ID utility tells CPU have enabled VT, but it's disabled at bios level and vtpatch utility does not work...
EDIT: 2 szupy: by 0xD you meant NVRAM register? Is it possible to change while running in windows?
And about modified grub... can you post it there? :] -
You can't change the NVRAM registers, but you can change the MSR while running windows. Fortunately GX600PX doesn't lock the registers, so you can change it while windows is running. After changes however I found that both Windows Virtual PC (in Windows 7) and Sun's VirtualBox works even after restart (seems that WVPC "magically" enables the appropriate MSR flags, but only if they have been enabled at least once).
To enable the MSR register use http://crystalmark.info/software/CrystalCPUID/index-e.html (works with Xp/Vista/Win7x64 too) and change the MSR 0x3a to 0x0/0xd. Don't forget to change it for all of the cores you are using (you can select the appropriate processor core on the main screen of this utiility). After this MicrosoftVirtualPc/WindowsVirtualPC/WMVare/VirtualBox/etc should tell you that VT is enabled and working (if not, double check that you have changed MSR register 0x3a to 0x0/0xd (or 0x0/0x5) on BOTH cores)
This register will change back to 0x0/0x0 after restart, but Win7 seems to actually turns it on after it had been used by WVPC/XP mode at least once. -
2. BIOS is 1MB in size which means it is not the same.
3. It may have checksum and I have no way of knowing it.
I have checked the EFI code, and I couldn't find the instructions which perform VT initialization -- basically MSI has left MSR 0x3A unconfigured.
In my opinion, leaving VT configuration register unlocked and thus allowing even malicious software to change it without user's consent is almost as bad as disabling and locking it without providing user accessible means of configuring VT.
As you noticed, you can set the MSR each time computer boots but there are some caveats:
1. You must set the register to same value on all cores.
It means that you must perform CPU detection, and enumerate available CPUs which AFAIK you can't do in bootloader because only boot processor is active while application processors are in a wait-for-SIPI state (i.e. waiting to be awakened and fully configured by the OS).
2. You must set the register even after resuming from S3 suspend.
S3 resume usually bypasses bootloader alltogether but instead jumps to some location in RAM after BIOS has done its bidding.
So, the only real solution is to email MSI and politely ask them to add the option -- I heard that they have listened to the customers in the past, it is worth giving it a try.
Sorry guys, that is the best I can do for you. -
ScuderiaConchiglia NBR Vaio Team Curmudgeon
1. Is this MSR register ALWAYS 0x3a? And does the value ALWAYS need to be 0xd?
2. If not, how does the WVPC know what to set when it is run after a reboot.
3. If it is always the same, and WVPC already knows what it needs to do to set this. Then all we REALLY need to figure out is how to fake WVPC into thinking it should set this register each time.
What I am driving at here is there MAY be any reason to force this register at all before you install WVPC the first time. I may be way off base, but it might be possible to determine where in the registry WVPC records the fact that it needs to enable the MSR 0x3a register value. Then anyone could conceivably install WVPC, tweak the registry entry and they'd be good to go.
Now, of course this assumes, and admittedly it is a BIG assumption, that the installation of WVPC is the same, (with the exception of the registry entry about it needing to enable the MSR 0x3a register value), on a machine where that register value is set or not.
This should be easy enough to test. Install WVPC without the value set. Take an inventory of the directory where it is installed. And a dump of the registry entries it adds. Then uninstall it, enable the register value, reinstall WVPC. Then compare the directory inventories and registry values.
I wish I had a few hours to burn to try this myself.
Gary -
First: I've set the register to 0xd, but after reboot it reverted to "only" 0x5 (so the 0x8 flag was not set), so it doesn't seem WVPC needed to know the exact value.
Second: Everyting works including sleep and hibernation. The virtual machines experience no problems, and the register gets it's 0x5 value back after the notebbok goes to sleep/hibernation.
Third: WVPC is not run as admin, but you need admin rights to set the MSR registers, so there might be some drivers/kernel components/etc. that do this job for WVPC.
Fourth: I don't use WVPC anymore because VirtualBox is more to my taste (WVPC doesn't support x64 guests) but nevertheless virtualization works fine. Virtualization did not work under Windows 7 beta, where there was no WVPC, I had to set the register back every restart (didn't try out sleep/hibernation) -
here is modded bios
http://tofiko.cz/E163ABKMv10Z.rar
and here is original
http://download1.msi.com/files/downloads/bos_exe/163a_10z.zip
I've tested them both... it doesn't brick notebook -
Guys, I already told you that I can't help you with the hardware which I do not have available for testing.
What I can do is disperse some knowledge:
1. MSR is always 0x3A
2. Value for VT enabled is always 0x5 or 0xD depending on the CPU (newer ones have additional functionality thus one more bit set).
Even if the BIOS can be modded it is not trivial, because you need to know where to add the code so that all CPUs get initialized correctly on every reboot, and there might not be enough space in the BIOS to add the code in the first place. -
Hi Guys!
I've disassembled MSI GX-600 BIOS and I think I can patch it for enabling VT.
Who wants to test modded BIOS? -
If you can upload it, please do it. I really need VT. -
Let's discuss it by e-mail. ([email protected]).
-
Well... guys middleton DIDI IT!... and it is FUNCTIONAL!
Now i have fully enabled Intel VT technology at every boot (0x3A MSR register are now still set to 0x0/0x5)
I have tried XP mode on windows 7 and it is working out of the box! Without using any external program.
So....
How to flash it:
You need USB Flash Drive, or DOS formatted diskette
I prefer USB drive, so i will provide you instructions for this.
WARNING! You are doing it at your own RISK!
There is a very small chance that this will result into a brick, so be CAREFUL!
If you don't know what are you doing, DON'T DO THIS
----------------------------------------
1) You need fully charged battery or power cord plugged in. (This is main prerequisite)
2) Backup your flash drive
3) Download >THIS< file and unpack it somewhere on your drive (e.g. C:\WIN98)
4) Download >THIS< file and install it
5) Run HP USB Disk storage tool as administrator
6) Check Quick Format, check Create a DOS startup disk, click on ... and select the folder with unpacked Win98 boot files (e.g. C:\WIN98)
7) Click on Start and let it finish
8) Now download >THIS< file and unpack it to your flash drive
9) Reboot your notebook and let it boot from flash drive (You have to go into BIOS, and change Hard Drive priorities on Boot tab)
10) Check again if your power cord is plugged in
11) Type flash and press enter
12) Wait until BIOS, BootBlock and EC is programmed (You must NOT shutdown, or reboot your computer until its finished!
13) Press CTRL ALT DEL and disconnect your flash drive
14) Enjoy your VT
All credits goes to ALEXEY ([email protected])
This way i want very thank him again for making this possible
I am only testerLast edited by a moderator: May 8, 2015 -
my friend reported that he cannot bring his laptop out of sleep mode he has to restart it. Does it work for you like that?
-
Yes, many users have already reported me about that bug. With new BIOS flashed they cannot resume from sleep and hibernate modes. I am working hard now to resolve this problem. As soon as all will be ready I will upload here corrected BIOS.
-
thanks, i will tell my friend about that
-
-
-
-
middleton i think you dont need to continue doing this bios because my friend just removed his CMOS battery and installed it again and VT worked on his laptop with the official BIOS 1.0z
-
-
-
-
This time I hope all bugs are fixed. GX600 should resume from "Sleep" (S3) and "Hibernate" (S4) modes now. You can download the final version of BIOS here:
http://depositfiles.com/en/files/gqqbmae7h
And here the same BIOS with swapped FN and CTRL buttons (FN acts like CTRL and viceversa):
http://depositfiles.com/files/xtgojf89l
Please post your report here If you successfully flashed new BIOS. -
Hi middleton. I successfully my laptop but even with the bug fix, it hangs on closing the lid. Sleep option is no longer available
-
solved. I had to install nvidia drivers for sleep and hibernate to work. thanks!
-
I've also added SLIC 2.1 marker into MSI GX600 BIOS. Check this link http://forum.notebookreview.com/showthread.php?t=436978
-
I have an OEM MS-163A, more or less the same exact system as the GX-600, but the bioses are slightly different. Was wondering if someone could help me get the VT working on my laptop. THANKS!
-
anywho78, send me email (I gave the address in this topic). I'll try to help you.
-
VT on a MSI GX-600?
Discussion in 'MSI' started by sztupy, May 5, 2009.