2018-02-05 00:08:20 +01:00
|
|
|
using ChocolArm64.Instruction;
|
|
|
|
|
|
|
|
namespace ChocolArm64.Decoder
|
|
|
|
{
|
|
|
|
class AOpCodeSystem : AOpCode
|
|
|
|
{
|
|
|
|
public int Rt { get; private set; }
|
|
|
|
public int Op2 { get; private set; }
|
|
|
|
public int CRm { get; private set; }
|
|
|
|
public int CRn { get; private set; }
|
|
|
|
public int Op1 { get; private set; }
|
|
|
|
public int Op0 { get; private set; }
|
|
|
|
|
2018-02-10 18:20:46 +01:00
|
|
|
public AOpCodeSystem(AInst Inst, long Position, int OpCode) : base(Inst, Position, OpCode)
|
2018-02-05 00:08:20 +01:00
|
|
|
{
|
|
|
|
Rt = (OpCode >> 0) & 0x1f;
|
|
|
|
Op2 = (OpCode >> 5) & 0x7;
|
|
|
|
CRm = (OpCode >> 8) & 0xf;
|
|
|
|
CRn = (OpCode >> 12) & 0xf;
|
|
|
|
Op1 = (OpCode >> 16) & 0x7;
|
|
|
|
Op0 = ((OpCode >> 19) & 0x1) | 2;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|