[Galaxy S 5 General] sunilpaulmathew:
This project is discontinued. Please do not expect any replays from me in this thread. You may still use the attached files (if available) in your own risk. Thank you...

Have you ever faced ‘Could not do normal boot’ message after flashing custom ROMs? As a user of Korean variant of Galaxy S5 SM-G900S/K/L (klteskt - kltektt - kltelgt: little support from the development community), I frequently encountered with this issue while flashing ROMs for the international version SM-G900F (klte) which is highly supported by the development community. I used the following protocol to make such ROMs bootable in my device.

/* Warning */

I am not responsible for any damage to your device. Everything you are doing on your mobile is on your own risk.

This protocol is only tested in Korean Galaxy S5 SM-G900S/K/L (klteskt - kltektt - kltelgt).

You may try this protocol in any devices having similar variants (eg: GT-19506 &SHV-330S/K/L) however in your own risk.

Please note that rooting and flashing custom recoveries/ROMs will void your warranty.

/* Requirements */

Rooted SM-G900S/K/L with a working custom recovery (I used TWRP for the klte variant. Please note that a recovery image of klte variant is necessary for flashing any custom ROMs originally developed for that variant).

Working Linux system (I used a standalone Ubuntu system. You might use virtual environments like VirtualBox or Cygwin etc.)

mkbootimg_tools (make sure that ‘perl’ is installed in your system)

A tool to apply the edited boot.img to your device (eg: Heimdall suite (my choice), odin etc). Alternatively, you can also flash the same file via recovery after making into a flashable zip. To use heimdall suite, you might requires packages like Android SDK/NDK and adb.

Little knowledge on using Linux terminal/console.

/* Step-by-step procedure */

1. Extract the ‘boot.img’ from your Stock and custom ROMs (same android version is advisable) and placed in two separate folders.

2. Download and extract all the files from mkbootimg_tools into both folders.

3. Now run terminal/console and locate the folder in which the stock ‘boot.img’ is copied.

4. Enter the following command to extract the ‘boot.img’: perl mkboot boot.img ext

The ‘boot.img’ is now extracted into the newly created folder ‘ext’. The folder looks like this.

[IMG="'ext' folder"]http://xdaforums.com/attachment.php?attachmentid=3722451&stc=1&d=1460960242[/IMG]

5. Repeat the same process after moving into the second folder (in terminal) in which custom ROM ‘boot.img’ is copied.

6. Now replace the 'dt.img' within the custom ROM 'ext' folder using the same named file from the stock ROM.

7. Repack the 'boot.img' using the following command: perl mkboot ext/ newboot.img

8. Flash the 'newboot.img' to device (after rename into 'boot.img') immediately after corresponding ROM and GAPPS using your favorite flashing tool (before reboot). Yes. You are done. Reboot and enjoy your new ROM (also ready to face little bugs).

/* Tested ROMs */

Please check the second post for the list of tested ROMs along with the modified 'boot.img' (as aflashable zip file). More entries will be added soon. I really appreciate the proposal of new entries (with custom 'boot.img') as comments.

/* Acknowledgements */

Team Win Recovery Project

xiaolu and Modding.MyMind for mkbootimg_tools

Our Korean Galaxy S5 Facebook group member’s (They are the first victims of my experiments)

Many other XDA developers