Demo triple boot iOS 5.1.1, 6.1.3 dan 7.1.2 di iPhone 4 (video)
The iOS device normally do a signed boot to iOS 7.1.2 untethered jailbroken at userland level. I resized the data partition, then I created four new partitions (system, data for iOS 6 and system, data for iOS 5). I formatted new partitions in HFS+ volumes, then I mounted them. Into those new volumes, I copied the content from respective file system .dmg images. I did adjustements to the fstab and fixed that kb_load() fatal error (incompatible system keybag format between iOS 7.1.2 and older). The iOS 6 and iOS 5 bootstrap applications I made are only a script launcher. There is a system() call with the command line to execute as argument. Something like system(“Bootstrap.sh”), where Bootstrap.sh is a script stored in /bin. The script only launches kloader with the unsigned bootloader image to bootstrap. When I launch a bootstrap application, the device (should) execute the LLB (Low-Level Bootloader) file set in the script which will execute the appropriate iOS specific iBoot (second stage bootloader), which will display the classic apple logo, load the devicetree and boot the kernel with the boot-args (verbose boot, root device and so) set in the appropriate string.
Sepertinya asik juga mengoleksi perangkat lama (32-bit) buat diutak atik seperti ini :D