General questions by example Thinkpad W701 BIOS

Hi Fernando (and all the other who can (want) provide some help:

I’ll refer - means resume- this thread (dialog between user ZPW and Fernando)

http://www.win-raid.com/t11f23-Modded-Intel-AHCI-and-RAID-Drivers-digitally-signed-13.html#msg7998

Here is my hope to get some essential hints for modding a BIOS myself.

Here my first bunch of questions:

Is there no tool known reassembling ThinkPad W701’ BIOS ? Wouldn’t this mean a challenge like guys like “Andy P” and others ?
There may be only a small step from extracting to rebuilding … perhaps (?)

(It sometimes looks for me the protagonists of the modding scene leave their sheeps alone… or they just had been overstrained and try to escape the spirits they once demanded…)

How does an “oprom<x>” (the name convention of the modules of my W701- Bios) act ? Is this -once called- an independent code which only sets some register values. which are accessible to the OS’s drivers at a later point in time ?

How is an oprom called by the Bios’s main routine (don’t know the appropiate expression) or the code (s) inside ? By address ? By name ?
Which (where) is the code who calls and how it works?

(I not yet found the names of the oproms at another location apart from the oproms itself)

Can I change the order of an oprom among their “neighbors” ?

Can I move an oprom to another position ?

The recent two questions point to a suggestion Fernando gave if space would be insufficient for an intended replacement by a larger module:
to remove unnecessary code from the BIOS if possible.
But this means if there is no removable code behind the oprom I have to remove some code in front.

By current example: W701 BIOS contains 4 (of 7 total) oproms with a nvida graphics adapter Firmware inside. It is clear three of them aren’t really needed.
What is to expect when the legacy ones are removed ?

Or an alternative scenario:

Bios contains lots of “gaps” means empty chunks. I don’t know the purpose of. Perhaps the can removed ?

Ok, this will be enough for my first “official” visit here.
If my questions are already answered sufficiently I have to apologize…

have a nice morning / evening whereever you are reading …

regards, Michael

OPROM0-3 are the vBIOSes for FX3800m and FX 2800m, you can modify those and pack them back for overclocking/undervolting.

I have undervolted my FX 3800m and it runs better (no more CPU throttling when GPU is loaded)
https://forum.51nb.com/forum.php?mod=viewthread&tid=1798034

The weird thing is, I had to replace both vBIOS module. It tends to use version 0D but if I mod the 0D it will be using the 0A instead.

You are welcomed to join me on
https://www.thinkpads.com/forum/viewtopic.php?f=48&t=118404

@RMSMajestic - Maybe it skips your mod vBIOS due to checksum error or other issue with the mod?

If it skipped, then I think it will skip both and refuse to boot. But this wasn’t the case

Well I assumed maybe skipped due to what you said " It tends to use version 0D but if I mod the 0D it will be using the 0A instead." So no problems if you mod both 0D and 0A? If not, then probably a non-issue.

If I replace both original 0A and 0D with modded vBIOS, it will work…
But no idea why it selects 0A when only 0D is modded.
I have looked through W701 BIOS carefully but things are so disgustingly encrypted for lenovo

Maybe put in only the one you want to load? And put dummy filler for the other?