How to Build Custom uLaunchELF
(with launch argument support)
by Iritscen

1. Unzip gshi_ps2sdk.7z, which is a prebuilt binary version of ps2sdk.  Be warned, this zip contains many thousands of files because it also contains a preinstallation of msys and the needed tools for building projects with ps2sdk.  Follow the instructions in the expanded .7z for installation of ps2sdk.

2.  In the msys command prompt, switch to the uLaunchELF/ directory.
	A. Execute "make".
	Note: The build process will fail halfway through; although the supplied ps2sdk has been patched to allow builds of uLE, the patches were probably intended for a different version of uLE.  I had to customize an old version of uLE (v4.40h) that was still compatible with PCSX2 (the changes I made to a few files are noted with "Iritscen:" comments).  So because this version is slightly out of sync with the patches, you will receive a build error originating from the uLaunchELF/hdl_info/ directory.
	B. Switch into the hdl_info/ directory and open Makefile for editing.  As my comment in the file indicates, you need to remove the "-c" option from IOP_CFLAGS.  Save the file and close it.
	C. Back out to the uLaunchELF/ directory and execute "make" again.  The build should complete, producing a BOOT.ELF in this directory.
	Note: To build uLE again in the future, you will need to restore the Makefile's "-c" option and go through the process of failed build->removal of "-c"->completion of build.

3. Use this BOOT.ELF binary along with the other files supplied in the directory above source/ to supply launch arguments to your PS2 game in PCSX2.