[REQUEST] Referencing a Seperate IFR Form Set in the Main Setup

So I’m trying to inject a refrence to the AMD Overclocking formset (“AODSetupDxe”, formset guid = E39AC631-48ED-445E-9042-55B34F405843, varstore guid = 5ED15DC0-EDEF-4161-9151-6014C4CC630C) in the default setup IFR “Setup” (formset guid = 7B59104A-C00D-4158-87FF-F04D6396A915). I know this is possible because the AMD CBS Options is externally referenced from the main setup, as seen below:




I’d like to add a link the the AODSetupDxe under the AMD PBS option in the advanced tab. How does one go about doing this?

Also, any links to tutorials that explore more in-depth module modification techniques would be appreciated greatly.

Bios is version 3.50 found here.

Thanks!

@danlopez1222 - After looking at all the extracted modules and IFR sets, and AMITSE, I don’t even see CBS/PBS in AMITSE or Setup, so this all must be done via ELEMENT controls in AMITSE/SetupData.
Please give me some time to dig into this and map out your visible Advanced page from the current ELEMENTs in AMITSE/SetupData

This is the kind of edit needed, along these lines, this is how the current CBS/PBS are referenced and made visible on the pages you see now.
Here is guide by @Mov_AX_0xDEAD (translate from Russian w/ Google, Bing translation not so great)
https://forums.overclockers.ru/viewtopic.php?f=25&t=599984

@Lost_N_BIOS Thanks for the link! I was able to find the GUID for CBS module in AMITSE, so i went ahead and replaced it with the new GUID to see if it will work. I’ll flash it later today to see what happens.

I noticed that you had mentioned transplanting AGESA modules from one bios to another here, is the 00000 module that you were referencing the same as the PEI module?

Thanks!

@danlopez1222 - You’re welcome! I was not able to find GUID for CBS or PBS in AMITSE, where do you see this, what address? I must be using wrong GUID?

About the thread you linked, I don’t see anything about Agesa there? And no, I don’t see anything there about PEI module either. That discussion was about a DXE module, split into a PE32 section and another section that had GUID that ended with 00000
Some BIOS are like that, yours is not. For an example, some BIOS have setup split into PE32 and this GUID-00000 which contains mainly the textual part, while other BIOS have entire setup content as a single PE32 without the split off GUID-000000

Here’s my working notes so far, maybe it will help you figure something out. If not, maybe once you tell me where you found CBS in AMITSE then I can make better progress

4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15

From setup IFR

Setup, FormId: 0x2710 {01 86 10 27 06 00}
Ref: Main, VarStoreInfo (VarOffset/VarName): 0xFFFF, VarStore: 0x0, QuestionId: 0x1, FormId: 0x2711 {0F 0F 08 00 02 00 01 00 00 00 FF FF 00 11 27}
Ref: Advanced, VarStoreInfo (VarOffset/VarName): 0xFFFF, VarStore: 0x0, QuestionId: 0x2, FormId: 0x2712 {0F 0F 1D 00 02 00 02 00 00 00 FF FF 00 12 27}
Suppress If {0A 82}
True {46 02}
Ref: Chipset, VarStoreInfo (VarOffset/VarName): 0xFFFF, VarStore: 0x0, QuestionId: 0x3, FormId: 0x2713 {0F 0F 1E 00 02 00 03 00 00 00 FF FF 00 13 27}
Suppress If {0A 82}
True {46 02}
Ref: Security, VarStoreInfo (VarOffset/VarName): 0xFFFF, VarStore: 0x0, QuestionId: 0x4, FormId: 0x2714 {0F 0F 3A 00 02 00 04 00 00 00 FF FF 00 14 27}
Ref: Boot, VarStoreInfo (VarOffset/VarName): 0xFFFF, VarStore: 0x0, QuestionId: 0x5, FormId: 0x2715 {0F 0F 1F 00 02 00 05 00 00 00 FF FF 00 15 27}
Ref: Exit, VarStoreInfo (VarOffset/VarName): 0xFFFF, VarStore: 0x0, QuestionId: 0x6, FormId: 0x2716 {0F 0F 4D 00 02 00 06 00 00 00 FF FF 00 16 27}

Main, FormId: 0x296F {01 86 6F 29 08 00}
OC Tweaker, FormId: 0x2970 {01 86 70 29 49 09}
Advanced, FormId: 0x271C {01 86 1C 27 1D 00} << Visible one
Tool, FormId: 0x2721 {01 86 21 27 4F 09}
H/W Monitor, FormId: 0x2974 {01 86 74 29 82 00}
Security, FormId: 0x2978 {01 86 78 29 3A 00}
Boot, FormId: 0x2975 {01 86 75 29 1F 00}
Exit, FormId: 0x2980 {01 86 80 29 4D 00}

CPU Configuration , FormId: 0x271D {01 86 1D 27 AB 01} << Visible one
CPU Configuration , FormId: 0x27C2 {01 86 C2 27 AB 01}
North Bridge Configuration, FormId: 0x271E {01 86 1E 27 3A 09}
South Bridge Configuration, FormId: 0x271F {01 86 1F 27 3C 09}
Demo Board, FormId: 0x2747 {01 86 47 27 30 07}

-------------------------------

59 B9 63 B8 C6 0E 33 40 99 C1 8F D8 9F 04 02 22 - AMD PBS

31 C6 9A E3 ED 48 5E 44 90 42 55 B3 4F 40 58 43 - AODSetup

E3 35 45 B0 04 30 46 49 9E B7 14 94 28 98 30 53 - AMD CBS

---------------------
From AMITSE/SetupData (Body)

AMITSE
2C - 60>>5F 00 >> Pages start at 64
x30 - Base Element address >> 27AC

Advanced - (1C27) Page starts at >> 4FC >> ID Starts at 506
0x0A - Form ID 1C 27
0x0E - LabelID - 1D 00
0x10 - Page ID - 09
0x12 - Parent ID - 04
0X1C - Number of Elements - 0B (11)
0x20 - Offset of the First Element, relative to the address of the elements = 08 1E (1E08) - should be CPU Config - 0x271D {01 86 1D 27 AB 01} = @520 >> 45B4
0x30 - 5th Element - 08 1F (1F08) - 46B4 - Correct = ACPI Config

0x34 - 6th Element 48 1F (1F48) - should be CBS - 46F4 (Destination PageID = 04) - QuetionID 42 points to “Setup 2712”
This is in setup IFR twice “suppressed if” using question ID 22 and 42, only once on the advanced page where this happens though and two was expected?!
00 00 00 00 00 00 00 00 00 00 00 00 42 00 00 00 00 00 00 00 01 00 09 00 04 00 00 00 01 00 00 00 02 00 00 00 73 00 01 00 1D 13 00 00 00 00 00 00 F6 FF FF FF FF FF FF

FF 00 00 00 00 02 00 00 00

0x38 - 7th Element 88 1F (1F88) - Should be PBS - 4734 - appears to lead no where, no question ID or Destination pageID
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 08 00 09 00 FF FF 00 00 01 00 00 00 00 00 00 00 74 00 01 00 2E 13 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 02 00 00 00

0x3C - 8th element C8 1F (1FC8) - 4774


CPU Configuration - 1D 27 - Page starts at >> ID Starts at >> 556
0x10 - PageID - 0A
0x12 - ParentID - 09
------------------------------------

From AMITSE PE32

@00089DA0 - All possible
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 6F 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 12 27 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 15 27 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 16 27 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 70 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 1C 27 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 21 27 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 74 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 78 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 75 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 80 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

@0008A010 - Blocked always
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 10 27 00 00 00 00 00 00 00 00 00 00 00 00 00 00
04 F3 A9 AC E2 21 52 48 98 75 7F F4 88 1D 67 A5 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
B1 C3 F8 92 B9 C9 6D 44 B4 F8 EA 92 79 32 B3 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
2E CF 39 5E 12 67 AB 45 84 C4 35 D3 C6 A3 68 6D 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
71 99 03 93 45 85 04 4B B4 5E 32 EB 83 26 04 0E
0C C2 2F F2 F4 8C EB 45 8E 06 AD 4E 50 B9 5D D3 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
BE EC 04 92 65 A6 D3 49 86 DE 08 12 99 E2 23 EF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

@0008A100 - All visible
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 6F 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 70 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 1C 27 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 21 27 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 74 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 78 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 75 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4A 10 59 7B 0D C0 58 41 87 FF F0 4D 63 96 A9 15 80 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00