CallWin32_ParsAddString
(SWI &C1007)

On entry: 
R0 =  ptr to workspace
R1 =  Which parameter to add or set
R2 =  ptr to zero terminated string
On exit: -
Interrupts: Interrupt status is unaltered
Fast interrupts are enabled
Processor Mode:  Processor is in SVC mode
Re-entrancy: SWI is reentrant
Use: This call sets the parameter specified by R1 to be a pointer to the zero-terminated string specified by R2. Ensure this string buffer exists across the CallWin32_WithPars as it will be filled in with whatever modifications the Win32 function made.

Note that the string buffer's size should be a multiple of 4 bytes (this is because the memory copying routine copies 4 bytes at a time for efficiency) and hence on API return the buffer will be overwritten to string length rounded up to the next 4 byte boundary. Not fulfilling this will cause data corruption. Lastly, if you are receiving a much larger string than you are sending, use CallWin32_ParsAddMemBlk passing the length of the string you expect to receive  otherwise not all of the string will be retrieved.

Ensure you use the ANSI variant of any Win32 API you call as RISC-OS does not support Unicode.

Related SWIs: CallWin32_ParsInit (SWI &C1002), CallWin32_ParsAddInt32 (SWI &C1003),CallWin32_ParsAddInt16 (SWI &C1004), CallWin32_ParsAddInt8 (SWI &C1005),  CallWin32_ParsAddMemBlk (SWI &C1006), CallWin32_WithPars (SWI &C1008)