Wimp_Extend 257

Introduction and Overview

This call appends a mode suffix to a filename within a buffer, so that mode-dependent resources can be located.

SWI Calls

Wimp_Extend 101Wimp_Extend_AppendModeSuffixSWI &400FB
Append a mode suffix to a filename
R0=257 (reason code)
R1=Pointer to filename in a buffer to be updated
R0=Pointer to buffer passed in
R1=0 (if buffer updated, preserved if not supported by this Wimp)
Interrupts are undefined
Fast interrupts are undefined
Processor is in undefined mode
Not defined

This SWI is used to append a mode suffix to a filename within a buffer. The buffer should have space for up to 8 characters in addition to the filename in order to allow for future expansion. The suffixes follow the standard pattern of describing the pixel sizes in terms of OS units (see SWI Wimp_ReadSysInfo 2 in PRM 3-218).

Initially, the current mode suffix will be tried. If this does not exist, the name will be normalised to the lowest pixel size. If the suffix is 11 and this fails then 22 will be tried. If these fail, then the call will fall back to no suffix. For example, in a mode with pixels using the size 1 OS unit in the x direction and 4 OS units in the y direction (eigen factors EX0 EY2) the suffixes examined would be 14, 24, 44 and finally falling back to no suffix.

Clients should check whether R1 has been set to 0 on return. If it has not, this call is not supported by the WindowManager.

Note: Under Select 3i1 this call was Wimp_Extend 14 but this was found to clash with an undocumented call under RISC OS 5. It has been reallocated.