private static void DecompileOp29(DecompilerContext context, DecompilerTableEntry entry, ref List <object> operands, ref List <int> branchTargets) { var oprs = context.DecompileOperands("WB"); operands.AddRange(oprs); var op = (int)oprs[1]; if (op == 1) { operands.Add(context.DecompileOperand('W')); } else { operands.Add(context.DecompileOperand('B')); } }
private static void DecompileOp41(DecompilerContext context, DecompilerTableEntry entry, ref List <object> operands, ref List <int> branchTargets) { var oprs = context.DecompileOperands("BW"); operands.AddRange(oprs); var op = (int)oprs[1]; if (Op41Values.Contains(op)) { operands.Add(context.DecompileOperand('B')); } }
internal static void DecompileDefault(DecompilerContext context, DecompilerTableEntry entry, ref List <object> operands, ref List <int> branchTargets) { if (string.IsNullOrEmpty(entry.Operand)) { return; } for (var i = 0; i < entry.Operand.Length; ++i) { char c = entry.Operand[i]; var op = context.DecompileOperand(c); if (char.ToLower(c) == 'o') { branchTargets.Add((int)op); } operands.Add(op); } }