/ src / Ryujinx.Graphics.Vic / Types / OutputConfig.cs
OutputConfig.cs
 1  using Ryujinx.Common.Utilities;
 2  
 3  namespace Ryujinx.Graphics.Vic.Types
 4  {
 5      readonly struct OutputConfig
 6      {
 7  #pragma warning disable CS0649 // Field is never assigned to
 8          private readonly long _word0;
 9          private readonly long _word1;
10  #pragma warning restore CS0649
11  
12          public int AlphaFillMode => (int)_word0.Extract(0, 3);
13          public int AlphaFillSlot => (int)_word0.Extract(3, 3);
14          public int BackgroundAlpha => (int)_word0.Extract(6, 10);
15          public int BackgroundR => (int)_word0.Extract(16, 10);
16          public int BackgroundG => (int)_word0.Extract(26, 10);
17          public int BackgroundB => (int)_word0.Extract(36, 10);
18          public int RegammaMode => (int)_word0.Extract(46, 2);
19          public bool OutputFlipX => _word0.Extract(48);
20          public bool OutputFlipY => _word0.Extract(49);
21          public bool OutputTranspose => _word0.Extract(50);
22          public int TargetRectLeft => (int)_word1.Extract(64, 14);
23          public int TargetRectRight => (int)_word1.Extract(80, 14);
24          public int TargetRectTop => (int)_word1.Extract(96, 14);
25          public int TargetRectBottom => (int)_word1.Extract(112, 14);
26      }
27  }