The extended_on, deviates_on, and not_supported_on are all guards for alternative implementations. They do not apply to the Standard Ruby implementation (aka MRI 1.8/1.9). They will raise an exception if :ruby is passed. They will also not yield if a platform identifier like :windows is passed.
If mspec is passed a :some_string type argument, it will attempt to look up a config value, which can be a single value or an array, and attempt to process it for spec files to run. This simplifies running e.g. all the library specs now that the ones for 1.8 and 1.9 are colocated.
This option will change the working directory via Dir.chdir at the point the option is processed. For example, suppose the working directory is 'files' and 'files/rubyspec' is the root of the rubyspec files. The command mspec -C rubyspec -B ruby.1.8.mspec will run all the specs listed in the :files config option. The files will be found because the working directory will be 'files/rubyspec' and the :files entries are relative to that directory. Note that in the example above, the explicit -B option is necessary because the command line options override the default config options ond the default config file is loaded before command line options are processed.
The --prefix option sets the config[:prefix] value that is prepended when resolving spec file names. For example, mspec --prefix rubyspec -B rubyspec/ruby.1.8.mspec will prepend 'rubyspec' to the entries in the :files list in the 'ruby.1.8.mspec' config file.