AxibugEmuOnline/AxibugEmuOnline.Client/Assets/MyNes.Core/RendererSettings.cs

137 lines
3.4 KiB
C#
Raw Normal View History

2024-07-03 18:15:28 +08:00
using System.IO;
2024-07-03 18:22:22 +08:00
namespace MyNes.Core
2024-07-03 18:15:28 +08:00
{
2024-07-03 18:22:22 +08:00
public class RendererSettings : ISettings
{
public string Video_ProviderID = "";
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Vid_AutoStretch = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public int Vid_StretchMultiply = 3;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Vid_KeepAspectRatio;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Vid_ShowFPS;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Vid_HideLines = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Vid_Fullscreen;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Vid_HardwareVertexProcessing;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Vid_VSync;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Vid_ShowNotifications = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public int Vid_Filter = 1;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool FrameSkipEnabled;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public int FrameSkipInterval = 2;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public string Audio_ProviderID = "";
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_EnableFilters = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public int Audio_Volume = 100;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_SoundEnabled = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public int Audio_Frequency = 48000;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public int Audio_InternalSamplesCount = 1024;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public int Audio_InternalPeekLimit = 124;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public int Audio_PlaybackAmplitude = 200;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public int Audio_PlaybackBufferSizeInKB = 16;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_UseDefaultMixer;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_SQ1 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_SQ2 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_NOZ = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_TRL = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_DMC = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_MMC5_SQ1 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_MMC5_SQ2 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_MMC5_PCM = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_VRC6_SQ1 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_VRC6_SQ2 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_VRC6_SAW = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_SUN1 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_SUN2 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_SUN3 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_NMT1 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_NMT2 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_NMT3 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_NMT4 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_NMT5 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_NMT6 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_NMT7 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public bool Audio_ChannelEnabled_NMT8 = true;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public int Palette_PaletteSetting;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public string Palette_CurrentPaletteFilePath = "default_ntsc.pal";
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public float Palette_NTSC_brightness = 1.075f;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public float Palette_NTSC_contrast = 1.016f;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public float Palette_NTSC_gamma = 1.975f;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public float Palette_NTSC_hue_tweak;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public float Palette_NTSC_saturation = 1.496f;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public float Palette_PALB_brightness = 1.075f;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public float Palette_PALB_contrast = 1.016f;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public float Palette_PALB_gamma = 1.975f;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public float Palette_PALB_hue_tweak;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public float Palette_PALB_saturation = 1.496f;
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public RendererSettings(string path)
: base(path)
{
}
2024-07-03 18:15:28 +08:00
2024-07-03 18:22:22 +08:00
public override void LoadSettings()
{
base.LoadSettings();
if (Palette_CurrentPaletteFilePath == "default_ntsc.pal" || Palette_CurrentPaletteFilePath == "" || !File.Exists(Palette_CurrentPaletteFilePath))
{
Palette_CurrentPaletteFilePath = Path.Combine(MyNesMain.AppPath, "Palettes");
Palette_CurrentPaletteFilePath = Path.Combine(Palette_CurrentPaletteFilePath, "default_ntsc.pal");
}
}
}
2024-07-03 15:40:13 +08:00
}