@@@@@@@@@@@@@@@@@@@
Note from NBR Moderation Team -
BIOS Modifications, VBIOS Modifications and other system level tweaks
can potentially cause damage to your system. Be aware of this before
blindly flashing.
If you brick your system or cause damage, chances are very high that
your warranty will be useless. Know what you are doing, you are responsible
for your actions.
@@@@@@@@@@@@@@@@@@@
How to modify your M18x BIOS
Method adapted from/Credit to:
thechaw.com/Insydecodr/branches/master
Index of /uploads/insydehacks
http://forum.notebookreview.com/sony/473226-insyde-hacking-new-vaio-z-advanced-menu-bios.html
Boilerplate:
BIOS modification is nasty, dangerous business, and it's not my fault if your M18x kills your neighbors cat after you attempt this process, or explodes. Don't do it. With that out of the way, here's how you do it:
Summary:
The BIOS stores setup data in a register store called "VSS" stored alongside the BIOS itself. This area is not normally flashed during a BIOS update issued by Dell/Alienware. We are targetting this area for modification to enable us to change values not exposed to us in the normal BIOS setup program. (F2 at startup)
Requirements:
Hex Workshop, one of my best friends!
My Stucture Defintion Library (attached)
Latest BIOS update from Dell - Drivers and Downloads (tested with A03)
Modified platform.ini for InsydeFlash (attached)
Preparation:
Install Hex Workshop.
* Copy bios.hsl from attached file into Hex Workshop structure library folder (C:\Program Files\BreakPoint Software\Hex Workshop v6.6\Structures in my case)
* Run the BIOS update installer.
* While it's running, check your %TEMP% folder for the most recently modified folder, copy it out to a folder of your choosing. This will have the InsydeFlash program in it along with PAR10MEC.fd which is the A03 BIOS.
* Go ahead and flash the A03 (or latest) BIOS if you haven't yet at this point.
Method:
* Replace platform.ini in the InsydeFlash folder you copied earlier with the attached one from this post.
* Run InsydeFlashx64.exe
* It will now back up your existing BIOS to M18xR1.bin. It should be 4,096KB in size.
* You will be prompted to flash the A03 BIOS, click no.
* Open the dumped BIOS in Hex Workshop. It should look like the following screenshot:![]()
* Click Tools - Structure Library - Select Structure Library, and choose the attached bios.hsl
* Click Edit - Find and search for Type: Hex Values, Value: AA557F00070000000C0000007F
* With the first byte of the sequence selected (AA, where the search result drops you off), click the green "plus" icon in the Structures pane. Highlight VSS_Setup, set it to "Locked Document/Offset" and press OK. Hex Workshop will now apply my M18x structure template to the data, allowing easy visualization and modification. You should see a green checkbox next to VSS_Setup and VSS_Generic just before adding the structure, indicating validation passed.
* Expand "struct VSS_Setup" in the structures pane, then expand SETUP_REGISTERS Setup_Registers inside. All the values in this list are the values I have deciphered so far. Unknown values are labelled as such.
* You can change any values now by clicking the value inside the "value" column and changing it to your desired value. Be very careful what you change as there be dragons here. (see attached screenshot)![]()
* Click save when done, rename M18xR1.bin to M18xR1.fd, ensure there is no other .fd file present in the folder. (there will be PAR10MEC.fd inside here, go ahead and erase that so you have only the one .fd)
* Run InsydeFlashx64.exe
* This time after the BIOS backup is done, press OK to the prompt asking about flashing the new BIOS. The updater should display a progress bar, close, and power off once complete.
* Enjoy your modified BIOS![]()
Notes:
* I lost both my attached keyboard and touchpad when running the InsydeFlash.exe in interactive mode, I suggest doing this with a keyboard and mouse attached. You can disable the prompts by editing platform.ini and setting Confirm=0 under [UI] if you don't have an external KB/Mouse. Note that you will still get prompted if you have an existing BIOS backup .bin present in the InsydeFlash folder at the start of flashing (do you want to overwrite? y/n)
* My system would not shut down/reboot after InsydeFlash completed it's flashing operation. I had to pull the AC power and remove/reinsert the battery to get the system booted back up.
* You can modify platform.ini to remove the AC/Battery checks, in my experience flashing from battery power fails with an SMI error, but flashing with AC and no battery plugged in works fine.
* If you decipher the values of anything unknown or errors in the Hex Workshop bookmarks, please post and I will update it.
Below is the help text associated with each option which may be useful.
Code:Location = 0x215<1>, name='External USB Ports' help='Enable or disable external USB ports' Location = 0x218<1>, name='eSATA Ports' help='Enable or disable eSATA Ports' Location = 0x219<1>, name='PC Card and 1394' help='Enable or disable PC card and 1394' Location = 0x21c<1>, name='Function Key Behavior' help='Enable or disable function key behavior' Location = 0x1ad<1>, name='Intel(R)SpeedStep' help='This field enables / disables Intel SpeedStep Technology.' Location = 0x1bb<1>, name='Virtualization' help='This field enables / disables the Intel Virtualization technology.' Location = 0x05c<1>, name='USB Emulation' help='This field enables / disables Legacy USB Emulation for DOS and other non native USB supported operating systems. A USB keyboard will always function within system setup regardless of the setting.' Location = 0x217<1>, name='USB Wake Support' help='This field enables / disables the ability of the of external USB devices to wake a system.' Location = 0x216<1>, name='USB Powershare' help='AC Only = Charge USB devices when operating on AC power only. Both = Charge USB devices when operating on AC or Battery power. Disabled = Don't charge under any condition.' Location = 0x21e<1>, name='Integrated Network' help='This field enables / disables the integrated network adapter. This is the network port that requires a cable.' Location = 0x033<1>, name='High Definition Audio' help='This field enables / disables the integrated High Definition Audio device.' Location = 0x21a<1>, name='SD Card Reader' help='This field enables / disables the integrated SD Card Reader.' Location = 0x1b4<1>, name='CPU Turbo Mode' help='This field enables / disables the Intel CPU Turbo Mode performance option.' Location = 0x039<1>, name='SATA Operation' help='This field configures SATA Operation for ATA, AHCI or RAID mode.' Location = 0x21b<1>, name='Adapter Warnings' help='Enabled = BIOS will detect unsupported A/C adapters and display an error to screen. Disable = BIOS will not detect unsupported A/C adapters and will not display any message to screen.' Location = 0x21d<1>, name='Charger Behavior' help='This field enable/disables battery charging.' Location = 0x18f<1>, name='Primary Display ' help='Primary Display ' Location = 0x1f6<1>, name='Me Fw Image Re-Flash' help='Enable /Disable Me Fw Image Re-Flash function' Location = 0x2f2<1>, name='OverClocking Feature' help='This field enables/disables global overclocking functions. When this option is enabled, many more overclocking options are displayed.' Location = 0x2f3<1>, name='Non-Turbo Flex Support' help='This field allows a user to adjust the CPU flex ratio with Turbo mode disabled.' Location = 0x2c8<1>, name='Extreme Edition' help='When using an XE CPU with the field set to enabled exposes the XE CPU specific options.' Location = 0x21f<1>, name='Level 1-3 Overclocking' help='These are pre-defined levels of overclocking. Level 1 is the most conservative while level 3 is the most aggressive.' Location = 0x2be<1>, name='Override Turbo Settings' help='Allows user to override CPU Turbo Mode settings.' Location = 0x2c3<1>, name='Short Duration PWR Limit' help='Enable/Disable Short Duration Power Limit.' Location = 0x19a<1>, name='GT Overclocking' help='This option enables Intel Graphics Turbo Mode Overclocking.' Location = 0x2f9<1>, name='Memory Override Support' help='This option exposes the memory override options when enabled.' Location = 0x306<1>, name=' Memory Voltage' help='Allows user to increase memory voltage.' Location = 0x1a8<1>, name='Memory Frequency' help='Memory Frequency Selections in Mhz' Location = 0x308<1>, name='DIMM Profile (XMP)' help='Allows user to configure different XMP options.' Location = 0x079<1>, name='UEFI Boot' help='Enable/Disable UEFI Boot Function' Location = 0x06d<1>, name='Quick Boot' help='Allows InsydeH2O to skip certain tests while booting. This will decrease the time needed to boot the system.' Location = 0x06e<1>, name='Quiet Boot' help='Disables or enables booting in Text Mode.' Location = 0x06f<1>, name='PXE Boot to LAN' help='Disables or enables PXE boot to LAN.' Location = 0x060<1>, name='ACPI Selection' help='Select booting to Acpi3.0/Acpi1.0B' Location = 0x05c<1>, name='USB Boot' help='Disables or enables booting to USB boot devices.' Location = 0x075<1>, name='EFI Device First' help='Determine EFI device first or legacy device first. If enable, it is EFI device first. If disable, it is Legacy device first.' Location = 0x076<1>, name='Normal Boot Menu' help='Select Normal Boot Option Priority or Advance Boot Option Priority' Location = 0x09f<1>, name='Power on Password' help='Enable:System will ask input password on post time. Disable:System will ask input password when go to Setup Utility' Location = 0x225<1>, name='Computrace(R)' help='This field enables / disables Computrace security functionality.' Location = 0x1d0<1>, name='Debug Reclaim' help=' ' Location = 0x085<1>, name='ACPI S3' help='Enable/Disable ACPI S3 Sleep state' Location = 0x086<1>, name='Wake on PME' help='Determines the action taken when the system power is off and a PCI Power Management Enable wake up event occurs.' Location = 0x087<1>, name='Wake on Modem Ring' help='Determines the action taken when the system power is off and a modem connected to the serial port is ringing.' Location = 0x088<1>, name='Auto Wake on S5' help='Auto wake on S5, By Day of Month or Fixed time of every day' Location = 0x1f5<1>, name='Wake on LAN' help='ENABLE/DISABLED integrated LAN to wake the system.' Location = 0x1fd<1>, name='AES' help='AES(Advanced Encryption Standards).' Location = 0x1ad<1>, name='P-States(IST)' help='Enable processor performance states(P-States).' Location = 0x1ba<1>, name='Boot Performance Mode' help='Select the performance state that BIOS will set before OS handoff.' Location = 0x1fb<1>, name='Active Processor Cores' help='Number of Cores to enable in each processor package' Location = 0x1bc<1>, name='HT Support' help='Enable/Disable Hyper-Threading' Location = 0x1b1<1>, name='Use XD Capability' help='XD is a CPU feature for prevent malicious buffer overflow attacks (a supporting OS is necessary)' Location = 0x1bb<1>, name='VT Support' help='Vanderpool Technology Enable/Disable.' Location = 0x1bf<1>, name='Hardware Prefetcher' help='Enable/Disable MLC (Mid Level Cache, L2 Cache) Streamer Prefetcher.' Location = 0x1c0<1>, name='AdjacentCacheLine Prefet' help='Enable/Disable MLC Spatail Prefetcher. (Adjacent Cache Line Prefetch)' Location = 0x1be<1>, name='Max CPUID Value Limit' help='Limit CPUID max value to 3 (if max CPUID value > 3). This setting is useless for windows OS.' Location = 0x30c<1>, name='Local x2APIC' help='Enable/Disable Local x2APIC. Some OS do not support this feature.' Location = 0x1c5<1>, name='C-States' help='Enable processor idle power saving states(C-States).' Location = 0x1c6<1>, name='Enhanced C-States' help='Enable P-State transitions to occur in combination with C-States.' Location = 0x1c7<1>, name='Enable C3' help='Enable / Disable C3' Location = 0x1c8<1>, name='Enable C6' help='Enable C6' Location = 0x1c9<1>, name='Enable C7' help='Enable / Disable C7' Location = 0x1ca<1>, name='C-State Auto Demotion' help='Enable / Disable C-State Auto Demotion' Location = 0x208<1>, name='EC Turbo Control Mode' help='Enable/Disable EC Turbo Control Mode' Location = 0x209<1>, name='AC Brick Capacity' help='Specify the AC Brick capacity' Location = 0x1b4<1>, name='Turbo Mode' help='Enable processor Turbo Mode(requires EMTTM enabled too).' Location = 0x2bc<1>, name='Energy Efficient P-state' help='Enable/Disable Energy Efficient P-state feature.' Location = 0x2bd<1>, name='Turbo PWR Limit MSR Lock' help='Enable/Disable locking of turbo settings.' Location = 0x2be<1>, name='Override Turbo Settings' help='Allows user to override CPU Turbo Mode settings.' Location = 0x2c3<1>, name='Short Duration PWR Limit' help='Enable/Disable Short Duration Power Limit.' Location = 0x1b2<1>, name='PCI Clock Run' help='If Enabled,the CLKRUN# Logic will stop the PCI Clocks' Location = 0x1cb<1>, name='Storage Break Event' help='If Enabled, Parallel IDE or Serial ATA master activity will cause BM_STS to be set and will cause a break from C3/C4.' Location = 0x1cc<1>, name='PCIE Break Event' help='If Enabled, PCI Express master activity will cause BM_STS to be set and will cause a break from C3/C4.' Location = 0x1cd<1>, name='PCI Break Event' help='If Enabled, PCI master activity will cause BM_STS to be set and will cause a break from C3/C4.' Location = 0x1ce<1>, name='EHCI Break Event' help='If Enabled, EHCI master activity will cause BM_STS to be set and will cause a break from C3/C4.' Location = 0x1cf<1>, name='HDA Break Event' help='If Enabled, Intel High Definition Audio master activity will cause BM_STS to be set and will cause a break from C3/C4.' Location = 0x002<1>, name='PCI Slot3 IRQ Priority' help='Manual IRQ selection does not garantee PCI slot device will be configured with choice because PnP ISA Cards (if present) are assigned the available resources before PCI device.' Location = 0x003<1>, name='PCI Slot4 IRQ Priority' help='Manual IRQ selection does not garantee PCI slot device will be configured with choice because PnP ISA Cards (if present) are assigned the available resources before PCI device.' Location = 0x008<1>, name='Numlock' help='Selects Power-on state for Numlock' Location = 0x00a<1>, name='Serial Port A' help='Configure Serial port A using options : [Disable] No Configuration [Enable] User Configuration [Auto] EFI/OS chooses configuration' Location = 0x00b<1>, name=' Base I/O Address' help=' ' Location = 0x00c<1>, name=' Interrupt' help=' ' Location = 0x00f<1>, name='Infrared Port' help='Configure Infrared port using options : [Disable] No Configuration [Enable] User Configuration [Auto] EFI/OS chooses configuration' Location = 0x012<1>, name=' Mode' help='Set the mode for the parallel port using options' Location = 0x010<1>, name=' Base I/O Address' help=' ' Location = 0x011<1>, name=' Interrupt' help=' ' Location = 0x013<1>, name=' DMA Channel' help=' ' Location = 0x014<1>, name='High Speed' help='Set FIR to High speed mode or normal speed mode' Location = 0x033<1>, name='Azalia' help='AUTO: Auto detect the Azalia codec. DISABLED: Disable the Azalia controller can be selectable.' Location = 0x0e7<1>, name='Azalia internal HDMI codec' help='Enable/Disable internal HDMI codec for Azalia.' Location = 0x1fa<1>, name='Azalia PME Enable' help='Enable/Disable PME for Azalia.' Location = 0x0e6<1>, name='Lan' help='ENABLE: Enable the Lan controller. DISABLED: Disable the Lan controller can be selectable.' Location = 0x20e<1>, name='SLP_LAN# Low on DC Power' help='Enable/Disable SLP_LAN# Low on DC Power.' Location = 0x036<1>, name='IDE Controller' help='DISABLED: Disables SATA Controller. ENABLED: Enables SATA Controller.' Location = 0x039<1>, name='HDC Configure As' help='Set Harddisk Controller Configure Type' Location = 0x2cd<1>, name='AHCI Option ROM Support' help='If AHCI option ROM set disable ,the system can only detect port 0 to port 3.If AHCI option ROM set enable ,the system can detect all port.' Location = 0x1aa<1>, name='Aggressive LPM Support' help='Enable/Disable Support Aggressive Link Power Management(SALP)' Location = 0x2eb<1>, name='Alternate ID' help='Report alternate Device ID' Location = 0x2ce<1>, name='SATA Port 0 HotPlug' help='Enable/Disable SATA Port 0 HotPlug' Location = 0x2dc<1>, name=' Spin-Up Device' help='Enable/Disable Supports Staggered Spin-Up (SSS) in AHCI Host Capability Register Bit 27.' Location = 0x2d4<1>, name=' Port Multiplier' help='Enable/Disable Supports Port Multiplier (PMS) in AHCI Host Capability Register Bit 17.' Location = 0x2cf<1>, name='SATA Port 1 HotPlug' help='Enable/Disable SATA Port 1 HotPlug' Location = 0x2dd<1>, name=' Spin-Up Device' help='Enable/Disable Supports Staggered Spin-Up (SSS) in AHCI Host Capability Register Bit 27.' Location = 0x2d5<1>, name=' Port Multiplier' help='Enable/Disable Supports Port Multiplier (PMS) in AHCI Host Capability Register Bit 17.' Location = 0x2d0<1>, name='SATA Port 2 HotPlug' help='Enable/Disable SATA Port 2 HotPlug' Location = 0x2de<1>, name=' Spin-Up Device' help='Enable/Disable Supports Staggered Spin-Up (SSS) in AHCI Host Capability Register Bit 27.' Location = 0x2d6<1>, name=' Port Multiplier' help='Enable/Disable Supports Port Multiplier (PMS) in AHCI Host Capability Register Bit 17.' Location = 0x2d1<1>, name='SATA Port 3 HotPlug' help='Enable/Disable SATA Port 3 HotPlug' Location = 0x2df<1>, name=' Spin-Up Device' help='Enable/Disable Supports Staggered Spin-Up (SSS) in AHCI Host Capability Register Bit 27.' Location = 0x2d7<1>, name=' Port Multiplier' help='Enable/Disable Supports Port Multiplier (PMS) in AHCI Host Capability Register Bit 17.' Location = 0x2d2<1>, name='SATA Port 4 HotPlug' help='Enable/Disable SATA Port 4 HotPlug' Location = 0x2e0<1>, name=' Spin-Up Device' help='Enable/Disable Supports Staggered Spin-Up (SSS) in AHCI Host Capability Register Bit 27.' Location = 0x2d8<1>, name=' Port Multiplier' help='Enable/Disable Supports Port Multiplier (PMS) in AHCI Host Capability Register Bit 17.' Location = 0x2da<1>, name=' FIS-Port Multiplier' help='Designates This Port Supports FIS-Based Port Multiplier.' Location = 0x2d3<1>, name='SATA Port 5 HotPlug' help='Enable/Disable SATA Port 5 HotPlug' Location = 0x2e1<1>, name=' Spin-Up Device' help='Enable/Disable Supports Staggered Spin-Up (SSS) in AHCI Host Capability Register Bit 27.' Location = 0x2d9<1>, name=' Port Multiplier' help='Enable/Disable Supports Port Multiplier (PMS) in AHCI Host Capability Register Bit 17.' Location = 0x2db<1>, name=' FIS-Port Multiplier' help='Designates This Port Supports FIS-Based Port Multiplier.' Location = 0x2e2<1>, name='HDD Unlock' help='If enable, indicates that the HDD password unlock in the OS is enable.' Location = 0x2e3<1>, name='LED Locate' help='If enable, indicates that the LED/SGPIO hardware is attached and ping to locate feature is enable on the OS.' Location = 0x2e4<1>, name='RAID0' help='Enable/Disable RAID0 feature.' Location = 0x2e5<1>, name='RAID1' help='Enable/Disable RAID1 feature.' Location = 0x2e6<1>, name='RAID10' help='Enable/Disable RAID10 feature.' Location = 0x2e7<1>, name='RAID5' help='Enable/Disable RAID5 feature.' Location = 0x2e8<1>, name='Intel Rapid Recovery Technology' help='Enable/Disable Intel Rapid Recovery Technology feature.' Location = 0x2e9<1>, name='OROM UI and BANNER' help='If enabled, then the OROM UI is shown. Otherwise, no OROM banner or information will be displayed if all disks and RAID volumes are Normal.' Location = 0x2ea<1>, name='IRRT Only on eSATA' help='If enabled, then only IRRT volumes can span internal and eSATA drivers. If disabled, then any RAID volume can span internal and eSATA drives.' Location = 0x1a6<1>, name='Shut Down Temperature' help='ACPI Critical Trip Point - the point in which the OS will shut down the system.' Location = 0x1a2<1>, name='Low Fan Speed Temperature' help='ACPI Active Trip Point - the point in which the OS will turn the processor fan on Low.' Location = 0x1af<1>, name='High Fan Speed Temperature' help='ACPI Active Trip Point - the point in which the OS will turn the processor fan on High.' Location = 0x1b0<1>, name='Throttle On Temperature' help='Set the CPU temperature point of Throttle On' Location = 0x1e3<1>, name='ME SMBus Thermal Reporting' help='Enable/Disable ME SMBus Thermal Reporting Configuration' Location = 0x1e4<1>, name=' SMBus Buffer Length' help='SMBus Block Read Message Length for EC' Location = 0x1e5<1>, name=' Thermal Reporting EC PEC' help='Enable Packet Error Checking(PEC) for SMBus Block Read' Location = 0x1e6<1>, name=' Slots with TS on DIMM's' help='Enable Temperature Reporting for Slots with TS on DIMM. NOTE:DIMM0 is the one closer to CPU' Location = 0x1d5<1>, name=' CPU Temp Read' help='CPU Temperature Read Enable' Location = 0x1d6<1>, name=' CPU Energy Read' help='CPU Energy Read Enable' Location = 0x1d7<1>, name=' MCH Temp Read' help='MCH Temperature Read Enable' Location = 0x1d8<1>, name=' PCH Temp Read' help='PCH Temperature Read Enable' Location = 0x1dc<1>, name='TS on DIMM' help='Enable/Disable Thermal Sensor on DIMM' Location = 0x1dd<1>, name=' DIMM1 TS READ' help='DIMM1 Thermal Sensor Read Enable' Location = 0x1de<1>, name=' DIMM2 TS READ' help='DIMM2 Thermal Sensor Read Enable' Location = 0x1df<1>, name=' DIMM3 TS READ' help='DIMM3 Thermal Sensor Read Enable' Location = 0x1e0<1>, name=' DIMM4 TS READ' help='DIMM4 Thermal Sensor Read Enable' Location = 0x1f9<1>, name='Thermal Device' help='Thermal Device (D31F6) Enable/Disable' Location = 0x1d9<1>, name=' Alert Enable Lock' help='Lock all Alert Enable settings' Location = 0x1da<1>, name=' PCH Alert' help='PCH Alert pin enable' Location = 0x1db<1>, name=' DIMM Alert' help='DIMM Alert pin enable' Location = 0x1c1<1>, name='DTS' help='Enables CPU Digitial Thermal Sensor function.Out of Spec: ACPI Thermal Managemnet uses EC reported temperature values and DTS SMM is used to handle Out of Spec condition.' Location = 0x1c2<1>, name='Thermal Monitor' help='Enable/Disable Thermal Monitor.' Location = 0x1b3<1>, name='Bi-Directional PROCHOT#' help='When a processor thermal sensor trips(either core),the PROCHOT# will be driven.If bi-directional is enable ,external agents can drive PROCHOT# to throttle.' Location = 0x1b9<1>, name='ACPI 3.0 T-States' help='Enable/Disable ACPI 3.0 T-States.' Location = 0x201<1>, name='Special Features' help='Enable Switch Graphic Function' Location = 0x204<1>, name='PowerXpress Setting' help='Setting Mux or Muxless' Location = 0x18f<1>, name='Primary Display ' help='Primary Display ' Location = 0x190<1>, name='Internal Graphics Device ' help='Enable IGD ' Location = 0x1ab<1>, name='RC6 (Render Standby)' help='Graphic Render C-State(RC6) is a technique designed to optimize the average power to the graphics render engine during times of idleness of the render engine.' Location = 0x191<1>, name='IGD - Gtt Size' help='Select the Gtt size' Location = 0x193<1>, name='IGD - Aperture Size' help='Select the Aperture Size ' Location = 0x195<1>, name='IGD - DVMT Size' help=' Select the size of DVMT 5.0 that the Internal Graphics Device will use' Location = 0x196<1>, name='IGD - Boot Type' help='Select the Video Device that will be activated during POST' Location = 0x206<1>, name='IGD - Boot Type 2' help='Select Secondary Display Device' Location = 0x197<1>, name='IGD - LCD Panel Type' help='Select the Panel used by the Internal Graphics Device by selecting the appropriate setup item' Location = 0x205<1>, name='Backlight Control' help='Backlight Control Setting' Location = 0x198<1>, name='IGD - TV' help='Select the TV standard used by the Internal Graphics Device' Location = 0x1ac<1>, name='IGD - Gfx Low Power Mode' help='This option is applicable for SFF only.' Location = 0x1e1<1>, name='Active LFP' help='Selects the Active LFP Configuration' Location = 0x207<1>, name='Panel Color Depth' help='Select the LFP Panel Color Depth' Location = 0x19d<1>, name='ASPM' help='Control ASPM support for the PEG Device.' Location = 0x119<1>, name='Peg Workaround' help='Peg Workaround for some CRB,enable will increase delay time to make sure PEG can display' Location = 0x19e<1>, name=' ASPM L0s' help='Enable PCIe ASPM L0s.' Location = 0x19f<1>, name=' ASPM L0s Aggressiveness' help='Set the level of L0s entry aggressiveness. This applies to root port L0s entry only.' Location = 0x192<1>, name='Always Enable PEG' help='To enable the PEG' Location = 0x048<1>, name='USB Legacy' help='USB devices boot and access in DOS' Location = 0x0e8<1>, name='EHCI 1' help='Enable/Disable EHCI 1' Location = 0x0ea<1>, name='UHCI 1' help='Enable/Disable UHCI 1' Location = 0x0eb<1>, name='UHCI 2' help='Enable/Disable UHCI 2' Location = 0x0ec<1>, name='UHCI 3' help='Enable/Disable UHCI 3' Location = 0x0ed<1>, name='UHCI 4' help='Enable/Disable UHCI 4' Location = 0x0e9<1>, name='EHCI 2' help='Enable/Disable EHCI 2' Location = 0x0ee<1>, name='UHCI 5' help='Enable/Disable UHCI 5' Location = 0x0ef<1>, name='UHCI 6' help='Enable/Disable UHCI 6' Location = 0x0f0<1>, name='UHCI 7' help='Enable/Disable UHCI 7' Location = 0x0f1<1>, name='Pre-Port Control' help='Enable/Disable the Per-Port Disable Control Override' Location = 0x0f2<1>, name='Usb Port0' help='Enable/Disable Port 0' Location = 0x0f3<1>, name='Usb Port1' help='Enable/Disable Port 1' Location = 0x0f4<1>, name='Usb Port2' help='Enable/Disable Port 2' Location = 0x0f5<1>, name='Usb Port3' help='Enable/Disable Port 3' Location = 0x0f6<1>, name='Usb Port4' help='Enable/Disable Port 4' Location = 0x0f7<1>, name='Usb Port5' help='Enable/Disable Port 5' Location = 0x0f8<1>, name='Usb Port6' help='Enable/Disable Port 6' Location = 0x0f9<1>, name='Usb Port7' help='Enable/Disable Port 7' Location = 0x0fa<1>, name='Usb Port8' help='Enable/Disable Port 8' Location = 0x0fb<1>, name='Usb Port9' help='Enable/Disable Port 9' Location = 0x0fc<1>, name='Usb Port10' help='Enable/Disable Port 10' Location = 0x0fd<1>, name='Usb Port11' help='Enable/Disable Port 11' Location = 0x0fe<1>, name='Usb Port12' help='Enable/Disable Port 12' Location = 0x0ff<1>, name='Usb Port13' help='Enable/Disable Port 13' Location = 0x1e2<1>, name='USB RMH Mode' help='PCH USB Rate Matching Hubs mode' Location = 0x20f<1>, name='ME Support' help='Enable: Me Mode set to Normal, Disable: Me Mode set to Soft Temporary Disable.' Location = 0x1a1<1>, name='CRID' help='Enable / Disable : Compatible Revision ID ( CRID ) / Stepping Revision ID ( SRID ).' Location = 0x1f4<1>, name='Port 80h Cycles' help='Control where the port 80h cycles are sent.' Location = 0x1f8<1>, name='VT-d' help='Check to enable VT-d function on MCH' Location = 0x1d1<1>, name=' Interrupt Remapping' help='Enable/Disable Interrupt Remapping function' Location = 0x30a<1>, name=' Pass-Through DMA' help='Enable/Disable Pass-Through DMA' Location = 0x30b<1>, name=' Debug Align' help='Enable/Disable the Debug Align VDm on PEG and DMI' Location = 0x116<1>, name='CHAP DEVICE' help='Enable/Disable CHAP device (Bus 0, Dev 7).' Location = 0x117<1>, name='DEVICE 4' help='Enable/Disable Thermal device (Bus 0, Dev 4).' Location = 0x118<1>, name='Scrambler' help='Enable/Disable scrambling.' Location = 0x1a8<1>, name='Memory Frequency' help='Memory Frequency Selections in Mhz' Location = 0x309<1>, name='OneN Mode Support' help='Enable/Disable OneN Mode Support' Location = 0x1f6<1>, name='Me Fw Image Re-Flash' help='Enable /Disable Me Fw Image Re-Flash function' Location = 0x1f7<1>, name='After G3 On' help='Specify what state to go to when power is re-applied after a power failure (G3 state).' Location = 0x20d<1>, name='Board Capability' help='Board Capability - SUS_PWR_DN_ACK -> Send Disable to PCH. DeepSx -> Show DeepSx Policy.' Location = 0x200<1>, name='DeepSx Power Policies' help='Configure The DeepSx Mode Configuration.' Location = 0x053<1>, name='FACP - RTC S4 Wakeup' help='Value only for ACPI. Enable/Disable for S4 Wakeup from RTC' Location = 0x054<1>, name='APIC - IO APIC Mode' help='This item is valid only for WIN2k and WINXP.Also,a fresh install of the OS must occur when APIC Mode is desired.Test the IO ACPI by setting item to Enable.The APIC Table will then be pointed to by the RSDT,the Local APIC will be initialized,and the proper enable bits will be set in ICH4M' Location = 0x320<1>, name='TCO WatchDog Support' help='Enable/Disable TCO WatchDog Support' Location = 0x321<1>, name='WatchDog ACPI Table' help='Enable/Disable to support WatchDog ACPI Table (WDAT)' Location = 0x122<1>, name='PCI Express Clock Gating' help='PCI Express Clock Gating Enable/Disable for each root port' Location = 0x121<1>, name='DMI Link ASPM Control' help='The control of Active State Power Management on both NB side and SB side of the DMI Link.' Location = 0x2ec<1>, name='DMI Vc1 Control' help='Enable/Disable DMI Vc1' Location = 0x2ed<1>, name='DMI Vcp Control' help='Enable/Disable DMI Vcp' Location = 0x2ee<1>, name='DMI Vcm Control' help='Enable/Disable DMI Vcm' Location = 0x2ef<1>, name='DMI Extended Synch Control' help='Enable/Disable DMI Extended Synchronization' Location = 0x2f0<1>, name='DMI Gen 2' help='Enable/Disable DMI Gen 2' Location = 0x2f1<1>, name='ForceSetAllPchPcieInGen1' help='For some specific PCI-E devices only' Location = 0x127<1>, name='PCI Express Root Port 1' help='Control the PCI Express Root Port.' Location = 0x12f<1>, name='Automatic ASPM' help='Automatically enable ASPM based on reported capabilities and known issues' Location = 0x137<1>, name=' URR' help='PCI Express Unsupported Request Reporting Enable/Disable.' Location = 0x13f<1>, name=' FER' help='PCI Express Device Fatal Error Reporting Enable/Disable.' Location = 0x147<1>, name=' NFER' help='PCI Express Device Non-Fatal Error Reporting Enable/Disable.' Location = 0x14f<1>, name=' CER' help='PCI Express Device Correctable Error Reporting Enable/Disable.' Location = 0x157<1>, name=' CTO' help='PCI Express Completion Timer TO Enable/Disable' Location = 0x167<1>, name=' SEFE' help='Root PCI Express System Error on Fatal Error Enable/Disable.' Location = 0x16f<1>, name=' SENFE' help='Root PCI Express System Error on Non-Fatal Error Enable/Disable.' Location = 0x177<1>, name=' SECE' help='Root PCI Express System Error on Correctable Error Enable/Disable.' Location = 0x15f<1>, name=' PME Interrupt' help='Root PCI Express PME Interrupt Enable/Disable.' Location = 0x17f<1>, name=' PME SCI' help='PCI Express PME SCI Enable/Disable.' Location = 0x187<1>, name=' Hot Plug' help='PCI Express Hot Plug Enable/Disable.' Location = 0x128<1>, name='PCI Express Root Port 2' help='Control the PCI Express Root Port.' Location = 0x130<1>, name='Automatic ASPM' help='Automatically enable ASPM based on reported capabilities and known issues' Location = 0x138<1>, name=' URR' help='PCI Express Unsupported Request Reporting Enable/Disable.' Location = 0x140<1>, name=' FER' help='PCI Express Device Fatal Error Reporting Enable/Disable.' Location = 0x148<1>, name=' NFER' help='PCI Express Device Non-Fatal Error Reporting Enable/Disable.' Location = 0x150<1>, name=' CER' help='PCI Express Device Correctable Error Reporting Enable/Disable.' Location = 0x158<1>, name=' CTO' help='PCI Express Completion Timer TO Enable/Disable' Location = 0x168<1>, name=' SEFE' help='Root PCI Express System Error on Fatal Error Enable/Disable.' Location = 0x170<1>, name=' SENFE' help='Root PCI Express System Error on Non-Fatal Error Enable/Disable.' Location = 0x178<1>, name=' SECE' help='Root PCI Express System Error on Correctable Error Enable/Disable.' Location = 0x160<1>, name=' PME Interrupt' help='Root PCI Express PME Interrupt Enable/Disable.' Location = 0x180<1>, name=' PME SCI' help='PCI Express PME SCI Enable/Disable.' Location = 0x188<1>, name=' Hot Plug' help='PCI Express Hot Plug Enable/Disable.' Location = 0x129<1>, name='PCI Express Root Port 3' help='Control the PCI Express Root Port.' Location = 0x131<1>, name='Automatic ASPM' help='Automatically enable ASPM based on reported capabilities and known issues' Location = 0x139<1>, name=' URR' help='PCI Express Unsupported Request Reporting Enable/Disable.' Location = 0x141<1>, name=' FER' help='PCI Express Device Fatal Error Reporting Enable/Disable.' Location = 0x149<1>, name=' NFER' help='PCI Express Device Non-Fatal Error Reporting Enable/Disable.' Location = 0x151<1>, name=' CER' help='PCI Express Device Correctable Error Reporting Enable/Disable.' Location = 0x159<1>, name=' CTO' help='PCI Express Completion Timer TO Enable/Disable' Location = 0x169<1>, name=' SEFE' help='Root PCI Express System Error on Fatal Error Enable/Disable.' Location = 0x171<1>, name=' SENFE' help='Root PCI Express System Error on Non-Fatal Error Enable/Disable.' Location = 0x179<1>, name=' SECE' help='Root PCI Express System Error on Correctable Error Enable/Disable.' Location = 0x161<1>, name=' PME Interrupt' help='Root PCI Express PME Interrupt Enable/Disable.' Location = 0x181<1>, name=' PME SCI' help='PCI Express PME SCI Enable/Disable.' Location = 0x189<1>, name=' Hot Plug' help='PCI Express Hot Plug Enable/Disable.' Location = 0x12a<1>, name='PCI Express Root Port 4' help='Control the PCI Express Root Port.' Location = 0x132<1>, name='Automatic ASPM' help='Automatically enable ASPM based on reported capabilities and known issues' Location = 0x13a<1>, name=' URR' help='PCI Express Unsupported Request Reporting Enable/Disable.' Location = 0x142<1>, name=' FER' help='PCI Express Device Fatal Error Reporting Enable/Disable.' Location = 0x14a<1>, name=' NFER' help='PCI Express Device Non-Fatal Error Reporting Enable/Disable.' Location = 0x152<1>, name=' CER' help='PCI Express Device Correctable Error Reporting Enable/Disable.' Location = 0x15a<1>, name=' CTO' help='PCI Express Completion Timer TO Enable/Disable' Location = 0x16a<1>, name=' SEFE' help='Root PCI Express System Error on Fatal Error Enable/Disable.' Location = 0x172<1>, name=' SENFE' help='Root PCI Express System Error on Non-Fatal Error Enable/Disable.' Location = 0x17a<1>, name=' SECE' help='Root PCI Express System Error on Correctable Error Enable/Disable.' Location = 0x162<1>, name=' PME Interrupt' help='Root PCI Express PME Interrupt Enable/Disable.' Location = 0x182<1>, name=' PME SCI' help='PCI Express PME SCI Enable/Disable.' Location = 0x18a<1>, name=' Hot Plug' help='PCI Express Hot Plug Enable/Disable.' Location = 0x12b<1>, name='PCI Express Root Port 5' help='Control the PCI Express Root Port.' Location = 0x133<1>, name='Automatic ASPM' help='Automatically enable ASPM based on reported capabilities and known issues' Location = 0x13b<1>, name=' URR' help='PCI Express Unsupported Request Reporting Enable/Disable.' Location = 0x143<1>, name=' FER' help='PCI Express Device Fatal Error Reporting Enable/Disable.' Location = 0x14b<1>, name=' NFER' help='PCI Express Device Non-Fatal Error Reporting Enable/Disable.' Location = 0x153<1>, name=' CER' help='PCI Express Device Correctable Error Reporting Enable/Disable.' Location = 0x15b<1>, name=' CTO' help='PCI Express Completion Timer TO Enable/Disable' Location = 0x16b<1>, name=' SEFE' help='Root PCI Express System Error on Fatal Error Enable/Disable.' Location = 0x173<1>, name=' SENFE' help='Root PCI Express System Error on Non-Fatal Error Enable/Disable.' Location = 0x17b<1>, name=' SECE' help='Root PCI Express System Error on Correctable Error Enable/Disable.' Location = 0x163<1>, name=' PME Interrupt' help='Root PCI Express PME Interrupt Enable/Disable.' Location = 0x183<1>, name=' PME SCI' help='PCI Express PME SCI Enable/Disable.' Location = 0x18b<1>, name=' Hot Plug' help='PCI Express Hot Plug Enable/Disable.' Location = 0x12c<1>, name='PCI Express Root Port 6' help='Control the PCI Express Root Port.' Location = 0x134<1>, name='Automatic ASPM' help='Automatically enable ASPM based on reported capabilities and known issues' Location = 0x13c<1>, name=' URR' help='PCI Express Unsupported Request Reporting Enable/Disable.' Location = 0x144<1>, name=' FER' help='PCI Express Device Fatal Error Reporting Enable/Disable.' Location = 0x14c<1>, name=' NFER' help='PCI Express Device Non-Fatal Error Reporting Enable/Disable.' Location = 0x154<1>, name=' CER' help='PCI Express Device Correctable Error Reporting Enable/Disable.' Location = 0x15c<1>, name=' CTO' help='PCI Express Completion Timer TO Enable/Disable' Location = 0x16c<1>, name=' SEFE' help='Root PCI Express System Error on Fatal Error Enable/Disable.' Location = 0x174<1>, name=' SENFE' help='Root PCI Express System Error on Non-Fatal Error Enable/Disable.' Location = 0x17c<1>, name=' SECE' help='Root PCI Express System Error on Correctable Error Enable/Disable.' Location = 0x164<1>, name=' PME Interrupt' help='Root PCI Express PME Interrupt Enable/Disable.' Location = 0x184<1>, name=' PME SCI' help='PCI Express PME SCI Enable/Disable.' Location = 0x18c<1>, name=' Hot Plug' help='PCI Express Hot Plug Enable/Disable.' Location = 0x12d<1>, name='PCI Express Root Port 7' help='Control the PCI Express Root Port.' Location = 0x135<1>, name='Automatic ASPM' help='Automatically enable ASPM based on reported capabilities and known issues' Location = 0x13d<1>, name=' URR' help='PCI Express Unsupported Request Reporting Enable/Disable.' Location = 0x145<1>, name=' FER' help='PCI Express Device Fatal Error Reporting Enable/Disable.' Location = 0x14d<1>, name=' NFER' help='PCI Express Device Non-Fatal Error Reporting Enable/Disable.' Location = 0x155<1>, name=' CER' help='PCI Express Device Correctable Error Reporting Enable/Disable.' Location = 0x15d<1>, name=' CTO' help='PCI Express Completion Timer TO Enable/Disable' Location = 0x16d<1>, name=' SEFE' help='Root PCI Express System Error on Fatal Error Enable/Disable.' Location = 0x175<1>, name=' SENFE' help='Root PCI Express System Error on Non-Fatal Error Enable/Disable.' Location = 0x17d<1>, name=' SECE' help='Root PCI Express System Error on Correctable Error Enable/Disable.' Location = 0x165<1>, name=' PME Interrupt' help='Root PCI Express PME Interrupt Enable/Disable.' Location = 0x185<1>, name=' PME SCI' help='PCI Express PME SCI Enable/Disable.' Location = 0x18d<1>, name=' Hot Plug' help='PCI Express Hot Plug Enable/Disable.' Location = 0x12e<1>, name='PCI Express Root Port 8' help='Control the PCI Express Root Port.' Location = 0x136<1>, name='Automatic ASPM' help='Automatically enable ASPM based on reported capabilities and known issues' Location = 0x13e<1>, name=' URR' help='PCI Express Unsupported Request Reporting Enable/Disable.' Location = 0x146<1>, name=' FER' help='PCI Express Device Fatal Error Reporting Enable/Disable.' Location = 0x14e<1>, name=' NFER' help='PCI Express Device Non-Fatal Error Reporting Enable/Disable.' Location = 0x156<1>, name=' CER' help='PCI Express Device Correctable Error Reporting Enable/Disable.' Location = 0x15e<1>, name=' CTO' help='PCI Express Completion Timer TO Enable/Disable' Location = 0x16e<1>, name=' SEFE' help='Root PCI Express System Error on Fatal Error Enable/Disable.' Location = 0x176<1>, name=' SENFE' help='Root PCI Express System Error on Non-Fatal Error Enable/Disable.' Location = 0x17e<1>, name=' SECE' help='Root PCI Express System Error on Correctable Error Enable/Disable.' Location = 0x166<1>, name=' PME Interrupt' help='Root PCI Express PME Interrupt Enable/Disable.' Location = 0x186<1>, name=' PME SCI' help='PCI Express PME SCI Enable/Disable.' Location = 0x18e<1>, name=' Hot Plug' help='PCI Express Hot Plug Enable/Disable.' Location = 0x2f2<1>, name='OverClocking Feature' help='This field enables/disables global overclocking functions. When this option is enabled, many more overclocking options are displayed.' Location = 0x2f3<1>, name='Non-Turbo Flex Support' help='This field allows a user to adjust the CPU flex ratio with Turbo mode disabled.' Location = 0x2c8<1>, name='Extreme Edition' help='When using an XE CPU with the field set to enabled exposes the XE CPU specific options.' Location = 0x19a<1>, name='GT Overclocking' help='This option enables Intel Graphics Turbo Mode Overclocking.' Location = 0x2f9<1>, name='Memory Override Support' help='This option exposes the memory override options when enabled.' Location = 0x306<1>, name=' Memory Voltage' help='Allows user to increase memory voltage.' Location = 0x308<1>, name='DIMM Profile (XMP)' help='Allows user to configure different XMP options.' Location = 0x312<1>, name='Use WatchDog Timer For ICC' help='Allows user to enable Watchdog timer so that the system will auto recover if setting made causes POST lockup..' Location = 0x313<1>, name='Turn off unused PCI/PCIe clocks' help='Disabled = all clocks on. Enabled = Empty PCI/PCIe clocks disabled.' Location = 0x314<1>, name='Lock ICC Registers' help='Either only static or all registers are locked.' Location = 0x315<1>, name='ICC Profile' help='Choose clock profile.' Location = 0x220<1>, name='Bluetooth' help='This field enables / disables the integrated Bluetooth receiver.' Location = 0x221<1>, name='Wireless Network' help='This field enables / disables the wireless network. This network does not require a cable.' Location = 0x222<1>, name='DMC' help='This field enables / disables the internal DMC device.' Location = 0x223<1>, name='Wireless Switch/Hotkey' help='This field allows one to disable all internal wireless devices'
-
Attached Files:
-
-
I see quite a bit on there that isn't in the BIOS. I think.
This included:
Location = 0x19a<1>, name='GT Overclocking' help='This option enables Intel Graphics Turbo Mode Overclocking.'
correct me if Im wrong. -
I am glad to see some people are starting to do some work on our bios'.
I did some minor things a while back but got too bogged down with work and decided to let those better equipped to deal with it.
I do know the guys who modded the m17x-R2 bios are SUPPOSED to be working on a m18x bios (since it is closely related to the m17x-R3 bios they modded) but have not heard word about that in months.
So.. I say rest and then keep going... You may want to disassemble the A02 then compare it with the A03 to get a better idea. (I have a link somewhere on these boards with my A02 bios for download if you need.. just search for my name and A02)
D. -
@OmegaNemesis28: I believe this option is present in the stock BIOS, but greyed out until you switch to Intel HD 3000 graphics, then is available in the BIOS (at least I see it right now in mine @ A03)
@debaucher: Interesting. I'll have to do some research to see if these guys posted any further technical info or are using the same methods. It seems hard to find any concrete technical info about it, I would be greatly obliged if there was a link floating around you could toss my way for research
I did some more poking things with a stick this morning, changing some values inside Setup VSS (Variable Storage Space) via hex editor/python script and also via BIOS, dumping before and after to check things.
It looks like the InsydeFlash tool is set up to do advanced validation of the BIOS before flashing, including separating out individual partitions and flashing only those defined in platform.ini (for example, BIOS from Alienware is 4224KB vs. 4096KB for a BIOS dumped by the InsydeFlash utility. The extra size appears to be "EC" or Embedded Controller firmware, probably the firmware that controls AlienFX. Attempting to flash 4096KB BIOS with EC flash enabled results in an error that BIOS contains no EC data. Flip that bit off and it flashes OK.
However, I think InsydeFlash identifies the VSS area and does not update this during BIOS flash - all BIOS options remain the same even after manually flipping some registers prior to flash. Probably controlled with another switch in platform.ini, more tinkering required! Of course, tinkering with BIOS on such an expensive platform makes me sweat, especially without CC warranty
Anyway, it seems like it should be easy enough to update/replace OROM (Option ROM) such as bringing up the firmware version of the Intel Mobile Express RAID controller onboard to address possible compatibility issues, etc.
I'll set up a comparison soon between A00, A02, A03 included OROMs, CPU microcode, setup utility options, etc. - that'll be a good start for fully decoding our setup layout (it is a bit different from other Insyde/EFI BIOS I have examined) -
A02 and A03 are pretty much the same with a few fan controls changed and cpu id updates.
The one you should be comparing is the A00 with A02 or A03 to see if this thermal control is evident
+rep -
Did anyone ever dump A00? I can't seem to find it floating around. I can provide instructions on how to dump it using the InsydeFlash utility provided with A03 and A02 (it has a bios backup feature that needs to be enabled in the platform.ini) - the BIOS can be backed up without flashing a new one this way.
[Edit: Nevermind, found it herehttp://forum.notebookreview.com/7731361-post14.html]
Tried flashing A00 and A02 stock and modified, it's working OK using InsydeFlash, so can easily change between BIOS versions. Don't need to worry about InsydeFlash overwriting your serial number, service code, etc. as those areas are not updated by the utility. Unfortunately neither is VSS updated, so none of the register changes i've made have taken effect. Has anyone tried the utility "fla.exe" with M18x or other Alienware systems? It's a DOS based flash utility rather than Windows based, and has been shown to write the VSS area on some Sony and HP laptops. -
I spent some time doing register mapping in VSS, here is the result (this is a list of all known settings reported by the SetupUtility, some added bits I deciphered, and their currently set values in my BIOS)
Code:Member "Value (dec)" "Value (hex)" Size "00000000 struct SetupRegisters" {...} 0000034E " 00000000 uint16 magic" 21930 AA55 00000002 " 00000002 uint16 iter" 127 7F00 00000002 " 00000004 uint32 attributes" 7 07000000 00000004 " 00000008 uint32 namesize" 12 0C000000 00000004 " 0000000C uint32 datasize" 895 7F030000 00000004 " 00000010 char guid[0000000000000010]" #'J# 00000010 " 00000020 char name[namesize]" S 0000000C " 0000002C SETUP_REGISTERS setupregs" {...} 00000322 " 0000002C uint16 Unknown1" 0 0000 00000002 " 0000002E uint8 PCI_Slot3_IRQ_Priority" 0 00 00000001 " 0000002F uint8 PCI_Slot4_IRQ_Priority" 0 00 00000001 " 00000030 blob Unknown2[0000000000000004]" 00000004 " 00000034 uint8 Numlock" 0 00 00000001 " 00000035 uint8 Unknown3" 0 00 00000001 " 00000036 uint8 Serial_Port_A" 1 01 00000001 " 00000037 uint8 Serial_Port_A_Base_I_O_Address" 3 03 00000001 " 00000038 uint8 Serial_Port_A_Interrupt" 4 04 00000001 " 00000039 uint16 Unknown4" 0 0000 00000002 " 0000003B uint8 Infrared_Port" 0 00 00000001 " 0000003C uint8 Infrared_Base_I_O_Address" 1 01 00000001 " 0000003D uint8 Infrared_Interrupt" 3 03 00000001 " 0000003E uint8 Infrared_Mode" 2 02 00000001 " 0000003F uint8 Infrared_DMA_Channel" 3 03 00000001 " 00000040 uint8 Infrared_High_Speed" 0 00 00000001 " 00000041 blob Unknown5[000000000000001E]" 0000001E " 0000005F uint8 High_Definition_Audio" 1 01 00000001 " 00000060 uint16 Unknown6" 0 0000 00000002 " 00000062 uint8 IDE_Controller" 1 01 00000001 " 00000063 uint16 Unknown7" 0 0000 00000002 " 00000065 uint8 SATA_Operation" 1 01 00000001 " 00000066 blob Unknown8[000000000000000E]" 0000000E " 00000074 uint8 USB_Legacy" 1 01 00000001 " 00000075 blob Unknown9[000000000000000A]" 0000000A " 0000007F uint8 FACP_RTC_S4_Wakeup" 1 01 00000001 " 00000080 uint8 APIC_IO_APIC_Mode" 1 01 00000001 " 00000081 blob Unknown10[0000000000000007]" 00000007 " 00000088 uint8 USB_Emulation" 0 00 00000001 " 00000089 blob Unknown11[0000000000000003]" 00000003 " 0000008C uint8 ACPI_Selection" 1 01 00000001 " 0000008D blob Unknown12[000000000000000D]" 0000000D " 0000009A uint8 Quick_Boot" 1 01 00000001 " 0000009B uint8 PXE_Boot_to_LAN" 1 01 00000001 " 0000009C blob Unknown13[0000000000000005]" 00000005 " 000000A1 uint8 EFI_Device_First" 1 01 00000001 " 000000A2 uint8 Normal_Boot_Menu" 1 01 00000001 " 000000A3 uint16 Unknown14" 257 0101 00000002 " 000000A5 uint8 UEFI_Boot" 1 01 00000001 " 000000A6 blob Unknown15[000000000000000B]" 0000000B " 000000B1 uint8 ACPI_S3" 1 01 00000001 " 000000B2 uint8 Wake_On_PME" 1 01 00000001 " 000000B3 uint8 Wake_On_Modem_Ring" 0 00 00000001 " 000000B4 uint8 Auto_Wake_On_S5" 0 00 00000001 " 000000B5 blob Unknown16[0000000000000016]" 00000016 " 000000CB uint8 Power_On_Password" 1 01 00000001 " 000000CC blob Unknown17[0000000000000046]" 00000046 " 00000112 uint8 Lan" 0 00 00000001 " 00000113 uint8 Azalia_Internal_HDMI_Codec" 0 00 00000001 " 00000114 uint8 EHCI_1" 1 01 00000001 " 00000115 uint8 EHCI_2" 1 01 00000001 " 00000116 uint8 UHCI_1" 1 01 00000001 " 00000117 uint8 UHCI_2" 1 01 00000001 " 00000118 uint8 UHCI_3" 1 01 00000001 " 00000119 uint8 UHCI_4" 1 01 00000001 " 0000011A uint8 UHCI_5" 1 01 00000001 " 0000011B uint8 UHCI_6" 1 01 00000001 " 0000011C uint8 UHCI_7" 1 01 00000001 " 0000011D uint8 Pre_Port_Control" 1 01 00000001 " 0000011E uint8 USB_Port_0" 1 01 00000001 " 0000011F uint8 USB_Port_1" 1 01 00000001 " 00000120 uint8 USB_Port_2" 1 01 00000001 " 00000121 uint8 USB_Port_3" 1 01 00000001 " 00000122 uint8 USB_Port_4" 1 01 00000001 " 00000123 uint8 USB_Port_5" 1 01 00000001 " 00000124 uint8 USB_Port_6" 1 01 00000001 " 00000125 uint8 USB_Port_7" 1 01 00000001 " 00000126 uint8 USB_Port_8" 1 01 00000001 " 00000127 uint8 USB_Port_9" 1 01 00000001 " 00000128 uint8 USB_Port_10" 1 01 00000001 " 00000129 uint8 USB_Port_11" 1 01 00000001 " 0000012A uint8 USB_Port_12" 1 01 00000001 " 0000012B uint8 USB_Port_13" 1 01 00000001 " 0000012C blob Unknown18[0000000000000016]" 00000016 " 00000142 uint8 CHAP_Device" 0 00 00000001 " 00000143 uint8 Device_4" 0 00 00000001 " 00000144 uint8 Scrambler" 1 01 00000001 " 00000145 uint8 Peg_Workaround" 0 00 00000001 " 00000146 blob Unknown19[0000000000000007]" 00000007 " 0000014D uint8 DMI_Link_ASPM_Control" 2 02 00000001 " 0000014E uint8 PCI_Express_Clock_Gating" 1 01 00000001 " 0000014F blob Unknown19[0000000000000004]" 00000004 " 00000153 uint8 PCI_Express_Root_Port_1" 1 01 00000001 " 00000154 uint8 PCI_Express_Root_Port_2" 1 01 00000001 " 00000155 uint8 PCI_Express_Root_Port_3" 1 01 00000001 " 00000156 uint8 PCI_Express_Root_Port_4" 1 01 00000001 " 00000157 uint8 PCI_Express_Root_Port_5" 1 01 00000001 " 00000158 uint8 PCI_Express_Root_Port_6" 1 01 00000001 " 00000159 uint8 PCI_Express_Root_Port_7" 1 01 00000001 " 0000015A uint8 PCI_Express_Root_Port_8" 1 01 00000001 " 0000015B uint8 Automatic_ASPM_1" 4 04 00000001 " 0000015C uint8 Automatic_ASPM_2" 4 04 00000001 " 0000015D uint8 Automatic_ASPM_3" 2 02 00000001 " 0000015E uint8 Automatic_ASPM_4" 0 00 00000001 " 0000015F uint8 Automatic_ASPM_5" 4 04 00000001 " 00000160 uint8 Automatic_ASPM_6" 4 04 00000001 " 00000161 uint8 Automatic_ASPM_7" 4 04 00000001 " 00000162 uint8 Automatic_ASPM_8" 4 04 00000001 " 00000163 uint8 URR_1" 0 00 00000001 " 00000164 uint8 URR_2" 0 00 00000001 " 00000165 uint8 URR_3" 0 00 00000001 " 00000166 uint8 URR_4" 0 00 00000001 " 00000167 uint8 URR_5" 0 00 00000001 " 00000168 uint8 URR_6" 0 00 00000001 " 00000169 uint8 URR_7" 0 00 00000001 " 0000016A uint8 URR_8" 0 00 00000001 " 0000016B uint8 FER_1" 0 00 00000001 " 0000016C uint8 FER_2" 0 00 00000001 " 0000016D uint8 FER_3" 0 00 00000001 " 0000016E uint8 FER_4" 0 00 00000001 " 0000016F uint8 FER_5" 0 00 00000001 " 00000170 uint8 FER_6" 0 00 00000001 " 00000171 uint8 FER_7" 0 00 00000001 " 00000172 uint8 FER_8" 0 00 00000001 " 00000173 uint8 NFER_1" 0 00 00000001 " 00000174 uint8 NFER_2" 0 00 00000001 " 00000175 uint8 NFER_3" 0 00 00000001 " 00000176 uint8 NFER_4" 0 00 00000001 " 00000177 uint8 NFER_5" 0 00 00000001 " 00000178 uint8 NFER_6" 0 00 00000001 " 00000179 uint8 NFER_7" 0 00 00000001 " 0000017A uint8 NFER_8" 0 00 00000001 " 0000017B uint8 CER_1" 0 00 00000001 " 0000017C uint8 CER_2" 0 00 00000001 " 0000017D uint8 CER_3" 0 00 00000001 " 0000017E uint8 CER_4" 0 00 00000001 " 0000017F uint8 CER_5" 0 00 00000001 " 00000180 uint8 CER_6" 0 00 00000001 " 00000181 uint8 CER_7" 0 00 00000001 " 00000182 uint8 CER_8" 0 00 00000001 " 00000183 uint8 CTO_1" 0 00 00000001 " 00000184 uint8 CTO_2" 0 00 00000001 " 00000185 uint8 CTO_3" 0 00 00000001 " 00000186 uint8 CTO_4" 0 00 00000001 " 00000187 uint8 CTO_5" 0 00 00000001 " 00000188 uint8 CTO_6" 0 00 00000001 " 00000189 uint8 CTO_7" 0 00 00000001 " 0000018A uint8 CTO_8" 0 00 00000001 " 0000018B uint8 PME_Interrupt_1" 0 00 00000001 " 0000018C uint8 PME_Interrupt_2" 0 00 00000001 " 0000018D uint8 PME_Interrupt_3" 0 00 00000001 " 0000018E uint8 PME_Interrupt_4" 0 00 00000001 " 0000018F uint8 PME_Interrupt_5" 0 00 00000001 " 00000190 uint8 PME_Interrupt_6" 0 00 00000001 " 00000191 uint8 PME_Interrupt_7" 0 00 00000001 " 00000192 uint8 PME_Interrupt_8" 0 00 00000001 " 00000193 uint8 SEFE_1" 0 00 00000001 " 00000194 uint8 SEFE_2" 0 00 00000001 " 00000195 uint8 SEFE_3" 0 00 00000001 " 00000196 uint8 SEFE_4" 0 00 00000001 " 00000197 uint8 SEFE_5" 0 00 00000001 " 00000198 uint8 SEFE_6" 0 00 00000001 " 00000199 uint8 SEFE_7" 0 00 00000001 " 0000019A uint8 SEFE_8" 0 00 00000001 " 0000019B uint8 SENFE_1" 0 00 00000001 " 0000019C uint8 SENFE_2" 0 00 00000001 " 0000019D uint8 SENFE_3" 0 00 00000001 " 0000019E uint8 SENFE_4" 0 00 00000001 " 0000019F uint8 SENFE_5" 0 00 00000001 " 000001A0 uint8 SENFE_6" 0 00 00000001 " 000001A1 uint8 SENFE_7" 0 00 00000001 " 000001A2 uint8 SENFE_8" 0 00 00000001 " 000001A3 uint8 SECE_1" 0 00 00000001 " 000001A4 uint8 SECE_2" 0 00 00000001 " 000001A5 uint8 SECE_3" 0 00 00000001 " 000001A6 uint8 SECE_4" 0 00 00000001 " 000001A7 uint8 SECE_5" 0 00 00000001 " 000001A8 uint8 SECE_6" 0 00 00000001 " 000001A9 uint8 SECE_7" 0 00 00000001 " 000001AA uint8 SECE_8" 0 00 00000001 " 000001AB uint8 PCI_Express_PME_SCI_1" 1 01 00000001 " 000001AC uint8 PCI_Express_PME_SCI_2" 1 01 00000001 " 000001AD uint8 PCI_Express_PME_SCI_3" 1 01 00000001 " 000001AE uint8 PCI_Express_PME_SCI_4" 1 01 00000001 " 000001AF uint8 PCI_Express_PME_SCI_5" 1 01 00000001 " 000001B0 uint8 PCI_Express_PME_SCI_6" 1 01 00000001 " 000001B1 uint8 PCI_Express_PME_SCI_7" 1 01 00000001 " 000001B2 uint8 PCI_Express_PME_SCI_8" 1 01 00000001 " 000001B3 uint8 PCI_Express_Hot_Plug_1" 0 00 00000001 " 000001B4 uint8 PCI_Express_Hot_Plug_2" 0 00 00000001 " 000001B5 uint8 PCI_Express_Hot_Plug_3" 0 00 00000001 " 000001B6 uint8 PCI_Express_Hot_Plug_4" 1 01 00000001 " 000001B7 uint8 PCI_Express_Hot_Plug_5" 1 01 00000001 " 000001B8 uint8 PCI_Express_Hot_Plug_6" 0 00 00000001 " 000001B9 uint8 PCI_Express_Hot_Plug_7" 0 00 00000001 " 000001BA uint8 PCI_Express_Hot_Plug_8" 0 00 00000001 " 000001BB uint8 Primary_Display" 1 01 00000001 " 000001BC uint8 Internal_Graphics_Device" 2 02 00000001 " 000001BD uint8 IGD_Gtt_Size" 2 02 00000001 " 000001BE uint8 Always_Enable_PEG" 0 00 00000001 " 000001BF uint8 IGD_Aperture_Size" 2 02 00000001 " 000001C0 uint8 Unknown20" 1 01 00000001 " 000001C1 uint8 IGD_DVMT_Size" 2 02 00000001 " 000001C2 uint8 IGD_Boot_Type" 0 00 00000001 " 000001C3 uint8 IGD_LCD_Panel_Type" 3 03 00000001 " 000001C4 uint8 IGD_TV" 0 00 00000001 " 000001C5 uint8 Unknown21" 0 00 00000001 " 000001C6 uint8 Intel_Graphics_Turbo_Overclocking" 0 00 00000001 " 000001C7 uint16 Unknown22" 16 1000 00000002 " 000001C9 uint8 PEG_ASPM" 4 04 00000001 " 000001CA uint8 ASPM_L0s" 3 03 00000001 " 000001CB uint8 ASPM_L0s_Aggressiveness" 1 01 00000001 " 000001CC uint8 Unknown23" 0 00 00000001 " 000001CD uint8 CRID" 0 00 00000001 " 000001CE uint8 Low_Fan_Speed_Temperature" 55 37 00000001 " 000001CF blob Unknown23[0000000000000003]" 00000003 " 000001D2 uint8 Shut_Down_Temperature" 100 64 00000001 " 000001D3 uint8 Unknown24" 0 00 00000001 " 000001D4 uint8 Memory_Frequency" 3 03 00000001 " 000001D5 uint8 Unknown25" 5 05 00000001 " 000001D6 uint8 Aggressive_LPM_Support" 1 01 00000001 " 000001D7 uint8 RC6_Render_Standby" 1 01 00000001 " 000001D8 uint8 IGD_Graphics_Low_Power_Mode" 1 01 00000001 " 000001D9 uint8 Intel_SpeedStep" 1 01 00000001 " 000001DA uint8 Unknown26" 0 00 00000001 " 000001DB uint8 High_Speed_Fan_Temperature" 70 46 00000001 " 000001DC uint8 Throttle_On_Temperature" 85 55 00000001 " 000001DD uint8 Use_XD_Capability" 1 01 00000001 " 000001DE uint8 PCI_Clock_Run" 1 01 00000001 " 000001DF uint8 Bi_Directional_PROCHOT" 1 01 00000001 " 000001E0 uint8 CPU_Turbo_Mode" 1 01 00000001 " 000001E1 uint32 Unknown27" 0 00000000 00000004 " 000001E5 uint8 ACPI_3_0_T_States" 0 00 00000001 " 000001E6 uint8 Boot_Performance_Mode" 0 00 00000001 " 000001E7 uint8 VT_Support" 1 01 00000001 " 000001E8 uint8 HT_Support" 1 01 00000001 " 000001E9 uint8 Unknown28" 0 00 00000001 " 000001EA uint8 Max_CPUID_Value_Limit" 0 00 00000001 " 000001EB uint8 Hardware_Prefetcher" 1 01 00000001 " 000001EC uint8 Adjacent_Cache_Line_Prefetcher" 1 01 00000001 " 000001ED uint8 DTS" 2 02 00000001 " 000001EE uint8 Thermal_Monitor" 1 01 00000001 " 000001EF uint16 Unknown29" 0 0000 00000002 " 000001F1 uint8 C_States" 1 01 00000001 " 000001F2 uint8 Enhanced_C_States" 1 01 00000001 " 000001F3 uint8 Enable_C3" 1 01 00000001 " 000001F4 uint8 Enable_C6" 1 01 00000001 " 000001F5 uint8 Enable_C7" 0 00 00000001 " 000001F6 uint8 C_State_Auto_Demotion" 3 03 00000001 " 000001F7 uint8 Storage_Break_Event" 0 00 00000001 " 000001F8 uint8 PCIE_Break_Event" 0 00 00000001 " 000001F9 uint8 PCI_Break_Event" 0 00 00000001 " 000001FA uint8 EHCI_Break_Event" 0 00 00000001 " 000001FB uint8 HDA_Break_Event" 0 00 00000001 " 000001FC uint8 Debug_Reclaim" 0 00 00000001 " 000001FD uint8 Interrupt_Remapping" 0 00 00000001 " 000001FE blob Unknown30[0000000000000003]" 00000003 " 00000201 uint8 CPU_Temp_Read" 1 01 00000001 " 00000202 uint8 CPU_Energy_Read" 1 01 00000001 " 00000203 uint8 MCH_Temp_Read" 1 01 00000001 " 00000204 uint8 PCH_Temp_Read" 1 01 00000001 " 00000205 uint8 Alert_Enable_Lock" 0 00 00000001 " 00000206 uint8 PCH_Alert" 0 00 00000001 " 00000207 uint8 DIMM_Alert" 0 00 00000001 " 00000208 uint8 TS_On_DIMM" 0 00 00000001 " 00000209 uint8 DIMM1_TS_READ" 0 00 00000001 " 0000020A uint8 DIMM2_TS_READ" 0 00 00000001 " 0000020B uint8 DIMM3_TS_READ" 0 00 00000001 " 0000020C uint8 DIMM4_TS_READ" 0 00 00000001 " 0000020D uint8 Active_LFP" 255 FF 00000001 " 0000020E uint8 USB_RMH_Mode" 1 01 00000001 " 0000020F uint8 ME_SMBus_Thermal_Reporting" 1 01 00000001 " 00000210 uint8 SMBus_Buffer_Length" 20 14 00000001 " 00000211 uint8 Thermal_Reporting_EC_PEC" 0 00 00000001 " 00000212 uint8 Slots_With_TS_On_DIMMs" 0 00 00000001 " 00000213 blob Unknown31[000000000000000D]" 0000000D " 00000220 uint8 Port_80h_Cycles" 0 00 00000001 " 00000221 uint8 Wake_On_LAN" 0 00 00000001 " 00000222 uint8 Me_Fw_Image_Re_Flash" 0 00 00000001 " 00000223 uint8 After_G3_On" 0 00 00000001 " 00000224 uint8 VT_d" 1 01 00000001 " 00000225 uint8 Thermal_Device" 0 00 00000001 " 00000226 uint8 Azalia_PME_Enable" 0 00 00000001 " 00000227 uint8 Active_Processor_Cores" 0 00 00000001 " 00000228 uint8 Unknown32" 0 00 00000001 " 00000229 uint8 AES" 1 01 00000001 " 0000022A uint16 Unknown33" 0 0000 00000002 " 0000022C uint8 DeepSx_Power_Policies" 0 00 00000001 " 0000022D uint8 Special_Features" 1 01 00000001 " 0000022E uint16 Unknown34" 10320 5028 00000002 " 00000230 uint8 PowerXpress_Setting" 1 01 00000001 " 00000231 uint8 Backlight_Control" 0 00 00000001 " 00000232 uint8 IGD_Boot_Type_2" 0 00 00000001 " 00000233 uint8 Panel_Color_Depth" 0 00 00000001 " 00000234 uint8 EC_Turbo_Control_Mode" 0 00 00000001 " 00000235 uint8 AC_Brick_Capability" 1 01 00000001 " 00000236 blob Unknown35[0000000000000003]" 00000003 " 00000239 uint8 Board_Capability" 0 00 00000001 " 0000023A uint8 SLP_LAN_Low_On_DC_Power" 1 01 00000001 " 0000023B uint8 ME_Support" 1 01 00000001 " 0000023C blob Unknown36[0000000000000005]" 00000005 " 00000241 uint8 External_USB_Ports" 1 01 00000001 " 00000242 uint8 USB_Powershare" 2 02 00000001 " 00000243 uint8 USB_Wake_Support" 0 00 00000001 " 00000244 uint8 eSATA_Ports" 1 01 00000001 " 00000245 uint8 PC_Card_and_1394" 1 01 00000001 " 00000246 uint8 SD_Card_Reader" 1 01 00000001 " 00000247 uint8 Adapter_Warnings" 1 01 00000001 " 00000248 uint8 Function_Key_Behavior" 1 01 00000001 " 00000249 uint8 Charger_Behavior" 1 01 00000001 " 0000024A uint8 Integrated_Network" 2 02 00000001 " 0000024B uint8 Level_1_3_Overclocking" 3 03 00000001 " 0000024C uint8 Bluetooth" 1 01 00000001 " 0000024D uint8 Wireless_Network" 1 01 00000001 " 0000024E uint8 DMC" 1 01 00000001 " 0000024F uint8 Wireless_Switch_Hotkey" 7 07 00000001 " 00000250 uint8 Unknown37" 1 01 00000001 " 00000251 uint8 Computrace" 0 00 00000001 " 00000252 blob Unknown38[0000000000000096]" 00000096 " 000002E8 uint8 Energy_Efficient_P_State" 1 01 00000001 " 000002E9 uint8 Turbo_PWR_Limit_MSR_Lock" 1 01 00000001 " 000002EA uint8 Override_Turbo_Settings" 1 01 00000001 " 000002EB uint8 Long_Duration_Power_Limit" 77 4D 00000001 " 000002EC uint8 Unknown39" 0 00 00000001 " 000002ED uint8 Long_Duration_Time_Window" 56 38 00000001 " 000002EE uint8 Unknown40" 0 00 00000001 " 000002EF uint8 Short_Duration_Power_Limit_Toggle" 1 01 00000001 " 000002F0 uint8 Short_Duration_Power_Limit" 77 4D 00000001 " 000002F1 blob Unknown41[0000000000000003]" 00000003 " 000002F4 uint8 Extreme_Edition" 1 01 00000001 " 000002F5 uint32 Unknown42" 623388970 2A292825 00000004 " 000002F9 uint8 AHCI_Option_ROM_Support" 1 01 00000001 " 000002FA uint8 SATA_Port_0_Hotplug" 0 00 00000001 " 000002FB uint8 SATA_Port_1_Hotplug" 0 00 00000001 " 000002FC uint8 SATA_Port_2_Hotplug" 0 00 00000001 " 000002FD uint8 SATA_Port_3_Hotplug" 1 01 00000001 " 000002FE uint8 SATA_Port_4_Hotplug" 1 01 00000001 " 000002FF uint8 SATA_Port_5_Hotplug" 0 00 00000001 " 00000300 uint8 Port_Multiplier_0" 0 00 00000001 " 00000301 uint8 Port_Multiplier_1" 0 00 00000001 " 00000302 uint8 Port_Multiplier_2" 0 00 00000001 " 00000303 uint8 Port_Multiplier_3" 0 00 00000001 " 00000304 uint8 Port_Multiplier_4" 0 00 00000001 " 00000305 uint8 Port_Multiplier_5" 0 00 00000001 " 00000306 uint8 FIS_Port_Multiplier_0" 0 00 00000001 " 00000307 uint8 FIS_Port_Multiplier_1" 0 00 00000001 " 00000308 uint8 Spin_Up_Device_0" 1 01 00000001 " 00000309 uint8 Spin_Up_Device_1" 0 00 00000001 " 0000030A uint8 Spin_Up_Device_2" 0 00 00000001 " 0000030B uint8 Spin_Up_Device_3" 0 00 00000001 " 0000030C uint8 Spin_Up_Device_4" 0 00 00000001 " 0000030D uint8 Spin_Up_Device_5" 0 00 00000001 " 0000030E uint8 HDD_Unlock" 0 00 00000001 " 0000030F uint8 LED_Locate" 1 01 00000001 " 00000310 uint8 RAID0" 1 01 00000001 " 00000311 uint8 RAID1" 1 01 00000001 " 00000312 uint8 RAID10" 1 01 00000001 " 00000313 uint8 RAID5" 1 01 00000001 " 00000314 uint8 Intel_Rapid_Recovery_Technology" 1 01 00000001 " 00000315 uint8 OROM_UI_And_Banner" 1 01 00000001 " 00000316 uint8 IRRT_Only_On_eSATA" 1 01 00000001 " 00000317 uint8 Alternate_ID" 0 00 00000001 " 00000318 uint8 DMI_VC1_Control" 1 01 00000001 " 00000319 uint8 DMI_VCP_Control" 1 01 00000001 " 0000031A uint8 DMI_VCM_Control" 1 01 00000001 " 0000031B uint8 DMI_Extended_Synch_Control" 0 00 00000001 " 0000031C uint8 DMI_Gen_2" 1 01 00000001 " 0000031D uint8 Force_Set_All_PCH_PCIE_In_Gen_1" 1 01 00000001 " 0000031E uint8 Overclocking_Feature" 1 01 00000001 " 0000031F uint8 Non_Turbo_Flex_Support" 1 01 00000001 " 00000320 uint8 Non_Turbo_Flex_Value" 25 19 00000001 " 00000321 uint32 Unknown43" 676331521 01005028 00000004 " 00000325 uint8 Memory_Override_Support" 1 01 00000001 " 00000326 char Memory_Timings[000000000000000C]" " ;" 0000000C " 00000326 char Memory_Timings[0]" 9 09 00000001 " 00000327 char Memory_Timings[1]" 9 09 00000001 " 00000328 char Memory_Timings[2]" 9 09 00000001 " 00000329 char Memory_Timings[3]" 27 1B 00000001 " 0000032A char Memory_Timings[4]" 9 09 00000001 " 0000032B char Memory_Timings[5]" "59 ';'" 3B 00000001 " 0000032C char Memory_Timings[6]" 0 00 00000001 " 0000032D char Memory_Timings[7]" 5 05 00000001 " 0000032E char Memory_Timings[8]" 4 04 00000001 " 0000032F char Memory_Timings[9]" 4 04 00000001 " 00000330 char Memory_Timings[10]" 28 1C 00000001 " 00000331 char Memory_Timings[11]" 21 15 00000001 " 00000332 uint8 Memory_Voltage" 0 00 00000001 " 00000333 uint8 Unknown44" 0 00 00000001 " 00000334 uint8 DIMM_Profile_XMP" 2 02 00000001 " 00000335 uint8 OneN_Mode_Support" 0 00 00000001 " 00000336 uint8 Pass_Through_DMA" 0 00 00000001 " 00000337 uint8 Debug_Align" 0 00 00000001 " 00000338 uint8 Local_x2_APIC" 0 00 00000001 " 00000339 blob Unknown45[0000000000000005]" 00000005 " 0000033E uint8 Use_Watchdog_Timer_For_ICC" 0 00 00000001 " 0000033F uint8 Turn_Off_Unused_PCI_PCIe_Clocks" 1 01 00000001 " 00000340 uint8 Lock_ICC_Registers" 1 01 00000001 " 00000341 uint8 ICC_Profile" 0 00 00000001 " 00000342 blob Unknown46[000000000000000A]" 0000000A " 0000034C uint8 TCO_Watchdog_Support" 1 01 00000001 " 0000034D uint8 Watchdog_ACPI_Table" 0 00 00000001
* Automatic ASPM is disabled or set to another mode on some PCIe ports.
* PCIe hot-plug is enabled on 2 of the ports.
* Low speed fan temperature trigger is set to 55C
* High speed fan temperature trigger is set to 70C
* CPU Throttle temperature trigger is set to 85C
* Shut down temperature is set to 100C (this must be read from the on-die DTS as i've noticed the system shut down at the moment after the DTS reports 100)
* C7 C-State support is disabled, which is visible in ThrottleStop (0% in C7), I wonder if enabling this would bump battery life a hair.
* TDP limits are present so presumably bumping them manually would by-pass the BIOS restriction and allow a higher value.
* Turbo PWR Limit MSR Lock register is present, presumably setting it to 0 would allow ThrottleStop to adjust Power/Current values on-the-fly.
Attached File
-------------------
This platform.ini replaces the one found in the Dell/Alienware A03/A02 BIOS updater, and is set to backup your existing bios at run time as well as prompt for the BIOS flash, and is set to override all firmware volumes. This results in overwriting the VSS which preserves CMOS settings. In a normal BIOS flash the VSS area does not get overwritten or cleared and so all your existing CMOS settings are preserved through the flash (any BIOS settings set in A00 will preserve through to A03) - with this platform.ini the BIOS settings are restored, so whatever profile you had saved when dumping the BIOS will be restored and active after flashing it. I don't recommend flashing someone else's backup with these settings as you might overwrite your service tag or other device-specific infos, only use this to flash a (modified or not) dump of your own BIOS. To get the BIOS flasher .exe, platform .ini and other stuffs out of the Dell/Alienware A02/A03 BIOS updater, simply run it and check your %TEMP% folder while it's running, sort by last modified and look inside the first folder, should have the flash utility there.Attached Files:
-
-
Looking to the BIOS Logo, I would assume it is stored in JPEG format as the InsydeFlash utility supports alteration of the Logo by itself (without accompanying BIOS flash) in JPEG format. Unknown as to yet for restrictions in width/height, color depth, quality, size, etc.
Here is the boot logo I extracted from the BIOS manually (it is embedded in a file with an accompanying decoder, probably to decode it to bitmap before being sent to the framebuffer) [Edit: Attachment removed, file was improperly extracted, check post 12 for proper file]
I haven't yet tried modifying the logo and platform.ini to change the boot logo, will do it soon -
Woah thanks for your help, it's look amazing.
-
Da_G, this is solid work. Much appreciated!
-
Speedy Gonzalez Xtreme Notebook Speeder!
Me too Da_G keep the development going this is big
-
Oops, I just extracted BIOS Logo wrong earlier. It is stored as independant file also, attached is the correct image
Also, here's another logo extracted from the BIOS, this one stored as a .bmp in it's own file as well:
Note that the BIOS image is stored at 576x768 pixels, a replacement logo should be of the same size, I will attempt modification of the logo shortly and see how it ends up
GUIDs 12b0efaa-3dcf-463b-3599-5d03520bfa96 and 384a64db-a26a-43ce-70a0-30a100fb8983 appear to be logos also, but there is no obvious header to indicate the filetype, visually they appear to be RGBA tuples though. -
For BIOS Recovery the BIOS .fd file should be placed on the root of a FAT32 formatted USB Stick, and (as yet unknown) keypress at bootup to trigger recovery mode flash.
Filename of file on USB stick should be "PAR10X64.fd" - will update when I discover the recovery keypress combination. (which will probably be right after I brick it)
-
It seems that the bios *.fd files are at least partially compressed with LZMA, so any LZMA capable packer should be able to decompress them (e.g. 7zip).
Indeed, the logo posted above is there PAR10MEC.fd\\1.Insyde.vol\57F69690.jpg
JPEG, 576px × 768px, 24bit, 72 DPI
The dimensions are rather unusual, that's first. Secondly, judging by the position of the logo on the screen (it's centered), I believe the input logo format could be 1024x768 (so a standardized one).
As for the BIOS recovery, there is a standardized recovery procedure for Insyde, so I believe it should work.
PAR10MEC.fd should be renamed to PAR10.fd, PAR10HW.fd or simply BIOS.fd -- edit: or PAR10X64.FD as posted above -- and placed on a fat32 USB stick. One can always place many copies, differently named. The recovery mechanism will use the correct one anyway.
The typical procedure:
1) Remove the battery, disconnect power cord
2) Plug in the USB stick with *.fd file
3) Hold down (do not just press and release) keys: [windows] + OR [FN] + [ESC] OR [FN] + [F] (one of these should work)
4) Plug in the adapter and wait a few seconds
5) Press the power button
6) Release all buttons you are holding
The recovery procedure should start and your notebook should power down on its own when it's done (shutdown is the default setting, also in platform.ini)
If somebody's willing to find what is the exact filename.fd and the keys to press, it would be much appreciated. -
I think the input logo format would be 720x768, (try stretching it to this size), reasoning below:
BIOSen use a standard resolution of 640x480 to support as many disaplays as possible, this is a 4:3 resolution and our display is 16:9, so our display is using rectangular pixels rather than square due to the stretching. Leave the height alone and multiply the width by 1.25 (giving you 720) to resize to a 16:9 aspect ratio. This looks correct and allows pixel space on the left for the intel logo also. (1024x768 would scale to fill the whole screen) -
Could be. Or the intel logo is set to lay over the big one.
I also found an InsydeH2O tool (google "EzH20") to patch *.fd files. The tool has a function to replace logos (EzH2O > "Components\Logo..."). This means there are two ways to change the logo: 1) flashing the bios using modified platform.ini that includes logo information (full syntax yet unknown), or 2) patching an existing *.FD bios file and then flashing the bios as usual. -
Glad to see such talented people around here. Will follow this thread closely to learn a thing or two.
Keep up the great work! -
Successfully modified VSS, flipped a few bits and they check out preserved through the flash, C7 now active
Power Lock Limit Register lifted, changing TDP values now possible on the fly with ThrottleStop, also exceeding BIOS limits, thanks UncleWebb
Just a screenshot with a few tweaks to see what works and what doesn't:
*C7 state enabled
*Long TDP set to 95
*Short TDP set to 110
*Power Lock Limit Register unlocked
*AES disabled
*Hyperthreading disabled
*CPU thermal limit shutdown set to 105 (from 100)
*low and high speed fan temp triggers raised
TDP values show in the BIOS as 0 but take the setting from the register (haven't yet tried altering bios settings and saving to see if it re-sets)
Will post method soon, need to clean it up a bit! So far, no ill effects, and it's not too hardAttached Files:
-
-
Now you have me wanting to do this for my M6600.
-
Da_G, that's tremendous job you're doing, if you share the method to edit the bios in this beast and unlock the limits, people will so appreiate it)
BTW, i'd leave *Hyperthreading enabled) wonder how high could the temps jump... -
First post updated with full methodology, enjoy your BIOS modding
-
-
-
Hmm, I really don't know, I don't have one of those CPUs to test with
Check in ThrottleStop, inside TPL window, if you can adjust those values currently, or if they are greyed out, and if there is a checkbox for Power Limit Lock (and is it greyed out?) - On my I5-470um tablet I can adjust these values and there is no lock displayed.
Ran into my first non-booting mod just now. Don't try to set x2_Local_APIC to 1, results in a no-boot. This did however let me verify that removing the CMOS battery or jumping the CCMOS header does clear out these settings and restore the defaults, so any mods here should be recoverable that way.
Also, if you override TDP values for Short and Long with the mod, then later enter into BIOS and change something, setup program overwrites those registers to "0" when you press F10 to save ather than the over-limit value remaining intact. So try to make any changes you want in the BIOS before making the modifications -
-
Well, you are showing the same type of lock that I show prior to releasing the lock bit via modified BIOS flash. After removing the lock bit those options are no longer greyed out. So I think you can try, and maybe it will work out OK
Only need to change that one bit -
00352D84 uint8 Turbo_PWR_Limit_MSR_Lock 0 00 00000001
It will be set to 1 in your BIOS, change to 0 and flash+powercycle, then check throttlestop again
BTW - with C7 C-State enabled I am noticing ThrottleStop reporting a power draw as low as 4.2W - with only C6 enabled the lowest value I see is 5.5W and mostly around 6W. So this might provide a decent power savings vs. the default of having C6 as deepest power save state. Perhaps would also allow some higher turbo boosting as there will be slightly more overhead available with the inactive CPUs in C7 vs. C6. -
Speedy Gonzalez Xtreme Notebook Speeder!
do you plan to do this more permanent like something we can change on the bios ? -
Da_G... you are doing a great job man.
I did not check this thread for a few days and saw your post asking for more links for info on the current bios modding going on.. was about to look them up when I realized your first post basically has all this going on already!
SO, saved me the time looking it all up.....
Things are defiantly looking good so far..... maybe check here to get some more insyde bios mod info/ideas
Bios Mods -The Best BIOS Update and Modification Source - Unlocked Insyde BIOSes
+rep for all your work!
D. -
The problem with the non Extreme processors like the 2720QM is that the limits are hard locked to the CPU and are very restrictive. The long term limit can go from 45W to 48W and the short term limit can go from 56W to 60W. That is not going to give you much additional performance. With the unlocked 2920XM, it's more like open season with these new bios mods.
Looks like I added that new C State monitoring window to ThrottleStop just in time. Being able to use C7 should help with battery run time when lightly loaded. I am not sure why a manufacturer would block C7 in the bios if it makes that much difference to CPU power consumption when idle.
I don't know if you are ever going to need this but I believe the Current Limit Register is in MSR 0x601 and bit[63] is the lock bit. The default 97 amps that most bios versions seem to use should be enough room to do lots of overclocking without this ever becoming a limiting factor. I don't have any documentation about this register so use it at your own risk. A helpful user sent it my way.
Great work Da_G. You are making ThrottleStop look better and better. +rep
Edit: MSR 0xE2 bit[15] is where the C State Package lock bit is hiding. Disabling that in the bios should unlock the Package C State Limit button in ThrottleStop. MSR 0xE2 is well documented in the Intel public docs, Volume 3B. -
@Speedy Gonzalez:
Sure, I want to get it all adjustable from within the BIOS itself, that way just the BIOS can be modified rather than the registers directly. But this requires a good deal more work - another settings store is checked for a toggle that determines if some hidden options are shown or not in the SetupUtility, and some of them don't even have a menu hidden or not (just look to be hardcoded into the setup register)
So, that makes it much more complicated, must fully disassemble the setup utility, inject code to introduce the new menus, etc. - that would take quite some more time
In debaucher's link user AHMED HOSSAM is doing the menu based unlocking we need, but I don't see anywhere he has documented the method. Probably NOPing the opcodes that hide the menus, i would think. I'll check into some of his modded BIOS vs. stock BIOS to seeI don't see anywhere that he introduced new menus or changed the range of setting available on existing menus yet. Reading
@UncleWebb:
Thanks for the awesome TS app. I use it every day on my tablet and LaptopMy main motivation for unlocking the BIOS! I will look into flipping those bits now, too, for full unlocked-ness
-
Wow,this looks great so far, what have you been able to oc the cpu to using these new TDP limits?
-
Using the stock 2-heatpipe cooler I can hit 4GHz across all 4 cores easily on the 2920xm, I didnt keep it at this speed long enough to stress test though as I already know my cooling is inadequate to maintain those kind of speeds. I'll leave that testing up to the guy with a TRUE120 strapped to his laptop, or the liquid nitrogen cooling guy, lol
-
How much power is drawn for 4G, 4.1G etc across 4 cores, on my 2920XM I noticed it would be drawing more than 80W, ~84W for a 4G oc when loaded on all 4 cores then would throttle down to 3.9G, 3.8G etc, would this bios mod help me to keep the 4 cores loaded at 4G?
-
Updated bios.zip in first post with some more stuffs, specifically Quiet Boot and BCLK registers. Need to track a few more down and name the memory timings registers properly, nearly complete now
@kantana: Yes, the BIOS mod helps to keep the 4 cores loaded at 4G. Check my screenshot in 2920xm overclocking thread, I am hitting 98W+ power draw now. But I am limited by cooling, I am sure some overhead remains beyond this -
so flashing this bios is ok?
edit:
lol that's not the bios.
M18xBIOS.hsl where is that file at?
ok, got past that...now it says file size mismatch... -
Right at the bottom of the first post, in bios.zip
The .hsl is a structure library for loading up into Hex Workshop, that overlays on top of the normal hex editor UI to show you which bits control what, so you know what you are changing. There is no BIOS or updater provided, I leave getting those up to the user (I would post the updater, but I don't have a license to distribute it, etc. etc., don't need yet another Cease & Desist for wallpaper) -
Wow this threads amazing. I want to unlock the throttlestop for my 580s so we can really see what these puppies are capable of compared to the 6990's
+ 1 rep to da_g -
There are apparently 3 registers that contain BCLK, setting this manually and flashing doesn't actually change the BCLK though. Two of the registers get re-set to the old BCLK value while one retains the new BCLK value. The actual BCLK value remains old setting. But setting it via BIOS, dumping, and the setting change shows here. This is probably related to the "BCLK takes effect immediately?" option in the BIOS, probably the user-set value is stored in a register here, then copied to another register to actually set the BCLK. No real worries about that though as you can change the BCLK yourself in the BIOS without limits, just interesting
I'm in the process of updating the bios.hsl with memory timings, etc. to eliminate as much "Unknown" parts as I can, lots of flashing and rebooting
Also, perhaps a bug, perhaps intended, when you alter the BCLK frequency the DIMM XMP profile setting is changed back to "Default" from whatever it was before. Verified this by changing it to XMP Profile 2, rebooting, verifying the register, changing BCLK only in BIOS, rebooting, and verifying the register. Changed from "2" to "0". Modified back to 2, rebooted, back on XMP profile 2. -
i have the bios file loaded and still cant see the full register but i can see aa55
Attached Files:
-
-
First problem: You're searching for AA55 rather than AA557F. You won't find it this way.
Second problem: Appears as though you are searching inside the stock BIOS still (probably why you can't find AA557F), the BIOS updater copies the BIOS to M18xR1_new.bin during the update process. Your existing, dumped BIOS should be named M18xR1.bin (no _new)
Did you use my platform.ini when you ran InsydeFlash.exe? If there isn't an M18xR1.bin, and the flash updater didn't prompt you to flash the new BIOS and just went ahead and did it, that's probably the problem. -
i renamed it
and still nothing.
or is the updater suppose to make 2 files?
InsydeFlash64.exe is what mine says. -
Assuming you are starting from a clean InsydeFlash folder (extracted from the A03 BIOS update):
You'll have the following files inside:
When you run the BIOS Updater without the modified platform.ini, you see this:
The updater will make a copy of the .fd file inside to M18xR1_new.bin and flash this to your BIOS if you hit OK. This is not what you want to do, instead...
You want to replace platform.ini with my attached platform.ini in the first post. Now when you run the BIOS updater you should see "Read current BIOS..." followed by this prompt (note that it is different, and contains BIOS version and date info)
Now, after doing that, hit cancel and you should have M18xR1.bin (your dumped BIOS), M18xR1_new.bin (a copy of the stock A03 PAR10MEC.fd BIOS), and possibly M18xR1_01.bin if you have run the updater twice (a backup of your previous BIOS dump before the one it just dumped)
M18xR1.bin is your target for modification. After modification, you want to remove the PAR10MEC.fd file, and rename M18xR1.bin to M18xR1.fd. This makes the firmware updater target that as the BIOS to flash. Then run the .exe, it will again back up your BIOS to M18xR1.bin (prompting you to overwrite it if you didn't rename/delete it) - then hit OK and it will flash your modded BIOS.Attached Files:
-
-
there is something wrong with the platform.ini file.
i dont see any of that.
just says rom mismatch -
I checked the uploaded platform.ini against the one i'm using, it's the same. Where do you see the ROM mismatch error?
In order to obtain the backup of your ROM, it should be as easy as the running the Dell M18x A03 BIOS updater, copying the files out of %TEMP% while it's running, closing the Dell BIOS updater, opening the folder you just copied the files into, replacing platform.ini with mine, then running the BIOS updater from the folder.
At the point you get the "you are about to update your system firmware" warning, you should already have the M18xR1.bin file in the folder, and can cancel the update to modify it. -
it's your platform.ini.
i just used another version of your file about 6 post lower from the first post and that one worked.
now i see what im suppose to see.. -
Fantastic work Da G. +1
-
ok, now i cant see the bios structures for changing the bits.
edit:
where is the original bios.zip file at? before you did this last modding?Attached Files:
-
-
Getting closer, you are in the right BIOS now
See the list of search results in the lower right pane?
Clicking each one there will take you to that offset. Look for the one with text reading "Setup" - this is the right offset to load my VSS_Setup structure onto. Note that you can see "SetupDefault" on the screen, that contains the same values but are the ones loaded when you select "Load BIOS defaults" from the menu. It'll be near the bottom of the list. (for reference, the one you are on in your screenshot is "SmbiosPolicy" - visible in the upper right view.
Once you get to the right one, press the green "plus" icon and you should be able to add the VSS_Setup structure there.
BTW, I compared the platform.ini in my other post to the first post, it shouldn't make a difference, both are set up to do the backup process. Just some other flags such as auto-reboot are changed.
I removed the original bios.zip as it had some areas marked unknown that are now knownThere are no other differences. I'm about to upload a newer one with the fields for Memory Timings marked.
-
getting closer is right..
but what is wrong now is the bios.zip file is not showing the values as in your screen shot. they are showing just like the picture i posted...when clicking on all 27 objects. so im thinking i need the earlier bios.zip file you made before altering it to what it is now. that last updated platform.ini files doesn't work either..or at least not for me. -
Speedy Gonzalez Xtreme Notebook Speeder!
Go john I think we are going to see 5ghz runs pretty soon,
@Da_G you the man
M18x Unlocked BIOS Modification Info
Discussion in 'Alienware 18 and M18x' started by Da_G, Aug 21, 2011.