forked from Mirror/Ryujinx
08831eecf7
* IPC refactor part 3 + 4: New server HIPC message processor with source generator based serialization * Make types match on calls to AlignUp/AlignDown * Formatting * Address some PR feedback * Move BitfieldExtensions to Ryujinx.Common.Utilities and consolidate implementations * Rename Reader/Writer to SpanReader/SpanWriter and move to Ryujinx.Common.Memory * Implement EventType * Address more PR feedback * Log request processing errors since they are not normal * Rename waitable to multiwait and add missing lock * PR feedback * Ac_K PR feedback
29 lines
1.2 KiB
C#
29 lines
1.2 KiB
C#
using Ryujinx.Common.Utilities;
|
|
|
|
namespace Ryujinx.Graphics.Vic.Types
|
|
{
|
|
struct BlendingSlotStruct
|
|
{
|
|
private long _word0;
|
|
private long _word1;
|
|
|
|
public int AlphaK1 => (int)_word0.Extract(0, 10);
|
|
public int AlphaK2 => (int)_word0.Extract(16, 10);
|
|
public int SrcFactCMatchSelect => (int)_word0.Extract(32, 3);
|
|
public int DstFactCMatchSelect => (int)_word0.Extract(36, 3);
|
|
public int SrcFactAMatchSelect => (int)_word0.Extract(40, 3);
|
|
public int DstFactAMatchSelect => (int)_word0.Extract(44, 3);
|
|
public int OverrideR => (int)_word1.Extract(66, 10);
|
|
public int OverrideG => (int)_word1.Extract(76, 10);
|
|
public int OverrideB => (int)_word1.Extract(86, 10);
|
|
public int OverrideA => (int)_word1.Extract(96, 10);
|
|
public bool UseOverrideR => _word1.Extract(108);
|
|
public bool UseOverrideG => _word1.Extract(109);
|
|
public bool UseOverrideB => _word1.Extract(110);
|
|
public bool UseOverrideA => _word1.Extract(111);
|
|
public bool MaskR => _word1.Extract(112);
|
|
public bool MaskG => _word1.Extract(113);
|
|
public bool MaskB => _word1.Extract(114);
|
|
public bool MaskA => _word1.Extract(115);
|
|
}
|
|
}
|