[Galaxy S I9000 General] midas5:
Hi,

I have been looking at 100% safe ways to get 3-button combo to get to recover/download screen.

I started this by downloading as many i9000 firmwares that I could find, and comparing them with what was on my phone.

After reading many other threads, I have discovered that:

1) boot.bin is stored in /dev/bml1 and is the Primary Boot Loader.

2) Sbl.bin is stored in /dev/bml4 and is the Secondary Boot Loader.

I used the "md5sum" program found on most Linux systems to compare different "boot.bin" and "Sbl.bin".

e.g.

md5sum -b boot.bin

445491b1aec42fe35f3a2505c4e74295 *boot.bin

I have 2 i9000 phones both are network unlocked.

One has Orange firmware on it

Orange firmware (downloaded from web):

445491b1aec42fe35f3a2505c4e74295 *boot.bin (no efused)

5e4914239bcbf6c565129e5f1475b876 *Sbl.bin

Orange firmware (actually on the phone)

0ff5571ed2dd51385cb1a5303991a1aa *bml1.dump (boot.bin efused)

5e4914239bcbf6c565129e5f1475b876 *bml4.dump (Sbl.bin)

Eclair standard firmware (downloaded from the web)

445491b1aec42fe35f3a2505c4e74295 *boot.bin

754854f2e84400704b49cbe470cbd671 *Sbl.bin

Aries firmware (That comes with Froyo, and also the recommended 3-button fix firmware)

445491b1aec42fe35f3a2505c4e74295 *boot.bin

3b86755ff4b6568d48c3c8064767dba2 *Sbl.bin

So, to avoid bricking a phone, you have to have "compatible" Primary and Secondary boot loaders.

The boot loaders that come in standard firmware must be compatible.

What you can see from the above.

1) My Orange phone has efused firmware, 3-button does not work, and the only difference between that and the standard Orange firmware downloadable from the web is actually only the boot.bin

Orange firmware (actually on the phone)

0ff5571ed2dd51385cb1a5303991a1aa *bml1.dump (boot.bin efused)

5e4914239bcbf6c565129e5f1475b876 *bml4.dump (Sbl.bin)

Orange firmware (downloaded from web):

445491b1aec42fe35f3a2505c4e74295 *boot.bin (no efused)

5e4914239bcbf6c565129e5f1475b876 *Sbl.bin

So, here I should be able to flash only the second boot.bin file (4454...) and not have to do the Sbl.bin file, and this should not brick my phone because the resulting boot.bin and Sbl.bin combination is a compatible combination.

2) All the boot.bin non-efused files are identical from both Eclair and Froyo.

So, once I have the

445491b1aec42fe35f3a2505c4e74295 *boot.bin

installed, I can then select any of the following Sbl.bin files and they will be compatible.

5e4914239bcbf6c565129e5f1475b876 *Sbl.bin

754854f2e84400704b49cbe470cbd671 *Sbl.bin

3b86755ff4b6568d48c3c8064767dba2 *Sbl.bin

I can use heimdall in Linux, so I can flash individual boot.bin files quite easily.

I have not done any flashing yet, but I think this safe step by step approach to getting to a 3-button combo working solution is probably a lot safer than some other approaches found on the web.

It has the added advantage that we can document known good combinations, and thus, we can be 100% sure it will not brick the phone.

We can also allow users to check their bml1 and bml4 image currently on their phone, and then they can immediately find out if it is a known good pair of boot-loaders, or some new, unknown pair, so to be cautious as it might brick their phones.

I am waiting to get a usb micro connector so that I can make a jig with the 301K resistor, before I try to recover a 3-button combo working.

Can anyone see any flaws with my approach?