New AMI BIOS tool for performing SSV2/3 and Dynamic SLIC Modification

Discussion in 'MDL Projects and Applications' started by andyp, Jan 7, 2009.

  1. handsfree

    handsfree MDL Novice

    Feb 21, 2008
    7
    1
    0
    MSI MS7504 MB in Fujitsu PC

    Wonder if there is some advice available on the following.

    I have a Fujitsi PC which contains a motherboard by MSI but OEM to Fujitsu (so only Fujitsu site has BIOS). The BIOS is AMI (v8) The current BIOS is version 3.0U dated July 2009. It contains a SLIC 2.0 entry which is active (Vista OEM:SLP is working on the PC).

    Latest version of the BIOS on the Fujitsi web site is 3.0S. I have extracted 3.0U from the PC using the Ami flash tool with the /O option.

    I have used the AmiTool v1.42 to modify the BIOS file to insert a SLIC 2.1 table. I started by selecting MSI as the motherboard and the tool automatically selected SSV2 (and does not allow any other option). Tool gave 'Success'. On doing a hex compre between the original and new BIOS there are lots of replacements and the occassional insertion. This looked much more complicated than a Phoenix BIOS I modded recently (forums mydigitallife info/showpost.php?p=204271&postcount=219 put the dots back in - this is only my 2nd post so no live links yet).

    So I tried using the AmiTool using 'other' as the motherboard type and tried both SSV3 and Dynamic - the tool gives 'Success' in each case. A hex compare of the orginal BIOS and the modded SSV3 and Dynamic show fewer differences than SSV2 - but still quite a good number.

    Question is, will any of these 'Success' versions work, or is one likely to be better than the others?

    Here is SLIC log for the Dynamic mod:

    Version 1.42
    Manufacturer - Other
    Original BIOS size 1048576 bytes (1024K)
    9953C Module 11 Padded size 96264
    90160 Module 8 Padded size 2080
    90994 Module C Padded size 8
    8 Module 1B Padded size 188564 (Actual size 188564 Original size 372057)
    83010 Module 20 Padded size 41076 (Actual size 41076 Original size 57344)
    909B0 Module 20 Padded size 33480 (Actual size 33477 Original size 54272)
    B0D58 Module 20 Padded size 31900 (Actual size 31898 Original size 61440)
    B8A08 Module 4 Padded size 22872 (Actual size 22871 Original size 37513)
    8D098 Module 21 Padded size 11172 (Actual size 11170 Original size 23209)
    BE374 Module E Padded size 6504 (Actual size 6503 Original size 240118)
    BFCF0 Module 18 Padded size 6144 (Actual size 6141 Original size 16965)
    C1504 Module 19 Padded size 1436 (Actual size 1435 Original size 4868)
    C1AB4 Module 1A Padded size 1332 (Actual size 1330 Original size 9890)
    98C8C Module 2B Padded size 840 (Actual size 839 Original size 1360)
    8FC50 Module 6 Padded size 828 (Actual size 826 Original size 2560)
    C1FFC Module 80 Padded size 188
    NVRAM at E0000 length 10000
    ROM Hole at 99000 length 530
    ROM Hole at 90000 length 160
    ROM Hole at D0000 length 10000
    ROM Hole at 83000 length 10
    There are unlinked blocks in module 80h
    Bootblock at F0000 length 10000
    Boot block checksum is correct
    No extended boot block
    Main BIOS checksum is correct
    1B module size is 372057 bytes
    AMIBIOS string found at F794
    Dynamic method
    SLIC module size is 374 bytes
    SLIC module checksum is 0
    OEM Activation 2.1 SLIC
    No split OEM/Table ID strings found
    RSDT table found at 45AA8
    RSDT table OEM and Table ID patched to FSC PC
    XSDT table OEM and Table ID patched to FSC PC
    FACP table OEM and Table ID patched to FSC PC
    FACP table OEM and Table ID patched to FSC PC
    APIC table OEM ID patched to FSC
    WDRT table OEM ID patched to FSC
    HPET table OEM ID patched to FSC
    MCFG table OEM ID patched to FSC
    SLIC table OEM ID patched to FSC
    OEM table OEM ID patched to FSC
    Patch string not found
    SLIC inserted at 45EF8
    Module 1B written 372057 bytes
    9953C Module 11 Padded size 96264
    90160 Module 8 Padded size 2080
    90994 Module C Padded size 8
    8 Module 1B Padded size 188844 (Actual size 188842 Original size 372057)
    83010 Module 20 Padded size 41076 (Actual size 41076 Original size 57344)
    909B0 Module 20 Padded size 33480 (Actual size 33477 Original size 54272)
    B0D58 Module 20 Padded size 31900 (Actual size 31898 Original size 61440)
    B8A08 Module 4 Padded size 22872 (Actual size 22871 Original size 37513)
    8D098 Module 21 Padded size 11172 (Actual size 11170 Original size 23209)
    BE374 Module E Padded size 6504 (Actual size 6503 Original size 240118)
    BFCF0 Module 18 Padded size 6144 (Actual size 6141 Original size 16965)
    C1504 Module 19 Padded size 1436 (Actual size 1435 Original size 4868)
    C1AB4 Module 1A Padded size 1332 (Actual size 1330 Original size 9890)
    98C8C Module 2B Padded size 840 (Actual size 839 Original size 1360)
    8FC50 Module 6 Padded size 828 (Actual size 826 Original size 2560)
    C1FFC Module 80 Padded size 188
    NVRAM at E0000 length 10000
    ROM Hole at 99000 length 530
    ROM Hole at 90000 length 160
    ROM Hole at D0000 length 10000
    ROM Hole at 83000 length 10
    There are unlinked blocks in module 80h
    Pubkey/marker at 90000 updated
    Boot block preserved
    Unlinked bytes preserved
    Main BIOS checksum is correct
    Bootblock at F0000 length 10000
    Boot block checksum is correct
    9953C Module 11 Padded size 96264
    90160 Module 8 Padded size 2080
    90994 Module C Padded size 8
    8 Module 1B Padded size 188844 (Actual size 188842 Original size 372057)
    83010 Module 20 Padded size 41076 (Actual size 41076 Original size 57344)
    909B0 Module 20 Padded size 33480 (Actual size 33477 Original size 54272)
    B0D58 Module 20 Padded size 31900 (Actual size 31898 Original size 61440)
    B8A08 Module 4 Padded size 22872 (Actual size 22871 Original size 37513)
    8D098 Module 21 Padded size 11172 (Actual size 11170 Original size 23209)
    BE374 Module E Padded size 6504 (Actual size 6503 Original size 240118)
    BFCF0 Module 18 Padded size 6144 (Actual size 6141 Original size 16965)
    C1504 Module 19 Padded size 1436 (Actual size 1435 Original size 4868)
    C1AB4 Module 1A Padded size 1332 (Actual size 1330 Original size 9890)
    98C8C Module 2B Padded size 840 (Actual size 839 Original size 1360)
    8FC50 Module 6 Padded size 828 (Actual size 826 Original size 2560)
    C1FFC Module 80 Padded size 188
    NVRAM at E0000 length 10000
    ROM Hole at 99000 length 530
    ROM Hole at 90000 length 160
    ROM Hole at D0000 length 10000
    ROM Hole at 83000 length 10
    There are unlinked blocks in module 80h
    Bootblock at F0000 length 10000
    Boot block checksum is correct
    No extended boot block
    Main BIOS checksum is correct
    SLIC performed successfully. BIOS file is

    Here is the SLIC log for the MSI and SSV2 mod:

    Version 1.42
    Manufacturer - MSI
    Original BIOS size 1048576 bytes (1024K)
    9953C Module 11 Padded size 96264
    90160 Module 8 Padded size 2080
    90994 Module C Padded size 8
    8 Module 1B Padded size 188564 (Actual size 188564 Original size 372057)
    83010 Module 20 Padded size 41076 (Actual size 41076 Original size 57344)
    909B0 Module 20 Padded size 33480 (Actual size 33477 Original size 54272)
    B0D58 Module 20 Padded size 31900 (Actual size 31898 Original size 61440)
    B8A08 Module 4 Padded size 22872 (Actual size 22871 Original size 37513)
    8D098 Module 21 Padded size 11172 (Actual size 11170 Original size 23209)
    BE374 Module E Padded size 6504 (Actual size 6503 Original size 240118)
    BFCF0 Module 18 Padded size 6144 (Actual size 6141 Original size 16965)
    C1504 Module 19 Padded size 1436 (Actual size 1435 Original size 4868)
    C1AB4 Module 1A Padded size 1332 (Actual size 1330 Original size 9890)
    98C8C Module 2B Padded size 840 (Actual size 839 Original size 1360)
    8FC50 Module 6 Padded size 828 (Actual size 826 Original size 2560)
    C1FFC Module 80 Padded size 188
    NVRAM at E0000 length 10000
    ROM Hole at 99000 length 530
    ROM Hole at 90000 length 160
    ROM Hole at D0000 length 10000
    ROM Hole at 83000 length 10
    There are unlinked blocks in module 80h
    Bootblock at F0000 length 10000
    Boot block checksum is correct
    No extended boot block
    Main BIOS checksum is correct
    1B module size is 372057 bytes
    AMIBIOS string found at F794
    SSV2 method
    SLIC module size is 374 bytes
    SLIC module checksum is 0
    OEM Activation 2.1 SLIC
    No split OEM/Table ID strings found
    Scanning for space to insert SLIC
    There is space to insert SLIC in ROM image at 40000
    RSDT table found at 45AA8
    RSDT table can be extended
    XSDT table found at 45BA8
    XSDT table can be extended
    RSDT table OEM and Table ID patched to FSC PC
    XSDT table OEM and Table ID patched to FSC PC
    FACP table OEM and Table ID patched to FSC PC
    FACP table OEM and Table ID patched to FSC PC
    APIC table OEM ID patched to FSC
    WDRT table OEM ID patched to FSC
    HPET table OEM ID patched to FSC
    MCFG table OEM ID patched to FSC
    Existing SLIC in 1B deleted
    SLIC table OEM ID patched to FSC
    OEM table OEM ID patched to FSC
    Module 1B written
    New 1B Module is 8 bytes too big
    Zero area 1
    Module 1B written
    New 1B Module is 52 bytes too small
    Module 1B written
    New 1B Module is 32 bytes too small
    Module 1B written
    New 1B Module is 20 bytes too small
    Module 1B written
    New 1B Module is 16 bytes too small
    Module 1B written
    New 1B Module is 8 bytes too small
    Module 1B written
    New 1B Module is 12 bytes too small
    Module 1B written
    New 1B Module is 8 bytes too small
    Module 1B written
    New 1B Module is 4 bytes too small
    Module 1B written
    New 1B Module is 4 bytes too small
    Module 1B written
    New 1B Module is correct size
    1B copied to original BIOS
    SLIC inserted at 40000
    New BIOS written 1048576 bytes
    9953C Module 11 Padded size 96264
    90160 Module 8 Padded size 2080
    90994 Module C Padded size 8
    8 Module 1B Padded size 188564 (Actual size 188561 Original size 372057)
    83010 Module 20 Padded size 41076 (Actual size 41076 Original size 57344)
    909B0 Module 20 Padded size 33480 (Actual size 33477 Original size 54272)
    B0D58 Module 20 Padded size 31900 (Actual size 31898 Original size 61440)
    B8A08 Module 4 Padded size 22872 (Actual size 22871 Original size 37513)
    8D098 Module 21 Padded size 11172 (Actual size 11170 Original size 23209)
    BE374 Module E Padded size 6504 (Actual size 6503 Original size 240118)
    BFCF0 Module 18 Padded size 6144 (Actual size 6141 Original size 16965)
    C1504 Module 19 Padded size 1436 (Actual size 1435 Original size 4868)
    C1AB4 Module 1A Padded size 1332 (Actual size 1330 Original size 9890)
    98C8C Module 2B Padded size 840 (Actual size 839 Original size 1360)
    8FC50 Module 6 Padded size 828 (Actual size 826 Original size 2560)
    C1FFC Module 80 Padded size 188
    NVRAM at E0000 length 10000
    ROM Hole at 99000 length 530
    ROM Hole at 90000 length 160
    ROM Hole at D0000 length 10000
    ROM Hole at 83000 length 10
    There are unlinked blocks in module 80h
    Pubkey/marker at 90000 updated
    Main BIOS checksum is correct
    Bootblock at F0000 length 10000
    Boot block checksum is correct
    9953C Module 11 Padded size 96264
    90160 Module 8 Padded size 2080
    90994 Module C Padded size 8
    8 Module 1B Padded size 188564 (Actual size 188561 Original size 372057)
    83010 Module 20 Padded size 41076 (Actual size 41076 Original size 57344)
    909B0 Module 20 Padded size 33480 (Actual size 33477 Original size 54272)
    B0D58 Module 20 Padded size 31900 (Actual size 31898 Original size 61440)
    B8A08 Module 4 Padded size 22872 (Actual size 22871 Original size 37513)
    8D098 Module 21 Padded size 11172 (Actual size 11170 Original size 23209)
    BE374 Module E Padded size 6504 (Actual size 6503 Original size 240118)
    BFCF0 Module 18 Padded size 6144 (Actual size 6141 Original size 16965)
    C1504 Module 19 Padded size 1436 (Actual size 1435 Original size 4868)
    C1AB4 Module 1A Padded size 1332 (Actual size 1330 Original size 9890)
    98C8C Module 2B Padded size 840 (Actual size 839 Original size 1360)
    8FC50 Module 6 Padded size 828 (Actual size 826 Original size 2560)
    C1FFC Module 80 Padded size 188
    NVRAM at E0000 length 10000
    ROM Hole at 99000 length 530
    ROM Hole at 90000 length 160
    ROM Hole at D0000 length 10000
    ROM Hole at 83000 length 10
    There are unlinked blocks in module 80h
    Bootblock at F0000 length 10000
    Boot block checksum is correct
    No extended boot block
    Main BIOS checksum is correct
    Unreferenced bytes are present
    SLIC performed successfully. BIOS file is


    If it would help I can upload the original and modified BIOSes or the other SLIC logs and the RW Everything report for the current BIOS in the PC
     
  2. phrunt

    phrunt MDL Addicted

    May 1, 2007
    896
    90
    30
    Happy 1st birthday amitool!!!!!!!
     
  3. spetrie

    spetrie MDL Novice

    Oct 17, 2009
    3
    0
    0
    Thanks for the AMI BIOS tool and the write up. Just got a new computer with no OS so no SLIC 2.1 in BIOS. Used your tool and inserted the require part of BIOS with SLIC 2.1. No issues and activation works a treat. Many Thanks:)
     
  4. nicholasf

    nicholasf MDL Novice

    Oct 15, 2008
    18
    0
    0
    I used AMI bios tool v1.42 to perform slic insertion for my asus P5LD2 bios. SLIC Tool v3.0 says: "SLIC Status: invalidated". Why? Can you help me? How I can perform a valid slic insertion using AMI bios tool?
     
  5. denzel

    denzel MDL Member

    Aug 24, 2009
    170
    21
    10
    Request

    Hi Andy, fantastic tool, but i have a request.
    I have see the option for mod dsdt and this is great for my hackintosh, but here there is the request. It's possible make a option for insert in DSDT important fix like the mod for device HPET:
    IRQNoFlags ()
    {0}
    IRQNoFlags ()
    {8}

    and fix for device RTC (in DSDTSE there other fixes) but these two are important for osx installation and it shoul be AMAZING put in them in dsdt but in bios and not only simply in Extra of Chameleon (only these 2 options) ;)
    Another thing: or it's possible an option for insert a DSDT table optimized with dsdtpatcher or dsdtse, an option for put in this table optimized directly in bios (Not dsdt table with ALL fixes, but only optimized and with addition of fix alias, hpet and rtc, not all fixes obviously ;) )
    THIS on same asus is simple, i have do it with mmtool, but on my p5q deluxe i don't know, you have understand, i don't know how re-insert the dsdt optimized in bios..
    If the last option it's not possible, you could tell me how to do it manually, how re-insert the dsdt optimized in bios of p5q deluxe?
    Anyway, you think that at least the first request (option like alias for fix hpet and rtc) can be satisfied?
    Thanks so much, you are great. Sorry for my english, but i'm italian

    ..I'd like to understand how re-insert the dsdt optimized from dsdtpatcher directly in bios, or my bios that i have see in mmtools to be different ;)
     
  6. andyp

    andyp SLIC Tools Author

    Aug 8, 2008
    1,673
    2,570
    60
    The tool includes both the intel ASL and microsoft ASL. It chooses on the basis of the DSDT creator ID.

    iasl -d dsdt.aml (Intel) -> results in dsdt.dsl
    asl /u dsdt.aml (Microsoft) -> results in dsdt.asl

    Andy
     
  7. denzel

    denzel MDL Member

    Aug 24, 2009
    170
    21
    10
    Perfect ;)
     
  8. andyp

    andyp SLIC Tools Author

    Aug 8, 2008
    1,673
    2,570
    60
    BIOS link, RW report and SLIC Tool v3 screenshot please.
    Andy
     
  9. Boysa22

    Boysa22 MDL Novice

    Dec 29, 2009
    5
    0
    0
    Just to share my expirience with the tool.

    I have a Asus X52S laptop. This uses the same motherboard as F3Sa and the same BIOS. So i downloaded the BIOS from ASUS and apllied with the tool the SLIC. Using SSV modifications worked fine. After flashing the laptop worked OK.

    THEN I decided to try also the Dynamic mode. This bricked my laptop. I tried everything to recover, but without sucess. SO BE CAREFUL.

    With best regards,
    Boyan
     
  10. andyp

    andyp SLIC Tools Author

    Aug 8, 2008
    1,673
    2,570
    60
    Oops. :(
    I don't think I've come accross a dynamic brick before, but I can't be sure. It could have just been a bad flash also.

    Andy
     
  11. nicholasf

    nicholasf MDL Novice

    Oct 15, 2008
    18
    0
    0
    Can anybody explain to me why if you open 1B module of mod bios with Hex Editor you can see both RSDT and XSDT with correct OEMID / TableID but after having flashed the bios when you read the memory with RW1.4 the OEMID / TableID are not correct? Why this happends?
     
  12. SoLoR

    SoLoR MDL Expert

    Jul 30, 2008
    1,371
    1,256
    60
    @nicholasf

    loader would be my guess...
     
  13. NoJuan999

    NoJuan999 Experienced SLIC Tool Operator

    Jul 31, 2009
    9,917
    1,941
    300
    #1218 NoJuan999, Jan 4, 2010
    Last edited by a moderator: Apr 29, 2017
  14. racky29

    racky29 MDL Senior Member

    Aug 2, 2007
    285
    93
    10
    some time ago on page 50 i killed an Asrock K7VT4A-Pro board
    used tool v1.20 and ssv mod slic2.0
    you said its a Core 7 bios, how does the updated tool work with Core 7 bios now

    im getting a willem programmer this week, so just wandering how much better will the tool perform updating this Core 7 bios, has it got better support for Core 7 now

    ive got a couple of motherboards to repair bios, so at least with the progger i can experiment a bit
    that asrock board used to run vista surprisingly well, so i wanna try Window7 on it

    any suggestions on this
    thanks
     
  15. nicholasf

    nicholasf MDL Novice

    Oct 15, 2008
    18
    0
    0
    #1220 nicholasf, Jan 4, 2010
    Last edited by a moderator: Apr 29, 2017