Alphabetise lists of core names in source

fixes 18078c876
and some others, maybe as far back as the commits introducing the lists,
I haven't checked
also I left a marker so it's easier to find these later
This commit is contained in:
YoshiRulz 2025-02-11 21:11:03 +10:00
parent f5dc73086a
commit 724a7393e2
No known key found for this signature in database
GPG Key ID: C4DE31C245353FB7
5 changed files with 48 additions and 45 deletions

View File

@ -4,10 +4,10 @@ Jump to:
- [For any: .NET project](#for-any-net-project) - [For any: .NET project](#for-any-net-project)
- Projects - Projects
- [blip_buf](#blip_buf) - [blip_buf](#blip_buf)
- [Encore](#encore)
- [Cygne](#cygne) - [Cygne](#cygne)
- [DiscoHawk](#discohawk) - [DiscoHawk](#discohawk)
- [EmuHawk](#emuhawk) - [EmuHawk](#emuhawk)
- [Encore](#encore)
- [Ext. tools](#ext-tools) - [Ext. tools](#ext-tools)
- [Handy](#handy) - [Handy](#handy)
- [HawkQuantizer](#hawkquantizer) - [HawkQuantizer](#hawkquantizer)
@ -91,13 +91,6 @@ Uses C.
## Encore
> Build scripts for the (unmanaged side of the) Encore port.
Uses C++.
## Cygne ## Cygne
> The unmanaged side of the Cygne core from Mednafen. > The unmanaged side of the Cygne core from Mednafen.
@ -135,6 +128,13 @@ There are additional test suites specifically for regression-testing cores—the
## Encore
> Build scripts for the (unmanaged side of the) Encore port.
Uses C++.
## Ext. tools ## Ext. tools
> Various tools/plugins to be loaded in EmuHawk. > Various tools/plugins to be loaded in EmuHawk.

View File

@ -24,16 +24,17 @@ namespace BizHawk.Client.EmuHawk.CoreExtensions
return Properties.Resources.CorpHawkSmall; return Properties.Resources.CorpHawkSmall;
} }
// (select) cores A-Z by value of `CoreAttribute.CoreName`
return core switch return core switch
{ {
QuickNES => Properties.Resources.QuickNes,
LibsnesCore => Properties.Resources.Bsnes, LibsnesCore => Properties.Resources.Bsnes,
GPGX => Properties.Resources.GenPlus,
Gameboy => Properties.Resources.Gambatte, Gameboy => Properties.Resources.Gambatte,
Snes9x => Properties.Resources.Snes9X, GPGX => Properties.Resources.GenPlus,
MAME => Properties.Resources.Mame, MAME => Properties.Resources.Mame,
MGBAHawk => Properties.Resources.Mgba,
NDS => Properties.Resources.MelonDS, NDS => Properties.Resources.MelonDS,
MGBAHawk => Properties.Resources.Mgba,
QuickNES => Properties.Resources.QuickNes,
Snes9x => Properties.Resources.Snes9X,
UAE => Properties.Resources.Amiga, UAE => Properties.Resources.Amiga,
_ => null _ => null
}; };

View File

@ -12,7 +12,6 @@ using BizHawk.Emulation.Cores.Atari.A7800Hawk;
using BizHawk.Emulation.Cores.Atari.Atari2600; using BizHawk.Emulation.Cores.Atari.Atari2600;
using BizHawk.Emulation.Cores.Atari.Jaguar; using BizHawk.Emulation.Cores.Atari.Jaguar;
using BizHawk.Emulation.Cores.Atari.Lynx; using BizHawk.Emulation.Cores.Atari.Lynx;
using BizHawk.Emulation.Cores.Atari.Stella;
using BizHawk.Emulation.Cores.Calculators.Emu83; using BizHawk.Emulation.Cores.Calculators.Emu83;
using BizHawk.Emulation.Cores.Calculators.TI83; using BizHawk.Emulation.Cores.Calculators.TI83;
using BizHawk.Emulation.Cores.ColecoVision; using BizHawk.Emulation.Cores.ColecoVision;
@ -1114,6 +1113,7 @@ namespace BizHawk.Client.EmuHawk
} }
List<ToolStripItem> items = new(); List<ToolStripItem> items = new();
// cores A-Z by value of `CoreAttribute.CoreName`
// A7800Hawk // A7800Hawk
var a7800HawkGamepadSettingsItem = CreateSettingsItem("Controller Settings...", (_, _) => OpenA7800HawkGamepadSettingsDialog(GetSettingsAdapterFor<A7800Hawk>())); var a7800HawkGamepadSettingsItem = CreateSettingsItem("Controller Settings...", (_, _) => OpenA7800HawkGamepadSettingsDialog(GetSettingsAdapterFor<A7800Hawk>()));
@ -1145,22 +1145,12 @@ namespace BizHawk.Client.EmuHawk
bsnesSubmenu.DropDownOpened += (_, _) => bsnesGamepadSettingsItem.Enabled = MovieSession.Movie.NotActive() || Emulator is not BsnesCore; bsnesSubmenu.DropDownOpened += (_, _) => bsnesGamepadSettingsItem.Enabled = MovieSession.Movie.NotActive() || Emulator is not BsnesCore;
items.Add(bsnesSubmenu); items.Add(bsnesSubmenu);
// SubBSNESv115+
var subBsnesGamepadSettingsItem = CreateSettingsItem("Controller Configuration...", (_, _) => OpenBSNESGamepadSettingsDialog(GetSettingsAdapterFor<SubBsnesCore>()));
var subBsnesSettingsItem = CreateSettingsItem("Options...", (_, _) => OpenBSNESSettingsDialog(GetSettingsAdapterFor<SubBsnesCore>()));
var subBsnesSubmenu = CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.SubBsnes115, subBsnesGamepadSettingsItem, subBsnesSettingsItem);
subBsnesSubmenu.DropDownOpened += (_, _) => subBsnesGamepadSettingsItem.Enabled = MovieSession.Movie.NotActive() || Emulator is not SubBsnesCore;
items.Add(subBsnesSubmenu);
// C64Hawk // C64Hawk
items.Add(CreateCoreSubmenu(VSystemCategory.PCs, CoreNames.C64Hawk, CreateSettingsItem("Settings...", (_, _) => OpenC64HawkSettingsDialog()))); items.Add(CreateCoreSubmenu(VSystemCategory.PCs, CoreNames.C64Hawk, CreateSettingsItem("Settings...", (_, _) => OpenC64HawkSettingsDialog())));
// ChannelFHawk // ChannelFHawk
items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.ChannelFHawk, CreateGenericCoreConfigItem<ChannelF>(CoreNames.ChannelFHawk))); items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.ChannelFHawk, CreateGenericCoreConfigItem<ChannelF>(CoreNames.ChannelFHawk)));
// Encore
items.Add(CreateCoreSubmenu(VSystemCategory.Handhelds, CoreNames.Encore, CreateGenericCoreConfigItem<Encore>(CoreNames.Encore)));
// ColecoHawk // ColecoHawk
var colecoHawkGamepadSettingsItem = CreateSettingsItem("Controller Settings...", (_, _) => OpenColecoHawkGamepadSettingsDialog(GetSettingsAdapterFor<ColecoVision>())); var colecoHawkGamepadSettingsItem = CreateSettingsItem("Controller Settings...", (_, _) => OpenColecoHawkGamepadSettingsDialog(GetSettingsAdapterFor<ColecoVision>()));
var colecoHawkSkipBIOSItem = CreateSettingsItem("Skip BIOS intro (When Applicable)", (sender, _) => ColecoHawkSetSkipBIOSIntro(!((ToolStripMenuItem) sender).Checked, GetSettingsAdapterFor<ColecoVision>())); var colecoHawkSkipBIOSItem = CreateSettingsItem("Skip BIOS intro (When Applicable)", (sender, _) => ColecoHawkSetSkipBIOSIntro(!((ToolStripMenuItem) sender).Checked, GetSettingsAdapterFor<ColecoVision>()));
@ -1189,6 +1179,9 @@ namespace BizHawk.Client.EmuHawk
// Emu83 // Emu83
items.Add(CreateCoreSubmenu(VSystemCategory.Other, CoreNames.Emu83, CreateSettingsItem("Palette...", (_, _) => OpenTI83PaletteSettingsDialog(GetSettingsAdapterFor<Emu83>())))); items.Add(CreateCoreSubmenu(VSystemCategory.Other, CoreNames.Emu83, CreateSettingsItem("Palette...", (_, _) => OpenTI83PaletteSettingsDialog(GetSettingsAdapterFor<Emu83>()))));
// Encore
items.Add(CreateCoreSubmenu(VSystemCategory.Handhelds, CoreNames.Encore, CreateGenericCoreConfigItem<Encore>(CoreNames.Encore)));
// Faust // Faust
items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.Faust, CreateGenericNymaCoreConfigItem<Faust>(CoreNames.Faust, Faust.CachedSettingsInfo))); items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.Faust, CreateGenericNymaCoreConfigItem<Faust>(CoreNames.Faust, Faust.CachedSettingsInfo)));
@ -1211,12 +1204,12 @@ namespace BizHawk.Client.EmuHawk
// GBHawkLink4x // GBHawkLink4x
items.Add(CreateCoreSubmenu(VSystemCategory.Handhelds, CoreNames.GBHawkLink4x, CreateGenericCoreConfigItem<GBHawkLink4x>(CoreNames.GBHawkLink4x))); items.Add(CreateCoreSubmenu(VSystemCategory.Handhelds, CoreNames.GBHawkLink4x, CreateGenericCoreConfigItem<GBHawkLink4x>(CoreNames.GBHawkLink4x)));
// GGHawkLink
items.Add(CreateCoreSubmenu(VSystemCategory.Handhelds, CoreNames.GGHawkLink, CreateGenericCoreConfigItem<GGHawkLink>(CoreNames.GGHawkLink)));
// Genplus-gx // Genplus-gx
items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.Gpgx, CreateGenericCoreConfigItem<GPGX>(CoreNames.Gpgx))); items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.Gpgx, CreateGenericCoreConfigItem<GPGX>(CoreNames.Gpgx)));
// GGHawkLink
items.Add(CreateCoreSubmenu(VSystemCategory.Handhelds, CoreNames.GGHawkLink, CreateGenericCoreConfigItem<GGHawkLink>(CoreNames.GGHawkLink)));
// Handy // Handy
items.Add(CreateCoreSubmenu(VSystemCategory.Handhelds, CoreNames.Handy, CreateGenericCoreConfigItem<Lynx>(CoreNames.Handy))); // as Handy doesn't implement `ISettable<,>`, this opens an empty `GenericCoreConfig`, which is dumb, but matches the existing behaviour items.Add(CreateCoreSubmenu(VSystemCategory.Handhelds, CoreNames.Handy, CreateGenericCoreConfigItem<Lynx>(CoreNames.Handy))); // as Handy doesn't implement `ISettable<,>`, this opens an empty `GenericCoreConfig`, which is dumb, but matches the existing behaviour
@ -1333,9 +1326,6 @@ namespace BizHawk.Client.EmuHawk
// PicoDrive // PicoDrive
items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.PicoDrive, CreateGenericCoreConfigItem<PicoDrive>(CoreNames.PicoDrive))); items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.PicoDrive, CreateGenericCoreConfigItem<PicoDrive>(CoreNames.PicoDrive)));
// UAE
items.Add(CreateCoreSubmenu(VSystemCategory.PCs, CoreNames.UAE, CreateGenericCoreConfigItem<UAE>(CoreNames.UAE)));
// QuickNes // QuickNes
var quickNesGamepadSettingsItem = CreateSettingsItem("Controller Settings...", (_, _) => OpenQuickNesGamepadSettingsDialog(GetSettingsAdapterFor<QuickNES>())); var quickNesGamepadSettingsItem = CreateSettingsItem("Controller Settings...", (_, _) => OpenQuickNesGamepadSettingsDialog(GetSettingsAdapterFor<QuickNES>()));
var quickNesSubmenu = CreateCoreSubmenu( var quickNesSubmenu = CreateCoreSubmenu(
@ -1366,6 +1356,13 @@ namespace BizHawk.Client.EmuHawk
// Stella // Stella
items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.Stella, CreateGenericCoreConfigItem<Stella>(CoreNames.Stella))); items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.Stella, CreateGenericCoreConfigItem<Stella>(CoreNames.Stella)));
// SubBSNESv115+
var subBsnesGamepadSettingsItem = CreateSettingsItem("Controller Configuration...", (_, _) => OpenBSNESGamepadSettingsDialog(GetSettingsAdapterFor<SubBsnesCore>()));
var subBsnesSettingsItem = CreateSettingsItem("Options...", (_, _) => OpenBSNESSettingsDialog(GetSettingsAdapterFor<SubBsnesCore>()));
var subBsnesSubmenu = CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.SubBsnes115, subBsnesGamepadSettingsItem, subBsnesSettingsItem);
subBsnesSubmenu.DropDownOpened += (_, _) => subBsnesGamepadSettingsItem.Enabled = MovieSession.Movie.NotActive() || Emulator is not SubBsnesCore;
items.Add(subBsnesSubmenu);
// SubGBHawk // SubGBHawk
items.Add(CreateCoreSubmenu(VSystemCategory.Handhelds, CoreNames.SubGbHawk, CreateSettingsItem("Settings...", (_, _) => OpenSubGBHawkSettingsDialog()))); items.Add(CreateCoreSubmenu(VSystemCategory.Handhelds, CoreNames.SubGbHawk, CreateSettingsItem("Settings...", (_, _) => OpenSubGBHawkSettingsDialog())));
@ -1390,18 +1387,21 @@ namespace BizHawk.Client.EmuHawk
}; };
items.Add(subNESHawkSubmenu); items.Add(subNESHawkSubmenu);
// T. S. T.
items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.TST, CreateGenericNymaCoreConfigItem<Tst>(CoreNames.TST, Tst.CachedSettingsInfo)));
// TI83Hawk // TI83Hawk
items.Add(CreateCoreSubmenu(VSystemCategory.Other, CoreNames.TI83Hawk, CreateSettingsItem("Palette...", (_, _) => OpenTI83PaletteSettingsDialog(GetSettingsAdapterFor<TI83>())))); items.Add(CreateCoreSubmenu(VSystemCategory.Other, CoreNames.TI83Hawk, CreateSettingsItem("Palette...", (_, _) => OpenTI83PaletteSettingsDialog(GetSettingsAdapterFor<TI83>()))));
// TIC80 // TIC80
items.Add(CreateCoreSubmenu(VSystemCategory.PCs, CoreNames.TIC80, CreateGenericCoreConfigItem<TIC80>(CoreNames.TIC80))); items.Add(CreateCoreSubmenu(VSystemCategory.PCs, CoreNames.TIC80, CreateGenericCoreConfigItem<TIC80>(CoreNames.TIC80)));
// T. S. T.
items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.TST, CreateGenericNymaCoreConfigItem<Tst>(CoreNames.TST, Tst.CachedSettingsInfo)));
// TurboNyma // TurboNyma
items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.TurboNyma, CreateGenericNymaCoreConfigItem<TurboNyma>(CoreNames.TurboNyma, TurboNyma.CachedSettingsInfo))); items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.TurboNyma, CreateGenericNymaCoreConfigItem<TurboNyma>(CoreNames.TurboNyma, TurboNyma.CachedSettingsInfo)));
// UAE
items.Add(CreateCoreSubmenu(VSystemCategory.PCs, CoreNames.UAE, CreateGenericCoreConfigItem<UAE>(CoreNames.UAE)));
// uzem // uzem
items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.Uzem, CreateGenericCoreConfigItem<Uzem>(CoreNames.Uzem))); // as uzem doesn't implement `ISettable<,>`, this opens an empty `GenericCoreConfig`, which is dumb, but matches the existing behaviour items.Add(CreateCoreSubmenu(VSystemCategory.Consoles, CoreNames.Uzem, CreateGenericCoreConfigItem<Uzem>(CoreNames.Uzem))); // as uzem doesn't implement `ISettable<,>`, this opens an empty `GenericCoreConfig`, which is dumb, but matches the existing behaviour

View File

@ -42,21 +42,22 @@ namespace BizHawk.Client.EmuHawk
typeof(TAStudio), typeof(TAStudio),
}; };
/// <remarks>(select) cores A-Z by value of <see cref="Emulation.Common.CoreAttribute.CoreName"/></remarks>
private static readonly Dictionary<Type, string[]> CoreGraphicsLayers = new() private static readonly Dictionary<Type, string[]> CoreGraphicsLayers = new()
{ {
[typeof(MSX)] = new[] { "DispBG", "DispOBJ" },
[typeof(Atari2600)] = new[] { "ShowBG", "ShowPlayer1", "ShowPlayer2", "ShowMissle1", "ShowMissle2", "ShowBall", "ShowPlayfield" }, [typeof(Atari2600)] = new[] { "ShowBG", "ShowPlayer1", "ShowPlayer2", "ShowMissle1", "ShowMissle2", "ShowBall", "ShowPlayfield" },
[typeof(O2Hawk)] = new[] { "Show_Chars", "Show_Quads", "Show_Sprites", "Show_G7400_Sprites", "Show_G7400_BG" },
[typeof(BsnesCore)] = new[] { "ShowBG1_0", "ShowBG2_0", "ShowBG3_0", "ShowBG4_0", "ShowBG1_1", "ShowBG2_1", "ShowBG3_1", "ShowBG4_1", "ShowOBJ_0", "ShowOBJ_1", "ShowOBJ_2", "ShowOBJ_3" },
[typeof(MGBAHawk)] = new[] { "DisplayBG0", "DisplayBG1", "DisplayBG2", "DisplayBG3", "DisplayOBJ" },
[typeof(NES)] = new[] { "DispBackground", "DispSprites" },
[typeof(Sameboy)] = new[] { "EnableBGWIN", "EnableOBJ" },
[typeof(LibsnesCore)] = new[] { "ShowBG1_0", "ShowBG2_0", "ShowBG3_0", "ShowBG4_0", "ShowBG1_1", "ShowBG2_1", "ShowBG3_1", "ShowBG4_1", "ShowOBJ_0", "ShowOBJ_1", "ShowOBJ_2", "ShowOBJ_3" }, [typeof(LibsnesCore)] = new[] { "ShowBG1_0", "ShowBG2_0", "ShowBG3_0", "ShowBG4_0", "ShowBG1_1", "ShowBG2_1", "ShowBG3_1", "ShowBG4_1", "ShowOBJ_0", "ShowOBJ_1", "ShowOBJ_2", "ShowOBJ_3" },
[typeof(Snes9x)] = new[] { "ShowBg0", "ShowBg1", "ShowBg2", "ShowBg3", "ShowSprites0", "ShowSprites1", "ShowSprites2", "ShowSprites3", "ShowWindow", "ShowTransparency" }, [typeof(BsnesCore)] = new[] { "ShowBG1_0", "ShowBG2_0", "ShowBG3_0", "ShowBG4_0", "ShowBG1_1", "ShowBG2_1", "ShowBG3_1", "ShowBG4_1", "ShowOBJ_0", "ShowOBJ_1", "ShowOBJ_2", "ShowOBJ_3" },
[typeof(PCEngine)] = new[] { "ShowBG1", "ShowOBJ1", "ShowBG2", "ShowOBJ2", },
[typeof(GPGX)] = new[] { "DrawBGA", "DrawBGB", "DrawBGW", "DrawObj", },
[typeof(SMS)] = new[] { "DispBG", "DispOBJ" },
[typeof(WonderSwan)] = new[] { "EnableBG", "EnableFG", "EnableSprites", }, [typeof(WonderSwan)] = new[] { "EnableBG", "EnableFG", "EnableSprites", },
[typeof(GPGX)] = new[] { "DrawBGA", "DrawBGB", "DrawBGW", "DrawObj", },
[typeof(MGBAHawk)] = new[] { "DisplayBG0", "DisplayBG1", "DisplayBG2", "DisplayBG3", "DisplayOBJ" },
[typeof(MSX)] = new[] { "DispBG", "DispOBJ" },
[typeof(NES)] = new[] { "DispBackground", "DispSprites" },
[typeof(O2Hawk)] = new[] { "Show_Chars", "Show_Quads", "Show_Sprites", "Show_G7400_Sprites", "Show_G7400_BG" },
[typeof(PCEngine)] = new[] { "ShowBG1", "ShowOBJ1", "ShowBG2", "ShowOBJ2", },
[typeof(Sameboy)] = new[] { "EnableBGWIN", "EnableOBJ" },
[typeof(SMS)] = new[] { "DispBG", "DispOBJ" },
[typeof(Snes9x)] = new[] { "ShowBg0", "ShowBg1", "ShowBg2", "ShowBg3", "ShowSprites0", "ShowSprites1", "ShowSprites2", "ShowSprites3", "ShowWindow", "ShowTransparency" },
}; };
private readonly OverrideAdapter _hardcoreHotkeyOverrides = new(); private readonly OverrideAdapter _hardcoreHotkeyOverrides = new();

View File

@ -9,6 +9,7 @@ namespace BizHawk.Emulation.Cores
/// </summary> /// </summary>
public static class CoreNames public static class CoreNames
{ {
// cores A-Z by this value
public const string A7800Hawk = "A7800Hawk"; public const string A7800Hawk = "A7800Hawk";
public const string Ares64 = "Ares64"; public const string Ares64 = "Ares64";
public const string Atari2600Hawk = "Atari2600Hawk"; public const string Atari2600Hawk = "Atari2600Hawk";
@ -39,14 +40,13 @@ namespace BizHawk.Emulation.Cores
public const string Mgba = "mGBA"; public const string Mgba = "mGBA";
public const string MSXHawk = "MSXHawk"; public const string MSXHawk = "MSXHawk";
public const string Mupen64Plus = "Mupen64Plus"; public const string Mupen64Plus = "Mupen64Plus";
public const string NesHawk = "NesHawk";
public const string NeoPop = "NeoPop"; public const string NeoPop = "NeoPop";
public const string NesHawk = "NesHawk";
public const string Nymashock = "Nymashock"; public const string Nymashock = "Nymashock";
public const string O2Hawk = "O2Hawk"; public const string O2Hawk = "O2Hawk";
public const string Octoshock = "Octoshock"; public const string Octoshock = "Octoshock";
public const string PceHawk = "PCEHawk"; public const string PceHawk = "PCEHawk";
public const string PicoDrive = "PicoDrive"; public const string PicoDrive = "PicoDrive";
public const string UAE = "UAE";
public const string QuickNes = "quickerNES"; public const string QuickNes = "quickerNES";
public const string Sameboy = "SameBoy"; public const string Sameboy = "SameBoy";
public const string Saturnus = "Saturnus"; public const string Saturnus = "Saturnus";
@ -56,10 +56,11 @@ namespace BizHawk.Emulation.Cores
public const string SubBsnes115 = "SubBSNESv115+"; public const string SubBsnes115 = "SubBSNESv115+";
public const string SubGbHawk = "SubGBHawk"; public const string SubGbHawk = "SubGBHawk";
public const string SubNesHawk = "SubNESHawk"; public const string SubNesHawk = "SubNESHawk";
public const string TST = "T. S. T.";
public const string TI83Hawk = "TI83Hawk"; public const string TI83Hawk = "TI83Hawk";
public const string TIC80 = "TIC-80"; public const string TIC80 = "TIC-80";
public const string TST = "T. S. T.";
public const string TurboNyma = "TurboNyma"; public const string TurboNyma = "TurboNyma";
public const string UAE = "UAE";
public const string Uzem = "uzem"; public const string Uzem = "uzem";
public const string VectrexHawk = "VectrexHawk"; public const string VectrexHawk = "VectrexHawk";
public const string Virtu = "Virtu"; public const string Virtu = "Virtu";