an indirected string is to an external buffer.
to initialise or change the pointer to the buffer use:
...string!=pointer%
which will be automatic if a prototype is applied to an existing block.
once initialised, strings can be written and read from the buffer with:
...string$
but there can be no check that the string will fit the buffer - beware