| MDFS::Docs.Comp.RISCOS.Choices | Search |
Choices* set of system variables.
Choices:AppName.* must be used to read settings, and
<Choices$Write>.AppName.* must be used to save
settings. Choices: will usually be set by the system to a
comma-separated list of paths to choices locations, with
<Choices$Write> at the beginning, so that any
preferences that the user has saved are checked first.
Choices file run when the application is booted. The
default settings are in the !Boot file itself, and these are
overridden by any user preferences by the final lines:
| Override with any local choices: /Z80Tube:X /Choices:Z80Tube.Choices
I have tweeked my version of CPMFS
to run a choices file. The end of the !Run file contains:
| Set any local choices: /CPMFS:Resources.X /Choices:CPMFS.Choices | /CPMFS:!RunImage %*0The Choices should be run before the !RunImage.
The X command executes a command and ignores any errors.
It is best to not depend on the application running on a system with an X
command built in, so it is best to put an X command in the
application directory itself. You can use and distribute this
X command here, which is 32bit clean, and
also has a RISC OS 4 header.
!Boot could run Choices:AppName.Boot,
!Run could run Choices:AppName.Run, etc.
FTPc uses
Choices:FTPc.Setup and Choices:FTPc.UserMenu.

When !Choices is run or Double-Clicked on, it sets the Choices: path to start with that !Choices directory. When !Choices is Double-Clicked on with Ctrl held down, it removes that !Choices from the Choices path. !Choices is available here:
Choices.zip 4K
Update 06-Sep-2006:
X now has a RISC OS 4 header and should be correctly
validated on 32-bit systems.
Justin Fletcher has written a much better overview than I could on using
the Choices system in
{this document
broken link} (local copy).