OutputSurfaceConfig.cs 976 B

123456789101112131415161718192021222324
  1. using Ryujinx.Common.Utilities;
  2. namespace Ryujinx.Graphics.Vic.Types
  3. {
  4. struct OutputSurfaceConfig
  5. {
  6. #pragma warning disable CS0649
  7. private long _word0;
  8. private long _word1;
  9. #pragma warning restore CS0649
  10. public PixelFormat OutPixelFormat => (PixelFormat)_word0.Extract(0, 7);
  11. public int OutChromaLocHoriz => (int)_word0.Extract(7, 2);
  12. public int OutChromaLocVert => (int)_word0.Extract(9, 2);
  13. public int OutBlkKind => (int)_word0.Extract(11, 4);
  14. public int OutBlkHeight => (int)_word0.Extract(15, 4);
  15. public int OutSurfaceWidth => (int)_word0.Extract(32, 14);
  16. public int OutSurfaceHeight => (int)_word0.Extract(46, 14);
  17. public int OutLumaWidth => (int)_word1.Extract(64, 14);
  18. public int OutLumaHeight => (int)_word1.Extract(78, 14);
  19. public int OutChromaWidth => (int)_word1.Extract(96, 14);
  20. public int OutChromaHeight => (int)_word1.Extract(110, 14);
  21. }
  22. }