These SoCs are designed to look for code at a specific address as they fire up and basically they get it all from U-boot as the system is being brought up. This is somewhat of a oversimplified statement but good enough for this purpose.
When u-boot starts it reads its stored environment variables which tell it how and what to look for as it starts to run. Typically the standard variables basically just tell it to look in internal storage for the images to load into ram and use. So u-boots environment needs to be changed to tell it to include looking elsewhere then just internal for images to load to ram.
This is where the autoscripts come in. aml_autoscript is the script that contains the environment changes that need to be fed into the running u-boot to add and store to static memory the variables to tell it to check for either of the files listed below and if so call them.
Then theres the S805_autoscript or S905_autoscript files that are the routines that actually make the choosen method and go do it. Unfortunately a remnant of some of the current methods are strickly based on whether or not the sd-card is present when the running u-boot pulls the system up.
So to fix that the level of checking needs to go further then just looking to see if the sd-card is inserted or not at boot time.
Adding some variables or register checks can be used to make u-boot realize that its actually booting up on internal and from that point forward treat anything plugged in the slot as strictly external storage. How one goes about creating that extra start up intelligence is up to you as theres more then just one way.
The aml_autoscript is capable of being used for a lot of other things as well but in this case i have confined its use to the subject of multi-boot.
Because of the way its being used in this case thats why people like balbes refers to only having to install the multiboot once. because typically after the initial use of the aml_autoscript U-boots environment has now been altered and stored in static memory to check elsewhere when booting. Its only after something else rewrites or restores the original u-boot environment that you need to re-apply the multiboot patch, either that or if theres a new multi-boot itself being used.
hope that helps.