Forum RSS Feed Follow @ Twitter Follow On Facebook

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[-]
Welcome
You have to register before you can post on our site.

Username:


Password:





[-]
Latest Threads
[REQUEST] Lenovo Legion 5 (EFCNxxWW) BIO...
Last Post: fistandantilus
Today 03:50 PM
» Replies: 43
» Views: 20453
Bios modding to support more RAM (Pegatr...
Last Post: DeathBringer
Today 01:33 PM
» Replies: 1
» Views: 50
[SOLVED] DELL Inspiron 15R 3521/5521 BIO...
Last Post: MrleAnd
Yesterday 02:28 PM
» Replies: 136
» Views: 87075
[REQUEST] Acer Nitro 5 AN515-54 BIOS Unl...
Last Post: Dudu2002
Yesterday 01:06 PM
» Replies: 126
» Views: 52499
[Request] ASUS X93SV (Whitelist Removal)
Last Post: Supercharger
Yesterday 05:48 AM
» Replies: 1
» Views: 2291
Downgrade bios for Acer Aspire E1-571(G)...
Last Post: Rodrigowbs
03-29-2025 11:18 PM
» Replies: 24
» Views: 21603
[Request] Samsung Series 7 Slate PC
Last Post: SwCore
03-29-2025 10:23 PM
» Replies: 16
» Views: 17271
[Request] Alienware M18 R1 AMD(version) ...
Last Post: 009drmq
03-29-2025 09:20 AM
» Replies: 0
» Views: 245
Acer nitro an16-41 device bios is corrup...
Last Post: Serwintes
03-29-2025 07:25 AM
» Replies: 0
» Views: 193
[REQUEST] Lenovo G710 BIOS Whitelist Rem...
Last Post: Sonnnnnni Sid
03-29-2025 06:41 AM
» Replies: 485
» Views: 190685
MSI MS 7301 cuba packardbell
Last Post: Turyfriscu
03-29-2025 02:08 AM
» Replies: 0
» Views: 176
Toshiba Satellite A210 A215 v2.30 With T...
Last Post: rodcsant
03-28-2025 02:14 PM
» Replies: 10
» Views: 28971
[REQUEST] Lenovo IdeaPad Z570 (45CNxxWW)...
Last Post: SparklyTR124
03-28-2025 08:27 AM
» Replies: 93
» Views: 107706
[REQUEST] Lenovo Ideapad 100-14IBD & 100...
Last Post: sery2004@gmail.com
03-27-2025 10:44 AM
» Replies: 24
» Views: 12246
[REQUEST] Lenovo X270 (R0IETxxW) Whiteli...
Last Post: webhard1
03-27-2025 10:32 AM
» Replies: 25
» Views: 7955
Toshiba Satellite L775 BIOS Unlock Reque...
Last Post: R4nd0m1985
03-27-2025 03:07 AM
» Replies: 7
» Views: 3182
Acer Aspire M3641
Last Post: gnappolone
03-26-2025 01:35 PM
» Replies: 0
» Views: 300
HP 15-ec1037 & AX211
Last Post: DjFapben
03-26-2025 10:59 AM
» Replies: 0
» Views: 381
[REQUEST] Lenovo Thinkpad Edge E430 & E5...
Last Post: oplok71
03-25-2025 05:57 PM
» Replies: 495
» Views: 191430
Sony VGN-FE660G R0174J3 With Sony 2.1 SL...
Last Post: goka
03-25-2025 02:29 PM
» Replies: 15
» Views: 18222

[How To] Phoenix BIOS Modifications
#1
Information 
I'd like to add a few tutorials to this thread. The first one I am going to be adding is for BIOS modders (or "aspiring" modders). This tutorial will teach you how to fix a PhoenixTool error message that occurs when repacking the modified TEMPLAT module. PhoenixTool says that the file is "4 bytes too long" or some other number of bytes too large or small even though the TEMPLAT file is EXACTLY the same size as before.

The reason that this issue occurs is compression. When you modify bytes, the entire file must recompress differently. In some cases, the modification will cause the modified file to be bigger when compressed than the original file. Since PhoenixTool does NOT want to change the offsets of the modules, it refuses to repack if the repacked file size is different. The different recompression is also why, when repacked, the modded BIOS image will have a massive number of sequential modified bytes in the place where the TEMPLAT module is in the image.

CREDITS: Yen from MDL taught me about why this happens and how to fix it. I am just converting his tip into a full tutorial for public use.

NOTE: In this tutorial, I will be using my BIOS image (R0070J4) as an example. Here is the link. The file "bios.wph" in the linked archive is a flashable BIOS image. You will only need the unmodified BIOS image ("bios.wph") for this tutorial, but the following 2 files serve as an example. The "TEMPLAT0_mod.ROM" file contains an example of the "spacing" in the offset range 0x686B-0x689D. Notice how I replaced the text with spaces (In hex a space is 20h). Compare this with the "TEMPLAT0.ROM" file (original unmodified TEMPLAT).

NOTE: I will be using HxD Hex Editor in this tutorial as well.

Reproduction of this error:
1.) Perform your modification (such as adding a menu or changing an option, you only need a single byte to reproduce the error) on TEMPLAT0.ROM, but keep the file size EXACTLY the same.
2.) Attempt to repack the image with PhoenixTool.
•No SLIC, no other options checked that will modify the image (no ID replacement, etc.)
•Dynamic style mod (This error also appears with SSV2)

Instructions

1.) Perform your modification to the TEMPLAT0.ROM file. Make sure the file size stays EXACTLY the same. Copy the modified file to another directory before continuing to the next step (as it will undo your work). The best way to do this is to unpack the image, copy the TEMPLAT module to a nearby directory, mod it from there, and then copy paste it back to the DUMP directory whenever you want to repack the image with PhoenixTool.

2.) Try to repack the image with PhoenixTool. Take note of the error message (specifically how many bytes the file is "too large" or "too small"). This number of bytes will be the approximate number of bytes in the text string to replace with spaces.

3.) Search (plain text) for "PCI SCSI:" or just "PCI". You should come across a text string. In this BIOS, it is "PCI SCSI: LSI MPI Boot Support".

4.) After the "PCI SCSI:" (you could do it before, but this will make it difficult to differentiate the text string from the hex code which you do NOT want to edit), click in some part of the text string in the text column of the hex editor and replace characters with spaces. The number of spaces will be approximately the number of bytes in the error message from step #2.

Example:

If the file was "4 bytes too large," you would turn
Quote:Ã..PCI SCSI: LSI MPI Boot Support.....................

Into...

Quote:Ã..PCI SCSI: ___ _PI Boot Support.....................

Note: In this example, I used 4 underscores, because the site would not let me keep the spaces. In your modification, you would input spaces, not underscores.


5.) Save this file and copy it back to the DUMP directory for repacking. When repacking, if the file it still "x bytes too long," try replacing x number of bytes in the text string with spaces, then try repacking again.

6.) If the image successfully repacks, check the little log portion of the PhoenixTool window for a message saying that the TEMPLAT module was "x bytes too small." If so, replace x number of spaces with the original text in the text string and repack again.

7.) Perform steps #5 and/or #6 as many times as necessary. For my full(ish) unlock of 3 new parent menus, it took 2 tries.

8.) Congratulations, you now have a modified BIOS!

Be sure to unpack the file to verify that the modules weren't mutilated in the normal repacking process (I do this for ALL BIOS mods, regardless of whether or not the size issue is present). You can test your image in PBE.


NOTE: I will be updating this thread with more examples within the tutorial. If you have any questions or suggestions, feel free to contact me.

~Steven

!!!!!PLEASE READ!!!!!! Our Ukrainian friends are undergoing atrocities right now and need support. There are two things you can do for starters:

1.) Donate to one of various organizations offering medical, military, and psychological support to those impacted: Support Organizations

2.) Combat misinformation on social media. 

Also, please feel free to PM me if I have not replied again about your BIOS mod request after 5 days.
www find
quote
#2
Information 
This is the next installment in my Phoenix modding tutorials series. In the linked tutorial, I will be explaining, in detail, how to trace NVRAM registers to and from your symcmos NVRAM Token Table dump and their respective plain text strings in STRINGS0.ROM.

Here is the link to the tutorial in the bios-mods Wiki.

If you wish to discuss the tutorial, please go to this thread.

I have created a thread dedicated to the finding and documentation of Phoenix NVRAM registers on bios-mods. Here is the link to the NVRAM Register Master List. So far, the list includes VT-x, AHCI, & DEP registers. Upon request, I can find other registers as well (such as thermal settings).

~Steven

!!!!!PLEASE READ!!!!!! Our Ukrainian friends are undergoing atrocities right now and need support. There are two things you can do for starters:

1.) Donate to one of various organizations offering medical, military, and psychological support to those impacted: Support Organizations

2.) Combat misinformation on social media. 

Also, please feel free to PM me if I have not replied again about your BIOS mod request after 5 days.
www find
quote
#3
Alright so I have some advice and a problem.

Advice: de-compile using Andy P's SLIC tool as it is a bit more updated, less glitchy, and/or if PBE won't properly load your BIOS.
Also here is a link to another thread that also has a complete PDF on how to edit a phoenix BIOS:
https://www.bios-mods.com/forum/Thread-P...OS-modding

Problem: I de-compiled 2 dell BIOSs and both don't have their files with names like "template0" and "strings0". Instead they are just listed as hex numbers like "0E_22" or "09_17" which does not help differentiate which file is which.

Any help?

P.S I know this thread is old, I hope someone replies...
find
quote
#4
(09-19-2017, 05:48 PM)1creeperbomb Wrote: Alright so I have some advice and a problem.

Advice: de-compile using Andy P's SLIC tool as it is a bit more updated, less glitchy, and/or if PBE won't properly load your BIOS.
Also here is a link to another thread that also has a complete PDF on how to edit a phoenix BIOS:
https://www.bios-mods.com/forum/Thread-P...OS-modding

Problem: I de-compiled 2 dell BIOSs and both don't have their files with names like "template0" and "strings0". Instead they are just listed as hex numbers like "0E_22" or "09_17" which does not help differentiate which file is which.

Any help?

P.S I know this thread is old, I hope someone replies...


If you upload the BIOS images, I may be able to answer your question.
~Steven

!!!!!PLEASE READ!!!!!! Our Ukrainian friends are undergoing atrocities right now and need support. There are two things you can do for starters:

1.) Donate to one of various organizations offering medical, military, and psychological support to those impacted: Support Organizations

2.) Combat misinformation on social media. 

Also, please feel free to PM me if I have not replied again about your BIOS mod request after 5 days.
www find
quote
#5
(09-20-2017, 08:12 PM)Sml6397 Wrote:
(09-19-2017, 05:48 PM)1creeperbomb Wrote: Alright so I have some advice and a problem.

Advice: de-compile using Andy P's SLIC tool as it is a bit more updated, less glitchy, and/or if PBE won't properly load your BIOS.
Also here is a link to another thread that also has a complete PDF on how to edit a phoenix BIOS:
https://www.bios-mods.com/forum/Thread-P...OS-modding

Problem: I de-compiled 2 dell BIOSs and both don't have their files with names like "template0" and "strings0". Instead they are just listed as hex numbers like "0E_22" or "09_17" which does not help differentiate which file is which.

Any help?

P.S I know this thread is old, I hope someone replies...


If you upload the BIOS images, I may be able to answer your question.
~Steven


Alright, since the max limit of files is 5 I had to upload to google drive instead (link below).

These are the files I got after using Andy P's SLIC tool to decompile it from a dell bios .exe file. Interestingly, by uploading to the google drive it registered some of the rom files as an image which looks like a boot logo and 6 "intel inside" logos. This further removes some files out of the list however there are still a lot that are unidentified.

https://drive.google.com/drive/folders/0...sp=sharing

Thanks for reply   Big Grin
find
quote


Forum Jump:


Users browsing this thread: 1 Guest(s)