| Recommended by Wim's BIOS... |
|
Moderator: Moderators
A:\ symcmos.exe -Ssymbol.txtA:\ symcmos.exe -Lreport.txt( SYMBOLIC CMOS EDITOR - Version 643710-032 )
( BIOS Version: NAPA0001.86C.0032.D.0702051952 )
CRC = 2786(0381) [0001]
(0384) [0000]
(0387) [0000]
(038D) [0001]
(0399) [0003]
(039C) [0000]
(039F) [0002]
(03A2) [3FFF]
(03A5) [000F]
(03A8) [003F]
(03AB) [0000]
(03AE) [0000]extern unsigned short dispatchManager(unsigned char, unsigned short, unsigned long, unsigned short);
unsigned long getModuleAddress(unsigned short moduleID) {
unsigned long moduleAddress;
unsigned short err;
unsigned long ptr_dwPDM;
unsigned long ptrDispatchManager;
ptr_dwPDM = addrPDM;
ptrPDM = addrPDM;
if ( (err = dispatchManager(1, moduleID, moduleAddress, register_SS)) != 0) {
printError("Return code = %X, Module ID = %X, Module Address = %lX\n", err, moduleID, moduleAddress);
}
return moduleAddress;
}A:\ symcmos.exe -Lliteral.txt
( SYMBOLIC CMOS EDITOR - Version 643710-032 )
( BIOS Version: NAPA0001.86C.0032.D.0702051952 )
CRC = 2786
(0000) [0001]
(0003) [0001]
(0006) [0001]
(0009) [0000]
(000C) [0000]
(000F) [0000]
(0012) [0000]
(0015) [0000]boolean is_nvram_token_enabled(unsigned short Token); mov ecx,0x3a ; MSR 0x3A
rdmsr ; get current value
bt eax,0x0
jc nextSetting ; MSR 0x3A locked so skip trying to change it
push ax
mov ax,0x195 ; NVRAM Token # 0x0195
call 0xf000:0x4120 ; boolean is_nvram_token_enabled(unsigned short Token);
pop ax
jz lockMSR ; skip enabling VT if Token # 0x0195 == 0
bts eax,0x2 ; Enable VT
lockMSR:
bts eax,0x0 ; Lock MSR until power cycle
wrmsr
nextSetting:
xor eax,eaxA:\ symcmos.exe -LWhen enabled, a VMM can
utilize the additional
hardware capabilities
provided by Vanderpool
Technology
Virtualization Technology
What does yours show for that same range?
(0438) [0002]
(043B) [0000]
(0441) [0000]
(0444) [0001]
(0450) [0003]
(0453) [0000]
(0456) [0002]
(0459) [3FFF]
(045C) [000F]
(045F) [003F]
(0462) [0000]
(0465) [0000]
(0369) [0001]
(0387) [0000]
(038A) [0005]
(0390) [0001]
(0399) [0001]
(039C) [0000]
(039F) [0000]
(03A2) [0000]
(03A5) [0001]
(03A8) [0000]
(03AB) [0000]
(03AE) [0000]
How did you decide/discover to change 0x0399 to enable VT for your R0092N0 ?
Do you have it in your BIOS? If so, in which module?
Also, are you able to get symbolic names using symcmos -S ? From my reverse-engineering I can see the symbols are loaded from BIOS but as I said earlier, with the FE41Z and R0200J3 it throws an error.
In the context of memory management ESID is Effective Segment ID.
bfroemel wrote:Do you have it in your BIOS? If so, in which module?
It's a menu entry in the templat0.rom module like any other, only that it seems to be conditional on ESID[3..2], if the help-text can be trusted.
In the context of memory management ESID is Effective Segment ID.
No - it must be something like a complete or part of a serial number/tracking number; something they can change on a per-system base; probably unchangeable without special tools or at all (OTMs).
$ rdmsr 0x3A
5
$ sudo modprobe kvm-intel
$ lsmod | grep kvm
kvm_intel 24720 0
kvm 74448 1 kvm_intel
kernel: [ 227.215440] kvm: disabled by biosI assume you refer to the menu-entry in templat0.rom based on Phoenix BIOS Editor's presentation of the deconstructed BIOS? Looking at the raw TEMPLAT0.ROM here it is mostly a series of lookup tables with pointers into STRINGS0 and, I would guess, associated Token numbers. There are no strings in the module.
I don't think so. My guess is that like with many hardware representations each Token aka register aka setting is represented by a 4-character label. These will be declared in a header file for the BIOS as #defines. Additionally, there is likely a string-array containing them that can be built into the BIOS, which is what symcmos -S can interrogate.
So ESID will refer to a Token, and [3:2] tells us which bits control the menu operation.
I have a vast archive of Sony BIOS images going way-back as research material. I think it's time to start collecting Phoenix BIOS images in general, especially older ones that contain the symbols so we can get to know some Token symbols and give clues to others.
Happily it worked.
$ sudo ./find-pdm
find-pdm version 0.1 © 2007 TJ http://intuitivenipple.net
Licensed on the terms of GPL version 3
Finds Phoenix Dispatch Manager (for supported BIOS's only).
0xFFFFFFFFFFFFFFFF Memory size
0x00000000000F7300 2450444D010B65029800F00000000000 PDM @ 00000000F0009802 sum: 0
Seek to 0x000F9802 readable
Jump to 0xE6FE:4313 (0x000EB2F3)
Table starts at 0xEB2D7
00 (0x000EB2D7) 0x4340
01 (0x000EB2D9) 0x435C
02 (0x000EB2DB) 0x4363
03 (0x000EB2DD) 0x436A
04 (0x000EB2DF) 0x4383
05 (0x000EB2E1) 0x4435
06 (0x000EB2E3) 0x4442
07 (0x000EB2E5) 0x444F
08 (0x000EB2E7) 0x445C
09 (0x000EB2E9) 0x4396
0A (0x000EB2EB) 0x4469
0B (0x000EB2ED) 0x43AE
0C (0x000EB2EF) 0x43CC
0D (0x000EB2F1) 0x4349
checks wrote:What's the latest regarding enabling VT support on Sony Vaio's?
I've got a AR31S
IntuitiveNipple wrote:From that point on, assuming the calls into the BIOS complete correctly (in the same way as symcmos calls in) then it is simply a case of tidying it up, documenting, and preparing the Debian/Ubuntu package.
veatnik wrote:I have a Sony SZ370P with the same processor and same problem. (Rant: why they disable a key feature on a premium laptop I cannot understand. /Rant)
veatnik wrote:I used to do this kind of system design/hacking a number of years ago but am a little out of touch as to what tools to use.
$ ls
PHBSYS-01101528-UN.exe
$ cabextract PHBSYS-01101528-UN.exe
PHBSYS-01101528-UN.exe: library not compiled to support large files.
PHBSYS-01101528-UN.exe: library not compiled to support large files.
Extracting cabinet: PHBSYS-01101528-UN.exe
extracting PhlashNT.sys
extracting R0200J3.WPH
extracting WBFLASH.exe
extracting WBFLASH.SCR
extracting WinPhlash.exe
All done, no errors.
$ ls
PHBSYS-01101528-UN.exe PhlashNT.sys R0200J3.WPH WBFLASH.exe WBFLASH.SCR WinPhlash.exe
veatnik wrote:So I just thought I should try it in the Sony first. Short story is that each of the memory banks correctly can use it as a full 2G module. The bad news is that if you put two 2G modules in, that the system will only see 3Gs of RAM.
veatnik wrote:What size are the Bios images on your FE?
If this is a partial image, what tool would you suggest I use to grab the bios image. (I primarily use Linux but will run XP if needed.)
veatnik wrote:Let me know what I can do to help. In the meantime I'll work on getting tools and getting back up to speed. (If you have suggestions for specific tools that also would be appreciated. I'm happy to write a few tools (on linux only, prefer using LGPL) if you have any ideas for something useful that does not exist (on unix/linux).)
Return to In-depth High-tech BIOS section
Users browsing this forum: No registered users and 0 guests