Problems with AMIBCP on the Dell BIOS

I’m having some problems with AMIBCP on the Dell BIOS, I managed to update the microcode and modify the data but when I try to enable the hidden items in the menu the BIOS crashes and the MB only gives a black screen and 5 intermittent beeps which according to the manual correspond to RTC CMOS Fail.
This only happens if I try to change the options in the “Setup Configuration” tab, otherwise the Tool doesn’t give me any problems.

It is immediately obvious that the strings are strange, so I tried to extract the strings with IFR Extractor, then I searched for the GUID with UEFITool and extracted the section.

When I open the file with HxD and go to look for the pattern of the menu item I want to enable, the bits appear to me as if the function were already unlocked, however there is no trace in the bios.
even trying to change the Default settings of the visible values, the result is that the BIOS ignores them.

What am I doing wrong?

Notes on AMIBCP use

[Request] Unlocked ASUS X515DAP BIOS - BIOS/UEFI Modding / BIOS Modding Requests - Win-Raid Forum (level1techs.com)

X79 SR-IOV BIOS enable mod - BIOS/UEFI Modding / BIOS Modding Requests - Win-Raid Forum (level1techs.com)

Hi, the mainboard is from a Dell Inspiron 660 APTIO4. I think the problem is the BIOS version released by Dell, not AMIBCP, in fact I can modify the BIOS strings and data without problems.
The thing I can’t understand is why, even though I change the values with HxD and flash with the programmer, the BIOS ignores my changes.
MSK-A13.BIN.zip (4.7 MB)

Which values?

For example I’m trying to set UEFI as default boot

Form Set: Boot [05EF0A6F-6343-4EAC-971E-E7F286330398], ClassGuid0 [93039971-8545-4B04-B45E-32EB8326040E] {0E A7 6F 0A EF 05 43 63 AC 4E 97 1E E7 F2 86 33 03 98 21 00 22 00 01 71 99 03 93 45 85 04 4B B4 5E 32 EB 83 26 04 0E}

0x4322E 		Gray Out If {19 82}
0x43230 			QuestionId: 0x537 equals value 0x1 {12 06 37 05 01 00}
0x43236 			Gray Out If {19 82}
0x43238 				QuestionId: 0x1E equals value 0x1 {12 06 1E 00 01 00}
0x4323E 				One Of: Boot Mode, VarStoreInfo (VarOffset/VarName): 0x2B5, VarStore: 0x1, QuestionId: 0x4AC, Size: 1, Min: 0x0, Max 0x0, Step: 0x0 {05 A6 B1 07 B2 07 AC 04 01 00 B5 02 14 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00}
0x43264 					One Of Option: Legacy, Value (8 bit): 0x0 (default) {09 0E B4 07 10 00 00 00 00 00 00 00 00 00}
0x43272 					One Of Option: UEFI, Value (8 bit): 0x1 {09 0E B3 07 00 00 01 00 00 00 00 00 00 00}
0x43280 				End One Of {29 02}
0x43282 			End If {29 02}
0x43284 		End If {29 02}

Default values are controlled in a different module. The ones that in Setup are nothing but indication.

I was slowly getting there!
I tried to search for the Setup string and the hex value of the numlock variable with UEFITool, the latter is only found in the Setup and AMISE modules. should I change both MiniSetupResourceSection?

ASCII text "Setup" found in NVRAM/.../EfiSetupVariableGuid at header-offset 0Bh
ASCII text "Setup" found in NVRAM/.../AmiTseSetupGuid at header-offset 11h
ASCII text "Setup" found in NVRAM/.../IccVolatileSetupData at header-offset 16h
ASCII text "Setup" found in NVRAM/.../RecoveryFormSet at header-offset 0Bh
ASCII text "Setup" found in Defaults/.../EfiSetupVariableGuid at header-offset 0Bh
ASCII text "Setup" found in Defaults/.../AmiTseSetupGuid at header-offset 11h
ASCII text "Setup" found in Defaults/.../IccVolatileSetupData at header-offset 16h
ASCII text "Setup" found in Defaults/.../RecoveryFormSet at header-offset 0Bh
ASCII text "Setup" found in ReFlash/.../MiniSetupResourceSection at header-offset 42A9h
ASCII text "Setup" found in CsmDxe/.../Raw section at header-offset 2A4Dh
ASCII text "Setup" found in CsmDxe/.../Raw section at header-offset 2EF28h
ASCII text "Setup" found in CsmDxe/.../Raw section at header-offset 2F0CCh
ASCII text "Setup" found in CsmDxe/.../Raw section at header-offset 2F0D9h
ASCII text "Setup" found in CsmDxe/.../Raw section at header-offset 2F22Eh
ASCII text "Setup" found in CsmDxe/.../Raw section at header-offset 2FB99h
ASCII text "Setup" found in CsmDxe/.../Raw section at header-offset 6104Eh
ASCII text "Setup" found in CsmDxe/.../Raw section at header-offset 6F058h
ASCII text "Setup" found in MebxSetupBrowser/.../PE32 image section at header-offset E3DDh
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 600Ch
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 11781h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 118F7h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 123A4h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 123E9h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 124F2h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 12ED8h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 12FADh
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 13387h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 13433h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 1345Ah
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 13BFCh
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 13C41h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 13C7Fh
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 13CA6h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 13D6Dh
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 13E0Fh
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 13E32h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 13FBBh
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 1B8E8h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 1B949h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 22EE7h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 2305Dh
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 23218h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 2891Ah
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 2FDEDh
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 2FE32h
ASCII text "Setup" found in AMITSE/.../MiniSetupResourceSection at header-offset 30293h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 259CAh
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 3113Fh
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 312B5h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 31D62h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 31DA7h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 31EB0h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 32896h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 3296Bh
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 32D45h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 32DF1h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 32E18h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 335BAh
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 335FFh
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 3363Dh
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 33664h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 3372Bh
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 337CDh
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 337F0h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 33979h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 3B2A6h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 3B307h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 428A5h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 42A1Bh
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 42BD6h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 482D8h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 4F7ABh
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 4F7F0h
ASCII text "Setup" found in Setup/.../MiniSetupResourceSection at header-offset 4FC51h
ASCII text "Setup" found in DellEpsaBin/.../PE32 image section at header-offset 4C20Fh
ASCII text "Setup" found in DellEpsaBin/.../PE32 image section at header-offset 4C225h
ASCII text "Setup" found in DellEpsaBin/.../PE32 image section at header-offset 4C2D8h
ASCII text "Setup" found in DellEpsaBin/.../PE32 image section at header-offset 63014h
Hex pattern "090E2C0010000100000000000000" found as "090E2C0010000100000000000000" in AMITSE/.../MiniSetupResourceSection at header-offset 11AB9h
Hex pattern "090E2C0010000100000000000000" found as "090E2C0010000100000000000000" in AMITSE/.../MiniSetupResourceSection at header-offset 2329Eh
Hex pattern "090E2C0010000100000000000000" found as "090E2C0010000100000000000000" in Setup/.../MiniSetupResourceSection at header-offset 31477h
Hex pattern "090E2C0010000100000000000000" found as "090E2C0010000100000000000000" in Setup/.../MiniSetupResourceSection at header-offset 42C5Ch

Only in the section found in AMITSE. That’s where AMIBCP makes changes.

1 Like

Now I’ll try, can I copy the Setup section that I modified or do I have to rewrite everything?

EDIT: To show the hidden content, would I just need to change the value of 0A “Suppress If {0A 82}”?

The sections are different. IFR extractor can’t read AMITSE section.

Not the if statement, but its conditions.

Ok but can I use the HEX patterns extracted with IFR to search for options in AMISE?

I meant to say if I change the value 0A (which I have to understand from where it is) so that it is not 82 I can skip the suppresses

Yes. Otherwise, how would you find NumLock in there?

Are you going to go that way? Here are the values.
https://github.com/donovan6000/Universal-IFR-Extractor/blob/master/UEFI.h

:sweat_smile:

I really don’t know, if I modify AMISE then to make a change I would have to reflash the BIOS or edit with setup_var, if instead I enable the hidden entries I can do all the tests I want without too many hassles and then when I’m finished I put 0A back as it was.
What would you advise me to do?

If it was a board of my only working pc, I would go with setup_var.

Ok but in this case it’s a motherboard back from the grave so I can dare!

I tried to modify AMISE but after flashing the changes continue to be ignored.


Another day, another problem… Unlike what I thought, the BIOS isn’t working correctly. If I turn the PC off afterwards it doesn’t restart correctly, it gives me a black screen and 5 consecutive beeps. this happens even if I flash the original bios.
EDIT: I fixed this but BIOS changes continue to be ignored