M18x Unlocked BIOS Modification Info

Discussion in 'Alienware 18 and M18x' started by Da_G, Aug 21, 2011.

Thread Status:
Not open for further replies.
  1. Da_G

    Da_G Notebook Consultant

    Reputations:
    240
    Messages:
    279
    Likes Received:
    10
    Trophy Points:
    31
    @@@@@@@@@@@@@@@@@@@
    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: [​IMG]
    * 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) [​IMG]
    * 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:

  2. OmegaNemesis28

    OmegaNemesis28 Notebook Geek

    Reputations:
    0
    Messages:
    81
    Likes Received:
    0
    Trophy Points:
    15
    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.
     
  3. debaucher

    debaucher Notebook Deity

    Reputations:
    630
    Messages:
    717
    Likes Received:
    0
    Trophy Points:
    30
    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.
     
  4. Da_G

    Da_G Notebook Consultant

    Reputations:
    240
    Messages:
    279
    Likes Received:
    10
    Trophy Points:
    31
    @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)
     
  5. bar-code

    bar-code Notebook Evangelist

    Reputations:
    394
    Messages:
    337
    Likes Received:
    1
    Trophy Points:
    31
    thanks Da_G for your efforts, please pay attention to the Hot Plug device which provides hotplug control for 12V, 3.3V, and 3.3V auxiliary supplies for the two PCI Express slots controlling thermal hence throttle.

    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
     
  6. Da_G

    Da_G Notebook Consultant

    Reputations:
    240
    Messages:
    279
    Likes Received:
    10
    Trophy Points:
    31
    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 here :) http://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.
     
  7. Da_G

    Da_G Notebook Consultant

    Reputations:
    240
    Messages:
    279
    Likes Received:
    10
    Trophy Points:
    31
    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
    
    Stuffs I found notable:
    * 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:

  8. Da_G

    Da_G Notebook Consultant

    Reputations:
    240
    Messages:
    279
    Likes Received:
    10
    Trophy Points:
    31
    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 :)
     
  9. K-nabeesse

    K-nabeesse Notebook Consultant

    Reputations:
    61
    Messages:
    223
    Likes Received:
    0
    Trophy Points:
    30
    Woah thanks for your help, it's look amazing.
     
  10. 0x29A

    0x29A Notebook Evangelist

    Reputations:
    339
    Messages:
    487
    Likes Received:
    1
    Trophy Points:
    0
    Da_G, this is solid work. Much appreciated!
     
Loading...
Thread Status:
Not open for further replies.

Share This Page