using System; using System.Collections.Generic; namespace BizHawk.Emulation.Cores.Libretro { public class RetroDescription { /// /// String containing a friendly display name for the core, but we probably shouldn't use this. I decided it's better to get the user used to using filenames as core 'codenames' instead. /// public string LibraryName; /// /// String containing a friendly version number for the core library /// public string LibraryVersion; /// /// List of extensions as "sfc|smc|fig" which this core accepts. /// public string ValidExtensions; /// /// Whether the core needs roms to be specified as paths (can't take rom data buffersS) /// public bool NeedsRomAsPath; /// /// Whether the core needs roms stored as archives (e.g. arcade roms). We probably shouldn't employ the dearchiver prompts when opening roms for these cores. /// public bool NeedsArchives; /// /// Whether the core can be run without a game provided (e.g. stand-alone games, like 2048) /// public bool SupportsNoGame; /// /// Variables defined by the core /// public Dictionary Variables = new Dictionary(); } public class VariableDescription { public string Name; public string Description; public string[] Options; public string DefaultOption { get { return Options[0]; } } public override string ToString() { return string.Format("{0} ({1}) = ({2})", Name, Description, string.Join("|", Options)); } } }