Lenovo ThinkServer BIOS modifications

Discussion in 'BIOS Mods' started by John222, May 20, 2014.

  1. John222

    John222 MDL Novice

    May 20, 2014
    Lenovo ThinkServer TS-140

    (First, let me apologize for this being so long. I figure that it is best to give more details rather than less details. Also, do know that I have spent a many many hours researching and testing, so I really have tried to figure it out on my own, but if I missed some obvious/clear answers, or searched incorrectly, please let me know.)

    I want to remove all references to "Lenovo" and put my own name/logo in its place. When I run tools like Belarc, CPU-Z, etc, I would like all references to Lenovo replaced. Also when the machine boots; any BIOS boot logo, etc should be replaced. From what I understand, this machine has the "Aptio" BIOS type. (It will now allow me to post full links, so I'll have to cut them up: ami(dot)com/Products/BIOSandEFIFirmware/Aptio/ )

    Let me tell you where I started, and my journey thus far:
    - I downloaded BIOS version 70A (support.lenovo(dot)com/en_US/downloads/detail.page?DocID=DS036809 ), prepped a USB drive to be bootable and successfully updated BIOS from 48A to 70A, no problem.
    - I then followed instructions in the BIOS update readme (terbos06sr15.txt) on how to use VPD.bat, which just calls AMIDEDOS.EXE with switches. I successfully ran:
    - AMIDEDOS /CA "My Name CA"
    - AMIDEDOS /SP "My Name SP"

    - If amidedos can change the Asset Tag, what else can we change...So I ran AMIDEDOS.EXE /ALL Output.txt.

    Name R/W Status Information
    -------------------------- --- ------ ----------------------------------
    (/IV)BIOS version R Done "FBKT70AUS"
    (/ID)BIOS release date R Done "12/27/2013"
    (/SM)System manufacture R Done "LENOVO"
    (/SP)System product R Done "My Name SP"
    (/SV)System version R Done "70A4001LUX"
    (/SS)System Serial number R Done "MJ00ANET"
    (/SU)System UUID R Done "65FDCE5E8BA911E3AA47FC4DD4F48282h"
    (/SK)System SKU number R Done "LENOVO_PN_ThinkServer TS140"
    (/SF)System Family R Done "To be filled by O.E.M."
    (/BM)Baseboard manufacture R Done "LENOVO"
    (/BP)Baseboard product R Done "ThinkServer TS140"
    (/BV)Baseboard version R Done "Not Defined "
    (/BS)Baseboard Serial number R Done " "
    (/BT)Baseboard Asset Tag R Done " "
    (/BLC)BB. Loc. in Chassis R Done "To be filled by O.E.M."
    BaseBoardHandle = "0002h"
    (/BMH)Baseboard manufacture R Done "LENOVO"
    (/BPH)Baseboard product R Done "ThinkServer TS140"
    (/BVH)Baseboard version R Done "Not Defined "
    (/BSH)Baseboard Serial numberR Done " "
    (/BTH)Baseboard Asset Tag R Done " "
    (/BLCH)BB. Loc. in Chassis R Done "To be filled by O.E.M."
    (/CM)Chassis manufacture R Done "LENOVO"
    (/CT)Chassis type R Done "07h"
    (/CV)Chassis version R Done "To Be Filled By O.E.M."
    (/CS)Chassis Serial number R Done "MJ00ANET"
    (/CA)Chassis Tag number R Done "My Name CA"
    (/CO)Chassis OEM value R Done "00000000h"
    (/CSK)Chassis SKU Number R Done ""
    (/OS)OEM string #1 R Done "FBKT70AUS"
    (/SCO)System Conf. Op. #1 R Done "scre++"

    So "Lenovo" is still all over the place and still shows in Belarc, CPUID, etc. So I ran:
    - AMIDEDOS.EXE /SM "My Name SM" = Ok.
    - AMIDEDOS.EXE /BM "My Name BM" = Ok.
    - AMIDEDOS.EXE /BP "My Name BP" = Ok.
    - AMIDEDOS.EXE /BMH "My Name BMH" = Error: "Error device handle number format" It then lists all the commands and swtiches and shows the format is supposed to be /BMH <handle #> ["String"]. So I'm clearly missing the "handle #" part. I've researched for hours, and cannot find any info about handle numbers?
    - AMIDEDOS.EXE /BMH "My Name BMH" = Same Error as /BMH.
    1) Can you help with the 'handle #' issue?

    2) BIOS bootup logo; right now it boots with a "ThinkServer" logo.
    - I tried using AMI Changelogo utility ( forums.mydigitallife(dot)info/threads/529-Bios-Tools/page47?p=865888&viewfull=1#post865888 ). I open the program (in Windows 7 64 bit), Load Image using the IMAGEFB.ROM from the USB drive, which is the 70A downloaded from Lenvo earlier. It then shoows an "Avaliable Images" as "Splash Logo", I click on Save Logo, and create "splash.bmp". But no program can open this (Paint, Infranview, Photoshop 7). My idea was to open this graphic, then i'll know the exact size/type etc, and create a perfectly matching file. So I used Paint to create a new .bmp file. No matter how small I made the image, when I clicked on "Replace Logo", I would always get the error like: "Logo size 50x31 exceeds BIOS maximum size 0x0. Do you want to replace the logo?". But at the bottom of the box it says "New logo is created". So I clicked on "Save Image As" and saved .ROM to usb drive; rebooted and ran 'flash.bat' which is 'afudos IMAGEFB.ROM /p /b /r /sp /capsule /defans'... but get error: "18 - Error: Unable to start a Secure Flash session" ? I have another new TS-140 that had the stock 48 BIOS, so there were no tweaks to the BIOS yet, I ran flash.bat on it; same error.

    - I tried using MMTool and followed these instructions in post #2 (forums.mydigitallife(dot)info/threads/25048-help-how-to-change-OEM-logo-bios-in-AMI-bios?p=385297&viewfull=1#post385297 ), but I do not see any "OEM Logo" listed, or anything else that is close to that? (Note: I may not be doing this correctly, but I loaded the IMAGEFB.ROM file from the USB flash drive, which is the downloaded version 70A used above. Am I supposed to load a ROM file from the current BIOS instead of using the downloaded one?)

    So i'm stuck on those two points above; any help would be awesome!