public void Register(IInstructionSet instructionSet) { int baseAddress; IInstruction i; for (int sz = 0; sz < 3; sz++) { if (sz == 0) { baseAddress = 0xe100; i = new AnonymousInstruction(this); } else if (sz == 1) { baseAddress = 0xe140; i = new AnonymousInstruction1(this); } else { baseAddress = 0xe180; i = new AnonymousInstruction2(this); } for (int imm = 0; imm < 8; imm++) { for (int reg = 0; reg < 8; reg++) { instructionSet.AddInstruction(baseAddress + (imm << 9) + reg, i); } } } for (int sz = 0; sz < 3; sz++) { if (sz == 0) { baseAddress = 0xe120; i = new AnonymousInstruction3(this); } else if (sz == 1) { baseAddress = 0xe160; i = new AnonymousInstruction4(this); } else { baseAddress = 0xe1a0; i = new AnonymousInstruction5(this); } for (int imm = 0; imm < 8; imm++) { for (int reg = 0; reg < 8; reg++) { instructionSet.AddInstruction(baseAddress + (imm << 9) + reg, i); } } } baseAddress = 0xe1c0; i = new AnonymousInstruction6(this); for (int ea_mode = 2; ea_mode < 8; ea_mode++) { for (int ea_reg = 0; ea_reg < 8; ea_reg++) { if (ea_mode == 7 && ea_reg > 1) { break; } instructionSet.AddInstruction(baseAddress + (ea_mode << 3) + ea_reg, i); } } }
public void Register(IInstructionSet instructionSet) { if (instructionSet is null) { throw new System.ArgumentNullException(nameof(instructionSet)); } int baseAddress; IInstruction i; for (int sz = 0; sz < 3; sz++) { if (sz == 0) { baseAddress = 0xe108; i = new AnonymousInstruction(this); } else if (sz == 1) { baseAddress = 0xe148; i = new AnonymousInstruction1(this); } else { baseAddress = 0xe188; i = new AnonymousInstruction2(this); } for (int imm = 0; imm < 8; imm++) { for (int reg = 0; reg < 8; reg++) { instructionSet.AddInstruction(baseAddress + (imm << 9) + reg, i); } } } for (int sz = 0; sz < 3; sz++) { if (sz == 0) { baseAddress = 0xe128; i = new AnonymousInstruction3(this); } else if (sz == 1) { baseAddress = 0xe168; i = new AnonymousInstruction4(this); } else { baseAddress = 0xe1a8; i = new AnonymousInstruction5(this); } for (int imm = 0; imm < 8; imm++) { for (int reg = 0; reg < 8; reg++) { instructionSet.AddInstruction(baseAddress + (imm << 9) + reg, i); } } } baseAddress = 0xe3c0; i = new AnonymousInstruction6(this); for (int ea_mode = 2; ea_mode < 8; ea_mode++) { for (int ea_reg = 0; ea_reg < 8; ea_reg++) { if (ea_mode == 7 && ea_reg > 1) { break; } instructionSet.AddInstruction(baseAddress + (ea_mode << 3) + ea_reg, i); } } }