OpCodeT32AluBf.cs 676 B

12345678910111213141516171819202122
  1. namespace ARMeilleure.Decoders
  2. {
  3. class OpCodeT32AluBf : OpCodeT32, IOpCode32AluBf
  4. {
  5. public int Rd { get; }
  6. public int Rn { get; }
  7. public int Msb { get; }
  8. public int Lsb { get; }
  9. public new static OpCode Create(InstDescriptor inst, ulong address, int opCode) => new OpCodeT32AluBf(inst, address, opCode);
  10. public OpCodeT32AluBf(InstDescriptor inst, ulong address, int opCode) : base(inst, address, opCode)
  11. {
  12. Rd = (opCode >> 8) & 0xf;
  13. Rn = (opCode >> 16) & 0xf;
  14. Msb = (opCode >> 0) & 0x1f;
  15. Lsb = ((opCode >> 6) & 0x3) | ((opCode >> 10) & 0x1c);
  16. }
  17. }
  18. }