Welcome to the dark corner of BIOS reverse engineering, code injection and various modification techniques only deemed by those immensely curious about BIOS
Monday, March 2, 2015
Remote Access in Legacy BIOS
As you can see, the terminal looks like how you would expect it when accessed via real keyboard. Unfortunately, some function keys are not working as expected. You can configure the serial port just like you'd expect on old BIOS with serial port support, i.e. the BAUD rate, flow control, bit-ness (8-bit), etc.. The Remote Access menu in the picture is where one would configure the serial port setting for the remote access (serial console).
I'm "dusting-off" this old board from storage because it's quite a nice board to tinker with. I almost forgot that it has remote BIOS access feature back then. Basically, it works like Linux serial terminal in most embedded Linux boards out there. But, this one is limited. I think many enterprise-class motherboard has this feature back in the day and also today because it's a very crucial feature for remote manageability especially if you have thousands of machine to work with. Keep watching this one guys ;-). It's gonna be interesting..
Friday, March 12, 2010
Using Modbin6 in Linux
pinczakko@opusera:~/$ wineconsole MODBIN6.EXEThis is how the snapshot of the console which is spawned by the command above:
Now, you can use the spawned console (which already runs modbin6) to navigate to the BIOS binary which you want to edit. Note that the path to the binary will default to "C:\" in wineconsole which would be in your wine "home directory". In my case the wine "home directory" is at ~/.wine and drive C in that directory is at ~/.wine/drive_c.
Therefore, if you want to place the BIOS binary which you want to edit in drive C (C:\), you should copy the biary over to your drive_c directory, which is in my case at ~/.wine/drive_c. Below is the screen shot from a running Modbin6 in wineconsole.
That's it. Now you should be able to work with modbin6 in linux.
Monday, December 7, 2009
Running Hexworkshop with Wine
Fortunately, it works just fine under wine albeit sometimes with noticeable--but not distracting--slowdowns. Here is the screenshot of Hexworkshop

Anyway, the difference between the AMI BIOS tools and Hexworkshop, lies in their installation method. You have to "install" Hexworkshop to wine (by using the winefile utility or other similar means) prior to using it, while AMI BIOS tools are just fine to invoke directly from the shell, such as:
pinczakko@opusera:~/work_in_progress$ wine AMIBCP_V3.37.exeThat's it. Now, I can mess with AMI BIOS file in Linux.
AMI BIOS Modification in Linux
Since I have a rather weird 3G modem that doesn't work correctly in Windows, I have to use Linux (x86_64) to get online. This is a drawback when I want to do some BIOS modification, until just now. I experimented with Windows AMI BIOS tools recently in my Slamd64 Linux installation with wine. The result is promising. The BIOS binary produced by the AMI BIOS tools runs just fine, equal to modifying the BIOS in Windows. Well, there is some warning of unimplemented filename related API when I run MMTOOL but overall, it works just fine.
Below is AMIBCP screenshot running under wine in Linux
Below is the screenshot of MMTOOL running under wine in Linux

Perhaps, you noticed the weird font rendering. Well, I can't get the font right yet on applications running under wine in my system.
So, now I can do BIOS modification in Linux (at least AMIBIOS) without having to resort to the "painful" Windows installation in my machine.


