Request thread to insert SLP1.0 into BIOS

Discussion in 'BIOS Mod Requests. Post Requests Only' started by kageon1, Aug 20, 2007.

  1. Pajero

    Pajero MDL Novice

    Oct 2, 2007
    8
    1
    0
    To Yen,

    First of all, I'd like you to understand I'm not puzzling you. I'm just cautious that too much detailed explanations on this kind of topics could lead to something troublesome in various meanings. But, being confined to changing strings of System BIOS module of Award BIOS, I can show you an "easy-to-use" approach in which you don't need to use any debugging tools:

    <Tool>
    - Modbin6.exe
    - WinHex (Registered one, otherwise you cannot edit physical memory)

    <Step>
    1. Open bios file with modbin6, and do nothing on this program.
    2. Start WinHex, and go to: "Tools" ==> "Open RAM" ==> "Ntvdm #****" ==> "Primary Memory"
    3. Edit target strings deployed in the memory, and go to: "File" ==> "Save"
    4. Back to modbin6, and save the bios file.

    That's all you have to do. It's very easy, right? But you may have to go through "try & error" until you succeed, because you will encounter similar strings in the memory and it may take you some time to identify the correct strings & areas to be edited.
    Please don't ask any more questions on this topic.


    P.S.
    Regarding award bios with 1,024KB in size, such as Gigabyte's, I have not tried modding so far. After your report, using modbin6, I opened & saved the bios, and found that 2 bytes of "appendix" is added to the end of the file. I guess that you can simply delete those 2 bytes, but I'm not sure about it because I cannot check it on real PCs. Anyway, modding tools currently available are too obsolete to handle newer versions of award bioses, as you agree.

    Pajero
     
  2. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    13,081
    13,980
    340
    #82 Yen, Nov 5, 2007
    Last edited: Nov 14, 2007
    Thanks again I really appreciate. That's very easy.:)

    Approach to circumvent modbins weakness:

    There is a new version of modbin, dated February 2007, but it’s not freeware and I don’t know from where to get.


    Cbrom 1.82 is new enough to handle newer bioses (with MEM INIT IN BB).

    Cbrom creates a file called bios.rom after you’ve inserted a module. THIS IS ALWAYS the compressed code of the module you’ve inserted before.
    Extract system bios and modify it. Insert the modified systembios (cbrom yourbios.bin /other 5000:0 systembios.bin) into the bios again to get the bios.rom (it’s twice in there but we don’t need that bios)
    Now we have got the modified systembios, compressed as bios.rom.

    Open a ‘fresh’ original bios and release ALL modules, except the original system bios. Now paste the bios.bin file into the bios at start of the original position. Make sure that you add enough FFh bytes if the compressed size of the modded systembios is smaller than the original one. (Same size or even bigger is no problem)

    Add all modules again using cbrom and remaining the order. Concept should be proven!

    Edit: Concept is proven! Right after the zero byte of the inserted compressed systembios you have to insert its 8 bit checksum to remain its integrity. Then it'll work!
    Then you may even overwrite the compressed systembios without releasing all the module if it's size is exactly the same as those of the original again!!

    Yen
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  3. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    13,081
    13,980
    340
    #83 Yen, Nov 9, 2007
    Last edited by a moderator: May 23, 2017
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  4. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    13,081
    13,980
    340
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  5. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    13,081
    13,980
    340
    Thanks for reporting. Glad to hear that the bios is working. Since you have to manipulate the system bios it's a bit picky!

    Thanks again to Pajero who told me that trick to edit the RAM directly!

    Well, yes! There are some programs that can test that.
    But you can easily test if SLP1.0 would work. Dump again this: Open a cmd and type 'debug' and hit enter, then type -d F000:DFC0 and hit enter again.

    The valid range here for the Sony Corporation string is F000:DFC0 - F000:E000.
    You should find now the string right before the 'Phoeni' string;)

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

    Yen Admin
    Staff Member

    May 6, 2007
    13,081
    13,980
    340
    For safety I need the oembios.cat file from your xp installation or if not installed the oembios.ca_ from the CD (it's the same on CD, but compressed). I'll analyze it to find the matching string. After that you'll get the new mod!
    Please upload it as well!

    Yen
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  7. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    13,081
    13,980
    340
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  8. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    13,081
    13,980
    340
    #91 Yen, Nov 13, 2007
    Last edited: Nov 13, 2007
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  9. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    13,081
    13,980
    340
    #92 Yen, Nov 13, 2007
    Last edited: Nov 13, 2007
    LooooLLL:):p:)

    My approach seemed to work! You'll get a error when you try to insert the systembios twice. But it doesn't matter, the bios.rom file (compressed systembios) is created anyway!

    BUT: Check your systembios at offset 17630h there is the ASUS_FLASH string already. Dump your memory at the valid range of Asus. (FC000 size 3FFF). There should appear the ASUS_FLASH string.

    Duuuh. Your bios got SLP1.0 for ASUS already!!:p

    Please report.

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

    perbe MDL Novice

    Nov 4, 2007
    44
    6
    0
    Thanks for fast replay! It was i smart way to recompress the lha :) I manage to recompress it to the same size with dell slic just changed the biosinfo to the size was equal.. I put the file back into the bios and triedto flash it... The pc wont start... but I can program it on another pc.. Are there any checksum or something I have to add ? there are 1 byte between the lh5-original.tmp and -lh5-cpucode.exe ...
     
  11. perbe

    perbe MDL Novice

    Nov 4, 2007
    44
    6
    0

    wow!

    Will test it now.
     
  12. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    13,081
    13,980
    340
    Anyway I checked it again. I've seen that the compressed size of the modified systembios should be 111d2! It ends at offset 111d1! There is the last zero byte.

    So the size has to be 111d2 even if showed at cbrom a size of 111d3.
    That's probably the reason why it didn't work!

    Before the '-lh5' string you have always to remain three bytes! (E7 24 BE)

    Just for additional info;)

    Yen
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  13. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    13,081
    13,980
    340
    #96 Yen, Nov 13, 2007
    Last edited: Nov 13, 2007
    The reason why it isn't working is probably of a bad integrity of the systembios. You can try to insert a small module and to release it again. Maybe cbrom corrects the checksum and it will work after.
    Maybe without modbin it's not possible to make a mod.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  14. perbe

    perbe MDL Novice

    Nov 4, 2007
    44
    6
    0
    It was a checksum after the end of the lh5 module..

    original.tmp 70098 bytes sum8: E7
    original.tmp.dell 70098 bytes sum8: 2F

    E7 are the byte that I found after the original.tmp in the unmodded bios, when I replaced the module and changed the byte to 2F that is the sum8 of the new module it worked! I tried Dell XP and it was activated!

    Thanks for all your help! Will post the working bios in the new tread.

    -perbe
     
  15. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    13,081
    13,980
    340
    #98 Yen, Nov 14, 2007
    Last edited: Nov 14, 2007
    Thanks a lot for that info. You did it very well. :)

    I had no practical experience about a completely manual way to edit the bios so far. My approach was absolutely in a theoretical way. Now we have a method without using modbin. Your idea with the checksum made it finally possible.

    Glad that I could 'update my knowledge!'

    Thanks for trying.

    Yen
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  16. Yen

    Yen Admin
    Staff Member

    May 6, 2007
    13,081
    13,980
    340
    #100 Yen, Nov 15, 2007
    Last edited: Nov 15, 2007
    Interesting! Just to move the code backwards is working. Thanks again, that was new to me!
    "'f000','0000','ffff'" means, if I understood that right, a very large range from f0000 to fffff.

    BTW: To see if you've got the right oem files just get the crc32 checksum of oembios.cat file (or decompress the oembios.ca_ file by using the expand command to get it) and compare it with the CRC given at the link. The corresponding compress command is the makecab command.

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