Help With Modifying AMI Bios

Discussion in 'Windows Vista' started by hellohello, Jun 5, 2007.

  1. hellohello

    hellohello MDL Junior Member

    May 10, 2007
    95
    18
    0
    #1 hellohello, Jun 5, 2007
    Last edited by a moderator: Apr 20, 2017
    First of whole, I am new to this thing. I would like to learn how to mod the bios myself so that hopefully I can help others to do it.

    I am using this guide
    Code:
    http://www.mydigitallife.net/2007/02/18/improved-way-to-add-slic-slp-20-table-into-bios-acpi-to-activate-windows-vista-oem/
    I am trying with asus p5rd1-vm 1104 bios.

    I am stuck at the very beginning lol.

    At step number 3, it says there, if it does not comes with .bin, rename it. Also, WinFlash is mentioned too.

    Now, I rename it from .rom to .bin, open modbin6.exe. I dont see any new files created as it should be.

    I am wondering if I should use WinFlash. However, I have no idea how to use it.

    Any help would be greatly appreciated.
     
  2. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    11,172
    10,931
    340
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  3. hellohello

    hellohello MDL Junior Member

    May 10, 2007
    95
    18
    0
    Thanks Yen. I will try to understand it.

    I have read it. I can understand most of it.

    Phew, I dont really think I can do it lol. Well it still worth a try :)
     
  4. gemoney

    gemoney MDL Novice

    May 30, 2007
    35
    0
    0
    I have been trying this Improved Way to Add SLIC (SLP 2.0) Table into BIOS ACPI to Activate Windows Vista OEM and I have repeated this steps again and again. After flashing the Bios and then using HWDirect to find SLICv or SLIC. I can not find neither..... I am so determaned to flash this Bios myself and see if I can do but no success......is there better translation of the AWARD BIOS perfect activation VISTA Super static? lol...I have no idea what the first part is talking about:confused: but the second part does make sense:)
     
  5. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    11,172
    10,931
    340
    At the beginning Zhaoliang describes how to extract pubkey and marker from a preinstalled vista bios. You don´t need, cause you have extracted SLIC already!

    If you have detailed questions about, please ask.

    Yen
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  6. hellohello

    hellohello MDL Junior Member

    May 10, 2007
    95
    18
    0
    I modified p5rd1-vm bios 1104.

    I have done most of the part as in the guide. Except the part for RSDT and XSDT since the bios does not have these two. Phew, that makes the modifying so much faster lol.

    The result, I get the SLIC table at address 00005950. I compared mine with the one modified by XBIOSES, which the SLIC table is at 00005940.

    I guess I made some mistakes. Does anyone has any idea?

    Also, about calculating SLIC memory address, the bios is 512kb, so

    FFF80000h + 5950h = FFF85950h

    As I know that address is for the last three pictures as in the AMI guide page 2. I dont seemed to get the use of it. Can anyone explain that too?

    Thanks :)
     
  7. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    11,172
    10,931
    340
    ???:confused: I extracted 1b module (uncompressed with Mmtool) and had a look with winhex:

    There is RSDT table at offset 41D74h and XSDT at offset 41E74h!!!
    After inserting Asus Slic as module 23 UNCOPRESSED its place is 5950h. (You have to uncheck writeprotect of bios).
    At 1b module the byte after RSDT string is 28h. You have to increase +4 result is 2Ch. Change it.

    Now edit OEM table ID beginning with A M I OEMRSDT (start editing "A") with _ASUS_Notebook
    Now have a look at XSDT. The byte after is 2Ch. You have to increase table length byte +8 to 34h. Now do the same and edit correct OEM table ID _ASUS_Notebook beginning with "A" of A M I OEMRSDT.

    Calculate pointer: FFF80000h + 5950h = FFF85950h (this formula cause your bios is 512 kb)
    Now go back to RSDT. Count forward 41 bytes beginning from "R" of RSDT.(R=1) This will be the first byte to insert pointer. Pointer is reversed address of calculated value. Calculated value was: FFF85950h, so reversed pointer is: 50 59 F8 FF. Insert now beginning of offset 41 as said.(here at offset 41D9Ch)

    Pointer has to be set for XSDT, too. Count forward 45 (41+4 cause it´s 4 bytes longer) beginning from "X" of XSDT (X=1) and insert same reversed pointer, too (here at offset 41EA0h).

    Save changes to 1b. Replace original 1b module with the edited one using amimmwin: amimmwin P5RD1-VM-ASUS-1104.ROM /r 1b 1b.rom (1b.rom is filename you named 1b module by extraction)

    Now new 1b module is replaced with original. After that you have to check Slic address (offset) again.
    Open P5RD1-VM-ASUS-1104.ROM with Winhex again and search for SLIC. And NOW YOU WILL FIND IT AT 5940h!!!
    This is the answer of one of your questions. The address changed from 5950h to 5940h due to compression, which means the correct pointer is now 40 59 F8 FF!!!
    Open (extracted) 1b.rom again with winhex and correct the byte at RSDT pointer AND XSDT from 50h to 40h. Save again and replace again (amimmwin P5RD1-VM-ASUS-1104.ROM /r 1b 1b.rom)

    YO, now your mod is done.
    Now you know what all the modders are doing for all the people:) :) :)

    Good luck, Yen
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  8. hellohello

    hellohello MDL Junior Member

    May 10, 2007
    95
    18
    0
    #8 hellohello, Jun 9, 2007
    Last edited by a moderator: Apr 20, 2017
    (OP)
  9. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    11,172
    10,931
    340
    I checked it and IMO it´s modded correctly! You can extract your 1b module and Xbioses and compare with winhex, but I think it´s not necessary. The most important is the pointers position!

    I have no idea, why there is MD5 difference.

    You did it! :) Hope this instructions help others, too:)

    Yen
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  10. hellohello

    hellohello MDL Junior Member

    May 10, 2007
    95
    18
    0
    Yahooo, finally I did it. Thanks Yen for checking it. I will keep re-mod this bios and when I can do it faster without any problems, it is time to help others modding.
     
  11. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    11,172
    10,931
    340
    Since there are even differences between the Ami bioses you ´ll need to know more methods to mod. But this one is the most needed. Anyway if you have got more questions feel free to ask again.

    Enjoy modding...


    Yen
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  12. Roman

    Roman MDL Addicted

    Jun 5, 2007
    645
    81
    30
    Yes.
    256KB => FFFC0000h
    512KB => FFF80000h
    1024KB => FFF00000h
    2048KB => FFE00000h ? - Right?
     
  13. flagmax

    flagmax MDL Member

    Jun 22, 2008
    206
    2
    10
    I am trying to learn AMI bios now so I will to ask questions in this thread. Hope original poster don't mind.

    1. Yen, unlike AWARD modding, with AMI when you increase RSDT table length by 4 and XSDT by 8, you do NOT insert the extra 00's bytes at end of tables pushing everything forward, correct?

    2. What cases this method can not be used?

    3. What compression does AMI use, do you know a manual way to unpack like with AWARD?

    4. I know there are automated tools for AMI, but do the modders use them?

    I want to feel comfortable with AMI before helping others.

    Thanks.
     
  14. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    11,172
    10,931
    340
    #14 Yen, Jul 10, 2008
    Last edited by a moderator: May 23, 2017
    1. Yes, correct. There is already enough space to extend both tables

    2. MSI AMI bioses, known boards e.g. P35, G33. Therefore use the manual SSV2 method:
    http://forums.mydigitallife.net/posts/22879

    3. I don't know about the compression algorithm. To unpack AMI8 core bioses use AMIMMWIN or MMtool 3, to replace the 1b module (main bios) (yes AMI tools ARE able to replace) use AMIMMWIN only. To mod old AMI7 core bioses you need a special method and (AMI)BCP and / or MMtool 2 to edit. But AMI7 core bios mods are almost not requested to modify.

    4. Yes. The AMISLIC3 tool is very reliable. It introduces the SSV3 method.
    http://forums.mydigitallife.net/threads/336

    The method described at ealier post is about SSV1.
    I open the bios with MMtool and have a look at the structure. I also extract the 1b (main bios) module to have a look at it.
    (Is there a SLIC already, or the string only?)

    Some original AMI oem bioses use the FC module to store the SLIC (without header, Pubkey and Marker only). Some AMI bioses contain a configuration lock at 1b module. If the FC module is already present I try to make a real FC mod. (Therefore there is the FC-10 tool, or a manual way). If not, I use the AMISLIC3 tool. Since the availability of AMISLIC3 tool there is almost no need to use a manual way.

    The AMISLIC3 tool works anyway, no matter of config lock.;)
    IMO the AMISLIC3 tool is the best mod tool at all:) Even better than the ISA method at Award.

    There are some other manual ways as well.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  15. tekken

    tekken MDL Junior Member

    Jul 5, 2007
    74
    0
    0
    I'm going to mod Asus P5Q bios. Can I use AMISLIC3 tool or another method?
     
  16. tekken

    tekken MDL Junior Member

    Jul 5, 2007
    74
    0
    0
    Ok, thanks :)
     
  17. tekken

    tekken MDL Junior Member

    Jul 5, 2007
    74
    0
    0
    I used AMISLIC3 to mod Asus P5Q PRO 1004 beta bios and when I try to flash it I get message "Boot block is not valid" or something similar.

    I flashed P5Q Pro - Ver. 0703: AMI slic = Asus. Mod Fzeven, tst cykelpump, moded by Fzeven and it works fine. So I want to ask Fzeven what method did you use to mod bios 0703?

    Thanks
     
  18. cristiano.orlando

    cristiano.orlando MDL Novice

    Dec 21, 2010
    9
    0
    0
    I know i am ressurecting a very old topic

    But, I posted my problem in another part of the forum, but still didnt get answers

    I need to modify my bios
    its an A1637IMS 1.7, from a MSI PR600 Notebook

    I opened the dumped rom with some programs to figure out what i must do, but i am affraid of making some crap and brick my notebook ehehehe

    and with AMIBCP 3.37 i found
    0x0181 Intel Virtualization Tech
    - 0x000 49 6E 74 65 6C 28 52 29 20 56 69 72 74 75 61 6C
    - 0X010 69 7A 61 74 69 6F 6E 20 54 65 63 68


    But i don´t know exactly if this is the place to change some stuff

    i tried to attach the bios file but its impossible to upload (it gets stuck at 20% )

    tks !
     
  19. urie

    urie Moderator
    Staff Member

    May 21, 2007
    8,709
    3,066
    300