Dell bios, how to decompose / mod.

Discussion in 'BIOS Mods' started by wolf69, Nov 21, 2009.

  1. Apokrif

    Apokrif MDL Addicted

    Dec 7, 2008
    542
    35
    30
    I think you can still find "Serial ATA AHCI BIOS" on Intel site.
    You need to find Intel mobo with same ICH7 as yours. (I guess, any ICH7 will do)
    Download its BIOS and analyze it using AndyP tool - it’ll extract all modules.
    Than search for one with "Serial ATA AHCI BIOS" string inside.
    We have used very same approach to get latest SATA RAID BIOSes.

    And you are right, ICH should be already in AHCI mode to BIOS to pick it up.
    All stings from ICH8AHCI.BIN:

    Serial ATA AHCI BIOS, Version iSrc 1.20E
    Copyright (c) 2003-2008 Intel Corporation
    ** This version supports only Hard Disk and CDROM drives **
    Please wait. This will take few seconds.
    Controller not found
    Controller not set for operating in AHCI mode
    System Error
    Memory not available
    AHCI BIOS not installed
    No device found
    Error in accessing HBA memory-mapped registers
    No area available for Command List/Command Table/FIS
    Controller in RAID Mode
    System BIOS does not support BBS

    Device initialization error
    Identify device failed
    Invalid device geometry
    Init device parameter failed
    Recalibrate device failed
    SMART command failed
    Device verify failed
    Port reset failed
    SMART event logged
    (Device not supported in this AHCI option ROM build)
    (Drive is controlled by the RAID BIOS)
     
  2. gabiz_ro

    gabiz_ro MDL Member

    Feb 2, 2010
    173
    12
    10
    AndyP tool can extract modules from *.BIO files? didn't know that.
    Could be possible that for ICH7 did not exist such AHCI BIOS oROM.
    Some time ago I search a lot of time but for ICH7 family only SATA RAID oROM was all I can found.
    Today I receive one SATAII expresscard I'll try to find if I can boot from that card if yes then will modd this to make simple or RAID system
    My bad luck :( I don't have esata cables right now.
     
  3. Apokrif

    Apokrif MDL Addicted

    Dec 7, 2008
    542
    35
    30
    Might be. It’s strange the one you found doesn’t support it, but ESB2
    Could Intel have another AHCI BIOS line for ICH7, ICH6, ICH5, etc?
    I don’t even remember how ICH6 related to ESB2 :confused:

    Once you do it, there won’t be any need to continue this thread, right? :(
     
  4. gabiz_ro

    gabiz_ro MDL Member

    Feb 2, 2010
    173
    12
    10
  5. Apokrif

    Apokrif MDL Addicted

    Dec 7, 2008
    542
    35
    30
    Right. And you card is HDD, isn’t it.
    According to PCI spec, BIOS should “scan/execute” AA55 segments (oROMs). And it does – you won’t see Sil3132 menu otherwise…

    Ok. But it won’t boot from it anyway, right?

    Strange… So there is no any BIOS menu on your notebook where you can set boot devices search order and enable/disable them? :confused:

    BTW: Check Dell DCCU report - what BIOS settings does it see?
     
  6. gabiz_ro

    gabiz_ro MDL Member

    Feb 2, 2010
    173
    12
    10
    That is on most other bios but in case of Del especially notebook maybe not since you can't add all kind of hardware.I see Sil3132 menu becauseI force loading



    There is a menu for boot order,I can change order and enable disable floppy hdd dvd and network but Sil3132 is loaded later that could be the problem

    Maybe BIOS is looking for oROMS but only where he expect to be,something like module id,and if find then is loaded.
     
  7. Apokrif

    Apokrif MDL Addicted

    Dec 7, 2008
    542
    35
    30
    So if you replace PXE oROM with Sil3132, it just show RAID menu but won’t boot, even if you select network boot first, right?

    Yep. If BIOS has modules with ID, id does load based on ID.
    So if you replacing PXE oROM with Sil3132, you need to keep same module ID.
    It won’t find it otherwise.
    At least that’s the way I did it with GX620 (and got unsupported hardware)
    I guess, you did it very same way.

    About network boot… I don’t know how BIOS tell what is network and what is HD.
    I guess, it might be some flag and most likely changeable. :rolleyes:
     
  8. jughead

    jughead MDL Novice

    May 16, 2009
    6
    0
    0
    thanks for the info.
     
  9. gabiz_ro

    gabiz_ro MDL Member

    Feb 2, 2010
    173
    12
    10
    Yes.

    I keep same module id.
    Maybe BIOS know to load some oROM's in initialization stage but only if they have some id for what BIOS is looking
     
  10. gabiz_ro

    gabiz_ro MDL Member

    Feb 2, 2010
    173
    12
    10
    I have replaced inside BIOS Intel VGA ROM with oROM for SIL3132.Now if card is inserted oROM is loaded by BIOS itself,is loaded before choosing boot device (if I press F12 to choose boot device,first is loaded SIL oROM then is presented boot menu,but still no available in this menu.)
    I was playing with kexec-loader but seems some problems to load ntfs module.
     
  11. Subu

    Subu MDL Novice

    Jul 19, 2010
    5
    0
    0
    I have read the entire thread and have downloaded Andy's and Apokrif's tools. I am trying to decompose the BIOS for a Dell PowerEdge T110 found on the Dell site. (Can't post a link yet as I have just started using MDL).

    I extracted the header file and when run through Andy's tool (Phoenix Mod Tool 1.42) it "works" for a while and then errors out saying:
    Error 9 - Index was outside the bounds of the array. The results before this error happens are:

    Dell BIOS
    $RBUT at 0
    Block at 54
    Block at 1054
    Block at 10054
    Block at 11054
    Block at 40054
    Block at 70054
    Block at 71054
    Block at 115054
    Block at 340054
    Block at 390054

    I also tried to run the hdr program from Apokrif's tools but don't know how to specify the hdr.ini entries for this machine.
    I have:
    [PET110-010304]
    00054C0D0054

    When running hdr with the L command it scans at various xyz54 boundaries and I get:
    file length 40005C -> scanning for CRC32...
    scanning 004054
    scanning 008054
    ...
    scanning 3FC054
    crc32 found at 400054
    whole file:
    crc32 found at 400058

    section start 0x000054

    Any help in decomposing this BIOS into modules and uncompressing them is greatly appreciated.

    Thank you
    Subu
     
  12. sebus

    sebus MDL Guru

    Jul 23, 2008
    6,384
    2,037
    210
    And the reason you do it, is what?

    sebus
     
  13. Subu

    Subu MDL Novice

    Jul 19, 2010
    5
    0
    0
    Sebus:

    I just want to understand the various components of the BIOS; how they are structured and linked, what compression routines are used and how to put back the BIOS together. I also have access to IDA Pro and am new to reverse engineering.

    Subu
     
  14. Apokrif

    Apokrif MDL Addicted

    Dec 7, 2008
    542
    35
    30
    Post BIOS file name - I'll take a look.
     
  15. Subu

    Subu MDL Novice

    Jul 19, 2010
    5
    0
    0
    Thank you very much. It's for Service Tag: FZX6FN1 for a Dell Poweredge T110 BIOS version 1.3.4 dated 6/18/2010. This BIOS seems to support both the legacy BIOS as well as an UEFI BIOS (selectable in BIOS setup)

    The URL is:

    support.dell.com/support/downloads/format.aspx?c=us&cs=08W&l=en&s=bsdv&deviceid=11809&libid=1&releaseid=R270563&vercnt=4&formatcnt=0&SystemID=pwe_t110&servicetag=FZX6FN1&os=LHS64&osl=en&catid=-1&dateid=-1&typeid=-1&formatid=-1&impid=-1&checkFormat=true

    Thank you
    Subu
     
  16. gabiz_ro

    gabiz_ro MDL Member

    Feb 2, 2010
    173
    12
    10
    After many tries I've managed to load OROM from card itself.
    (Card was without flash chip,so I solder one and program but OROM was 128K and flash chip was 256K,at first sight no matter but after reading datasheets and checking registers I see that OROM was not loaded from card because SIL3132 chip was looking for signature at the end of flash and since size was different that signature was in middle.)

    Now with original bios (nothing altered) OROM is loaded from card but no way to boot from that card.
    Card expect BIOS to handle process of booting, maybe if I can find other vendor who use same chip but have OROM who can boot itself, no matter what BIOS do. That such thing exist?

    Also a little annoying thing is that RAID device is "removable device" under windows.
    I found something related into DSDT and removed now under other OS's there is no sign of PC Card like before but still partitions are see as "removable device"

    For the moment I can boot windows using XP kansas City shuffle method from 911cd.net
     
  17. cypy_21

    cypy_21 MDL Novice

    Oct 7, 2010
    1
    0
    0
    D620 Bios mod

    I`m a newbie on this forum so i`m asking the following maybe someone can help me.I
    have a dell latitude with a nvidia graphics card and i want to mod its bios DSDT table.Can someone help me with a short tutorial on how to do this or with some advices.Untill now i`ve been able to extract the DSDT from the bios using a linux live cd and also to extract from original bios the hdr file.But i don`t know how to decompress it.