Files
MesenCE/UI/Config/Debugger/PceEventViewerConfig.cs

102 lines
6.2 KiB
C#

using Avalonia.Media;
using CommunityToolkit.Mvvm.ComponentModel;
using Mesen.Interop;
using Mesen.ViewModels;
namespace Mesen.Config
{
public partial class PceEventViewerConfig : ViewModelBase
{
[ObservableProperty] public partial EventViewerCategoryCfg VdcStatusReads { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x29, 0xC9, 0xC9));
[ObservableProperty] public partial EventViewerCategoryCfg VdcVramWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x9F, 0x93, 0xC6));
[ObservableProperty] public partial EventViewerCategoryCfg VdcVramReads { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x29, 0xC9, 0x29));
[ObservableProperty] public partial EventViewerCategoryCfg VdcRegSelectWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x29, 0x29, 0xC9));
[ObservableProperty] public partial EventViewerCategoryCfg VdcControlWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x29, 0xC6, 0x93));
[ObservableProperty] public partial EventViewerCategoryCfg VdcRcrWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0xC6, 0x9F, 0x93));
[ObservableProperty] public partial EventViewerCategoryCfg VdcHvConfigWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x93, 0xC6, 0x9F));
[ObservableProperty] public partial EventViewerCategoryCfg VdcMemoryWidthWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0xC6, 0x29, 0xC6));
[ObservableProperty] public partial EventViewerCategoryCfg VdcScrollWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0xC6, 0xC6, 0x29));
[ObservableProperty] public partial EventViewerCategoryCfg VdcDmaWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x93, 0x29, 0xC9));
[ObservableProperty] public partial EventViewerCategoryCfg CdRomWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0xDA, 0xB4, 0x7A));
[ObservableProperty] public partial EventViewerCategoryCfg CdRomReads { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x44, 0x53, 0xD7));
[ObservableProperty] public partial EventViewerCategoryCfg AdpcmWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0xD7, 0x7A, 0xDA));
[ObservableProperty] public partial EventViewerCategoryCfg AdpcmReads { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0xB4, 0x53, 0x44));
[ObservableProperty] public partial EventViewerCategoryCfg ArcadeCardWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x7A, 0xDA, 0xD7));
[ObservableProperty] public partial EventViewerCategoryCfg ArcadeCardReads { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x44, 0xB4, 0x53));
[ObservableProperty] public partial EventViewerCategoryCfg VceWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0xB4, 0x7A, 0xDA));
[ObservableProperty] public partial EventViewerCategoryCfg VceReads { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x53, 0xD7, 0x44));
[ObservableProperty] public partial EventViewerCategoryCfg PsgWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0xE2, 0x51, 0xF7));
[ObservableProperty] public partial EventViewerCategoryCfg PsgReads { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0xF9, 0xFE, 0xAC));
[ObservableProperty] public partial EventViewerCategoryCfg TimerWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0xD1, 0xDD, 0x42));
[ObservableProperty] public partial EventViewerCategoryCfg TimerReads { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x00, 0x75, 0x97));
[ObservableProperty] public partial EventViewerCategoryCfg VpcWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x56, 0x9D, 0xB7));
[ObservableProperty] public partial EventViewerCategoryCfg VpcReads { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x9D, 0x56, 0xB7));
[ObservableProperty] public partial EventViewerCategoryCfg IoWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0xFF, 0x5E, 0x5E));
[ObservableProperty] public partial EventViewerCategoryCfg IoReads { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x18, 0x98, 0xE4));
[ObservableProperty] public partial EventViewerCategoryCfg IrqControlWrites { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0xFF, 0x5E, 0xDD));
[ObservableProperty] public partial EventViewerCategoryCfg IrqControlReads { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0xE2, 0x98, 0xE4));
[ObservableProperty] public partial EventViewerCategoryCfg Irq { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0xC4, 0xF4, 0x7A));
[ObservableProperty] public partial EventViewerCategoryCfg MarkedBreakpoints { get; set; } = new EventViewerCategoryCfg(Color.FromRgb(0x18, 0x98, 0xE4));
[ObservableProperty] public partial PceEventViewerSgxFilter SuperGrafxFilter { get; set; } = PceEventViewerSgxFilter.Both;
[ObservableProperty] public partial bool ShowPreviousFrameEvents { get; set; } = true;
public InteropPceEventViewerConfig ToInterop()
{
return new InteropPceEventViewerConfig() {
VdcStatusReads = this.VdcStatusReads,
VdcVramWrites = this.VdcVramWrites,
VdcVramReads = this.VdcVramReads,
VdcRegSelectWrites = this.VdcRegSelectWrites,
VdcControlWrites = this.VdcControlWrites,
VdcRcrWrites = this.VdcRcrWrites,
VdcHvConfigWrites = this.VdcHvConfigWrites,
VdcMemoryWidthWrites = this.VdcMemoryWidthWrites,
VdcScrollWrites = this.VdcScrollWrites,
VdcDmaWrites = this.VdcDmaWrites,
VceWrites = this.VceWrites,
VceReads = this.VceReads,
PsgWrites = this.PsgWrites,
PsgReads = this.PsgReads,
TimerWrites = this.TimerWrites,
TimerReads = this.TimerReads,
IoWrites = this.IoWrites,
IoReads = this.IoReads,
IrqControlWrites = this.IrqControlWrites,
IrqControlReads = this.IrqControlReads,
CdRomWrites = this.CdRomWrites,
CdRomReads = this.CdRomReads,
AdpcmWrites = this.AdpcmWrites,
AdpcmReads = this.AdpcmReads,
ArcadeCardReads = this.ArcadeCardReads,
ArcadeCardWrites = this.ArcadeCardWrites,
VpcWrites = this.VpcWrites,
VpcReads = this.VpcReads,
Irq = this.Irq,
MarkedBreakpoints = this.MarkedBreakpoints,
SuperGrafxFilter = this.SuperGrafxFilter,
ShowPreviousFrameEvents = this.ShowPreviousFrameEvents
};
}
}
public enum PceEventViewerSgxFilter
{
Both,
Vdc1,
Vdc2
}
}