How to determine cause of boot halt in Samsung logo screen?
First of all, it always a good thing to have USB Debugging on. It can help you check your phone and even recover it if something is wrong.

When your phone is on a boot loop and won't start correctly, you can use adb to check where might be the problem. Connect your phone via the USB cable to a PC with adb and then type the following:

adb logcat


Power your phone and you should see, as your phone starts the boot secuence, a lot of information in the adb window. That is the current log of your phone boot secuence (like the one you can see in linux for example). If the phone ends in a boot loop, you should be able to see what is trying to do and then try to fix it.