Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Status
The first post of this thread is a WikiPost and can be edited by anyone with the appropiate permissions. Your edits will be public.

Bmju

macrumors 6502a
Dec 16, 2013
702
767
Little inside info on the setting of the NVRAM variables during boot, although in this case is for the csr-active-config:
Talking of reminiscent bit-filtering issues, due to persistence of @startergo and reverse engineering from Vit, we eventually worked out why bit 0x10 (APPLE_INTERNAL) of csr-active-config was having an effect on some hacks (basically: routing to an internal Apple update server, therefore breaking updates), but not on most Macs, when using OpenCore:

In x86 (but not M1), whether a system is Apple Internel or not is baked into boot.efi and the filtering out of this bit is done unconditionally in there on consumer builds, so the 0x10 bit should never be visible (via get_csr_active_config() sys call) to anything in-OS, in any consumer build, whether or not it is set in NVRAM. (The reason it was not working like this on many hacks (but essentially no Macs, even when using OC) was a bug that Vit found and fixed in OpenCore, which was pushing the original value back through to macOS via a hook (when ProvideCustomSlide was enabled), after boot.efi had already cleared it.)

So in that case if you look in NVRAM (even in-OS) the bit looks set, but if you look at the effect it has (get_csr_active_config()) it looks like it was never set.
 
Last edited:
  • Like
Reactions: Macschrauber

Syncretic

macrumors 6502
Apr 22, 2019
311
1,533
Very interesting. Any indication of where the SMBIOS values are being set? Bit 14 is present in the NVRAM, but missing in the SMBIOS.

Very interesting indeed. In the BootROM module EF0C99B6-B1D3-4025-9405-BF6A560FE0E0, possibly within protocol 290AB2CB-6622-4D6B-AFA9-0008DFF11213, SMBIOS table 0x80 (Apple Firmware Volume, the table that dmidecode displays), length 0x58, is created and populated with FirmwareFeatures and FirmwareFeaturesMask, both coming directly from gRT->GetVariable(). I can't see those values being modified anywhere, so the SMBIOS values should match the (pseudo-)NVRAM values. I wondered whether dmidecode might somehow be monkeying with the values, so I looked at the raw SMBIOS dump, and dmidecode is reporting them accurately. I also verified that there is not a duplicate SMBIOS table 0x80 that might cause confusion. Curiouser and curiouser...

Unless I'm overlooking something in EF0C99B6-B1D3-4025-9405-BF6A560FE0E0, there are two issues: first, which one is correct - (pseudo-)NVRAM or SMBIOS? And second, where is one of them being modified after being initialized? That second one is a doozy, because it's a needle in very ugly haystack.

EDIT: A thought just occurred to me - perhaps the pseudo-NVRAM values are set, then the SMBIOS values are read from those, then the protocol that sets the pseudo-NVRAM values is invoked a second time, and the bit-setting criteria changed between invocations (e.g. some other protocol got installed or initialized, or some slow hardware woke up, or something like that). This seems plausible; I'll have to investigate the likelihood that this could happen.
 
Last edited:
  • Like
Reactions: cdf and Bmju

Dayo

macrumors 68020
Dec 21, 2018
2,257
1,279
This seems plausible
Indeed but sounds really ugly.

coming directly from gRT->GetVariable()
Bear in mind that UEFI functions, such as GetVariable, can be mapped to custom versions and that two separate calls to a function may not be doing the same thing (may have been remapped between the calls).

OpenCore is full of such remapping .... some are temporary and revert to the original later.
 

Bmju

macrumors 6502a
Dec 16, 2013
702
767
Indeed but sounds really ugly.


Bear in mind that UEFI functions, such as GetVariable, can be mapped to custom versions and that two separate calls to a function may not be doing the same thing (may have been remapped between the calls).

OpenCore is full of such remapping .... some are temporary and revert to the original later.
Specifically as regards GetVariable and SetVariable, OpenRuntime only remaps these once, which stays set, and the remapping only affects the BOOT#### variable namespace (so OC can have its own boot options space, which does not conflict with the 'real' boot options seen from outside the remapping). So yes, indeed, something _like_ this may well be going on, but I am pretty sure it should not be exactly there.
 
  • Like
Reactions: Dayo

Syncretic

macrumors 6502
Apr 22, 2019
311
1,533
As time permits, I'm slogging through the ~500 BootROM modules, creating a map and deciphering what I can. There may be opportunities for customization and/or improvements, if one is brave enough to try re-flashing the BootROM with a custom image (maybe even adding UGA/GOP support so that almost any GPU can get native boot screens). If nothing else, some useful EFI programs (which can be run from the shell) might come out of this. Time will tell.

In any case, I'm sure this is not news to anyone who's dug around in the BootROM before, but the volume at ABBCE13D-E25A-4D9F-A1F9-2F7710786892 seems to contain a complete BIOS-style setup utility, like those found on PCs. I assume it's Insyde's, but I haven't yet found a signature to confirm that. It appears to provide fairly low-level configuration, assuming all sections are accessible (for example, the PCIe Completion Timeout value can be set between 50µs to 3.5s, RDIMM rank interleaving can be set to 1/2/3/4/6-way interleave, etc.). It might be interesting to create a little EFI program that just triggers the setup utility; the UI may or may not work, and even if it does, there's no telling if it actually modifies values that are used by the rest of the BootROM and/or MacOS (i.e. this might be a remnant that was never properly implemented or integrated). Once I'm done creating this map (which might take forever), I may try accessing the setup module; hopefully, someone else will look at it in the interim (or, I expect, point out that someone already has).

Bear in mind that UEFI functions, such as GetVariable, can be mapped to custom versions and that two separate calls to a function may not be doing the same thing (may have been remapped between the calls).

OpenCore is full of such remapping .... some are temporary and revert to the original later.

In this case, I'm looking at a vanilla boot, without OpenCore, and while you're correct that EFI function overrides are possible, I have yet to see the NVRAM code altered in that way by the BootROM. I'll keep an eye out for it, though.
 

skodises

Contributor
Jan 9, 2021
41
46
What a fantastic conversation: thanks for letting punters like me be flies on the wall for this dissection. And to all of you contributors, please accept my eternal gratitude for doing this work! Carry on...
 

startergo

macrumors 603
Sep 20, 2018
5,021
2,283
BIOS-style setup utility, like those found on PCs.
Did not work, but maybe it can be made to work.
 

tsialex

Contributor
Original poster
Jun 13, 2016
13,454
13,601
This is known for a while, nothing came from it.


Edit, just noticed @startergo posted seconds before me.
 

Syncretic

macrumors 6502
Apr 22, 2019
311
1,533
This is known for a while, nothing came from it.

While it's entirely possible that both are dead ends, I note that the BIOS utility discussed in that thread (A6F691AC-31C8-4444-854C-E2C1A6950F92) is still present in 144.0.0.0.0, but I was referring to the separate/distinct BIOS utility at ABBCE13D-E25A-4D9F-A1F9-2F7710786892, which is twice the size. It establishes EFI interfaces for FORM_CALLBACK (stub only; this stubbing may or may not be the reason it doesn't appear), DXE_ICH_PLATFORM_POLICY, PLATFORM_POLICY, PS2_POLICY, and a custom Apple protocol (ACBE181E-DC1B-4EF9-BB76-7DC3B31D30D9) which may or may not be the magic trigger to make it appear (needs more analysis).

@tsialex - assuming I continue down this rabbit hole, would you prefer that I post updates on a separate thread, or is it OK to continue posting here? I don't want to pull this thread too far afield.
 
  • Like
Reactions: 719c6 and Bmju

joevt

macrumors 604
Jun 21, 2012
6,967
4,262
for example, the PCIe Completion Timeout value can be set between 50µs to 3.5s
I don't think you need the BIOS utility if you can change the values manually (which should work if there's no checksum? need to check the setup_var command)
https://github.com/datasone/grub-mod-setup_var
Is there a setup_var command for UEFI Shell?

I don't see a PCIe Completion Timeout option in the IFR of MacPro3,1. Maybe someone can run my script for a MacPro5,1 ROM? Or is there a location or url for downloading a MacPro5,1 ROM?
https://forums.macrumors.com/thread...p3-1-bios-setup-utility.2210648/post-30339326
https://forums.macrumors.com/threads/updating-a-mac-pro-s-cpu-microcode.2114187/post-28813850
 

trifero

macrumors 68030
May 21, 2009
2,955
2,796
I don't think you need the BIOS utility if you can change the values manually (which should work if there's no checksum? need to check the setup_var command)
https://github.com/datasone/grub-mod-setup_var
Is there a setup_var command for UEFI Shell?

I don't see a PCIe Completion Timeout option in the IFR of MacPro3,1. Maybe someone can run my script for a MacPro5,1 ROM? Or is there a location or url for downloading a MacPro5,1 ROM?
https://forums.macrumors.com/thread...p3-1-bios-setup-utility.2210648/post-30339326
https://forums.macrumors.com/threads/updating-a-mac-pro-s-cpu-microcode.2114187/post-28813850
In case it helps...



 

tsialex

Contributor
Original poster
Jun 13, 2016
13,454
13,601
In case it helps...



Not really useful, these you linked are ancient generic firmware upgrade images, years before 138.0.0.0.0 where Apple corrected the PCIe v1.0 being set to all non- cards.

  • Firmware Restoration CD 1.9 = MP51_007F_03B.fd (MP51.007F.B03)
  • Firmware Restoration CD 1.8 = MP41_0081_07B.fd (MP41.0081.B07) and XS31_0081_06B.fd (XS31.0081.B06)

10.14.6 Mac App Store installer have the 144.0.0.0.0 MP51.fd:

Code:
Install\ macOS\ Mojave/Install\ macOS\ Mojave.app/Contents/Resources/Firmware/MP51.fd
 

joevt

macrumors 604
Jun 21, 2012
6,967
4,262
1st post have the link, look at "What to do if your Mac Pro bricked:".
Thanks. PCI-E Completion Timeout is in there.

Code:
#=========================================================================================
source /Volumes/Work/Programming/EFIProjects/UEFIstuff/uefitoolcommands.sh
cd $UEFIstuff
#bbedit $uefitoolcommands.sh

#=========================================================================================
# Extract EFI stuff from the MacPro5,1 rom (from Install macOS Mojave.app)

cd $UEFIstuff/UEFIbios/MacPro5,1

UEFIExtract ./MP51.fd

ifrextractall > ifrvars.txt

cat ifrvars.txt

setup_ifr_1.txt ./MP51.fd.dump/7 EfiFirmwareFileSystemGuid/100 SetupBrowserDxe/0 Compressed section/0 EfiCrc32GuidedSectionExtractionGuid/0 PE32 image section/body.bin
setup_ifr_2.txt ./MP51.fd.dump/7 EfiFirmwareFileSystemGuid/110 Platform/0 Compressed section/0 EfiCrc32GuidedSectionExtractionGuid/1 PE32 image section/body.bin
0x00000000[1] \Advanced\Miscellaneous Configuration\Floppy Diskette Controller (Setting: 0="Disable"; 1="Enable")
0x00000001[1] \Advanced\Miscellaneous Configuration\Floppy Write Protect (Setting: 0="Disable"; 1="Enable")
0x00000006[1] \Boot Options\Boot Options\Numlock (Setting: 0="Off"; 1="On")
0x00000007[1] \Advanced\Miscellaneous Configuration\PS2 Port Swap (Setting: 0="Disable"; 1="Enable")
0x0000000A[1] \Advanced\Miscellaneous Configuration\Boot to Network (Setting: 0="Disable"; 1="Enable")
0x0000000B[1] \Advanced\Miscellaneous Configuration\Active Video (Setting: 0="Auto"; 1="Onboard Device"; 2="PCI(X) Device"; 3="PCIE Device")
0x0000000C[1] \Advanced\Miscellaneous Configuration\TPM v1.2 Support (Setting: 0="Disable"; 1="Enable")
0x0000000E[1] \Advanced\Miscellaneous Configuration\PCI 64-Bit Resource Allocation (Setting: 0="Disable"; 1="Enable")
0x0000000F[1] \Advanced\Miscellaneous Configuration\PCI Minimum Secondary Bus Number (223-1) (Numeric)
0x00000010[1] \Advanced\Miscellaneous Configuration\PCI Root Port Bus Padding (16-0) (Numeric)
0x00000012[1] \Advanced\ICH9/ICH10 Devices\Configure SATA as (Setting: 0="IDE"; 1="RAID"; 2="AHCI")
0x00000014[1] \Advanced\Processor Configuration\Max CPUID Value Limit (Setting: 0="Disable"; 1="Enable")
0x00000015[1] \Advanced\Processor Configuration\Execute Disable Bit (Setting: 0="Disable"; 1="Enable")
0x00000016[1] \Advanced\Processor Configuration\EIST (GV3) (Setting: 0="Disable"; 1="Enable")
0x00000017[1] \Advanced\Processor Configuration\CPU C State (Setting: 0="Disable"; 1="Enable")
0x00000018[1] \Advanced\Processor Configuration\Package C State limit (Setting: 0="C0 state"; 1="C1 state"; 2="C3 state"; 3="C6 state"; 4="C7 state"; 7="No Limit")
0x00000019[1] \Advanced\Processor Configuration\OS ACPI C2 report (Setting: 0="Disable"; 1="Enable")
0x0000001A[1] \Advanced\Processor Configuration\NHM C6 report (Setting: 0="Disable"; 1="Enable")
0x0000001B[1] \Advanced\Processor Configuration\NHM C7 report (Setting: 0="Disable"; 1="Enable")
0x0000001C[1] \Advanced\Processor Configuration\C1E (Setting: 0="Disable"; 1="Enable")
0x0000001D[1] \Advanced\Processor Configuration\Simulataneous Multi-Threading (Setting: 1="Enable"; 0="Disable")
0x0000001E[1] \Advanced\Processor Configuration\VMX (Setting: 0="Disable"; 1="Enable")
0x0000001F[1] \Advanced\Processor Configuration\BIST Selection (Setting: 0="Disable"; 1="Enable")
0x00000020[1] \Advanced\Processor Configuration\DCU Streamer Prefetcher (Setting: 0="Enable"; 1="Disable")
0x00000021[1] \Advanced\Processor Configuration\xTPR (Setting: 0="Enable"; 1="Disable")
0x00000023[1] \Advanced\Processor Configuration\Extreme Enable (XE) (Setting: 0="Disable"; 1="Enable")
0x00000024[1] \Advanced\Processor Configuration\Monitor/Mwait (Setting: 0="Disable"; 1="Enable")
0x00000025[1] \Advanced\Processor Configuration\Fast String (Setting: 0="Disable"; 1="Enable")
0x00000026[1] \Advanced\Processor Configuration\Machine Check (Setting: 0="Disable"; 1="Enable")
0x00000027[1] \Advanced\Processor Configuration\Turbo Mode (Setting: 1="Enable"; 0="Disable")
0x00000028[1] \Advanced\Processor Configuration\Direct Cache Access (DCA) (Setting: 0="Disable"; 1="Enable")
0x00000029[1] \Advanced\Processor Configuration\DCA Prefetch Delay (Setting: 0="Disable"; 1="8"; 2="16"; 3="24"; 4="32"; 5="40"; 6="48"; 7="56"; 8="64"; 9="72"; 0xA="80"; 0xB="88"; 0xC="96"; 0xD="104"; 0xE="112")
0x0000002A[1] \Advanced\Processor Configuration\Hardware Prefetcher (Setting: 0="Enable"; 1="Disable")
0x0000002B[1] \Advanced\Processor Configuration\Adjacent Cache Prefetch (Setting: 0="Enable"; 1="Disable")
0x0000002C[1] \Advanced\Processor Configuration\Active Core Count 0 (Setting: 0="All"; 1="1"; 2="2")
0x0000002D[1] \Advanced\Processor Configuration\Active Core Count 1 (Setting: 0="All"; 1="1"; 2="2")
0x0000002E[1] \Advanced\Processor Configuration\Extended APIC (Setting: 0="Disable"; 1="Enable")
0x0000002F[1] \Advanced\Processor Configuration\Bsp Selection (Setting: 0="Least Feature"; 1="Socket 0"; 2="Socket 1")
0x00000030[1] \Advanced\Processor Configuration\Intel Enhanced Debug (Setting: 0="Disable"; 1="4096K")
0x00000031[1] \Advanced\Processor Configuration\TSEG Smram Size (Setting: 0="4M"; 1="8M")
0x00000032[1] \Advanced\Processor Configuration\CPU Core Ratio (63-0) (Numeric)
0x00000033[1] \Advanced\Processor Configuration\TDC Limit Override (Setting: 0="Disable"; 1="Enable")
0x00000034[1] \Advanced\Processor Configuration\TDC Limit (127-0) (Numeric)
0x00000035[1] \Advanced\Processor Configuration\TDP Limit Override (Setting: 0="Disable"; 1="Enable")
0x00000036[1] \Advanced\Processor Configuration\TDP Limit (127-0) (Numeric)
0x00000037[1] \Advanced\Processor Configuration\UP Boot Selection (Setting: 0="Disable"; 1="Socket 0"; 2="Socket 1")
0x00000038[1] \Advanced\Processor Configuration\MTRR Default as uncacheable. (Setting: 0="Disable"; 1="Enable")
0x00000043[1] \Advanced\Networking\ICH Internal LAN (Checkbox)
0x00000044[1] \Advanced\ICH9/ICH10 Devices\Azalia (Setting: 0="Disabled"; 1="Enabled"; 2="Auto")
0x00000045[1] \Advanced\PCI Express Root Port 1\PCI Express Root Port 1 (Checkbox)
0x00000046[1] \Advanced\PCI Express Root Port 2\PCI Express Root Port 2 (Checkbox)
0x00000047[1] \Advanced\PCI Express Root Port 3\PCI Express Root Port 3 (Checkbox)
0x00000048[1] \Advanced\PCI Express Root Port 4\PCI Express Root Port 4 (Checkbox)
0x00000049[1] \Advanced\PCI Express Root Port 5\PCI Express Root Port 5 (Checkbox)
0x0000004A[1] \Advanced\PCI Express Root Port 6\PCI Express Root Port 6 (Checkbox)
0x0000004B[1] \Advanced\ICH9/ICH10 Devices\Legacy USB (Checkbox)
0x0000004C[1] \Advanced\ICH9/ICH10 Devices\UHCI Controller #1  (Checkbox)
0x0000004D[1] \Advanced\ICH9/ICH10 Devices\UHCI Controller #2  (Checkbox)
0x0000004E[1] \Advanced\ICH9/ICH10 Devices\UHCI Controller #3  (Checkbox)
0x0000004F[1] \Advanced\ICH9/ICH10 Devices\UHCI Controller #4  (Checkbox)
0x00000050[1] \Advanced\ICH9/ICH10 Devices\UHCI Controller #5  (Checkbox)
0x00000051[1] \Advanced\ICH9/ICH10 Devices\UHCI Controller #6  (Checkbox)
0x00000052[1] \Advanced\ICH9/ICH10 Devices\EHCI1 (Checkbox)
0x00000053[1] \Advanced\ICH9/ICH10 Devices\EHCI2 (Checkbox)
0x00000054[1] \Advanced\ICH9/ICH10 Devices\USB Ports Per-Port Disable Control (Checkbox)
0x00000055[1] \Advanced\ICH9/ICH10 Devices\USB Port #0 Disable (Checkbox)
0x00000056[1] \Advanced\ICH9/ICH10 Devices\USB Port #1 Disable (Checkbox)
0x00000057[1] \Advanced\ICH9/ICH10 Devices\USB Port #2 Disable (Checkbox)
0x00000058[1] \Advanced\ICH9/ICH10 Devices\USB Port #3 Disable (Checkbox)
0x00000059[1] \Advanced\ICH9/ICH10 Devices\USB Port #4 Disable (Checkbox)
0x0000005A[1] \Advanced\ICH9/ICH10 Devices\USB Port #5 Disable (Checkbox)
0x0000005B[1] \Advanced\ICH9/ICH10 Devices\USB Port #6 Disable (Checkbox)
0x0000005C[1] \Advanced\ICH9/ICH10 Devices\USB Port #7 Disable (Checkbox)
0x0000005D[1] \Advanced\ICH9/ICH10 Devices\USB Port #8 Disable (Checkbox)
0x0000005E[1] \Advanced\ICH9/ICH10 Devices\USB Port #9 Disable (Checkbox)
0x00000061[1] \Advanced\ICH9/ICH10 Devices\SMBUS Device (Checkbox)
0x00000062[1] \Advanced\ICH9/ICH10 Devices\ICH Device31 Function4 (Checkbox)
0x00000064[1] \Advanced\ICH9/ICH10 Devices\Port 80h Cycles (Setting: 0="LPC Bus"; 1="PCI Bus")
0x00000066[1] \Advanced\ICH9/ICH10 Devices\CLKRUN# logic (Setting: 0="Disabled"; 1="Enabled")
0x00000070[1] \Advanced\PCI Express Root Port 1\ASPM (Checkbox)
0x00000071[1] \Advanced\PCI Express Root Port 2\ASPM (Checkbox)
0x00000072[1] \Advanced\PCI Express Root Port 3\ASPM (Checkbox)
0x00000073[1] \Advanced\PCI Express Root Port 4\ASPM (Checkbox)
0x00000074[1] \Advanced\PCI Express Root Port 5\ASPM (Checkbox)
0x00000075[1] \Advanced\PCI Express Root Port 6\ASPM (Checkbox)
0x00000076[1] \Advanced\PCI Express Root Port 1\VC1 Enable (Setting: 0="Disabled"; 1="Auto")
0x00000077[1] \Advanced\PCI Express Root Port 2\VC1 Enable (Setting: 0="Disabled"; 1="Auto")
0x00000078[1] \Advanced\PCI Express Root Port 3\VC1 Enable (Setting: 0="Disabled"; 1="Auto")
0x00000079[1] \Advanced\PCI Express Root Port 4\VC1 Enable (Setting: 0="Disabled"; 1="Auto")
0x0000007A[1] \Advanced\PCI Express Root Port 5\VC1 Enable (Setting: 0="Disabled"; 1="Auto")
0x0000007B[1] \Advanced\PCI Express Root Port 6\VC1 Enable (Setting: 0="Disabled"; 1="Auto")
0x0000007C[1] \Advanced\PCI Express Root Port 1\Automatic ASPM (Setting: 0="Manual"; 1="Auto")
0x0000007D[1] \Advanced\PCI Express Root Port 2\Automatic ASPM (Setting: 0="Manual"; 1="Auto")
0x0000007E[1] \Advanced\PCI Express Root Port 3\Automatic ASPM (Setting: 0="Manual"; 1="Auto")
0x0000007F[1] \Advanced\PCI Express Root Port 4\Automatic ASPM (Setting: 0="Manual"; 1="Auto")
0x00000080[1] \Advanced\PCI Express Root Port 5\Automatic ASPM (Setting: 0="Manual"; 1="Auto")
0x00000081[1] \Advanced\PCI Express Root Port 6\Automatic ASPM (Setting: 0="Manual"; 1="Auto")
0x00000082[1] \Advanced\PCI Express Root Port 1\ASPM L0s (Setting: 0="Disabled"; 1="Root Port Only"; 2="Endpoint Port Only"; 3="Both Root and Endpoint Ports")
0x00000083[1] \Advanced\PCI Express Root Port 2\ASPM L0s (Setting: 0="Disabled"; 1="Root Port Only"; 2="Endpoint Port Only"; 3="Both Root and Endpoint Ports")
0x00000084[1] \Advanced\PCI Express Root Port 3\ASPM L0s (Setting: 0="Disabled"; 1="Root Port Only"; 2="Endpoint Port Only"; 3="Both Root and Endpoint Ports")
0x00000085[1] \Advanced\PCI Express Root Port 4\ASPM L0s (Setting: 0="Disabled"; 1="Root Port Only"; 2="Endpoint Port Only"; 3="Both Root and Endpoint Ports")
0x00000086[1] \Advanced\PCI Express Root Port 5\ASPM L0s (Setting: 0="Disabled"; 1="Root Port Only"; 2="Endpoint Port Only"; 3="Both Root and Endpoint Ports")
0x00000087[1] \Advanced\PCI Express Root Port 6\ASPM L0s (Setting: 0="Disabled"; 1="Root Port Only"; 2="Endpoint Port Only"; 3="Both Root and Endpoint Ports")
0x00000088[1] \Advanced\PCI Express Root Port 1\ASPM L1 (Checkbox)
0x00000089[1] \Advanced\PCI Express Root Port 2\ASPM L1 (Checkbox)
0x0000008A[1] \Advanced\PCI Express Root Port 3\ASPM L1 (Checkbox)
0x0000008B[1] \Advanced\PCI Express Root Port 4\ASPM L1 (Checkbox)
0x0000008C[1] \Advanced\PCI Express Root Port 5\ASPM L1 (Checkbox)
0x0000008D[1] \Advanced\PCI Express Root Port 6\ASPM L1 (Checkbox)
0x00000094[1] \Advanced\PCI Express Root Port 1\URR (Checkbox)
0x00000095[1] \Advanced\PCI Express Root Port 2\URR (Checkbox)
0x00000096[1] \Advanced\PCI Express Root Port 3\URR (Checkbox)
0x00000097[1] \Advanced\PCI Express Root Port 4\URR (Checkbox)
0x00000098[1] \Advanced\PCI Express Root Port 5\URR (Checkbox)
0x00000099[1] \Advanced\PCI Express Root Port 6\URR (Checkbox)
0x0000009A[1] \Advanced\PCI Express Root Port 1\FER (Checkbox)
0x0000009B[1] \Advanced\PCI Express Root Port 2\FER (Checkbox)
0x0000009C[1] \Advanced\PCI Express Root Port 3\FER (Checkbox)
0x0000009D[1] \Advanced\PCI Express Root Port 4\FER (Checkbox)
0x0000009E[1] \Advanced\PCI Express Root Port 5\FER (Checkbox)
0x0000009F[1] \Advanced\PCI Express Root Port 6\FER (Checkbox)
0x000000A0[1] \Advanced\PCI Express Root Port 1\NFER (Checkbox)
0x000000A1[1] \Advanced\PCI Express Root Port 2\NFER (Checkbox)
0x000000A2[1] \Advanced\PCI Express Root Port 3\NFER (Checkbox)
0x000000A3[1] \Advanced\PCI Express Root Port 4\NFER (Checkbox)
0x000000A4[1] \Advanced\PCI Express Root Port 5\NFER (Checkbox)
0x000000A5[1] \Advanced\PCI Express Root Port 6\NFER (Checkbox)
0x000000A6[1] \Advanced\PCI Express Root Port 1\CER (Checkbox)
0x000000A7[1] \Advanced\PCI Express Root Port 2\CER (Checkbox)
0x000000A8[1] \Advanced\PCI Express Root Port 3\CER (Checkbox)
0x000000A9[1] \Advanced\PCI Express Root Port 4\CER (Checkbox)
0x000000AA[1] \Advanced\PCI Express Root Port 5\CER (Checkbox)
0x000000AB[1] \Advanced\PCI Express Root Port 6\CER (Checkbox)
0x000000AC[1] \Advanced\PCI Express Root Port 1\CTO (Checkbox)
0x000000AD[1] \Advanced\PCI Express Root Port 2\CTO (Checkbox)
0x000000AE[1] \Advanced\PCI Express Root Port 3\CTO (Checkbox)
0x000000AF[1] \Advanced\PCI Express Root Port 4\CTO (Checkbox)
0x000000B0[1] \Advanced\PCI Express Root Port 5\CTO (Checkbox)
0x000000B1[1] \Advanced\PCI Express Root Port 6\CTO (Checkbox)
0x000000B2[1] \Advanced\PCI Express Root Port 1\PME Interrupt (Checkbox)
0x000000B3[1] \Advanced\PCI Express Root Port 2\PME Interrupt (Checkbox)
0x000000B4[1] \Advanced\PCI Express Root Port 3\PME Interrupt (Checkbox)
0x000000B5[1] \Advanced\PCI Express Root Port 4\PME Interrupt (Checkbox)
0x000000B6[1] \Advanced\PCI Express Root Port 5\PME Interrupt (Checkbox)
0x000000B7[1] \Advanced\PCI Express Root Port 6\PME Interrupt (Checkbox)
0x000000B8[1] \Advanced\PCI Express Root Port 1\SEFE (Checkbox)
0x000000B9[1] \Advanced\PCI Express Root Port 2\SEFE (Checkbox)
0x000000BA[1] \Advanced\PCI Express Root Port 3\SEFE (Checkbox)
0x000000BB[1] \Advanced\PCI Express Root Port 4\SEFE (Checkbox)
0x000000BC[1] \Advanced\PCI Express Root Port 5\SEFE (Checkbox)
0x000000BD[1] \Advanced\PCI Express Root Port 6\SEFE (Checkbox)
0x000000BE[1] \Advanced\PCI Express Root Port 1\SENFE (Checkbox)
0x000000BF[1] \Advanced\PCI Express Root Port 2\SENFE (Checkbox)
0x000000C0[1] \Advanced\PCI Express Root Port 3\SENFE (Checkbox)
0x000000C1[1] \Advanced\PCI Express Root Port 4\SENFE (Checkbox)
0x000000C2[1] \Advanced\PCI Express Root Port 5\SENFE (Checkbox)
0x000000C3[1] \Advanced\PCI Express Root Port 6\SENFE (Checkbox)
0x000000C4[1] \Advanced\PCI Express Root Port 1\SECE (Checkbox)
0x000000C5[1] \Advanced\PCI Express Root Port 2\SECE (Checkbox)
0x000000C6[1] \Advanced\PCI Express Root Port 3\SECE (Checkbox)
0x000000C7[1] \Advanced\PCI Express Root Port 4\SECE (Checkbox)
0x000000C8[1] \Advanced\PCI Express Root Port 5\SECE (Checkbox)
0x000000C9[1] \Advanced\PCI Express Root Port 6\SECE (Checkbox)
0x000000CA[1] \Advanced\PCI Express Root Port 1\PME SCI (Checkbox)
0x000000CB[1] \Advanced\PCI Express Root Port 2\PME SCI (Checkbox)
0x000000CC[1] \Advanced\PCI Express Root Port 3\PME SCI (Checkbox)
0x000000CD[1] \Advanced\PCI Express Root Port 4\PME SCI (Checkbox)
0x000000CE[1] \Advanced\PCI Express Root Port 5\PME SCI (Checkbox)
0x000000CF[1] \Advanced\PCI Express Root Port 6\PME SCI (Checkbox)
0x000000D0[1] \Advanced\PCI Express Root Port 1\Hot Plug SCI (Checkbox)
0x000000D1[1] \Advanced\PCI Express Root Port 2\Hot Plug SCI (Checkbox)
0x000000D2[1] \Advanced\PCI Express Root Port 3\Hot Plug SCI (Checkbox)
0x000000D3[1] \Advanced\PCI Express Root Port 4\Hot Plug SCI (Checkbox)
0x000000D4[1] \Advanced\PCI Express Root Port 5\Hot Plug SCI (Checkbox)
0x000000D5[1] \Advanced\PCI Express Root Port 6\Hot Plug SCI (Checkbox)
0x000000D6[1] \Advanced\PCI Express Root Port 1\VC1/TC Mapping (Setting: 0="TC0"; 1="TC1"; 2="TC2"; 3="TC3"; 4="TC4"; 5="TC5"; 6="TC6"; 7="TC7")
0x000000D7[1] \Advanced\PCI Express Root Port 2\VC1/TC Mapping (Setting: 0="TC0"; 1="TC1"; 2="TC2"; 3="TC3"; 4="TC4"; 5="TC5"; 6="TC6"; 7="TC7")
0x000000D8[1] \Advanced\PCI Express Root Port 3\VC1/TC Mapping (Setting: 0="TC0"; 1="TC1"; 2="TC2"; 3="TC3"; 4="TC4"; 5="TC5"; 6="TC6"; 7="TC7")
0x000000D9[1] \Advanced\PCI Express Root Port 4\VC1/TC Mapping (Setting: 0="TC0"; 1="TC1"; 2="TC2"; 3="TC3"; 4="TC4"; 5="TC5"; 6="TC6"; 7="TC7")
0x000000DA[1] \Advanced\PCI Express Root Port 5\VC1/TC Mapping (Setting: 0="TC0"; 1="TC1"; 2="TC2"; 3="TC3"; 4="TC4"; 5="TC5"; 6="TC6"; 7="TC7")
0x000000DB[1] \Advanced\PCI Express Root Port 6\VC1/TC Mapping (Setting: 0="TC0"; 1="TC1"; 2="TC2"; 3="TC3"; 4="TC4"; 5="TC5"; 6="TC6"; 7="TC7")
0x000000DD[1] \Advanced\ICH9/ICH10 Devices\Azalia PME Enable (Checkbox)
0x000000DF[1] \Advanced\ICH9/ICH10 Devices\Azalia Vci Enable (Checkbox)
0x000000E1[1] \Advanced\ICH9/ICH10 Devices\Enable Jack Detection (Checkbox)
0x000000E2[1] \Advanced\Networking\ASF (Checkbox)
0x000000E3[1] \Advanced\Networking\WatchDog (Checkbox)
0x000000E4[2] \Advanced\Networking\OS Timer (65535-0) (Numeric)
0x000000E6[2] \Advanced\Networking\BIOS Timer (65535-0) (Numeric)
0x000000E8[1] \Advanced\Networking\Intel AMT (Checkbox)
0x000000E9[1] \Advanced\Networking\Intel AMT Setup Prompt (Checkbox)
0x000000EA[1] \Advanced\Networking\Intel AMT SPI Protected (Checkbox)
0x000000EB[1] \Advanced\Networking\Intel AMT Password Write Enabled (Checkbox)
0x000000EC[1] \Advanced\Networking\HECI Timeout (Checkbox)
0x000000ED[2] \Advanced\Networking\Amt Wait Timer (65535-0) (Numeric)
0x000000EF[1] \Advanced\Event Log\Log Errors (Setting: 0="Disable"; 1="Enable")
0x000000F0[1] \Advanced\Event Log\Load SMM Error Logging Module (Setting: 0="No"; 1="Yes")
0x000000F1[1] \Advanced\Event Log\Processor Errors (Setting: 0="No"; 1="Yes")
0x000000F7[1] \Advanced\Event Log\PCI-Ex Errors (Setting: 0="No"; 1="Yes")
0x000000F8[1] \Advanced\Event Log\Platform Errors (Setting: 0="No"; 1="Yes")
0x000000F9[1] \Advanced\Event Log\IOH Errors (Setting: 0="No"; 1="Yes")
0x000000FA[1] \Advanced\Event Log\ICH Errors (Setting: 0="No"; 1="Yes")
0x000000FB[1] \Advanced\Event Log\Fatal Errors (Setting: 0="Disable"; 1="Error0"; 2="Error1"; 3="Error2"; 4="MCERR")
0x000000FC[1] \Advanced\Event Log\Uncorrectable/Recoverable Non Fatal Errors (Setting: 0="Disable"; 1="Error0"; 2="Error1"; 3="Error2"; 4="MCERR")
0x000000FD[1] \Advanced\Event Log\Correctable Errors (Setting: 0="Disable"; 1="Error0"; 2="Error1"; 3="Error2"; 4="MCERR")
0x000000FF[1] \Advanced\Event Log\Enable SERR propagation (Setting: 0="No"; 1="Yes")
0x00000100[1] \Boot Options\Boot Options\Terminal (Setting: 0="Enable"; 1="Disable")
0x00000102[1] \Boot Options\Boot Options\Fast Boot (Setting: 0="Disable"; 1="Enable")
0x00000141[1] \Advanced\PCI Express Port 1\Hot Plug Capable (Setting: 0="Disable"; 1="Enable")
0x00000143[1] \Advanced\PCI Express Port 3\Hot Plug Capable (Setting: 0="Disable"; 1="Enable")
0x00000147[1] \Advanced\PCI Express Port 7\Hot Plug Capable (Setting: 0="Disable"; 1="Enable")
0x00000193[1] \Advanced\PCI Express Port 1\PCI-E Port Link (Setting: 0="Enable"; 1="Disable")
0x00000195[1] \Advanced\PCI Express Port 3\PCI-E Port Link (Setting: 0="Enable"; 1="Disable")
0x00000199[1] \Advanced\PCI Express Port 7\PCI-E Port Link (Setting: 0="Enable"; 1="Disable")
0x0000019D[1] \Advanced\PCI Express Port 1\PCI-E ASPM Support (Setting: 0="Disable"; 1="L0s Only"; 3="L0s & L1 Both")
0x0000019E[1] \Advanced\PCI Express Port 1\PCI-E ASPM Support (Setting: 0="Disable"; 1="L0s Only"; 3="L0s & L1 Both")
0x000001A0[1] \Advanced\PCI Express Port 3\PCI-E ASPM Support (Setting: 0="Disable"; 1="L0s Only"; 3="L0s & L1 Both")
0x000001A4[1] \Advanced\PCI Express Port 7\PCI-E ASPM Support (Setting: 0="Disable"; 1="L0s Only"; 3="L0s & L1 Both")
0x000001A8[1] \Advanced\PCI Express Port 1\PCI-E Port Clocking (Setting: 0="Distinct"; 1="Common")
0x000001A9[1] \Advanced\PCI Express Port 1\PCI-E Port Clocking (Setting: 0="Distinct"; 1="Common")
0x000001AB[1] \Advanced\PCI Express Port 3\PCI-E Port Clocking (Setting: 0="Distinct"; 1="Common")
0x000001AF[1] \Advanced\PCI Express Port 7\PCI-E Port Clocking (Setting: 0="Distinct"; 1="Common")
0x000001B3[1] \Advanced\PCI Express Port 1\PCI-E Port Max. Payload Request (Setting: 0="128B"; 1="256B")
0x000001B4[1] \Advanced\PCI Express Port 1\PCI-E Port Max. Payload Request (Setting: 0="128B"; 1="256B")
0x000001B6[1] \Advanced\PCI Express Port 3\PCI-E Port Max. Payload Request (Setting: 0="128B"; 1="256B")
0x000001BA[1] \Advanced\PCI Express Port 7\PCI-E Port Max. Payload Request (Setting: 0="128B"; 1="256B")
0x000001BE[1] \Advanced\PCI Express Port 1\MSI (Setting: 0="Disable"; 1="Enable")
0x000001BF[1] \Advanced\PCI Express Port 1\MSI (Setting: 0="Disable"; 1="Enable")
0x000001C1[1] \Advanced\PCI Express Port 3\MSI (Setting: 0="Disable"; 1="Enable")
0x000001C5[1] \Advanced\PCI Express Port 7\MSI (Setting: 0="Disable"; 1="Enable")
0x000001C9[1] \Advanced\PCI Express Port 1\PCI-E Extended Sync (Setting: 0="Disable"; 1="Enable")
0x000001CA[1] \Advanced\PCI Express Port 1\PCI-E Extended Sync (Setting: 0="Disable"; 1="Enable")
0x000001CC[1] \Advanced\PCI Express Port 3\PCI-E Extended Sync (Setting: 0="Disable"; 1="Enable")
0x000001D0[1] \Advanced\PCI Express Port 7\PCI-E Extended Sync (Setting: 0="Disable"; 1="Enable")
0x000001D4[1] \Advanced\PCI Express Port 1\PCI-E Inband Presence Detect (Setting: 0="Disable"; 1="Enable")
0x000001D5[1] \Advanced\PCI Express Port 1\PCI-E Inband Presence Detect (Setting: 0="Disable"; 1="Enable")
0x000001D7[1] \Advanced\PCI Express Port 3\PCI-E Inband Presence Detect (Setting: 0="Disable"; 1="Enable")
0x000001DB[1] \Advanced\PCI Express Port 7\PCI-E Inband Presence Detect (Setting: 0="Disable"; 1="Enable")
0x000001DF[1] \Advanced\PCI Express Port 1\PCI-E Completion Timeout (Setting: 0="Enable"; 1="Disable")
0x000001E0[1] \Advanced\PCI Express Port 1\PCI-E Completion Timeout (Setting: 0="Enable"; 1="Disable")
0x000001E2[1] \Advanced\PCI Express Port 3\PCI-E Completion Timeout (Setting: 0="Enable"; 1="Disable")
0x000001E6[1] \Advanced\PCI Express Port 7\PCI-E Completion Timeout (Setting: 0="Enable"; 1="Disable")
0x000001EA[1] \Advanced\PCI Express Port 1\PCI-E Completion Timeout Value (Setting: 0="50µs to 10ms"; 1="50µs to 100µs"; 2="1ms to 10ms"; 5="16ms to 55ms"; 6="65ms to 210ms"; 9="260ms to 900ms"; 0xA="1s to 3.5s")
0x000001EB[1] \Advanced\PCI Express Port 1\PCI-E Completion Timeout Value (Setting: 0="50µs to 10ms"; 1="50µs to 100µs"; 2="1ms to 10ms"; 5="16ms to 55ms"; 6="65ms to 210ms"; 9="260ms to 900ms"; 0xA="1s to 3.5s")
0x000001ED[1] \Advanced\PCI Express Port 3\PCI-E Completion Timeout Value (Setting: 0="50µs to 10ms"; 1="50µs to 100µs"; 2="1ms to 10ms"; 5="16ms to 55ms"; 6="65ms to 210ms"; 9="260ms to 900ms"; 0xA="1s to 3.5s")
0x000001F1[1] \Advanced\PCI Express Port 7\PCI-E Completion Timeout Value (Setting: 0="50µs to 10ms"; 1="50µs to 100µs"; 2="1ms to 10ms"; 5="16ms to 55ms"; 6="65ms to 210ms"; 9="260ms to 900ms"; 0xA="1s to 3.5s")
0x000001F6[1] \Advanced\PCI Express Port 1\PCI-E Port (Setting: 0="Auto"; 1="Enable"; 2="Disable")
0x000001F8[1] \Advanced\PCI Express Port 3\PCI-E Port (Setting: 0="Auto"; 1="Enable"; 2="Disable")
0x000001FC[1] \Advanced\PCI Express Port 7\PCI-E Port (Setting: 0="Auto"; 1="Enable"; 2="Disable")
0x0000022D[1] \Advanced\PCI Express Port 1\PCI-E Port Gen2 Support (Setting: 0="Disable"; 1="Enable")
0x0000022F[1] \Advanced\PCI Express Port 3\PCI-E Port Gen2 Support (Setting: 0="Disable"; 1="Enable")
0x00000233[1] \Advanced\PCI Express Port 7\PCI-E Port Gen2 Support (Setting: 0="Disable"; 1="Enable")
0x00000237[1] \Advanced\PCI Express Port 1\Compliance Mode (Setting: 0="Disable"; 1="Enable")
0x00000238[1] \Advanced\PCI Express Port 1\Compliance Mode (Setting: 0="Disable"; 1="Enable")
0x0000023A[1] \Advanced\PCI Express Port 3\Compliance Mode (Setting: 0="Disable"; 1="Enable")
0x0000023E[1] \Advanced\PCI Express Port 7\Compliance Mode (Setting: 0="Disable"; 1="Enable")
0x00000243[1] \Advanced\PCI Express Port 1\PCI-E Port DeEmphasis (Setting: 0="-6.0 dB"; 1="-3.5 dB")
0x00000245[1] \Advanced\PCI Express Port 3\PCI-E Port DeEmphasis (Setting: 0="-6.0 dB"; 1="-3.5 dB")
0x00000249[1] \Advanced\PCI Express Port 7\PCI-E Port DeEmphasis (Setting: 0="-6.0 dB"; 1="-3.5 dB")
0x0000024D[1] \Advanced\PCI Express Port 1\Slot Form Factor (Setting: 0="CEM/Cable"; 1="SIOM")
0x0000024E[1] \Advanced\PCI Express Port 1\Slot Form Factor (Setting: 0="CEM/Cable"; 1="SIOM")
0x00000250[1] \Advanced\PCI Express Port 3\Slot Form Factor (Setting: 0="CEM/Cable"; 1="SIOM")
0x00000254[1] \Advanced\PCI Express Port 7\Slot Form Factor (Setting: 0="CEM/Cable"; 1="SIOM")
0x00000258[1] \Advanced\PCI Express Port 1\Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x00000259[1] \Advanced\PCI Express Port 1\Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x0000025B[1] \Advanced\PCI Express Port 3\Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x0000025F[1] \Advanced\PCI Express Port 7\Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x00000263[1] \Advanced\PCI Express Port 1\Non-Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x00000264[1] \Advanced\PCI Express Port 1\Non-Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x00000266[1] \Advanced\PCI Express Port 3\Non-Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x0000026A[1] \Advanced\PCI Express Port 7\Non-Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x0000026E[1] \Advanced\PCI Express Port 1\Corr Err Over (Setting: 0="Disable"; 1="Enable")
0x0000026F[1] \Advanced\PCI Express Port 1\Corr Err Over (Setting: 0="Disable"; 1="Enable")
0x00000271[1] \Advanced\PCI Express Port 3\Corr Err Over (Setting: 0="Disable"; 1="Enable")
0x00000275[1] \Advanced\PCI Express Port 7\Corr Err Over (Setting: 0="Disable"; 1="Enable")
0x00000279[1] \Advanced\PCI Express Port 1\ACPI PME Interrupt (Setting: 0="Disable"; 1="Enable")
0x0000027A[1] \Advanced\PCI Express Port 1\ACPI PME Interrupt (Setting: 0="Disable"; 1="Enable")
0x0000027C[1] \Advanced\PCI Express Port 3\ACPI PME Interrupt (Setting: 0="Disable"; 1="Enable")
0x00000280[1] \Advanced\PCI Express Port 7\ACPI PME Interrupt (Setting: 0="Disable"; 1="Enable")
0x00000284[1] \Advanced\PCI Express Port 1\L0s Support (Setting: 1="Disable"; 0="Enable")
0x00000285[1] \Advanced\PCI Express Port 1\L0s Support (Setting: 1="Disable"; 0="Enable")
0x00000287[1] \Advanced\PCI Express Port 3\L0s Support (Setting: 1="Disable"; 0="Enable")
0x0000028B[1] \Advanced\PCI Express Port 7\L0s Support (Setting: 1="Disable"; 0="Enable")
0x0000028F[1] \Advanced\PCI Express Port 1\Inbound I/O (Setting: 0="Disable"; 1="Enable")
0x00000290[1] \Advanced\PCI Express Port 1\Inbound I/O (Setting: 0="Disable"; 1="Enable")
0x00000292[1] \Advanced\PCI Express Port 3\Inbound I/O (Setting: 0="Disable"; 1="Enable")
0x00000296[1] \Advanced\PCI Express Port 7\Inbound I/O (Setting: 0="Disable"; 1="Enable")
0x0000029A[1] \Advanced\PCI Express Port 1\Link MSI (Setting: 1="Disable"; 0="Enable")
0x0000029B[1] \Advanced\PCI Express Port 1\Link MSI (Setting: 1="Disable"; 0="Enable")
0x0000029D[1] \Advanced\PCI Express Port 3\Link MSI (Setting: 1="Disable"; 0="Enable")
0x000002A1[1] \Advanced\PCI Express Port 7\Link MSI (Setting: 1="Disable"; 0="Enable")
0x000002A5[1] \Advanced\PCI Express Port 1\P2P Memory Write (Setting: 1="Disable"; 0="Enable")
0x000002A6[1] \Advanced\PCI Express Port 1\P2P Memory Write (Setting: 1="Disable"; 0="Enable")
0x000002A8[1] \Advanced\PCI Express Port 3\P2P Memory Write (Setting: 1="Disable"; 0="Enable")
0x000002AC[1] \Advanced\PCI Express Port 7\P2P Memory Write (Setting: 1="Disable"; 0="Enable")
0x000002B0[1] \Advanced\PCI Express Port 1\P2P Memory Read (Setting: 1="Disable"; 0="Enable")
0x000002B1[1] \Advanced\PCI Express Port 1\P2P Memory Read (Setting: 1="Disable"; 0="Enable")
0x000002B3[1] \Advanced\PCI Express Port 3\P2P Memory Read (Setting: 1="Disable"; 0="Enable")
0x000002B7[1] \Advanced\PCI Express Port 7\P2P Memory Read (Setting: 1="Disable"; 0="Enable")
0x000002BB[1] \Advanced\PCI Express Port 1\PHold (Setting: 1="Disable"; 0="Enable")
0x000002BC[1] \Advanced\PCI Express Port 1\PHold (Setting: 1="Disable"; 0="Enable")
0x000002BE[1] \Advanced\PCI Express Port 3\PHold (Setting: 1="Disable"; 0="Enable")
0x000002C2[1] \Advanced\PCI Express Port 7\PHold (Setting: 1="Disable"; 0="Enable")
0x000002C6[1] \Advanced\PCI Express Port 1\PME2ACK Timeout (Setting: 0="1 ms"; 1="10 ms"; 2="50 ms"; 3="Test Mode")
0x000002C7[1] \Advanced\PCI Express Port 1\PME2ACK Timeout (Setting: 0="1 ms"; 1="10 ms"; 2="50 ms"; 3="Test Mode")
0x000002C9[1] \Advanced\PCI Express Port 3\PME2ACK Timeout (Setting: 0="1 ms"; 1="10 ms"; 2="50 ms"; 3="Test Mode")
0x000002CD[1] \Advanced\PCI Express Port 7\PME2ACK Timeout (Setting: 0="1 ms"; 1="10 ms"; 2="50 ms"; 3="Test Mode")
0x000002D1[1] \Advanced\PCI Express Port 1\PME to ACK (Setting: 1="Disable"; 0="Enable")
0x000002D2[1] \Advanced\PCI Express Port 1\PME to ACK (Setting: 1="Disable"; 0="Enable")
0x000002D4[1] \Advanced\PCI Express Port 3\PME to ACK (Setting: 1="Disable"; 0="Enable")
0x000002D8[1] \Advanced\PCI Express Port 7\PME to ACK (Setting: 1="Disable"; 0="Enable")
0x000002DC[1] \Advanced\PCI Express Port 1\System Error Only AER (Setting: 1="Disable"; 0="Enable")
0x000002DD[1] \Advanced\PCI Express Port 1\System Error Only AER (Setting: 1="Disable"; 0="Enable")
0x000002DF[1] \Advanced\PCI Express Port 3\System Error Only AER (Setting: 1="Disable"; 0="Enable")
0x000002E3[1] \Advanced\PCI Express Port 7\System Error Only AER (Setting: 1="Disable"; 0="Enable")
0x000002E8[1] \Advanced\PCI Express Port 1\HotPlug ACPI Mode (Setting: 0="Disable"; 1="Enable")
0x000002EA[1] \Advanced\PCI Express Port 3\HotPlug ACPI Mode (Setting: 0="Disable"; 1="Enable")
0x000002EE[1] \Advanced\PCI Express Port 7\HotPlug ACPI Mode (Setting: 0="Disable"; 1="Enable")
0x000002F3[1] \Advanced\PCI Express Port 1\PM ACPI Mode (Setting: 0="Disable"; 1="Enable")
0x000002F5[1] \Advanced\PCI Express Port 3\PM ACPI Mode (Setting: 0="Disable"; 1="Enable")
0x000002F9[1] \Advanced\PCI Express Port 7\PM ACPI Mode (Setting: 0="Disable"; 1="Enable")
0x000002FD[1] \Advanced\PCI Express Port 1\Inbound Configuration (Setting: 0="Disable"; 1="Enable")
0x000002FE[1] \Advanced\PCI Express Port 1\Inbound Configuration (Setting: 0="Disable"; 1="Enable")
0x00000300[1] \Advanced\PCI Express Port 3\Inbound Configuration (Setting: 0="Disable"; 1="Enable")
0x00000304[1] \Advanced\PCI Express Port 7\Inbound Configuration (Setting: 0="Disable"; 1="Enable")
0x00000309[1] \Advanced\PCI Express Port 1\Host Bridge CC (Setting: 0="Disable"; 1="Enable")
0x0000030B[1] \Advanced\PCI Express Port 3\Host Bridge CC (Setting: 0="Disable"; 1="Enable")
0x0000030F[1] \Advanced\PCI Express Port 7\Host Bridge CC (Setting: 0="Disable"; 1="Enable")
0x00000313[1] \Advanced\PCI Express Port 1\Read Stream Interleave (Setting: 0="128B"; 0x10="256B")
0x00000314[1] \Advanced\PCI Express Port 1\Read Stream Interleave (Setting: 0="128B"; 0x10="256B")
0x00000316[1] \Advanced\PCI Express Port 3\Read Stream Interleave (Setting: 0="128B"; 0x10="256B")
0x0000031A[1] \Advanced\PCI Express Port 7\Read Stream Interleave (Setting: 0="128B"; 0x10="256B")
0x0000031F[1] \Advanced\PCI Express Port 1\Read Passing (Setting: 2="Disable"; 0="Enable")
0x00000320[1] \Advanced\PCI Express Port 1\Read Passing (Setting: 2="Disable"; 0="Enable")
0x00000322[1] \Advanced\PCI Express Port 3\Read Passing (Setting: 2="Disable"; 0="Enable")
0x00000326[1] \Advanced\PCI Express Port 7\Read Passing (Setting: 2="Disable"; 0="Enable")
0x0000032A[1] \Advanced\PCI Express Port 1\Read Stream Policy (Setting: 0="128B"; 1="256B")
0x0000032B[1] \Advanced\PCI Express Port 1\Read Stream Policy (Setting: 0="128B"; 1="256B")
0x0000032D[1] \Advanced\PCI Express Port 3\Read Stream Policy (Setting: 0="128B"; 1="256B")
0x00000331[1] \Advanced\PCI Express Port 7\Read Stream Policy (Setting: 0="128B"; 1="256B")
0x00000335[1] \Advanced\PCI Express Port 1\MSI for Correctable errors (Setting: 0="Disable"; 1="Enable")
0x00000336[1] \Advanced\PCI Express Port 1\MSI for Correctable errors (Setting: 0="Disable"; 1="Enable")
0x00000338[1] \Advanced\PCI Express Port 3\MSI for Correctable errors (Setting: 0="Disable"; 1="Enable")
0x0000033C[1] \Advanced\PCI Express Port 7\MSI for Correctable errors (Setting: 0="Disable"; 1="Enable")
0x00000340[1] \Advanced\PCI Express Port 1\MSI for Non Fatal errors (Setting: 0="Disable"; 1="Enable")
0x00000341[1] \Advanced\PCI Express Port 1\MSI for Non Fatal errors (Setting: 0="Disable"; 1="Enable")
0x00000343[1] \Advanced\PCI Express Port 3\MSI for Non Fatal errors (Setting: 0="Disable"; 1="Enable")
0x00000347[1] \Advanced\PCI Express Port 7\MSI for Non Fatal errors (Setting: 0="Disable"; 1="Enable")
0x0000034B[1] \Advanced\PCI Express Port 1\SERR (Setting: 0="Disable"; 1="Enable")
0x0000034C[1] \Advanced\PCI Express Port 1\SERR (Setting: 0="Disable"; 1="Enable")
0x0000034E[1] \Advanced\PCI Express Port 3\SERR (Setting: 0="Disable"; 1="Enable")
0x00000352[1] \Advanced\PCI Express Port 7\SERR (Setting: 0="Disable"; 1="Enable")
0x00000356[1] \Advanced\PCI Express Port 1\PERR (Setting: 0="Disable"; 1="Enable")
0x00000357[1] \Advanced\PCI Express Port 1\PERR (Setting: 0="Disable"; 1="Enable")
0x00000359[1] \Advanced\PCI Express Port 3\PERR (Setting: 0="Disable"; 1="Enable")
0x0000035D[1] \Advanced\PCI Express Port 7\PERR (Setting: 0="Disable"; 1="Enable")
0x00000361[1] \Advanced\PCI Express Port 1\MSI RAS (Setting: 0="Disable"; 1="Enable")
0x00000362[1] \Advanced\PCI Express Port 1\MSI RAS (Setting: 0="Disable"; 1="Enable")
0x00000364[1] \Advanced\PCI Express Port 3\MSI RAS (Setting: 0="Disable"; 1="Enable")
0x00000368[1] \Advanced\PCI Express Port 7\MSI RAS (Setting: 0="Disable"; 1="Enable")
0x00000425[1] \Advanced\CSI Configuration\CSI Link Speed (Setting: 0="Slow"; 1="Fast")
0x00000427[1] \Advanced\CSI Configuration\CSI Probe Present (Setting: 0="No"; 1="Yes")
0x00000428[1] \Advanced\CSI Configuration\CPU0 CSI0 Tx (Setting: 0="None"; 1="Midbus")
0x00000429[1] \Advanced\CSI Configuration\CPU0 CSI1 Tx (Setting: 0="None"; 1="Midbus")
0x0000042A[1] \Advanced\CSI Configuration\CPU1 CSI0 Tx (Setting: 0="None"; 1="Midbus")
0x0000042B[1] \Advanced\CSI Configuration\CPU1 CSI1 Tx (Setting: 0="None"; 1="Midbus")
0x0000042C[1] \Advanced\CSI Configuration\IOH CSI0 Tx (Setting: 0="None"; 1="Midbus")
0x0000042D[1] \Advanced\CSI Configuration\IOH CSI1 Tx (Setting: 0="None"; 1="Midbus")
0x0000042E[1] \Advanced\CSI Configuration\CPU SKT0 Mirror Port (Setting: 0="Do Nothing"; 1="CSI0 Tx / Rx"; 2="CSI1 Tx / Rx"; 3="CSI0 Tx / CSI1 Rx"; 4="CSI0 Rx / CSI1 Tx")
0x0000042F[1] \Advanced\CSI Configuration\CPU SKT1 Mirror Port (Setting: 0="Do Nothing"; 1="CSI0 Tx / Rx"; 2="CSI1 Tx / Rx"; 3="CSI0 Tx / CSI1 Rx"; 4="CSI0 Rx / CSI1 Tx")
0x00000430[1] \Advanced\CSI Configuration\CSI Frequency Select (Setting: 0="Auto"; 1="4.8 GT/s"; 2="5.866 GT/s"; 3="6.4 GT/s")
0x00000436[1] \Advanced\CSI Configuration\CSI L1 Enable (Setting: 1="Enable"; 0="Disable")
0x00000437[1] \Advanced\Memory Configuration\Serial Debug Message Level (2-0) (Numeric)
0x0000044B[1] \Advanced\Memory Configuration\Memory Data Scrambling (Setting: 0="Disable"; 1="Enable")
0x0000044C[1] \Advanced\Memory Configuration\Memory Channel Mode (Setting: 0="Independent"; 1="Mirroring"; 2="Lock-Step"; 3="Sparing")
0x0000044E[1] \Advanced\Memory Configuration\Channel Interleaving (Setting: 0="Auto"; 1="1-way Interleave"; 2="2-way Interleave"; 3="3-way Interleave"; 4="4-way Interleave"; 6="6-way Interleave")
0x0000044F[1] \Advanced\Memory Configuration\Rank Interleaving (Setting: 0="Auto"; 1="1-way Interleave"; 2="2-way Interleave"; 4="4-way Interleave")
0x00000450[1] \Advanced\Memory Configuration\DDR Speed (Setting: 0="Auto"; 1="Force DDR3-800"; 2="Force DDR3-1067"; 3="Force DDR3-1333"; 4="Force DDR3-1600")
0x00000451[1] \Advanced\Memory Configuration\Memory Type (Setting: 0="Auto"; 1="RDIMMs only"; 2="UDIMMs only"; 3="UDIMMs and RDIMMs")
0x00000452[1] \Advanced\Memory Configuration\Patrol Scrub (Setting: 1="Enable"; 0="Disable")
0x00000453[1] \Advanced\Memory Configuration\Demand Scrub (Setting: 1="Enable"; 0="Disable")
0x00000454[1] \Advanced\Memory Configuration\Memory Page Policy (Setting: 0="Open Policy"; 1="Closed Policy")
0x00000456[1] \Advanced\Memory Configuration\Socket Interleave (Setting: 0="Non-NUMA"; 1="NUMA")
0x00000458[1] \Advanced\Memory Configuration\Spare Error Threshold (15-0) (Numeric)
0x00000459[1] \Advanced\Memory Configuration\Software MemTest (Setting: 0="Disable"; 1="Enable")
0x0000045A[1] \Advanced\Memory Configuration\Hardware memTest (Setting: 0="Disable"; 1="Enable")
0x00000480[1] \Advanced\Miscellaneous Configuration\On-board Lan Power (Setting: 0="Turn OFF"; 1="Turn ON")
0x00000481[1] \Advanced\Miscellaneous Configuration\On-board LAN0 (Setting: 0="Disable"; 1="Enable")
0x00000482[1] \Advanced\Miscellaneous Configuration\On-board LAN1 (Setting: 0="Disable"; 1="Enable")
0x00000483[0] \Main\Main\Year (2006-2100) (Date)
0x00000485[0] \Main\Main\Month (1-12) (Date)
0x00000487[0] \Main\Main\Day (1-31) (Date)
0x00000489[0] \Main\Main\Hour (0-23) (Time)
0x0000048B[0] \Main\Main\Minute (0-59) (Time)
0x0000048D[0] \Main\Main\Second (0-59) (Time)
setup_ifr_3.txt ./MP51.fd.dump/7 EfiFirmwareFileSystemGuid/113 SmbiosMiscDxe/0 Compressed section/0 EfiCrc32GuidedSectionExtractionGuid/1 PE32 image section/body.bin
setup_ifr_4.txt ./MP51.fd.dump/7 EfiFirmwareFileSystemGuid/14 DuetBds/0 Compressed section/0 EfiCrc32GuidedSectionExtractionGuid/1 PE32 image section/body.bin
setup_ifr_5.txt ./MP51.fd.dump/7 EfiFirmwareFileSystemGuid/18 CpuInitDxe/0 Compressed section/0 EfiCrc32GuidedSectionExtractionGuid/1 PE32 image section/body.bin
setup_ifr_6.txt ./MP51.fd.dump/7 EfiFirmwareFileSystemGuid/59 MemorySubClass/0 Compressed section/0 EfiCrc32GuidedSectionExtractionGuid/1 PE32 image section/body.bin
 

Attachments

  • UEFIStuff.zip
    2.9 KB · Views: 71

tsialex

Contributor
Original poster
Jun 13, 2016
13,454
13,601
Thanks. PCI-E Completion Timeout is in there.

Code:
#=========================================================================================
source /Volumes/Work/Programming/EFIProjects/UEFIstuff/uefitoolcommands.sh
cd $UEFIstuff
#bbedit $uefitoolcommands.sh

#=========================================================================================
# Extract EFI stuff from the MacPro5,1 rom (from Install macOS Mojave.app)

cd $UEFIstuff/UEFIbios/MacPro5,1

UEFIExtract ./MP51.fd

ifrextractall > ifrvars.txt

cat ifrvars.txt

setup_ifr_1.txt ./MP51.fd.dump/7 EfiFirmwareFileSystemGuid/100 SetupBrowserDxe/0 Compressed section/0 EfiCrc32GuidedSectionExtractionGuid/0 PE32 image section/body.bin
setup_ifr_2.txt ./MP51.fd.dump/7 EfiFirmwareFileSystemGuid/110 Platform/0 Compressed section/0 EfiCrc32GuidedSectionExtractionGuid/1 PE32 image section/body.bin
0x00000000[1] \Advanced\Miscellaneous Configuration\Floppy Diskette Controller (Setting: 0="Disable"; 1="Enable")
0x00000001[1] \Advanced\Miscellaneous Configuration\Floppy Write Protect (Setting: 0="Disable"; 1="Enable")
0x00000006[1] \Boot Options\Boot Options\Numlock (Setting: 0="Off"; 1="On")
0x00000007[1] \Advanced\Miscellaneous Configuration\PS2 Port Swap (Setting: 0="Disable"; 1="Enable")
0x0000000A[1] \Advanced\Miscellaneous Configuration\Boot to Network (Setting: 0="Disable"; 1="Enable")
0x0000000B[1] \Advanced\Miscellaneous Configuration\Active Video (Setting: 0="Auto"; 1="Onboard Device"; 2="PCI(X) Device"; 3="PCIE Device")
0x0000000C[1] \Advanced\Miscellaneous Configuration\TPM v1.2 Support (Setting: 0="Disable"; 1="Enable")
0x0000000E[1] \Advanced\Miscellaneous Configuration\PCI 64-Bit Resource Allocation (Setting: 0="Disable"; 1="Enable")
0x0000000F[1] \Advanced\Miscellaneous Configuration\PCI Minimum Secondary Bus Number (223-1) (Numeric)
0x00000010[1] \Advanced\Miscellaneous Configuration\PCI Root Port Bus Padding (16-0) (Numeric)
0x00000012[1] \Advanced\ICH9/ICH10 Devices\Configure SATA as (Setting: 0="IDE"; 1="RAID"; 2="AHCI")
0x00000014[1] \Advanced\Processor Configuration\Max CPUID Value Limit (Setting: 0="Disable"; 1="Enable")
0x00000015[1] \Advanced\Processor Configuration\Execute Disable Bit (Setting: 0="Disable"; 1="Enable")
0x00000016[1] \Advanced\Processor Configuration\EIST (GV3) (Setting: 0="Disable"; 1="Enable")
0x00000017[1] \Advanced\Processor Configuration\CPU C State (Setting: 0="Disable"; 1="Enable")
0x00000018[1] \Advanced\Processor Configuration\Package C State limit (Setting: 0="C0 state"; 1="C1 state"; 2="C3 state"; 3="C6 state"; 4="C7 state"; 7="No Limit")
0x00000019[1] \Advanced\Processor Configuration\OS ACPI C2 report (Setting: 0="Disable"; 1="Enable")
0x0000001A[1] \Advanced\Processor Configuration\NHM C6 report (Setting: 0="Disable"; 1="Enable")
0x0000001B[1] \Advanced\Processor Configuration\NHM C7 report (Setting: 0="Disable"; 1="Enable")
0x0000001C[1] \Advanced\Processor Configuration\C1E (Setting: 0="Disable"; 1="Enable")
0x0000001D[1] \Advanced\Processor Configuration\Simulataneous Multi-Threading (Setting: 1="Enable"; 0="Disable")
0x0000001E[1] \Advanced\Processor Configuration\VMX (Setting: 0="Disable"; 1="Enable")
0x0000001F[1] \Advanced\Processor Configuration\BIST Selection (Setting: 0="Disable"; 1="Enable")
0x00000020[1] \Advanced\Processor Configuration\DCU Streamer Prefetcher (Setting: 0="Enable"; 1="Disable")
0x00000021[1] \Advanced\Processor Configuration\xTPR (Setting: 0="Enable"; 1="Disable")
0x00000023[1] \Advanced\Processor Configuration\Extreme Enable (XE) (Setting: 0="Disable"; 1="Enable")
0x00000024[1] \Advanced\Processor Configuration\Monitor/Mwait (Setting: 0="Disable"; 1="Enable")
0x00000025[1] \Advanced\Processor Configuration\Fast String (Setting: 0="Disable"; 1="Enable")
0x00000026[1] \Advanced\Processor Configuration\Machine Check (Setting: 0="Disable"; 1="Enable")
0x00000027[1] \Advanced\Processor Configuration\Turbo Mode (Setting: 1="Enable"; 0="Disable")
0x00000028[1] \Advanced\Processor Configuration\Direct Cache Access (DCA) (Setting: 0="Disable"; 1="Enable")
0x00000029[1] \Advanced\Processor Configuration\DCA Prefetch Delay (Setting: 0="Disable"; 1="8"; 2="16"; 3="24"; 4="32"; 5="40"; 6="48"; 7="56"; 8="64"; 9="72"; 0xA="80"; 0xB="88"; 0xC="96"; 0xD="104"; 0xE="112")
0x0000002A[1] \Advanced\Processor Configuration\Hardware Prefetcher (Setting: 0="Enable"; 1="Disable")
0x0000002B[1] \Advanced\Processor Configuration\Adjacent Cache Prefetch (Setting: 0="Enable"; 1="Disable")
0x0000002C[1] \Advanced\Processor Configuration\Active Core Count 0 (Setting: 0="All"; 1="1"; 2="2")
0x0000002D[1] \Advanced\Processor Configuration\Active Core Count 1 (Setting: 0="All"; 1="1"; 2="2")
0x0000002E[1] \Advanced\Processor Configuration\Extended APIC (Setting: 0="Disable"; 1="Enable")
0x0000002F[1] \Advanced\Processor Configuration\Bsp Selection (Setting: 0="Least Feature"; 1="Socket 0"; 2="Socket 1")
0x00000030[1] \Advanced\Processor Configuration\Intel Enhanced Debug (Setting: 0="Disable"; 1="4096K")
0x00000031[1] \Advanced\Processor Configuration\TSEG Smram Size (Setting: 0="4M"; 1="8M")
0x00000032[1] \Advanced\Processor Configuration\CPU Core Ratio (63-0) (Numeric)
0x00000033[1] \Advanced\Processor Configuration\TDC Limit Override (Setting: 0="Disable"; 1="Enable")
0x00000034[1] \Advanced\Processor Configuration\TDC Limit (127-0) (Numeric)
0x00000035[1] \Advanced\Processor Configuration\TDP Limit Override (Setting: 0="Disable"; 1="Enable")
0x00000036[1] \Advanced\Processor Configuration\TDP Limit (127-0) (Numeric)
0x00000037[1] \Advanced\Processor Configuration\UP Boot Selection (Setting: 0="Disable"; 1="Socket 0"; 2="Socket 1")
0x00000038[1] \Advanced\Processor Configuration\MTRR Default as uncacheable. (Setting: 0="Disable"; 1="Enable")
0x00000043[1] \Advanced\Networking\ICH Internal LAN (Checkbox)
0x00000044[1] \Advanced\ICH9/ICH10 Devices\Azalia (Setting: 0="Disabled"; 1="Enabled"; 2="Auto")
0x00000045[1] \Advanced\PCI Express Root Port 1\PCI Express Root Port 1 (Checkbox)
0x00000046[1] \Advanced\PCI Express Root Port 2\PCI Express Root Port 2 (Checkbox)
0x00000047[1] \Advanced\PCI Express Root Port 3\PCI Express Root Port 3 (Checkbox)
0x00000048[1] \Advanced\PCI Express Root Port 4\PCI Express Root Port 4 (Checkbox)
0x00000049[1] \Advanced\PCI Express Root Port 5\PCI Express Root Port 5 (Checkbox)
0x0000004A[1] \Advanced\PCI Express Root Port 6\PCI Express Root Port 6 (Checkbox)
0x0000004B[1] \Advanced\ICH9/ICH10 Devices\Legacy USB (Checkbox)
0x0000004C[1] \Advanced\ICH9/ICH10 Devices\UHCI Controller #1  (Checkbox)
0x0000004D[1] \Advanced\ICH9/ICH10 Devices\UHCI Controller #2  (Checkbox)
0x0000004E[1] \Advanced\ICH9/ICH10 Devices\UHCI Controller #3  (Checkbox)
0x0000004F[1] \Advanced\ICH9/ICH10 Devices\UHCI Controller #4  (Checkbox)
0x00000050[1] \Advanced\ICH9/ICH10 Devices\UHCI Controller #5  (Checkbox)
0x00000051[1] \Advanced\ICH9/ICH10 Devices\UHCI Controller #6  (Checkbox)
0x00000052[1] \Advanced\ICH9/ICH10 Devices\EHCI1 (Checkbox)
0x00000053[1] \Advanced\ICH9/ICH10 Devices\EHCI2 (Checkbox)
0x00000054[1] \Advanced\ICH9/ICH10 Devices\USB Ports Per-Port Disable Control (Checkbox)
0x00000055[1] \Advanced\ICH9/ICH10 Devices\USB Port #0 Disable (Checkbox)
0x00000056[1] \Advanced\ICH9/ICH10 Devices\USB Port #1 Disable (Checkbox)
0x00000057[1] \Advanced\ICH9/ICH10 Devices\USB Port #2 Disable (Checkbox)
0x00000058[1] \Advanced\ICH9/ICH10 Devices\USB Port #3 Disable (Checkbox)
0x00000059[1] \Advanced\ICH9/ICH10 Devices\USB Port #4 Disable (Checkbox)
0x0000005A[1] \Advanced\ICH9/ICH10 Devices\USB Port #5 Disable (Checkbox)
0x0000005B[1] \Advanced\ICH9/ICH10 Devices\USB Port #6 Disable (Checkbox)
0x0000005C[1] \Advanced\ICH9/ICH10 Devices\USB Port #7 Disable (Checkbox)
0x0000005D[1] \Advanced\ICH9/ICH10 Devices\USB Port #8 Disable (Checkbox)
0x0000005E[1] \Advanced\ICH9/ICH10 Devices\USB Port #9 Disable (Checkbox)
0x00000061[1] \Advanced\ICH9/ICH10 Devices\SMBUS Device (Checkbox)
0x00000062[1] \Advanced\ICH9/ICH10 Devices\ICH Device31 Function4 (Checkbox)
0x00000064[1] \Advanced\ICH9/ICH10 Devices\Port 80h Cycles (Setting: 0="LPC Bus"; 1="PCI Bus")
0x00000066[1] \Advanced\ICH9/ICH10 Devices\CLKRUN# logic (Setting: 0="Disabled"; 1="Enabled")
0x00000070[1] \Advanced\PCI Express Root Port 1\ASPM (Checkbox)
0x00000071[1] \Advanced\PCI Express Root Port 2\ASPM (Checkbox)
0x00000072[1] \Advanced\PCI Express Root Port 3\ASPM (Checkbox)
0x00000073[1] \Advanced\PCI Express Root Port 4\ASPM (Checkbox)
0x00000074[1] \Advanced\PCI Express Root Port 5\ASPM (Checkbox)
0x00000075[1] \Advanced\PCI Express Root Port 6\ASPM (Checkbox)
0x00000076[1] \Advanced\PCI Express Root Port 1\VC1 Enable (Setting: 0="Disabled"; 1="Auto")
0x00000077[1] \Advanced\PCI Express Root Port 2\VC1 Enable (Setting: 0="Disabled"; 1="Auto")
0x00000078[1] \Advanced\PCI Express Root Port 3\VC1 Enable (Setting: 0="Disabled"; 1="Auto")
0x00000079[1] \Advanced\PCI Express Root Port 4\VC1 Enable (Setting: 0="Disabled"; 1="Auto")
0x0000007A[1] \Advanced\PCI Express Root Port 5\VC1 Enable (Setting: 0="Disabled"; 1="Auto")
0x0000007B[1] \Advanced\PCI Express Root Port 6\VC1 Enable (Setting: 0="Disabled"; 1="Auto")
0x0000007C[1] \Advanced\PCI Express Root Port 1\Automatic ASPM (Setting: 0="Manual"; 1="Auto")
0x0000007D[1] \Advanced\PCI Express Root Port 2\Automatic ASPM (Setting: 0="Manual"; 1="Auto")
0x0000007E[1] \Advanced\PCI Express Root Port 3\Automatic ASPM (Setting: 0="Manual"; 1="Auto")
0x0000007F[1] \Advanced\PCI Express Root Port 4\Automatic ASPM (Setting: 0="Manual"; 1="Auto")
0x00000080[1] \Advanced\PCI Express Root Port 5\Automatic ASPM (Setting: 0="Manual"; 1="Auto")
0x00000081[1] \Advanced\PCI Express Root Port 6\Automatic ASPM (Setting: 0="Manual"; 1="Auto")
0x00000082[1] \Advanced\PCI Express Root Port 1\ASPM L0s (Setting: 0="Disabled"; 1="Root Port Only"; 2="Endpoint Port Only"; 3="Both Root and Endpoint Ports")
0x00000083[1] \Advanced\PCI Express Root Port 2\ASPM L0s (Setting: 0="Disabled"; 1="Root Port Only"; 2="Endpoint Port Only"; 3="Both Root and Endpoint Ports")
0x00000084[1] \Advanced\PCI Express Root Port 3\ASPM L0s (Setting: 0="Disabled"; 1="Root Port Only"; 2="Endpoint Port Only"; 3="Both Root and Endpoint Ports")
0x00000085[1] \Advanced\PCI Express Root Port 4\ASPM L0s (Setting: 0="Disabled"; 1="Root Port Only"; 2="Endpoint Port Only"; 3="Both Root and Endpoint Ports")
0x00000086[1] \Advanced\PCI Express Root Port 5\ASPM L0s (Setting: 0="Disabled"; 1="Root Port Only"; 2="Endpoint Port Only"; 3="Both Root and Endpoint Ports")
0x00000087[1] \Advanced\PCI Express Root Port 6\ASPM L0s (Setting: 0="Disabled"; 1="Root Port Only"; 2="Endpoint Port Only"; 3="Both Root and Endpoint Ports")
0x00000088[1] \Advanced\PCI Express Root Port 1\ASPM L1 (Checkbox)
0x00000089[1] \Advanced\PCI Express Root Port 2\ASPM L1 (Checkbox)
0x0000008A[1] \Advanced\PCI Express Root Port 3\ASPM L1 (Checkbox)
0x0000008B[1] \Advanced\PCI Express Root Port 4\ASPM L1 (Checkbox)
0x0000008C[1] \Advanced\PCI Express Root Port 5\ASPM L1 (Checkbox)
0x0000008D[1] \Advanced\PCI Express Root Port 6\ASPM L1 (Checkbox)
0x00000094[1] \Advanced\PCI Express Root Port 1\URR (Checkbox)
0x00000095[1] \Advanced\PCI Express Root Port 2\URR (Checkbox)
0x00000096[1] \Advanced\PCI Express Root Port 3\URR (Checkbox)
0x00000097[1] \Advanced\PCI Express Root Port 4\URR (Checkbox)
0x00000098[1] \Advanced\PCI Express Root Port 5\URR (Checkbox)
0x00000099[1] \Advanced\PCI Express Root Port 6\URR (Checkbox)
0x0000009A[1] \Advanced\PCI Express Root Port 1\FER (Checkbox)
0x0000009B[1] \Advanced\PCI Express Root Port 2\FER (Checkbox)
0x0000009C[1] \Advanced\PCI Express Root Port 3\FER (Checkbox)
0x0000009D[1] \Advanced\PCI Express Root Port 4\FER (Checkbox)
0x0000009E[1] \Advanced\PCI Express Root Port 5\FER (Checkbox)
0x0000009F[1] \Advanced\PCI Express Root Port 6\FER (Checkbox)
0x000000A0[1] \Advanced\PCI Express Root Port 1\NFER (Checkbox)
0x000000A1[1] \Advanced\PCI Express Root Port 2\NFER (Checkbox)
0x000000A2[1] \Advanced\PCI Express Root Port 3\NFER (Checkbox)
0x000000A3[1] \Advanced\PCI Express Root Port 4\NFER (Checkbox)
0x000000A4[1] \Advanced\PCI Express Root Port 5\NFER (Checkbox)
0x000000A5[1] \Advanced\PCI Express Root Port 6\NFER (Checkbox)
0x000000A6[1] \Advanced\PCI Express Root Port 1\CER (Checkbox)
0x000000A7[1] \Advanced\PCI Express Root Port 2\CER (Checkbox)
0x000000A8[1] \Advanced\PCI Express Root Port 3\CER (Checkbox)
0x000000A9[1] \Advanced\PCI Express Root Port 4\CER (Checkbox)
0x000000AA[1] \Advanced\PCI Express Root Port 5\CER (Checkbox)
0x000000AB[1] \Advanced\PCI Express Root Port 6\CER (Checkbox)
0x000000AC[1] \Advanced\PCI Express Root Port 1\CTO (Checkbox)
0x000000AD[1] \Advanced\PCI Express Root Port 2\CTO (Checkbox)
0x000000AE[1] \Advanced\PCI Express Root Port 3\CTO (Checkbox)
0x000000AF[1] \Advanced\PCI Express Root Port 4\CTO (Checkbox)
0x000000B0[1] \Advanced\PCI Express Root Port 5\CTO (Checkbox)
0x000000B1[1] \Advanced\PCI Express Root Port 6\CTO (Checkbox)
0x000000B2[1] \Advanced\PCI Express Root Port 1\PME Interrupt (Checkbox)
0x000000B3[1] \Advanced\PCI Express Root Port 2\PME Interrupt (Checkbox)
0x000000B4[1] \Advanced\PCI Express Root Port 3\PME Interrupt (Checkbox)
0x000000B5[1] \Advanced\PCI Express Root Port 4\PME Interrupt (Checkbox)
0x000000B6[1] \Advanced\PCI Express Root Port 5\PME Interrupt (Checkbox)
0x000000B7[1] \Advanced\PCI Express Root Port 6\PME Interrupt (Checkbox)
0x000000B8[1] \Advanced\PCI Express Root Port 1\SEFE (Checkbox)
0x000000B9[1] \Advanced\PCI Express Root Port 2\SEFE (Checkbox)
0x000000BA[1] \Advanced\PCI Express Root Port 3\SEFE (Checkbox)
0x000000BB[1] \Advanced\PCI Express Root Port 4\SEFE (Checkbox)
0x000000BC[1] \Advanced\PCI Express Root Port 5\SEFE (Checkbox)
0x000000BD[1] \Advanced\PCI Express Root Port 6\SEFE (Checkbox)
0x000000BE[1] \Advanced\PCI Express Root Port 1\SENFE (Checkbox)
0x000000BF[1] \Advanced\PCI Express Root Port 2\SENFE (Checkbox)
0x000000C0[1] \Advanced\PCI Express Root Port 3\SENFE (Checkbox)
0x000000C1[1] \Advanced\PCI Express Root Port 4\SENFE (Checkbox)
0x000000C2[1] \Advanced\PCI Express Root Port 5\SENFE (Checkbox)
0x000000C3[1] \Advanced\PCI Express Root Port 6\SENFE (Checkbox)
0x000000C4[1] \Advanced\PCI Express Root Port 1\SECE (Checkbox)
0x000000C5[1] \Advanced\PCI Express Root Port 2\SECE (Checkbox)
0x000000C6[1] \Advanced\PCI Express Root Port 3\SECE (Checkbox)
0x000000C7[1] \Advanced\PCI Express Root Port 4\SECE (Checkbox)
0x000000C8[1] \Advanced\PCI Express Root Port 5\SECE (Checkbox)
0x000000C9[1] \Advanced\PCI Express Root Port 6\SECE (Checkbox)
0x000000CA[1] \Advanced\PCI Express Root Port 1\PME SCI (Checkbox)
0x000000CB[1] \Advanced\PCI Express Root Port 2\PME SCI (Checkbox)
0x000000CC[1] \Advanced\PCI Express Root Port 3\PME SCI (Checkbox)
0x000000CD[1] \Advanced\PCI Express Root Port 4\PME SCI (Checkbox)
0x000000CE[1] \Advanced\PCI Express Root Port 5\PME SCI (Checkbox)
0x000000CF[1] \Advanced\PCI Express Root Port 6\PME SCI (Checkbox)
0x000000D0[1] \Advanced\PCI Express Root Port 1\Hot Plug SCI (Checkbox)
0x000000D1[1] \Advanced\PCI Express Root Port 2\Hot Plug SCI (Checkbox)
0x000000D2[1] \Advanced\PCI Express Root Port 3\Hot Plug SCI (Checkbox)
0x000000D3[1] \Advanced\PCI Express Root Port 4\Hot Plug SCI (Checkbox)
0x000000D4[1] \Advanced\PCI Express Root Port 5\Hot Plug SCI (Checkbox)
0x000000D5[1] \Advanced\PCI Express Root Port 6\Hot Plug SCI (Checkbox)
0x000000D6[1] \Advanced\PCI Express Root Port 1\VC1/TC Mapping (Setting: 0="TC0"; 1="TC1"; 2="TC2"; 3="TC3"; 4="TC4"; 5="TC5"; 6="TC6"; 7="TC7")
0x000000D7[1] \Advanced\PCI Express Root Port 2\VC1/TC Mapping (Setting: 0="TC0"; 1="TC1"; 2="TC2"; 3="TC3"; 4="TC4"; 5="TC5"; 6="TC6"; 7="TC7")
0x000000D8[1] \Advanced\PCI Express Root Port 3\VC1/TC Mapping (Setting: 0="TC0"; 1="TC1"; 2="TC2"; 3="TC3"; 4="TC4"; 5="TC5"; 6="TC6"; 7="TC7")
0x000000D9[1] \Advanced\PCI Express Root Port 4\VC1/TC Mapping (Setting: 0="TC0"; 1="TC1"; 2="TC2"; 3="TC3"; 4="TC4"; 5="TC5"; 6="TC6"; 7="TC7")
0x000000DA[1] \Advanced\PCI Express Root Port 5\VC1/TC Mapping (Setting: 0="TC0"; 1="TC1"; 2="TC2"; 3="TC3"; 4="TC4"; 5="TC5"; 6="TC6"; 7="TC7")
0x000000DB[1] \Advanced\PCI Express Root Port 6\VC1/TC Mapping (Setting: 0="TC0"; 1="TC1"; 2="TC2"; 3="TC3"; 4="TC4"; 5="TC5"; 6="TC6"; 7="TC7")
0x000000DD[1] \Advanced\ICH9/ICH10 Devices\Azalia PME Enable (Checkbox)
0x000000DF[1] \Advanced\ICH9/ICH10 Devices\Azalia Vci Enable (Checkbox)
0x000000E1[1] \Advanced\ICH9/ICH10 Devices\Enable Jack Detection (Checkbox)
0x000000E2[1] \Advanced\Networking\ASF (Checkbox)
0x000000E3[1] \Advanced\Networking\WatchDog (Checkbox)
0x000000E4[2] \Advanced\Networking\OS Timer (65535-0) (Numeric)
0x000000E6[2] \Advanced\Networking\BIOS Timer (65535-0) (Numeric)
0x000000E8[1] \Advanced\Networking\Intel AMT (Checkbox)
0x000000E9[1] \Advanced\Networking\Intel AMT Setup Prompt (Checkbox)
0x000000EA[1] \Advanced\Networking\Intel AMT SPI Protected (Checkbox)
0x000000EB[1] \Advanced\Networking\Intel AMT Password Write Enabled (Checkbox)
0x000000EC[1] \Advanced\Networking\HECI Timeout (Checkbox)
0x000000ED[2] \Advanced\Networking\Amt Wait Timer (65535-0) (Numeric)
0x000000EF[1] \Advanced\Event Log\Log Errors (Setting: 0="Disable"; 1="Enable")
0x000000F0[1] \Advanced\Event Log\Load SMM Error Logging Module (Setting: 0="No"; 1="Yes")
0x000000F1[1] \Advanced\Event Log\Processor Errors (Setting: 0="No"; 1="Yes")
0x000000F7[1] \Advanced\Event Log\PCI-Ex Errors (Setting: 0="No"; 1="Yes")
0x000000F8[1] \Advanced\Event Log\Platform Errors (Setting: 0="No"; 1="Yes")
0x000000F9[1] \Advanced\Event Log\IOH Errors (Setting: 0="No"; 1="Yes")
0x000000FA[1] \Advanced\Event Log\ICH Errors (Setting: 0="No"; 1="Yes")
0x000000FB[1] \Advanced\Event Log\Fatal Errors (Setting: 0="Disable"; 1="Error0"; 2="Error1"; 3="Error2"; 4="MCERR")
0x000000FC[1] \Advanced\Event Log\Uncorrectable/Recoverable Non Fatal Errors (Setting: 0="Disable"; 1="Error0"; 2="Error1"; 3="Error2"; 4="MCERR")
0x000000FD[1] \Advanced\Event Log\Correctable Errors (Setting: 0="Disable"; 1="Error0"; 2="Error1"; 3="Error2"; 4="MCERR")
0x000000FF[1] \Advanced\Event Log\Enable SERR propagation (Setting: 0="No"; 1="Yes")
0x00000100[1] \Boot Options\Boot Options\Terminal (Setting: 0="Enable"; 1="Disable")
0x00000102[1] \Boot Options\Boot Options\Fast Boot (Setting: 0="Disable"; 1="Enable")
0x00000141[1] \Advanced\PCI Express Port 1\Hot Plug Capable (Setting: 0="Disable"; 1="Enable")
0x00000143[1] \Advanced\PCI Express Port 3\Hot Plug Capable (Setting: 0="Disable"; 1="Enable")
0x00000147[1] \Advanced\PCI Express Port 7\Hot Plug Capable (Setting: 0="Disable"; 1="Enable")
0x00000193[1] \Advanced\PCI Express Port 1\PCI-E Port Link (Setting: 0="Enable"; 1="Disable")
0x00000195[1] \Advanced\PCI Express Port 3\PCI-E Port Link (Setting: 0="Enable"; 1="Disable")
0x00000199[1] \Advanced\PCI Express Port 7\PCI-E Port Link (Setting: 0="Enable"; 1="Disable")
0x0000019D[1] \Advanced\PCI Express Port 1\PCI-E ASPM Support (Setting: 0="Disable"; 1="L0s Only"; 3="L0s & L1 Both")
0x0000019E[1] \Advanced\PCI Express Port 1\PCI-E ASPM Support (Setting: 0="Disable"; 1="L0s Only"; 3="L0s & L1 Both")
0x000001A0[1] \Advanced\PCI Express Port 3\PCI-E ASPM Support (Setting: 0="Disable"; 1="L0s Only"; 3="L0s & L1 Both")
0x000001A4[1] \Advanced\PCI Express Port 7\PCI-E ASPM Support (Setting: 0="Disable"; 1="L0s Only"; 3="L0s & L1 Both")
0x000001A8[1] \Advanced\PCI Express Port 1\PCI-E Port Clocking (Setting: 0="Distinct"; 1="Common")
0x000001A9[1] \Advanced\PCI Express Port 1\PCI-E Port Clocking (Setting: 0="Distinct"; 1="Common")
0x000001AB[1] \Advanced\PCI Express Port 3\PCI-E Port Clocking (Setting: 0="Distinct"; 1="Common")
0x000001AF[1] \Advanced\PCI Express Port 7\PCI-E Port Clocking (Setting: 0="Distinct"; 1="Common")
0x000001B3[1] \Advanced\PCI Express Port 1\PCI-E Port Max. Payload Request (Setting: 0="128B"; 1="256B")
0x000001B4[1] \Advanced\PCI Express Port 1\PCI-E Port Max. Payload Request (Setting: 0="128B"; 1="256B")
0x000001B6[1] \Advanced\PCI Express Port 3\PCI-E Port Max. Payload Request (Setting: 0="128B"; 1="256B")
0x000001BA[1] \Advanced\PCI Express Port 7\PCI-E Port Max. Payload Request (Setting: 0="128B"; 1="256B")
0x000001BE[1] \Advanced\PCI Express Port 1\MSI (Setting: 0="Disable"; 1="Enable")
0x000001BF[1] \Advanced\PCI Express Port 1\MSI (Setting: 0="Disable"; 1="Enable")
0x000001C1[1] \Advanced\PCI Express Port 3\MSI (Setting: 0="Disable"; 1="Enable")
0x000001C5[1] \Advanced\PCI Express Port 7\MSI (Setting: 0="Disable"; 1="Enable")
0x000001C9[1] \Advanced\PCI Express Port 1\PCI-E Extended Sync (Setting: 0="Disable"; 1="Enable")
0x000001CA[1] \Advanced\PCI Express Port 1\PCI-E Extended Sync (Setting: 0="Disable"; 1="Enable")
0x000001CC[1] \Advanced\PCI Express Port 3\PCI-E Extended Sync (Setting: 0="Disable"; 1="Enable")
0x000001D0[1] \Advanced\PCI Express Port 7\PCI-E Extended Sync (Setting: 0="Disable"; 1="Enable")
0x000001D4[1] \Advanced\PCI Express Port 1\PCI-E Inband Presence Detect (Setting: 0="Disable"; 1="Enable")
0x000001D5[1] \Advanced\PCI Express Port 1\PCI-E Inband Presence Detect (Setting: 0="Disable"; 1="Enable")
0x000001D7[1] \Advanced\PCI Express Port 3\PCI-E Inband Presence Detect (Setting: 0="Disable"; 1="Enable")
0x000001DB[1] \Advanced\PCI Express Port 7\PCI-E Inband Presence Detect (Setting: 0="Disable"; 1="Enable")
0x000001DF[1] \Advanced\PCI Express Port 1\PCI-E Completion Timeout (Setting: 0="Enable"; 1="Disable")
0x000001E0[1] \Advanced\PCI Express Port 1\PCI-E Completion Timeout (Setting: 0="Enable"; 1="Disable")
0x000001E2[1] \Advanced\PCI Express Port 3\PCI-E Completion Timeout (Setting: 0="Enable"; 1="Disable")
0x000001E6[1] \Advanced\PCI Express Port 7\PCI-E Completion Timeout (Setting: 0="Enable"; 1="Disable")
0x000001EA[1] \Advanced\PCI Express Port 1\PCI-E Completion Timeout Value (Setting: 0="50µs to 10ms"; 1="50µs to 100µs"; 2="1ms to 10ms"; 5="16ms to 55ms"; 6="65ms to 210ms"; 9="260ms to 900ms"; 0xA="1s to 3.5s")
0x000001EB[1] \Advanced\PCI Express Port 1\PCI-E Completion Timeout Value (Setting: 0="50µs to 10ms"; 1="50µs to 100µs"; 2="1ms to 10ms"; 5="16ms to 55ms"; 6="65ms to 210ms"; 9="260ms to 900ms"; 0xA="1s to 3.5s")
0x000001ED[1] \Advanced\PCI Express Port 3\PCI-E Completion Timeout Value (Setting: 0="50µs to 10ms"; 1="50µs to 100µs"; 2="1ms to 10ms"; 5="16ms to 55ms"; 6="65ms to 210ms"; 9="260ms to 900ms"; 0xA="1s to 3.5s")
0x000001F1[1] \Advanced\PCI Express Port 7\PCI-E Completion Timeout Value (Setting: 0="50µs to 10ms"; 1="50µs to 100µs"; 2="1ms to 10ms"; 5="16ms to 55ms"; 6="65ms to 210ms"; 9="260ms to 900ms"; 0xA="1s to 3.5s")
0x000001F6[1] \Advanced\PCI Express Port 1\PCI-E Port (Setting: 0="Auto"; 1="Enable"; 2="Disable")
0x000001F8[1] \Advanced\PCI Express Port 3\PCI-E Port (Setting: 0="Auto"; 1="Enable"; 2="Disable")
0x000001FC[1] \Advanced\PCI Express Port 7\PCI-E Port (Setting: 0="Auto"; 1="Enable"; 2="Disable")
0x0000022D[1] \Advanced\PCI Express Port 1\PCI-E Port Gen2 Support (Setting: 0="Disable"; 1="Enable")
0x0000022F[1] \Advanced\PCI Express Port 3\PCI-E Port Gen2 Support (Setting: 0="Disable"; 1="Enable")
0x00000233[1] \Advanced\PCI Express Port 7\PCI-E Port Gen2 Support (Setting: 0="Disable"; 1="Enable")
0x00000237[1] \Advanced\PCI Express Port 1\Compliance Mode (Setting: 0="Disable"; 1="Enable")
0x00000238[1] \Advanced\PCI Express Port 1\Compliance Mode (Setting: 0="Disable"; 1="Enable")
0x0000023A[1] \Advanced\PCI Express Port 3\Compliance Mode (Setting: 0="Disable"; 1="Enable")
0x0000023E[1] \Advanced\PCI Express Port 7\Compliance Mode (Setting: 0="Disable"; 1="Enable")
0x00000243[1] \Advanced\PCI Express Port 1\PCI-E Port DeEmphasis (Setting: 0="-6.0 dB"; 1="-3.5 dB")
0x00000245[1] \Advanced\PCI Express Port 3\PCI-E Port DeEmphasis (Setting: 0="-6.0 dB"; 1="-3.5 dB")
0x00000249[1] \Advanced\PCI Express Port 7\PCI-E Port DeEmphasis (Setting: 0="-6.0 dB"; 1="-3.5 dB")
0x0000024D[1] \Advanced\PCI Express Port 1\Slot Form Factor (Setting: 0="CEM/Cable"; 1="SIOM")
0x0000024E[1] \Advanced\PCI Express Port 1\Slot Form Factor (Setting: 0="CEM/Cable"; 1="SIOM")
0x00000250[1] \Advanced\PCI Express Port 3\Slot Form Factor (Setting: 0="CEM/Cable"; 1="SIOM")
0x00000254[1] \Advanced\PCI Express Port 7\Slot Form Factor (Setting: 0="CEM/Cable"; 1="SIOM")
0x00000258[1] \Advanced\PCI Express Port 1\Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x00000259[1] \Advanced\PCI Express Port 1\Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x0000025B[1] \Advanced\PCI Express Port 3\Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x0000025F[1] \Advanced\PCI Express Port 7\Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x00000263[1] \Advanced\PCI Express Port 1\Non-Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x00000264[1] \Advanced\PCI Express Port 1\Non-Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x00000266[1] \Advanced\PCI Express Port 3\Non-Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x0000026A[1] \Advanced\PCI Express Port 7\Non-Fatal Err Over (Setting: 0="Disable"; 1="Enable")
0x0000026E[1] \Advanced\PCI Express Port 1\Corr Err Over (Setting: 0="Disable"; 1="Enable")
0x0000026F[1] \Advanced\PCI Express Port 1\Corr Err Over (Setting: 0="Disable"; 1="Enable")
0x00000271[1] \Advanced\PCI Express Port 3\Corr Err Over (Setting: 0="Disable"; 1="Enable")
0x00000275[1] \Advanced\PCI Express Port 7\Corr Err Over (Setting: 0="Disable"; 1="Enable")
0x00000279[1] \Advanced\PCI Express Port 1\ACPI PME Interrupt (Setting: 0="Disable"; 1="Enable")
0x0000027A[1] \Advanced\PCI Express Port 1\ACPI PME Interrupt (Setting: 0="Disable"; 1="Enable")
0x0000027C[1] \Advanced\PCI Express Port 3\ACPI PME Interrupt (Setting: 0="Disable"; 1="Enable")
0x00000280[1] \Advanced\PCI Express Port 7\ACPI PME Interrupt (Setting: 0="Disable"; 1="Enable")
0x00000284[1] \Advanced\PCI Express Port 1\L0s Support (Setting: 1="Disable"; 0="Enable")
0x00000285[1] \Advanced\PCI Express Port 1\L0s Support (Setting: 1="Disable"; 0="Enable")
0x00000287[1] \Advanced\PCI Express Port 3\L0s Support (Setting: 1="Disable"; 0="Enable")
0x0000028B[1] \Advanced\PCI Express Port 7\L0s Support (Setting: 1="Disable"; 0="Enable")
0x0000028F[1] \Advanced\PCI Express Port 1\Inbound I/O (Setting: 0="Disable"; 1="Enable")
0x00000290[1] \Advanced\PCI Express Port 1\Inbound I/O (Setting: 0="Disable"; 1="Enable")
0x00000292[1] \Advanced\PCI Express Port 3\Inbound I/O (Setting: 0="Disable"; 1="Enable")
0x00000296[1] \Advanced\PCI Express Port 7\Inbound I/O (Setting: 0="Disable"; 1="Enable")
0x0000029A[1] \Advanced\PCI Express Port 1\Link MSI (Setting: 1="Disable"; 0="Enable")
0x0000029B[1] \Advanced\PCI Express Port 1\Link MSI (Setting: 1="Disable"; 0="Enable")
0x0000029D[1] \Advanced\PCI Express Port 3\Link MSI (Setting: 1="Disable"; 0="Enable")
0x000002A1[1] \Advanced\PCI Express Port 7\Link MSI (Setting: 1="Disable"; 0="Enable")
0x000002A5[1] \Advanced\PCI Express Port 1\P2P Memory Write (Setting: 1="Disable"; 0="Enable")
0x000002A6[1] \Advanced\PCI Express Port 1\P2P Memory Write (Setting: 1="Disable"; 0="Enable")
0x000002A8[1] \Advanced\PCI Express Port 3\P2P Memory Write (Setting: 1="Disable"; 0="Enable")
0x000002AC[1] \Advanced\PCI Express Port 7\P2P Memory Write (Setting: 1="Disable"; 0="Enable")
0x000002B0[1] \Advanced\PCI Express Port 1\P2P Memory Read (Setting: 1="Disable"; 0="Enable")
0x000002B1[1] \Advanced\PCI Express Port 1\P2P Memory Read (Setting: 1="Disable"; 0="Enable")
0x000002B3[1] \Advanced\PCI Express Port 3\P2P Memory Read (Setting: 1="Disable"; 0="Enable")
0x000002B7[1] \Advanced\PCI Express Port 7\P2P Memory Read (Setting: 1="Disable"; 0="Enable")
0x000002BB[1] \Advanced\PCI Express Port 1\PHold (Setting: 1="Disable"; 0="Enable")
0x000002BC[1] \Advanced\PCI Express Port 1\PHold (Setting: 1="Disable"; 0="Enable")
0x000002BE[1] \Advanced\PCI Express Port 3\PHold (Setting: 1="Disable"; 0="Enable")
0x000002C2[1] \Advanced\PCI Express Port 7\PHold (Setting: 1="Disable"; 0="Enable")
0x000002C6[1] \Advanced\PCI Express Port 1\PME2ACK Timeout (Setting: 0="1 ms"; 1="10 ms"; 2="50 ms"; 3="Test Mode")
0x000002C7[1] \Advanced\PCI Express Port 1\PME2ACK Timeout (Setting: 0="1 ms"; 1="10 ms"; 2="50 ms"; 3="Test Mode")
0x000002C9[1] \Advanced\PCI Express Port 3\PME2ACK Timeout (Setting: 0="1 ms"; 1="10 ms"; 2="50 ms"; 3="Test Mode")
0x000002CD[1] \Advanced\PCI Express Port 7\PME2ACK Timeout (Setting: 0="1 ms"; 1="10 ms"; 2="50 ms"; 3="Test Mode")
0x000002D1[1] \Advanced\PCI Express Port 1\PME to ACK (Setting: 1="Disable"; 0="Enable")
0x000002D2[1] \Advanced\PCI Express Port 1\PME to ACK (Setting: 1="Disable"; 0="Enable")
0x000002D4[1] \Advanced\PCI Express Port 3\PME to ACK (Setting: 1="Disable"; 0="Enable")
0x000002D8[1] \Advanced\PCI Express Port 7\PME to ACK (Setting: 1="Disable"; 0="Enable")
0x000002DC[1] \Advanced\PCI Express Port 1\System Error Only AER (Setting: 1="Disable"; 0="Enable")
0x000002DD[1] \Advanced\PCI Express Port 1\System Error Only AER (Setting: 1="Disable"; 0="Enable")
0x000002DF[1] \Advanced\PCI Express Port 3\System Error Only AER (Setting: 1="Disable"; 0="Enable")
0x000002E3[1] \Advanced\PCI Express Port 7\System Error Only AER (Setting: 1="Disable"; 0="Enable")
0x000002E8[1] \Advanced\PCI Express Port 1\HotPlug ACPI Mode (Setting: 0="Disable"; 1="Enable")
0x000002EA[1] \Advanced\PCI Express Port 3\HotPlug ACPI Mode (Setting: 0="Disable"; 1="Enable")
0x000002EE[1] \Advanced\PCI Express Port 7\HotPlug ACPI Mode (Setting: 0="Disable"; 1="Enable")
0x000002F3[1] \Advanced\PCI Express Port 1\PM ACPI Mode (Setting: 0="Disable"; 1="Enable")
0x000002F5[1] \Advanced\PCI Express Port 3\PM ACPI Mode (Setting: 0="Disable"; 1="Enable")
0x000002F9[1] \Advanced\PCI Express Port 7\PM ACPI Mode (Setting: 0="Disable"; 1="Enable")
0x000002FD[1] \Advanced\PCI Express Port 1\Inbound Configuration (Setting: 0="Disable"; 1="Enable")
0x000002FE[1] \Advanced\PCI Express Port 1\Inbound Configuration (Setting: 0="Disable"; 1="Enable")
0x00000300[1] \Advanced\PCI Express Port 3\Inbound Configuration (Setting: 0="Disable"; 1="Enable")
0x00000304[1] \Advanced\PCI Express Port 7\Inbound Configuration (Setting: 0="Disable"; 1="Enable")
0x00000309[1] \Advanced\PCI Express Port 1\Host Bridge CC (Setting: 0="Disable"; 1="Enable")
0x0000030B[1] \Advanced\PCI Express Port 3\Host Bridge CC (Setting: 0="Disable"; 1="Enable")
0x0000030F[1] \Advanced\PCI Express Port 7\Host Bridge CC (Setting: 0="Disable"; 1="Enable")
0x00000313[1] \Advanced\PCI Express Port 1\Read Stream Interleave (Setting: 0="128B"; 0x10="256B")
0x00000314[1] \Advanced\PCI Express Port 1\Read Stream Interleave (Setting: 0="128B"; 0x10="256B")
0x00000316[1] \Advanced\PCI Express Port 3\Read Stream Interleave (Setting: 0="128B"; 0x10="256B")
0x0000031A[1] \Advanced\PCI Express Port 7\Read Stream Interleave (Setting: 0="128B"; 0x10="256B")
0x0000031F[1] \Advanced\PCI Express Port 1\Read Passing (Setting: 2="Disable"; 0="Enable")
0x00000320[1] \Advanced\PCI Express Port 1\Read Passing (Setting: 2="Disable"; 0="Enable")
0x00000322[1] \Advanced\PCI Express Port 3\Read Passing (Setting: 2="Disable"; 0="Enable")
0x00000326[1] \Advanced\PCI Express Port 7\Read Passing (Setting: 2="Disable"; 0="Enable")
0x0000032A[1] \Advanced\PCI Express Port 1\Read Stream Policy (Setting: 0="128B"; 1="256B")
0x0000032B[1] \Advanced\PCI Express Port 1\Read Stream Policy (Setting: 0="128B"; 1="256B")
0x0000032D[1] \Advanced\PCI Express Port 3\Read Stream Policy (Setting: 0="128B"; 1="256B")
0x00000331[1] \Advanced\PCI Express Port 7\Read Stream Policy (Setting: 0="128B"; 1="256B")
0x00000335[1] \Advanced\PCI Express Port 1\MSI for Correctable errors (Setting: 0="Disable"; 1="Enable")
0x00000336[1] \Advanced\PCI Express Port 1\MSI for Correctable errors (Setting: 0="Disable"; 1="Enable")
0x00000338[1] \Advanced\PCI Express Port 3\MSI for Correctable errors (Setting: 0="Disable"; 1="Enable")
0x0000033C[1] \Advanced\PCI Express Port 7\MSI for Correctable errors (Setting: 0="Disable"; 1="Enable")
0x00000340[1] \Advanced\PCI Express Port 1\MSI for Non Fatal errors (Setting: 0="Disable"; 1="Enable")
0x00000341[1] \Advanced\PCI Express Port 1\MSI for Non Fatal errors (Setting: 0="Disable"; 1="Enable")
0x00000343[1] \Advanced\PCI Express Port 3\MSI for Non Fatal errors (Setting: 0="Disable"; 1="Enable")
0x00000347[1] \Advanced\PCI Express Port 7\MSI for Non Fatal errors (Setting: 0="Disable"; 1="Enable")
0x0000034B[1] \Advanced\PCI Express Port 1\SERR (Setting: 0="Disable"; 1="Enable")
0x0000034C[1] \Advanced\PCI Express Port 1\SERR (Setting: 0="Disable"; 1="Enable")
0x0000034E[1] \Advanced\PCI Express Port 3\SERR (Setting: 0="Disable"; 1="Enable")
0x00000352[1] \Advanced\PCI Express Port 7\SERR (Setting: 0="Disable"; 1="Enable")
0x00000356[1] \Advanced\PCI Express Port 1\PERR (Setting: 0="Disable"; 1="Enable")
0x00000357[1] \Advanced\PCI Express Port 1\PERR (Setting: 0="Disable"; 1="Enable")
0x00000359[1] \Advanced\PCI Express Port 3\PERR (Setting: 0="Disable"; 1="Enable")
0x0000035D[1] \Advanced\PCI Express Port 7\PERR (Setting: 0="Disable"; 1="Enable")
0x00000361[1] \Advanced\PCI Express Port 1\MSI RAS (Setting: 0="Disable"; 1="Enable")
0x00000362[1] \Advanced\PCI Express Port 1\MSI RAS (Setting: 0="Disable"; 1="Enable")
0x00000364[1] \Advanced\PCI Express Port 3\MSI RAS (Setting: 0="Disable"; 1="Enable")
0x00000368[1] \Advanced\PCI Express Port 7\MSI RAS (Setting: 0="Disable"; 1="Enable")
0x00000425[1] \Advanced\CSI Configuration\CSI Link Speed (Setting: 0="Slow"; 1="Fast")
0x00000427[1] \Advanced\CSI Configuration\CSI Probe Present (Setting: 0="No"; 1="Yes")
0x00000428[1] \Advanced\CSI Configuration\CPU0 CSI0 Tx (Setting: 0="None"; 1="Midbus")
0x00000429[1] \Advanced\CSI Configuration\CPU0 CSI1 Tx (Setting: 0="None"; 1="Midbus")
0x0000042A[1] \Advanced\CSI Configuration\CPU1 CSI0 Tx (Setting: 0="None"; 1="Midbus")
0x0000042B[1] \Advanced\CSI Configuration\CPU1 CSI1 Tx (Setting: 0="None"; 1="Midbus")
0x0000042C[1] \Advanced\CSI Configuration\IOH CSI0 Tx (Setting: 0="None"; 1="Midbus")
0x0000042D[1] \Advanced\CSI Configuration\IOH CSI1 Tx (Setting: 0="None"; 1="Midbus")
0x0000042E[1] \Advanced\CSI Configuration\CPU SKT0 Mirror Port (Setting: 0="Do Nothing"; 1="CSI0 Tx / Rx"; 2="CSI1 Tx / Rx"; 3="CSI0 Tx / CSI1 Rx"; 4="CSI0 Rx / CSI1 Tx")
0x0000042F[1] \Advanced\CSI Configuration\CPU SKT1 Mirror Port (Setting: 0="Do Nothing"; 1="CSI0 Tx / Rx"; 2="CSI1 Tx / Rx"; 3="CSI0 Tx / CSI1 Rx"; 4="CSI0 Rx / CSI1 Tx")
0x00000430[1] \Advanced\CSI Configuration\CSI Frequency Select (Setting: 0="Auto"; 1="4.8 GT/s"; 2="5.866 GT/s"; 3="6.4 GT/s")
0x00000436[1] \Advanced\CSI Configuration\CSI L1 Enable (Setting: 1="Enable"; 0="Disable")
0x00000437[1] \Advanced\Memory Configuration\Serial Debug Message Level (2-0) (Numeric)
0x0000044B[1] \Advanced\Memory Configuration\Memory Data Scrambling (Setting: 0="Disable"; 1="Enable")
0x0000044C[1] \Advanced\Memory Configuration\Memory Channel Mode (Setting: 0="Independent"; 1="Mirroring"; 2="Lock-Step"; 3="Sparing")
0x0000044E[1] \Advanced\Memory Configuration\Channel Interleaving (Setting: 0="Auto"; 1="1-way Interleave"; 2="2-way Interleave"; 3="3-way Interleave"; 4="4-way Interleave"; 6="6-way Interleave")
0x0000044F[1] \Advanced\Memory Configuration\Rank Interleaving (Setting: 0="Auto"; 1="1-way Interleave"; 2="2-way Interleave"; 4="4-way Interleave")
0x00000450[1] \Advanced\Memory Configuration\DDR Speed (Setting: 0="Auto"; 1="Force DDR3-800"; 2="Force DDR3-1067"; 3="Force DDR3-1333"; 4="Force DDR3-1600")
0x00000451[1] \Advanced\Memory Configuration\Memory Type (Setting: 0="Auto"; 1="RDIMMs only"; 2="UDIMMs only"; 3="UDIMMs and RDIMMs")
0x00000452[1] \Advanced\Memory Configuration\Patrol Scrub (Setting: 1="Enable"; 0="Disable")
0x00000453[1] \Advanced\Memory Configuration\Demand Scrub (Setting: 1="Enable"; 0="Disable")
0x00000454[1] \Advanced\Memory Configuration\Memory Page Policy (Setting: 0="Open Policy"; 1="Closed Policy")
0x00000456[1] \Advanced\Memory Configuration\Socket Interleave (Setting: 0="Non-NUMA"; 1="NUMA")
0x00000458[1] \Advanced\Memory Configuration\Spare Error Threshold (15-0) (Numeric)
0x00000459[1] \Advanced\Memory Configuration\Software MemTest (Setting: 0="Disable"; 1="Enable")
0x0000045A[1] \Advanced\Memory Configuration\Hardware memTest (Setting: 0="Disable"; 1="Enable")
0x00000480[1] \Advanced\Miscellaneous Configuration\On-board Lan Power (Setting: 0="Turn OFF"; 1="Turn ON")
0x00000481[1] \Advanced\Miscellaneous Configuration\On-board LAN0 (Setting: 0="Disable"; 1="Enable")
0x00000482[1] \Advanced\Miscellaneous Configuration\On-board LAN1 (Setting: 0="Disable"; 1="Enable")
0x00000483[0] \Main\Main\Year (2006-2100) (Date)
0x00000485[0] \Main\Main\Month (1-12) (Date)
0x00000487[0] \Main\Main\Day (1-31) (Date)
0x00000489[0] \Main\Main\Hour (0-23) (Time)
0x0000048B[0] \Main\Main\Minute (0-59) (Time)
0x0000048D[0] \Main\Main\Second (0-59) (Time)
setup_ifr_3.txt ./MP51.fd.dump/7 EfiFirmwareFileSystemGuid/113 SmbiosMiscDxe/0 Compressed section/0 EfiCrc32GuidedSectionExtractionGuid/1 PE32 image section/body.bin
setup_ifr_4.txt ./MP51.fd.dump/7 EfiFirmwareFileSystemGuid/14 DuetBds/0 Compressed section/0 EfiCrc32GuidedSectionExtractionGuid/1 PE32 image section/body.bin
setup_ifr_5.txt ./MP51.fd.dump/7 EfiFirmwareFileSystemGuid/18 CpuInitDxe/0 Compressed section/0 EfiCrc32GuidedSectionExtractionGuid/1 PE32 image section/body.bin
setup_ifr_6.txt ./MP51.fd.dump/7 EfiFirmwareFileSystemGuid/59 MemorySubClass/0 Compressed section/0 EfiCrc32GuidedSectionExtractionGuid/1 PE32 image section/body.bin
Lot's of settings for the IFR variables are invalid, for example DDR3-1600, mixing UDIMMs and RDIMMs and 4/6-way interleave. One thing that l really really like to try someday is to disable the mandatory memory test.
 

Syncretic

macrumors 6502
Apr 22, 2019
311
1,533
My first pass through the BootROM went surprisingly quickly. I've already identified most of the modules' functionality. Some seem to be dead remnants, either from earlier incarnations of the BootROM or as parts of some third-party software that never got cleaned up. (The two BIOS-like interfaces likely fall into the latter category.) There are at least 15 "files" containing ACPI data (SSDT/DSDT/etc.). There are drivers for APFS, HFS, FAT, Ethernet, Firewire, SATA, ATAPI, NVMe, SNMP, UGA, various USB (Mass Storage, EHCI, UHCI, Keyboard, Mouse, Ethernet, etc.), Serial Console, Legacy Devices, ICH9/ICH10 devices, etc. There's a Zlib decompression module, which is probably primarily for PNG image decompression (although parts of the data segments in several modules look like they might contain compressed data.) Much of the original base Intel/Tiano EFI code seems to be intact. The ~60 PEI (TE) modules have additional LZ compression, requiring extra steps to analyze them; I'll get to them eventually (I'm not that interested in PEI at the moment). There are at least four modules related to NVRAM/SPI chip access.

There are at least 30 icon/image "files" present, most of which we've all seen at one time or another (disk drives, FireWire devices, SD cards, the Apple logo, etc.). One I hadn't seen seems to be an animation comprised of five separate PNG images, stored in 4308B1F6-60F0-49FE-9E51-3A25992515BF, 03DBB540-E186-4615-8A7F-A427863B4E56, 79C3AC4A-DEC6-48F1-AFFE-E7B95A1CCB32, C6A957E4-8303-4761-A084-92C0692D90F9, and F38C34DE-9C38-438C-9AF6-69F584F17EC0, which create this (originals have a transparent background, I made it black for this animation):
CloudPuffAnimation.gif

which is referenced by 9 different modules, including the BootPicker, the Generic USB Mass Storage Driver, the PCI NVMe Driver, and six others. (Note that some of those references are likely just sloppy coding - it looks like they had various GUID lists that got included in different modules, so most modules include some GUIDs that are irrelevant and never actually get used within that module. Logically, drivers (like USB and NVMe) have no use for PNG animation files. Even so, I'm not sure I'd want to see this particular animation in the BootPicker...)

One thing that l really really like to try someday is to disable the mandatory memory test.

I've identified several modules as being related to memory diagnostics. Next time I'm in one of them, I'll see if there's a passive way (i.e. not involving re-flashing a custom BootROM) to skip the memory test. Or, if you're very brave, we could try stubbing it out...
 
  • Like
Reactions: Macschrauber

Bmju

macrumors 6502a
Dec 16, 2013
702
767
My first pass through the BootROM went surprisingly quickly. I've already identified most of the modules' functionality. Some seem to be dead remnants, either from earlier incarnations of the BootROM or as parts of some third-party software that never got cleaned up. (The two BIOS-like interfaces likely fall into the latter category.) There are at least 15 "files" containing ACPI data (SSDT/DSDT/etc.). There are drivers for APFS, HFS, FAT, Ethernet, Firewire, SATA, ATAPI, NVMe, SNMP, UGA, various USB (Mass Storage, EHCI, UHCI, Keyboard, Mouse, Ethernet, etc.), Serial Console, Legacy Devices, ICH9/ICH10 devices, etc. There's a Zlib decompression module, which is probably primarily for PNG image decompression (although parts of the data segments in several modules look like they might contain compressed data.) Much of the original base Intel/Tiano EFI code seems to be intact. The ~60 PEI (TE) modules have additional LZ compression, requiring extra steps to analyze them; I'll get to them eventually (I'm not that interested in PEI at the moment). There are at least four modules related to NVRAM/SPI chip access.

There are at least 30 icon/image "files" present, most of which we've all seen at one time or another (disk drives, FireWire devices, SD cards, the Apple logo, etc.). One I hadn't seen seems to be an animation comprised of five separate PNG images, stored in 4308B1F6-60F0-49FE-9E51-3A25992515BF, 03DBB540-E186-4615-8A7F-A427863B4E56, 79C3AC4A-DEC6-48F1-AFFE-E7B95A1CCB32, C6A957E4-8303-4761-A084-92C0692D90F9, and F38C34DE-9C38-438C-9AF6-69F584F17EC0, which create this (originals have a transparent background, I made it black for this animation):
View attachment 1964331
which is referenced by 9 different modules, including the BootPicker, the Generic USB Mass Storage Driver, the PCI NVMe Driver, and six others. (Note that some of those references are likely just sloppy coding - it looks like they had various GUID lists that got included in different modules, so most modules include some GUIDs that are irrelevant and never actually get used within that module. Logically, drivers (like USB and NVMe) have no use for PNG animation files. Even so, I'm not sure I'd want to see this particular animation in the BootPicker...)



I've identified several modules as being related to memory diagnostics. Next time I'm in one of them, I'll see if there's a passive way (i.e. not involving re-flashing a custom BootROM) to skip the memory test. Or, if you're very brave, we could try stubbing it out...
Cool work. The disappearing cloud of dust is normal in the Mac bootpicker, when you unplug a USB device which has a boot entry, that is used for the entries disappearing.
 
  • Like
Reactions: Syncretic

joevt

macrumors 604
Jun 21, 2012
6,967
4,262
The ~60 PEI (TE) modules have additional LZ compression
Doesn't UEFIExtract automatically decompress everything?

I made a script to convert TE to PE so you can load the modules into Hopper.app (or whatever disassembler you're using):

Code:
ConvertTEtoPE() {
	theTEFile="$1"
	thePEFile=${theTEFile/.bin/.pe}
	teHeader=$(dd if="${theTEFile}" bs=40 count=1 2> /dev/null | xxd -ps -c40)
	TEsignature=${teHeader:0:4} # VZ
	TEmachine=${teHeader:4:4}
	TEnumberOfSections=${teHeader:8:2}
	TEsubsystem=${teHeader:10:2} # 11 = EFI driver with boot services.
	TEstrippedSize=$((0x${teHeader:14:2}${teHeader:12:2}))
	TEaddressOfEntryPoint=${teHeader:16:8} # pointer to the entry point function, relative to the image base address
	TEbaseOfCode=${teHeader:24:8}
	TEimageBase=${teHeader:32:16}
	TEreloc=${teHeader:48:16}
	TEdebug=${teHeader:64:16}

	if [[ $TEsignature == 565a ]]; then
	
		TEsections="$(dd if="${theTEFile}" bs=40 skip=1 count=0x$TEnumberOfSections 2> /dev/null | xxd -ps -c40)"
		PEsizeOfCode=0
		PEsizeOfInitializedData=0

		IFS=$'\n'
		for theSection in $TEsections; do
			if [[ $theSection =~ ^(2e7465787400.{68})$ ]]; then
				PEsizeOfCode=$(($PEsizeOfCode + 0x${theSection:38:2}${theSection:36:2}${theSection:34:2}${theSection:32:2}))
			else
				PEsizeOfInitializedData=$(($PEsizeOfInitializedData + 0x${theSection:38:2}${theSection:36:2}${theSection:34:2}${theSection:32:2}))
			fi
		done

		PEsizes=00000000000000000000000000000000

		if [[ $TEmachine == 4c01 ]]; then
			PEoptionalHeaderSize=e0
			PEmagic=0b01
			PEimageBase=00000000${TEimageBase:0:8}
		elif [[ $TEmachine == 6486 ]]; then
			PEoptionalHeaderSize=f0
			PEmagic=0b02
			PEimageBase=$TEimageBase
			PEsizes=$PEsizes$PEsizes
		else
			echo "# bad TE machine: $TEmachine"
			return 1
		fi

		PEdosStub=4d5a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
		PEheader=50450000${TEmachine}${TEnumberOfSections}00000000000000000000000000${PEoptionalHeaderSize}002220

		sizeOfTEFile=$(wc -c < $theTEFile)

		peSizeOfImage=$(($sizeOfTEFile - 40 + $TEstrippedSize))
		peSizeOfHeaders=$(($TEstrippedSize + 40 * 0x$TEnumberOfSections))
		peHeaderOffset=$(($TEstrippedSize - 0x$PEoptionalHeaderSize - ${#PEheader}/2))

		peSizeOfImageHex=$(          printf "%08x" $peSizeOfImage           | sed -E "s/(..)(..)(..)(..)/\4\3\2\1/g")
		peSizeOfHeadersHex=$(        printf "%08x" $peSizeOfHeaders         | sed -E "s/(..)(..)(..)(..)/\4\3\2\1/g")
		peHeaderOffsetHex=$(         printf "%08x" $peHeaderOffset          | sed -E "s/(..)(..)(..)(..)/\4\3\2\1/g")
		PEsizeOfCodeHex=$(           printf "%08x" $PEsizeOfCode            | sed -E "s/(..)(..)(..)(..)/\4\3\2\1/g")
		PEsizeOfInitializedDataHex=$(printf "%08x" $PEsizeOfInitializedData | sed -E "s/(..)(..)(..)(..)/\4\3\2\1/g")

		PEoptionalHeader=${PEmagic}0900${PEsizeOfCodeHex}${PEsizeOfInitializedDataHex}00000000${TEaddressOfEntryPoint}${TEbaseOfCode}${PEimageBase}200000002000000000000000000000000000000000000000${peSizeOfImageHex}${peSizeOfHeadersHex}00000000${TEsubsystem}000000${PEsizes}000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000${TEreloc}${TEdebug}000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

		(
			echo -n ${PEdosStub}${peHeaderOffsetHex}$(seq -f '00' -s '' $(($peHeaderOffset - ${#PEdosStub}/2 - 4 )))${PEheader}${PEoptionalHeader} | xxd -ps -r
			dd if="${theTEFile}" bs=1 skip=40 2> /dev/null
		) > "$thePEFile"
	
	else
		echo "# bad TE signature: $TEsignature"
		return 1
	fi
}

ConvertAllTEtoPE() {
	IFS=$'\n'
	pat1='^Type: Section Subtype: TE image '
	for theinfo in $(find . -name info.txt); do
		thetype=$(sed -nE '1,2 p' $theinfo | tr '\n' ' ')
		if [[ $thetype =~ $pat1 ]]; then
			thebody=${theinfo/info.txt/body.bin}
			if [ -f $thebody ]; then
				echo "#" $thebody
				ConvertTEtoPE $thebody
			fi
		fi
	done
}


cd $UEFIstuff/UEFIbios/GA-Z170X-Gaming_7

UEFIExtract ./Z170XG7.22j

ifrextractall > ifrvars.txt

cd $UEFIstuff/UEFIbios/GA-Z170X-Gaming_7/old*/Z170XG7.22j.dump

ConvertAllTEtoPE
 

Macschrauber

macrumors 68030
Dec 27, 2015
2,980
1,487
Germany
A lot of info here
Although the information is obsolete.

the complete rom dump there is ancient

serial from firmware: CK15xx
MP51.88Z.007F.B03.1010071432
20 Memory Configs (ok)
0 xml (ok)
0 iCloud Tokkens (ok)
0 Microsoft Certificates (ok)
2 BluetoothActiveControllerInfos (ok)
0 BluetoothInternalControllerInfos (ok)
0 current-network (ok)
2 AAPL Path Properties (ok)
29248 Bytes free space of 65472
 

_Benny

macrumors newbie
Feb 28, 2022
1
0
Hi @tsialex,
I have an early 2009 Mac Pro 4.1, flashed to 5.1 and BootROM 144.0.0.0, running Mojave with a RX 570, and Windows 10 installed in UEFI mode. ? I wish, I had discovered this loooong but very informative thread earlier…

I made a ROM dump as described in post #1 … and now I'm afraid, I'm on the verge of bricking my Mac Pro.

Can you please PM me regarding the BootROM reconstruction service?
Thank you.
 

Attachments

  • dump.png
    dump.png
    191.2 KB · Views: 104

tsialex

Contributor
Original poster
Jun 13, 2016
13,454
13,601
Hi @tsialex,
I have an early 2009 Mac Pro 4.1, flashed to 5.1 and BootROM 144.0.0.0, running Mojave with a RX 570, and Windows 10 installed in UEFI mode. ? I wish, I had discovered this loooong but very informative thread earlier…

I made a ROM dump as described in post #1 … and now I'm afraid, I'm on the verge of bricking my Mac Pro.

Can you please PM me regarding the BootROM reconstruction service?
Thank you.
Sure, get everything as instructed and I'll get back to you ASAP.
 

star-affinity

macrumors 68000
Nov 14, 2007
1,996
1,333
My current BootROM:

Fixed: Yes
Base: 127BCDh
Address: FFD27BCDh
Offset: 7885h
Full size: 8433h (33843)


My saved BootROM from 2020-07-16 (how can I check if it's version 144.0.0.0?):

Fixed:Yes
Base: 1256F3h
Address: FFD256F3h
offset:56A8h
Fuls1ze: 980n 43777


Does this mean I should flash my BootROM with the older one which has more free space? Haven't done it since @tsialex helped me clean the ROM a couple of years ago. Would be good to verify that it's version 144.0.0.0 if possible, but I think it is.

Thanks for any assistance!

(Can't seem to edit back to the normal fonts size – 12 is too small and 15 is too big)
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.