In the first example (which I'm going to assume is really more like
xcall HOSTEX, "$ASHELL run myprog", the calling process would normally be suspended until the child process exits. But you could make the child independent
of the parent by adding the
Command Modifier $ as in:
xcall HOSTEX,"$ASHELL run myprog $"
I'm not sure what to suggest for the second example, since it would be rather unusual for the subroutine to run independently of the parent, since that would require two separate processes, which you don't normally get with an SBX call. The only idea that comes to mind would be if you do want to execute the SBX in another process, you can use a front end, like SBXRUN.LIT (which acts as a wrapper for an XCALL), in which case you're really back to the first syntax, i.e.
xcall HOSTEX,"$ASHELL sbxrun mysbx $"
Or are you looking for a different kind of independence?