{ ****************************************************************************** }
{ Mozaa 0.95 - Virtual PC emulator - developed by Massimiliano Boidi 2003 - 2004 }
{ ****************************************************************************** }

{ For any question write to maxboidi@libero.it }

(* **** *)
procedure InitSystem;
begin
  BxResolve16mod0[0]:=bx_cpu.Resolve16mod0Rm0;
  BxResolve16mod0[1]:=bx_cpu.Resolve16mod0Rm1;
  BxResolve16mod0[2]:=bx_cpu.Resolve16mod0Rm2;
  BxResolve16mod0[3]:=bx_cpu.Resolve16mod0Rm3;
  BxResolve16mod0[4]:=bx_cpu.Resolve16mod0Rm4;
  BxResolve16mod0[5]:=bx_cpu.Resolve16mod0Rm5;
  BxResolve16mod0[6]:=nil; // d16, no registers used
  BxResolve16mod0[7]:=bx_cpu.Resolve16mod0Rm7;

  BxResolve16mod1or2[0]:=bx_cpu.Resolve16mod1or2Rm0;
  BxResolve16mod1or2[1]:=bx_cpu.Resolve16mod1or2Rm1;
  BxResolve16mod1or2[2]:=bx_cpu.Resolve16mod1or2Rm2;
  BxResolve16mod1or2[3]:=bx_cpu.Resolve16mod1or2Rm3;
  BxResolve16mod1or2[4]:=bx_cpu.Resolve16mod1or2Rm4;
  BxResolve16mod1or2[5]:=bx_cpu.Resolve16mod1or2Rm5;
  BxResolve16mod1or2[6]:=bx_cpu.Resolve16mod1or2Rm6;
  BxResolve16mod1or2[7]:=bx_cpu.Resolve16mod1or2Rm7;

  BxResolve32mod0[0]:=bx_cpu.Resolve32mod0Rm0;
  BxResolve32mod0[1]:=bx_cpu.Resolve32mod0Rm1;
  BxResolve32mod0[2]:=bx_cpu.Resolve32mod0Rm2;
  BxResolve32mod0[3]:=bx_cpu.Resolve32mod0Rm3;
  BxResolve32mod0[4]:=NULL; // escape to 2-byte
  BxResolve32mod0[5]:=NULL; // d32, no registers used
  BxResolve32mod0[6]:=bx_cpu.Resolve32mod0Rm6;
  BxResolve32mod0[7]:=bx_cpu.Resolve32mod0Rm7;

  BxResolve32mod1or2[0]:=bx_cpu.Resolve32mod1or2Rm0;
  BxResolve32mod1or2[1]:=bx_cpu.Resolve32mod1or2Rm1;
  BxResolve32mod1or2[2]:=bx_cpu.Resolve32mod1or2Rm2;
  BxResolve32mod1or2[3]:=bx_cpu.Resolve32mod1or2Rm3;
  BxResolve32mod1or2[4]:=NULL; // escape to 2-byte
  BxResolve32mod1or2[5]:=bx_cpu.Resolve32mod1or2Rm5;
  BxResolve32mod1or2[6]:=bx_cpu.Resolve32mod1or2Rm6;
  BxResolve32mod1or2[7]:=bx_cpu.Resolve32mod1or2Rm7;

  BxResolve32mod0Base[0]:=bx_cpu.Resolve32mod0Base0;
  BxResolve32mod0Base[1]:=bx_cpu.Resolve32mod0Base1;
  BxResolve32mod0Base[2]:=bx_cpu.Resolve32mod0Base2;
  BxResolve32mod0Base[3]:=bx_cpu.Resolve32mod0Base3;
  BxResolve32mod0Base[4]:=bx_cpu.Resolve32mod0Base4;
  BxResolve32mod0Base[5]:=bx_cpu.Resolve32mod0Base5;
  BxResolve32mod0Base[6]:=bx_cpu.Resolve32mod0Base6;
  BxResolve32mod0Base[7]:=bx_cpu.Resolve32mod0Base7;

  BxResolve32mod1or2Base[0]:=bx_cpu.Resolve32mod1or2Base0;
  BxResolve32mod1or2Base[1]:=bx_cpu.Resolve32mod1or2Base1;
  BxResolve32mod1or2Base[2]:=bx_cpu.Resolve32mod1or2Base2;
  BxResolve32mod1or2Base[3]:=bx_cpu.Resolve32mod1or2Base3;
  BxResolve32mod1or2Base[4]:=bx_cpu.Resolve32mod1or2Base4;
  BxResolve32mod1or2Base[5]:=bx_cpu.Resolve32mod1or2Base5;
  BxResolve32mod1or2Base[6]:=bx_cpu.Resolve32mod1or2Base6;
  BxResolve32mod1or2Base[7]:=bx_cpu.Resolve32mod1or2Base7;

  BxOpcodeInfoG1EbIb[0].Attr:=BxImmediate_Ib;  BxOpcodeInfoG1EbIb[0].ExecutePtr:=bx_cpu.ADD_EbIb;
  BxOpcodeInfoG1EbIb[1].Attr:=BxImmediate_Ib;  BxOpcodeInfoG1EbIb[1].ExecutePtr:=bx_cpu.OR_EbIb;
  BxOpcodeInfoG1EbIb[2].Attr:=BxImmediate_Ib;  BxOpcodeInfoG1EbIb[2].ExecutePtr:=bx_cpu.ADC_EbIb;
  BxOpcodeInfoG1EbIb[3].Attr:=BxImmediate_Ib;  BxOpcodeInfoG1EbIb[3].ExecutePtr:=bx_cpu.SBB_EbIb;
  BxOpcodeInfoG1EbIb[4].Attr:=BxImmediate_Ib;  BxOpcodeInfoG1EbIb[4].ExecutePtr:=bx_cpu.AND_EbIb;
  BxOpcodeInfoG1EbIb[5].Attr:=BxImmediate_Ib;  BxOpcodeInfoG1EbIb[5].ExecutePtr:=bx_cpu.SUB_EbIb;
  BxOpcodeInfoG1EbIb[6].Attr:=BxImmediate_Ib;  BxOpcodeInfoG1EbIb[6].ExecutePtr:=bx_cpu.XOR_EbIb;
  BxOpcodeInfoG1EbIb[7].Attr:=BxImmediate_Ib;  BxOpcodeInfoG1EbIb[7].ExecutePtr:=bx_cpu.CMP_EbIb;

  BxOpcodeInfoG1Ew[0].Attr:=0;  BxOpcodeInfoG1Ew[0].ExecutePtr:=bx_cpu.ADD_EwIw;
  BxOpcodeInfoG1Ew[1].Attr:=0;  BxOpcodeInfoG1Ew[1].ExecutePtr:=bx_cpu.OR_EwIw;
  BxOpcodeInfoG1Ew[2].Attr:=0;  BxOpcodeInfoG1Ew[2].ExecutePtr:=bx_cpu.ADC_EwIw;
  BxOpcodeInfoG1Ew[3].Attr:=0;  BxOpcodeInfoG1Ew[3].ExecutePtr:=bx_cpu.SBB_EwIw;
  BxOpcodeInfoG1Ew[4].Attr:=0;  BxOpcodeInfoG1Ew[4].ExecutePtr:=bx_cpu.AND_EwIw;
  BxOpcodeInfoG1Ew[5].Attr:=0;  BxOpcodeInfoG1Ew[5].ExecutePtr:=bx_cpu.SUB_EwIw;
  BxOpcodeInfoG1Ew[6].Attr:=0;  BxOpcodeInfoG1Ew[6].ExecutePtr:=bx_cpu.XOR_EwIw;
  BxOpcodeInfoG1Ew[7].Attr:=0;  BxOpcodeInfoG1Ew[7].ExecutePtr:=bx_cpu.CMP_EwIw;

  BxOpcodeInfoG1Ed[0].Attr:=0;  BxOpcodeInfoG1Ed[0].ExecutePtr:=bx_cpu.ADD_EdId;
  BxOpcodeInfoG1Ed[1].Attr:=0;  BxOpcodeInfoG1Ed[1].ExecutePtr:=bx_cpu.OR_EdId;
  BxOpcodeInfoG1Ed[2].Attr:=0;  BxOpcodeInfoG1Ed[2].ExecutePtr:=bx_cpu.ADC_EdId;
  BxOpcodeInfoG1Ed[3].Attr:=0;  BxOpcodeInfoG1Ed[3].ExecutePtr:=bx_cpu.SBB_EdId;
  BxOpcodeInfoG1Ed[4].Attr:=0;  BxOpcodeInfoG1Ed[4].ExecutePtr:=bx_cpu.AND_EdId;
  BxOpcodeInfoG1Ed[5].Attr:=0;  BxOpcodeInfoG1Ed[5].ExecutePtr:=bx_cpu.SUB_EdId;
  BxOpcodeInfoG1Ed[6].Attr:=0;  BxOpcodeInfoG1Ed[6].ExecutePtr:=bx_cpu.XOR_EdId;
  BxOpcodeInfoG1Ed[7].Attr:=0;  BxOpcodeInfoG1Ed[7].ExecutePtr:=bx_cpu.CMP_EdId;

  // attributes defined in main area
   BxOpcodeInfoG2Eb[0].Attr:=0;  BxOpcodeInfoG2Eb[0].ExecutePtr:=bx_cpu.ROL_Eb;
   BxOpcodeInfoG2Eb[1].Attr:=0;  BxOpcodeInfoG2Eb[1].ExecutePtr:=bx_cpu.ROR_Eb;
   BxOpcodeInfoG2Eb[2].Attr:=0;  BxOpcodeInfoG2Eb[2].ExecutePtr:=bx_cpu.RCL_Eb;
   BxOpcodeInfoG2Eb[3].Attr:=0;  BxOpcodeInfoG2Eb[3].ExecutePtr:=bx_cpu.RCR_Eb;
   BxOpcodeInfoG2Eb[4].Attr:=0;  BxOpcodeInfoG2Eb[4].ExecutePtr:=bx_cpu.SHL_Eb;
   BxOpcodeInfoG2Eb[5].Attr:=0;  BxOpcodeInfoG2Eb[5].ExecutePtr:=bx_cpu.SHR_Eb;
   BxOpcodeInfoG2Eb[6].Attr:=0;  BxOpcodeInfoG2Eb[6].ExecutePtr:=bx_cpu.SHL_Eb;
   BxOpcodeInfoG2Eb[7].Attr:=0;  BxOpcodeInfoG2Eb[7].ExecutePtr:=bx_cpu.SAR_Eb;

  // attributes defined in main area
   BxOpcodeInfoG2Ew[0].Attr:=0;  BxOpcodeInfoG2Ew[0].ExecutePtr:=bx_cpu.ROL_Ew;
   BxOpcodeInfoG2Ew[1].Attr:=0;  BxOpcodeInfoG2Ew[1].ExecutePtr:=bx_cpu.ROR_Ew;
   BxOpcodeInfoG2Ew[2].Attr:=0;  BxOpcodeInfoG2Ew[2].ExecutePtr:=bx_cpu.RCL_Ew;
   BxOpcodeInfoG2Ew[3].Attr:=0;  BxOpcodeInfoG2Ew[3].ExecutePtr:=bx_cpu.RCR_Ew;
   BxOpcodeInfoG2Ew[4].Attr:=0;  BxOpcodeInfoG2Ew[4].ExecutePtr:=bx_cpu.SHL_Ew;
   BxOpcodeInfoG2Ew[5].Attr:=0;  BxOpcodeInfoG2Ew[5].ExecutePtr:=bx_cpu.SHR_Ew;
   BxOpcodeInfoG2Ew[6].Attr:=0;  BxOpcodeInfoG2Ew[6].ExecutePtr:=bx_cpu.SHL_Ew;
   BxOpcodeInfoG2Ew[7].Attr:=0;  BxOpcodeInfoG2Ew[7].ExecutePtr:=bx_cpu.SAR_Ew;

  // attributes defined in main area
   BxOpcodeInfoG2Ed[0].Attr:=0;  BxOpcodeInfoG2Ed[0].ExecutePtr:=bx_cpu.ROL_Ed;
   BxOpcodeInfoG2Ed[1].Attr:=0;  BxOpcodeInfoG2Ed[1].ExecutePtr:=bx_cpu.ROR_Ed;
   BxOpcodeInfoG2Ed[2].Attr:=0;  BxOpcodeInfoG2Ed[2].ExecutePtr:=bx_cpu.RCL_Ed;
   BxOpcodeInfoG2Ed[3].Attr:=0;  BxOpcodeInfoG2Ed[3].ExecutePtr:=bx_cpu.RCR_Ed;
   BxOpcodeInfoG2Ed[4].Attr:=0;  BxOpcodeInfoG2Ed[4].ExecutePtr:=bx_cpu.SHL_Ed;
   BxOpcodeInfoG2Ed[5].Attr:=0;  BxOpcodeInfoG2Ed[5].ExecutePtr:=bx_cpu.SHR_Ed;
   BxOpcodeInfoG2Ed[6].Attr:=0;  BxOpcodeInfoG2Ed[6].ExecutePtr:=bx_cpu.SHL_Ed;
   BxOpcodeInfoG2Ed[7].Attr:=0;  BxOpcodeInfoG2Ed[7].ExecutePtr:=bx_cpu.SAR_Ed;

   BxOpcodeInfoG3Eb[0].Attr:=BxImmediate_Ib;  BxOpcodeInfoG3Eb[0].ExecutePtr:=bx_cpu.TEST_EbIb;
   BxOpcodeInfoG3Eb[1].Attr:=BxImmediate_Ib;  BxOpcodeInfoG3Eb[1].ExecutePtr:=bx_cpu.TEST_EbIb;
   BxOpcodeInfoG3Eb[2].Attr:=0;             BxOpcodeInfoG3Eb[2].ExecutePtr:=bx_cpu.NOT_Eb;
   BxOpcodeInfoG3Eb[3].Attr:=0;             BxOpcodeInfoG3Eb[3].ExecutePtr:=bx_cpu.NEG_Eb;
   BxOpcodeInfoG3Eb[4].Attr:=0;             BxOpcodeInfoG3Eb[4].ExecutePtr:=bx_cpu.MUL_ALEb;
   BxOpcodeInfoG3Eb[5].Attr:=0;             BxOpcodeInfoG3Eb[5].ExecutePtr:=bx_cpu.IMUL_ALEb;
   BxOpcodeInfoG3Eb[6].Attr:=0;             BxOpcodeInfoG3Eb[6].ExecutePtr:=bx_cpu.DIV_ALEb;
   BxOpcodeInfoG3Eb[7].Attr:=0;             BxOpcodeInfoG3Eb[7].ExecutePtr:=bx_cpu.IDIV_ALEb;

   BxOpcodeInfoG3Ew[0].Attr:=BxImmediate_Iw;  BxOpcodeInfoG3Ew[0].ExecutePtr:=bx_cpu.TEST_EwIw;
   BxOpcodeInfoG3Ew[1].Attr:=BxImmediate_Iw;  BxOpcodeInfoG3Ew[1].ExecutePtr:=bx_cpu.TEST_EwIw;
   BxOpcodeInfoG3Ew[2].Attr:=0;       BxOpcodeInfoG3Ew[2].ExecutePtr:=bx_cpu.NOT_Ew;
   BxOpcodeInfoG3Ew[3].Attr:=0;       BxOpcodeInfoG3Ew[3].ExecutePtr:=bx_cpu.NEG_Ew;
   BxOpcodeInfoG3Ew[4].Attr:=0;       BxOpcodeInfoG3Ew[4].ExecutePtr:=bx_cpu.MUL_AXEw;
   BxOpcodeInfoG3Ew[5].Attr:=0;       BxOpcodeInfoG3Ew[5].ExecutePtr:=bx_cpu.IMUL_AXEw;
   BxOpcodeInfoG3Ew[6].Attr:=0;       BxOpcodeInfoG3Ew[6].ExecutePtr:=bx_cpu.DIV_AXEw;
   BxOpcodeInfoG3Ew[7].Attr:=0;       BxOpcodeInfoG3Ew[7].ExecutePtr:=bx_cpu.IDIV_AXEw;

   BxOpcodeInfoG3Ed[0].Attr:=BxImmediate_Iv;  BxOpcodeInfoG3Ed[0].ExecutePtr:=bx_cpu.TEST_EdId;
   BxOpcodeInfoG3Ed[1].Attr:=BxImmediate_Iv;  BxOpcodeInfoG3Ed[1].ExecutePtr:=bx_cpu.TEST_EdId;
   BxOpcodeInfoG3Ed[2].Attr:=0;             BxOpcodeInfoG3Ed[2].ExecutePtr:=bx_cpu.NOT_Ed;
   BxOpcodeInfoG3Ed[3].Attr:=0;             BxOpcodeInfoG3Ed[3].ExecutePtr:=bx_cpu.NEG_Ed;
   BxOpcodeInfoG3Ed[4].Attr:=0;             BxOpcodeInfoG3Ed[4].ExecutePtr:=bx_cpu.MUL_EAXEd;
   BxOpcodeInfoG3Ed[5].Attr:=0;             BxOpcodeInfoG3Ed[5].ExecutePtr:=bx_cpu.IMUL_EAXEd;
   BxOpcodeInfoG3Ed[6].Attr:=0;             BxOpcodeInfoG3Ed[6].ExecutePtr:=bx_cpu.DIV_EAXEd;
   BxOpcodeInfoG3Ed[7].Attr:=0;             BxOpcodeInfoG3Ed[7].ExecutePtr:=bx_cpu.IDIV_EAXEd;

   BxOpcodeInfoG4[0].Attr:=0;  BxOpcodeInfoG4[0].ExecutePtr:=bx_cpu.INC_Eb;
   BxOpcodeInfoG4[1].Attr:=0;  BxOpcodeInfoG4[1].ExecutePtr:=bx_cpu.DEC_Eb;
   BxOpcodeInfoG4[2].Attr:=0;  BxOpcodeInfoG4[2].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG4[3].Attr:=0;  BxOpcodeInfoG4[3].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG4[4].Attr:=0;  BxOpcodeInfoG4[4].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG4[5].Attr:=0;  BxOpcodeInfoG4[5].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG4[6].Attr:=0;  BxOpcodeInfoG4[6].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG4[7].Attr:=0;  BxOpcodeInfoG4[7].ExecutePtr:=bx_cpu.BxError;

  // attributes defined in main area
   BxOpcodeInfoG5w[0].Attr:=0;  BxOpcodeInfoG5w[0].ExecutePtr:=bx_cpu.INC_Ew;
   BxOpcodeInfoG5w[1].Attr:=0;  BxOpcodeInfoG5w[1].ExecutePtr:=bx_cpu.DEC_Ew;
   BxOpcodeInfoG5w[2].Attr:=0;  BxOpcodeInfoG5w[2].ExecutePtr:=bx_cpu.CALL_Ew;
   BxOpcodeInfoG5w[3].Attr:=0;  BxOpcodeInfoG5w[3].ExecutePtr:=bx_cpu.CALL16_Ep;
   BxOpcodeInfoG5w[4].Attr:=0;  BxOpcodeInfoG5w[4].ExecutePtr:=bx_cpu.JMP_Ew;
   BxOpcodeInfoG5w[5].Attr:=0;  BxOpcodeInfoG5w[5].ExecutePtr:=bx_cpu.JMP16_Ep;
   BxOpcodeInfoG5w[6].Attr:=0;  BxOpcodeInfoG5w[6].ExecutePtr:=bx_cpu.PUSH_Ew;
   BxOpcodeInfoG5w[7].Attr:=0;  BxOpcodeInfoG5w[7].ExecutePtr:=bx_cpu.BxError;

  // attributes defined in main area
   BxOpcodeInfoG5d[0].Attr:=0;  BxOpcodeInfoG5d[0].ExecutePtr:=bx_cpu.INC_Ed;
   BxOpcodeInfoG5d[1].Attr:=0;  BxOpcodeInfoG5d[1].ExecutePtr:=bx_cpu.DEC_Ed;
   BxOpcodeInfoG5d[2].Attr:=0;  BxOpcodeInfoG5d[2].ExecutePtr:=bx_cpu.CALL_Ed;
   BxOpcodeInfoG5d[3].Attr:=0;  BxOpcodeInfoG5d[3].ExecutePtr:=bx_cpu.CALL32_Ep;
   BxOpcodeInfoG5d[4].Attr:=0;  BxOpcodeInfoG5d[4].ExecutePtr:=bx_cpu.JMP_Ed;
   BxOpcodeInfoG5d[5].Attr:=0;  BxOpcodeInfoG5d[5].ExecutePtr:=bx_cpu.JMP32_Ep;
   BxOpcodeInfoG5d[6].Attr:=0;  BxOpcodeInfoG5d[6].ExecutePtr:=bx_cpu.PUSH_Ed;
   BxOpcodeInfoG5d[7].Attr:=0;  BxOpcodeInfoG5d[7].ExecutePtr:=bx_cpu.BxError;

  // attributes defined in main area
   BxOpcodeInfoG6[0].Attr:=0;  BxOpcodeInfoG6[00].ExecutePtr:=bx_cpu.SLDT_Ew;
   BxOpcodeInfoG6[1].Attr:=0;  BxOpcodeInfoG6[01].ExecutePtr:=bx_cpu.STR_Ew;
   BxOpcodeInfoG6[2].Attr:=0;  BxOpcodeInfoG6[02].ExecutePtr:=bx_cpu.LLDT_Ew;
   BxOpcodeInfoG6[3].Attr:=0;  BxOpcodeInfoG6[03].ExecutePtr:=bx_cpu.LTR_Ew;
   BxOpcodeInfoG6[4].Attr:=0;  BxOpcodeInfoG6[04].ExecutePtr:=bx_cpu.VERR_Ew;
   BxOpcodeInfoG6[5].Attr:=0;  BxOpcodeInfoG6[05].ExecutePtr:=bx_cpu.VERW_Ew;
   BxOpcodeInfoG6[6].Attr:=0;  BxOpcodeInfoG6[06].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG6[7].Attr:=0;  BxOpcodeInfoG6[07].ExecutePtr:=bx_cpu.BxError;

   BxOpcodeInfoG7[0].Attr:=0;  BxOpcodeInfoG7[00].ExecutePtr:=bx_cpu.SGDT_Ms;
   BxOpcodeInfoG7[1].Attr:=0;  BxOpcodeInfoG7[01].ExecutePtr:=bx_cpu.SIDT_Ms;
   BxOpcodeInfoG7[2].Attr:=0;  BxOpcodeInfoG7[02].ExecutePtr:=bx_cpu.LGDT_Ms;
   BxOpcodeInfoG7[3].Attr:=0;  BxOpcodeInfoG7[03].ExecutePtr:=bx_cpu.LIDT_Ms;
   BxOpcodeInfoG7[4].Attr:=0;  BxOpcodeInfoG7[04].ExecutePtr:=bx_cpu.SMSW_Ew;
   BxOpcodeInfoG7[5].Attr:=0;  BxOpcodeInfoG7[05].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG7[6].Attr:=0;  BxOpcodeInfoG7[06].ExecutePtr:=bx_cpu.LMSW_Ew;
   BxOpcodeInfoG7[7].Attr:=0;  BxOpcodeInfoG7[07].ExecutePtr:=bx_cpu.INVLPG;

   BxOpcodeInfoG8EvIb[00].Attr:=0;               BxOpcodeInfoG8EvIb[00].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG8EvIb[01].Attr:=0;               BxOpcodeInfoG8EvIb[01].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG8EvIb[02].Attr:=0;               BxOpcodeInfoG8EvIb[02].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG8EvIb[03].Attr:=0;               BxOpcodeInfoG8EvIb[03].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG8EvIb[04].Attr:=BxImmediate_Ib;  BxOpcodeInfoG8EvIb[04].ExecutePtr:=bx_cpu.BT_EvIb;
   BxOpcodeInfoG8EvIb[05].Attr:=BxImmediate_Ib;  BxOpcodeInfoG8EvIb[05].ExecutePtr:=bx_cpu.BTS_EvIb;
   BxOpcodeInfoG8EvIb[06].Attr:=BxImmediate_Ib;  BxOpcodeInfoG8EvIb[06].ExecutePtr:=bx_cpu.BTR_EvIb;
   BxOpcodeInfoG8EvIb[07].Attr:=BxImmediate_Ib;  BxOpcodeInfoG8EvIb[07].ExecutePtr:=bx_cpu.BTC_EvIb;

   BxOpcodeInfoG9[00].Attr:=0;  BxOpcodeInfoG9[00].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG9[01].Attr:=0;  BxOpcodeInfoG9[01].ExecutePtr:=bx_cpu.CMPXCHG8B;
   BxOpcodeInfoG9[02].Attr:=0;  BxOpcodeInfoG9[02].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG9[03].Attr:=0;  BxOpcodeInfoG9[03].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG9[04].Attr:=0;  BxOpcodeInfoG9[04].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG9[05].Attr:=0;  BxOpcodeInfoG9[05].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG9[06].Attr:=0;  BxOpcodeInfoG9[06].ExecutePtr:=bx_cpu.BxError;
   BxOpcodeInfoG9[07].Attr:=0;  BxOpcodeInfoG9[07].ExecutePtr:=bx_cpu.BxError;

  BxOpcodeInfo[$0].Attr:=BxAnother;  BxOpcodeInfo[$0].ExecutePtr:=bx_cpu.ADD_EbGb;
  BxOpcodeInfo[$1].Attr:=BxAnother;  BxOpcodeInfo[$1].ExecutePtr:=bx_cpu.ADD_EwGw;
  BxOpcodeInfo[$2].Attr:=BxAnother;  BxOpcodeInfo[$2].ExecutePtr:=bx_cpu.ADD_GbEb;
  BxOpcodeInfo[$3].Attr:=BxAnother;  BxOpcodeInfo[$3].ExecutePtr:=bx_cpu.ADD_GwEw;
  BxOpcodeInfo[$4].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$4].ExecutePtr:=bx_cpu.ADD_ALIb;
  BxOpcodeInfo[$5].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$5].ExecutePtr:=bx_cpu.ADD_AXIw;
  BxOpcodeInfo[$6].Attr:=0;  BxOpcodeInfo[$6].ExecutePtr:=bx_cpu.PUSH_ES;
  BxOpcodeInfo[$7].Attr:=0;  BxOpcodeInfo[$7].ExecutePtr:=bx_cpu.POP_ES;
  BxOpcodeInfo[$8].Attr:=BxAnother;  BxOpcodeInfo[$8].ExecutePtr:=bx_cpu.OR_EbGb;
  BxOpcodeInfo[$9].Attr:=BxAnother;  BxOpcodeInfo[$9].ExecutePtr:=bx_cpu.OR_EwGw;
  BxOpcodeInfo[$A].Attr:=BxAnother;  BxOpcodeInfo[$A].ExecutePtr:=bx_cpu.OR_GbEb;
  BxOpcodeInfo[$B].Attr:=BxAnother;  BxOpcodeInfo[$B].ExecutePtr:=bx_cpu.OR_GwEw;
  BxOpcodeInfo[$C].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$C].ExecutePtr:=bx_cpu.OR_ALIb;
  BxOpcodeInfo[$D].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$D].ExecutePtr:=bx_cpu.OR_AXIw;
  BxOpcodeInfo[$E].Attr:=0;  BxOpcodeInfo[$E].ExecutePtr:=bx_cpu.PUSH_CS;
  BxOpcodeInfo[$F].Attr:=BxAnother;  BxOpcodeInfo[$F].ExecutePtr:=bx_cpu.BxError; // 2-byte escape
  BxOpcodeInfo[$10].Attr:=BxAnother;  BxOpcodeInfo[$10].ExecutePtr:=bx_cpu.ADC_EbGb;
  BxOpcodeInfo[$11].Attr:=BxAnother;  BxOpcodeInfo[$11].ExecutePtr:=bx_cpu.ADC_EwGw;
  BxOpcodeInfo[$12].Attr:=BxAnother;  BxOpcodeInfo[$12].ExecutePtr:=bx_cpu.ADC_GbEb;
  BxOpcodeInfo[$13].Attr:=BxAnother;  BxOpcodeInfo[$13].ExecutePtr:=bx_cpu.ADC_GwEw;
  BxOpcodeInfo[$14].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$14].ExecutePtr:=bx_cpu.ADC_ALIb;
  BxOpcodeInfo[$15].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$15].ExecutePtr:=bx_cpu.ADC_AXIw;
  BxOpcodeInfo[$16].Attr:=0;  BxOpcodeInfo[$16].ExecutePtr:=bx_cpu.PUSH_SS;
  BxOpcodeInfo[$17].Attr:=0;  BxOpcodeInfo[$17].ExecutePtr:=bx_cpu.POP_SS;
  BxOpcodeInfo[$18].Attr:=BxAnother;  BxOpcodeInfo[$18].ExecutePtr:=bx_cpu.SBB_EbGb;
  BxOpcodeInfo[$19].Attr:=BxAnother;  BxOpcodeInfo[$19].ExecutePtr:=bx_cpu.SBB_EwGw;
  BxOpcodeInfo[$1A].Attr:=BxAnother;  BxOpcodeInfo[$1A].ExecutePtr:=bx_cpu.SBB_GbEb;
  BxOpcodeInfo[$1B].Attr:=BxAnother;  BxOpcodeInfo[$1B].ExecutePtr:=bx_cpu.SBB_GwEw;
  BxOpcodeInfo[$1C].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$1C].ExecutePtr:=bx_cpu.SBB_ALIb;
  BxOpcodeInfo[$1D].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$1D].ExecutePtr:=bx_cpu.SBB_AXIw;
  BxOpcodeInfo[$1E].Attr:=0;  BxOpcodeInfo[$1E].ExecutePtr:=bx_cpu.PUSH_DS;
  BxOpcodeInfo[$1F].Attr:=0;  BxOpcodeInfo[$1F].ExecutePtr:=bx_cpu.POP_DS;
  BxOpcodeInfo[$20].Attr:=BxAnother;  BxOpcodeInfo[$20].ExecutePtr:=bx_cpu.AND_EbGb;
  BxOpcodeInfo[$21].Attr:=BxAnother;  BxOpcodeInfo[$21].ExecutePtr:=bx_cpu.AND_EwGw;
  BxOpcodeInfo[$22].Attr:=BxAnother;  BxOpcodeInfo[$22].ExecutePtr:=bx_cpu.AND_GbEb;
  BxOpcodeInfo[$23].Attr:=BxAnother;  BxOpcodeInfo[$23].ExecutePtr:=bx_cpu.AND_GwEw;
  BxOpcodeInfo[$24].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$24].ExecutePtr:=bx_cpu.AND_ALIb;
  BxOpcodeInfo[$25].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$25].ExecutePtr:=bx_cpu.AND_AXIw;
  BxOpcodeInfo[$26].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$26].ExecutePtr:=bx_cpu.BxError; // ES:
  BxOpcodeInfo[$27].Attr:=0;  BxOpcodeInfo[$27].ExecutePtr:=bx_cpu.DAA;
  BxOpcodeInfo[$28].Attr:=BxAnother;  BxOpcodeInfo[$28].ExecutePtr:=bx_cpu.SUB_EbGb;
  BxOpcodeInfo[$29].Attr:=BxAnother;  BxOpcodeInfo[$29].ExecutePtr:=bx_cpu.SUB_EwGw;
  BxOpcodeInfo[$2A].Attr:=BxAnother;  BxOpcodeInfo[$2A].ExecutePtr:=bx_cpu.SUB_GbEb;
  BxOpcodeInfo[$2B].Attr:=BxAnother;  BxOpcodeInfo[$2B].ExecutePtr:=bx_cpu.SUB_GwEw;
  BxOpcodeInfo[$2C].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2C].ExecutePtr:=bx_cpu.SUB_ALIb;
  BxOpcodeInfo[$2D].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$2D].ExecutePtr:=bx_cpu.SUB_AXIw;
  BxOpcodeInfo[$2E].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$2E].ExecutePtr:=bx_cpu.BxError; // CS:
  BxOpcodeInfo[$2F].Attr:=0;  BxOpcodeInfo[$2F].ExecutePtr:=bx_cpu.DAS;
  BxOpcodeInfo[$30].Attr:=BxAnother;  BxOpcodeInfo[$30].ExecutePtr:=bx_cpu.XOR_EbGb;
  BxOpcodeInfo[$31].Attr:=BxAnother;  BxOpcodeInfo[$31].ExecutePtr:=bx_cpu.XOR_EwGw;
  BxOpcodeInfo[$32].Attr:=BxAnother;  BxOpcodeInfo[$32].ExecutePtr:=bx_cpu.XOR_GbEb;
  BxOpcodeInfo[$33].Attr:=BxAnother;  BxOpcodeInfo[$33].ExecutePtr:=bx_cpu.XOR_GwEw;
  BxOpcodeInfo[$34].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$34].ExecutePtr:=bx_cpu.XOR_ALIb;
  BxOpcodeInfo[$35].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$35].ExecutePtr:=bx_cpu.XOR_AXIw;
  BxOpcodeInfo[$36].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$36].ExecutePtr:=bx_cpu.BxError; // SS:
  BxOpcodeInfo[$37].Attr:=0;  BxOpcodeInfo[$37].ExecutePtr:=bx_cpu.AAA;
  BxOpcodeInfo[$38].Attr:=BxAnother;  BxOpcodeInfo[$38].ExecutePtr:=bx_cpu.CMP_EbGb;
  BxOpcodeInfo[$39].Attr:=BxAnother;  BxOpcodeInfo[$39].ExecutePtr:=bx_cpu.CMP_EwGw;
  BxOpcodeInfo[$3A].Attr:=BxAnother;  BxOpcodeInfo[$3A].ExecutePtr:=bx_cpu.CMP_GbEb;
  BxOpcodeInfo[$3B].Attr:=BxAnother;  BxOpcodeInfo[$3B].ExecutePtr:=bx_cpu.CMP_GwEw;
  BxOpcodeInfo[$3C].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$3C].ExecutePtr:=bx_cpu.CMP_ALIb;
  BxOpcodeInfo[$3D].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$3D].ExecutePtr:=bx_cpu.CMP_AXIw;
  BxOpcodeInfo[$3E].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$3E].ExecutePtr:=bx_cpu.BxError; // DS:
  BxOpcodeInfo[$3F].Attr:=0;  BxOpcodeInfo[$3F].ExecutePtr:=bx_cpu.AAS;
  BxOpcodeInfo[$40].Attr:=0;  BxOpcodeInfo[$40].ExecutePtr:=bx_cpu.INC_RX;
  BxOpcodeInfo[$41].Attr:=0;  BxOpcodeInfo[$41].ExecutePtr:=bx_cpu.INC_RX;
  BxOpcodeInfo[$42].Attr:=0;  BxOpcodeInfo[$42].ExecutePtr:=bx_cpu.INC_RX;
  BxOpcodeInfo[$43].Attr:=0;  BxOpcodeInfo[$43].ExecutePtr:=bx_cpu.INC_RX;
  BxOpcodeInfo[$44].Attr:=0;  BxOpcodeInfo[$44].ExecutePtr:=bx_cpu.INC_RX;
  BxOpcodeInfo[$45].Attr:=0;  BxOpcodeInfo[$45].ExecutePtr:=bx_cpu.INC_RX;
  BxOpcodeInfo[$46].Attr:=0;  BxOpcodeInfo[$46].ExecutePtr:=bx_cpu.INC_RX;
  BxOpcodeInfo[$47].Attr:=0;  BxOpcodeInfo[$47].ExecutePtr:=bx_cpu.INC_RX;
  BxOpcodeInfo[$48].Attr:=0;  BxOpcodeInfo[$48].ExecutePtr:=bx_cpu.DEC_RX;
  BxOpcodeInfo[$49].Attr:=0;  BxOpcodeInfo[$49].ExecutePtr:=bx_cpu.DEC_RX;
  BxOpcodeInfo[$4A].Attr:=0;  BxOpcodeInfo[$4A].ExecutePtr:=bx_cpu.DEC_RX;
  BxOpcodeInfo[$4B].Attr:=0;  BxOpcodeInfo[$4B].ExecutePtr:=bx_cpu.DEC_RX;
  BxOpcodeInfo[$4C].Attr:=0;  BxOpcodeInfo[$4C].ExecutePtr:=bx_cpu.DEC_RX;
  BxOpcodeInfo[$4D].Attr:=0;  BxOpcodeInfo[$4D].ExecutePtr:=bx_cpu.DEC_RX;
  BxOpcodeInfo[$4E].Attr:=0;  BxOpcodeInfo[$4E].ExecutePtr:=bx_cpu.DEC_RX;
  BxOpcodeInfo[$4F].Attr:=0;  BxOpcodeInfo[$4F].ExecutePtr:=bx_cpu.DEC_RX;
  BxOpcodeInfo[$50].Attr:=0;  BxOpcodeInfo[$50].ExecutePtr:=bx_cpu.PUSH_RX;
  BxOpcodeInfo[$51].Attr:=0;  BxOpcodeInfo[$51].ExecutePtr:=bx_cpu.PUSH_RX;
  BxOpcodeInfo[$52].Attr:=0;  BxOpcodeInfo[$52].ExecutePtr:=bx_cpu.PUSH_RX;
  BxOpcodeInfo[$53].Attr:=0;  BxOpcodeInfo[$53].ExecutePtr:=bx_cpu.PUSH_RX;
  BxOpcodeInfo[$54].Attr:=0;  BxOpcodeInfo[$54].ExecutePtr:=bx_cpu.PUSH_RX;
  BxOpcodeInfo[$55].Attr:=0;  BxOpcodeInfo[$55].ExecutePtr:=bx_cpu.PUSH_RX;
  BxOpcodeInfo[$56].Attr:=0;  BxOpcodeInfo[$56].ExecutePtr:=bx_cpu.PUSH_RX;
  BxOpcodeInfo[$57].Attr:=0;  BxOpcodeInfo[$57].ExecutePtr:=bx_cpu.PUSH_RX;
  BxOpcodeInfo[$58].Attr:=0;  BxOpcodeInfo[$58].ExecutePtr:=bx_cpu.POP_RX;
  BxOpcodeInfo[$59].Attr:=0;  BxOpcodeInfo[$59].ExecutePtr:=bx_cpu.POP_RX;
  BxOpcodeInfo[$5A].Attr:=0;  BxOpcodeInfo[$5A].ExecutePtr:=bx_cpu.POP_RX;
  BxOpcodeInfo[$5B].Attr:=0;  BxOpcodeInfo[$5B].ExecutePtr:=bx_cpu.POP_RX;
  BxOpcodeInfo[$5C].Attr:=0;  BxOpcodeInfo[$5C].ExecutePtr:=bx_cpu.POP_RX;
  BxOpcodeInfo[$5D].Attr:=0;  BxOpcodeInfo[$5D].ExecutePtr:=bx_cpu.POP_RX;
  BxOpcodeInfo[$5E].Attr:=0;  BxOpcodeInfo[$5E].ExecutePtr:=bx_cpu.POP_RX;
  BxOpcodeInfo[$5F].Attr:=0;  BxOpcodeInfo[$5F].ExecutePtr:=bx_cpu.POP_RX;
  BxOpcodeInfo[$60].Attr:=0;  BxOpcodeInfo[$60].ExecutePtr:=bx_cpu.PUSHAD16;
  BxOpcodeInfo[$61].Attr:=0;  BxOpcodeInfo[$61].ExecutePtr:=bx_cpu.POPAD16;
  BxOpcodeInfo[$62].Attr:=BxAnother;  BxOpcodeInfo[$62].ExecutePtr:=bx_cpu.BOUND_GvMa;
  BxOpcodeInfo[$63].Attr:=BxAnother;  BxOpcodeInfo[$63].ExecutePtr:=bx_cpu.ARPL_EwGw;
  BxOpcodeInfo[$64].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$64].ExecutePtr:=bx_cpu.BxError; // FS:
  BxOpcodeInfo[$65].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$65].ExecutePtr:=bx_cpu.BxError; // GS:
  BxOpcodeInfo[$66].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$66].ExecutePtr:=bx_cpu.BxError; // OS:
  BxOpcodeInfo[$67].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$67].ExecutePtr:=bx_cpu.BxError; // AS:
  BxOpcodeInfo[$68].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$68].ExecutePtr:=bx_cpu.PUSH_Iw;
  BxOpcodeInfo[$69].Attr:=BxAnother or BxImmediate_Iv;  BxOpcodeInfo[$69].ExecutePtr:=bx_cpu.IMUL_GwEwIw;
  BxOpcodeInfo[$6A].Attr:=BxImmediate_Ib_SE;  BxOpcodeInfo[$6A].ExecutePtr:=bx_cpu.PUSH_Iw;
  BxOpcodeInfo[$6B].Attr:=BxAnother or BxImmediate_Ib_SE;  BxOpcodeInfo[$6B].ExecutePtr:=bx_cpu.IMUL_GwEwIw;
  BxOpcodeInfo[$6C].Attr:=BxRepeatable;  BxOpcodeInfo[$6C].ExecutePtr:=bx_cpu.INSB_YbDX;
  BxOpcodeInfo[$6D].Attr:=BxRepeatable;  BxOpcodeInfo[$6D].ExecutePtr:=bx_cpu.INSW_YvDX;
  BxOpcodeInfo[$6E].Attr:=BxRepeatable;  BxOpcodeInfo[$6E].ExecutePtr:=bx_cpu.OUTSB_DXXb;
  BxOpcodeInfo[$6F].Attr:=BxRepeatable;  BxOpcodeInfo[$6F].ExecutePtr:=bx_cpu.OUTSW_DXXv;
  BxOpcodeInfo[$70].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$70].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$71].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$71].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$72].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$72].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$73].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$73].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$74].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$74].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$75].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$75].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$76].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$76].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$77].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$77].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$78].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$78].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$79].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$79].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$7A].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$7A].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$7B].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$7B].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$7C].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$7C].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$7D].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$7D].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$7E].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$7E].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$7F].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$7F].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$80].Attr:=BxAnother or BxGroup1; BxOpcodeInfo[$80].ExecutePtr:=nil; BxOpcodeInfo[$80].AnotherArray:=@BxOpcodeInfoG1EbIb;
  BxOpcodeInfo[$81].Attr:=BxAnother or BxGroup1 or BxImmediate_Iv; BxOpcodeInfo[$81].ExecutePtr:=nil; BxOpcodeInfo[$81].AnotherArray:=@BxOpcodeInfoG1Ew;
  BxOpcodeInfo[$82].Attr:=BxAnother or BxGroup1;  BxOpcodeInfo[$82].ExecutePtr:=nil; BxOpcodeInfo[$82].AnotherArray:=@BxOpcodeInfoG1EbIb;
  BxOpcodeInfo[$83].Attr:=BxAnother or BxGroup1 or BxImmediate_Ib_SE; BxOpcodeInfo[$83].ExecutePtr:=nil; BxOpcodeInfo[$83].AnotherArray:=@BxOpcodeInfoG1Ew;
  BxOpcodeInfo[$84].Attr:=BxAnother;  BxOpcodeInfo[$84].ExecutePtr:=bx_cpu.TEST_EbGb;
  BxOpcodeInfo[$85].Attr:=BxAnother;  BxOpcodeInfo[$85].ExecutePtr:=bx_cpu.TEST_EwGw;
  BxOpcodeInfo[$86].Attr:=BxAnother;  BxOpcodeInfo[$86].ExecutePtr:=bx_cpu.XCHG_EbGb;
  BxOpcodeInfo[$87].Attr:=BxAnother;  BxOpcodeInfo[$87].ExecutePtr:=bx_cpu.XCHG_EwGw;
  BxOpcodeInfo[$88].Attr:=BxAnother;  BxOpcodeInfo[$88].ExecutePtr:=bx_cpu.MOV_EbGb;
  BxOpcodeInfo[$89].Attr:=BxAnother;  BxOpcodeInfo[$89].ExecutePtr:=bx_cpu.MOV_EwGw;
  BxOpcodeInfo[$8A].Attr:=BxAnother;  BxOpcodeInfo[$8A].ExecutePtr:=bx_cpu.MOV_GbEb;
  BxOpcodeInfo[$8B].Attr:=BxAnother;  BxOpcodeInfo[$8B].ExecutePtr:=bx_cpu.MOV_GwEw;
  BxOpcodeInfo[$8C].Attr:=BxAnother;  BxOpcodeInfo[$8C].ExecutePtr:=bx_cpu.MOV_EwSw;
  BxOpcodeInfo[$8D].Attr:=BxAnother;  BxOpcodeInfo[$8D].ExecutePtr:=bx_cpu.LEA_GwM;
  BxOpcodeInfo[$8E].Attr:=BxAnother;  BxOpcodeInfo[$8E].ExecutePtr:=bx_cpu.MOV_SwEw;
  BxOpcodeInfo[$8F].Attr:=BxAnother;  BxOpcodeInfo[$8F].ExecutePtr:=bx_cpu.POP_Ew;
  BxOpcodeInfo[$90].Attr:=0;  BxOpcodeInfo[$90].ExecutePtr:=bx_cpu.NOP;
  BxOpcodeInfo[$91].Attr:=0;  BxOpcodeInfo[$91].ExecutePtr:=bx_cpu.XCHG_RXAX;
  BxOpcodeInfo[$92].Attr:=0;  BxOpcodeInfo[$92].ExecutePtr:=bx_cpu.XCHG_RXAX;
  BxOpcodeInfo[$93].Attr:=0;  BxOpcodeInfo[$93].ExecutePtr:=bx_cpu.XCHG_RXAX;
  BxOpcodeInfo[$94].Attr:=0;  BxOpcodeInfo[$94].ExecutePtr:=bx_cpu.XCHG_RXAX;
  BxOpcodeInfo[$95].Attr:=0;  BxOpcodeInfo[$95].ExecutePtr:=bx_cpu.XCHG_RXAX;
  BxOpcodeInfo[$96].Attr:=0;  BxOpcodeInfo[$96].ExecutePtr:=bx_cpu.XCHG_RXAX;
  BxOpcodeInfo[$97].Attr:=0;  BxOpcodeInfo[$97].ExecutePtr:=bx_cpu.XCHG_RXAX;
  BxOpcodeInfo[$98].Attr:=0;  BxOpcodeInfo[$98].ExecutePtr:=bx_cpu.CBW;
  BxOpcodeInfo[$99].Attr:=0;  BxOpcodeInfo[$99].ExecutePtr:=bx_cpu.CWD;
  BxOpcodeInfo[$9A].Attr:=BxImmediate_IvIw;  BxOpcodeInfo[$9A].ExecutePtr:=bx_cpu.CALL16_Ap;
  BxOpcodeInfo[$9B].Attr:=0;  BxOpcodeInfo[$9B].ExecutePtr:=bx_cpu.FWAIT; 
  BxOpcodeInfo[$9C].Attr:=0;  BxOpcodeInfo[$9C].ExecutePtr:=bx_cpu.PUSHF_Fv;
  BxOpcodeInfo[$9D].Attr:=0;  BxOpcodeInfo[$9D].ExecutePtr:=bx_cpu.POPF_Fv;
  BxOpcodeInfo[$9E].Attr:=0;  BxOpcodeInfo[$9E].ExecutePtr:=bx_cpu.SAHF;
  BxOpcodeInfo[$9F].Attr:=0;  BxOpcodeInfo[$9F].ExecutePtr:=bx_cpu.LAHF;
  BxOpcodeInfo[$A0].Attr:=BxImmediate_O;  BxOpcodeInfo[$A0].ExecutePtr:=bx_cpu.MOV_ALOb;
  BxOpcodeInfo[$A1].Attr:=BxImmediate_O;  BxOpcodeInfo[$A1].ExecutePtr:=bx_cpu.MOV_AXOw;
  BxOpcodeInfo[$A2].Attr:=BxImmediate_O;  BxOpcodeInfo[$A2].ExecutePtr:=bx_cpu.MOV_ObAL;
  BxOpcodeInfo[$A3].Attr:=BxImmediate_O;  BxOpcodeInfo[$A3].ExecutePtr:=bx_cpu.MOV_OwAX;
  BxOpcodeInfo[$A4].Attr:=BxRepeatable;  BxOpcodeInfo[$A4].ExecutePtr:=bx_cpu.MOVSB_XbYb;
  BxOpcodeInfo[$A5].Attr:=BxRepeatable;  BxOpcodeInfo[$A5].ExecutePtr:=bx_cpu.MOVSW_XvYv;
  BxOpcodeInfo[$A6].Attr:=BxRepeatable or BxRepeatableZF;  BxOpcodeInfo[$A6].ExecutePtr:=bx_cpu.CMPSB_XbYb;
  BxOpcodeInfo[$A7].Attr:=BxRepeatable or BxRepeatableZF;  BxOpcodeInfo[$A7].ExecutePtr:=bx_cpu.CMPSW_XvYv;
  BxOpcodeInfo[$A8].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$A8].ExecutePtr:=bx_cpu.TEST_ALIb;
  BxOpcodeInfo[$A9].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$A9].ExecutePtr:=bx_cpu.TEST_AXIw;
  BxOpcodeInfo[$AA].Attr:=BxRepeatable;  BxOpcodeInfo[$AA].ExecutePtr:=bx_cpu.STOSB_YbAL;
  BxOpcodeInfo[$AB].Attr:=BxRepeatable;  BxOpcodeInfo[$AB].ExecutePtr:=bx_cpu.STOSW_YveAX;
  BxOpcodeInfo[$AC].Attr:=BxRepeatable;  BxOpcodeInfo[$AC].ExecutePtr:=bx_cpu.LODSB_ALXb;
  BxOpcodeInfo[$AD].Attr:=BxRepeatable;  BxOpcodeInfo[$AD].ExecutePtr:=bx_cpu.LODSW_eAXXv;
  BxOpcodeInfo[$AE].Attr:=BxRepeatable or BxRepeatableZF;  BxOpcodeInfo[$AE].ExecutePtr:=bx_cpu.SCASB_ALXb;
  BxOpcodeInfo[$AF].Attr:=BxRepeatable or BxRepeatableZF;  BxOpcodeInfo[$AF].ExecutePtr:=bx_cpu.SCASW_eAXXv;
  BxOpcodeInfo[$B0].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$B0].ExecutePtr:=bx_cpu.MOV_RLIb;
  BxOpcodeInfo[$B1].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$B1].ExecutePtr:=bx_cpu.MOV_RLIb;
  BxOpcodeInfo[$B2].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$B2].ExecutePtr:=bx_cpu.MOV_RLIb;
  BxOpcodeInfo[$B3].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$B3].ExecutePtr:=bx_cpu.MOV_RLIb;
  BxOpcodeInfo[$B4].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$B4].ExecutePtr:=bx_cpu.MOV_RHIb;
  BxOpcodeInfo[$B5].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$B5].ExecutePtr:=bx_cpu.MOV_RHIb;
  BxOpcodeInfo[$B6].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$B6].ExecutePtr:=bx_cpu.MOV_RHIb;
  BxOpcodeInfo[$B7].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$B7].ExecutePtr:=bx_cpu.MOV_RHIb;
  BxOpcodeInfo[$B8].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$B8].ExecutePtr:=bx_cpu.MOV_RXIw;
  BxOpcodeInfo[$B9].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$B9].ExecutePtr:=bx_cpu.MOV_RXIw;
  BxOpcodeInfo[$BA].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$BA].ExecutePtr:=bx_cpu.MOV_RXIw;
  BxOpcodeInfo[$BB].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$BB].ExecutePtr:=bx_cpu.MOV_RXIw;
  BxOpcodeInfo[$BC].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$BC].ExecutePtr:=bx_cpu.MOV_RXIw;
  BxOpcodeInfo[$BD].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$BD].ExecutePtr:=bx_cpu.MOV_RXIw;
  BxOpcodeInfo[$BE].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$BE].ExecutePtr:=bx_cpu.MOV_RXIw;
  BxOpcodeInfo[$BF].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$BF].ExecutePtr:=bx_cpu.MOV_RXIw;
  BxOpcodeInfo[$C0].Attr:=BxAnother or BxGroup2 or BxImmediate_Ib; BxOpcodeInfo[$C0].ExecutePtr:=nil; BxOpcodeInfo[$C0].AnotherArray:=@BxOpcodeInfoG2Eb;
  BxOpcodeInfo[$C1].Attr:=BxAnother or BxGroup2 or BxImmediate_Ib; BxOpcodeInfo[$C1].ExecutePtr:=nil; BxOpcodeInfo[$C1].AnotherArray:=@BxOpcodeInfoG2Ew;
  BxOpcodeInfo[$C2].Attr:=BxImmediate_Iw;  BxOpcodeInfo[$C2].ExecutePtr:=bx_cpu.RETnear16_Iw;
  BxOpcodeInfo[$C3].Attr:=0;             BxOpcodeInfo[$C3].ExecutePtr:=bx_cpu.RETnear16;
  BxOpcodeInfo[$C4].Attr:=BxAnother;  BxOpcodeInfo[$C4].ExecutePtr:=bx_cpu.LES_GvMp;
  BxOpcodeInfo[$C5].Attr:=BxAnother;  BxOpcodeInfo[$C5].ExecutePtr:=bx_cpu.LDS_GvMp;
  BxOpcodeInfo[$C6].Attr:=BxAnother or BxImmediate_Ib;  BxOpcodeInfo[$C6].ExecutePtr:=bx_cpu.MOV_EbIb;
  BxOpcodeInfo[$C7].Attr:=BxAnother or BxImmediate_Iv;  BxOpcodeInfo[$C7].ExecutePtr:=bx_cpu.MOV_EwIw;
  BxOpcodeInfo[$C8].Attr:=BxImmediate_IwIb;  BxOpcodeInfo[$C8].ExecutePtr:=bx_cpu.ENTER_IwIb;
  BxOpcodeInfo[$C9].Attr:=0;  BxOpcodeInfo[$C9].ExecutePtr:=bx_cpu.LEAVE;
  BxOpcodeInfo[$CA].Attr:=BxImmediate_Iw;  BxOpcodeInfo[$CA].ExecutePtr:=bx_cpu.RETfar16_Iw;
  BxOpcodeInfo[$CB].Attr:=0;  BxOpcodeInfo[$CB].ExecutePtr:=bx_cpu.RETfar16;
  BxOpcodeInfo[$CC].Attr:=0;  BxOpcodeInfo[$CC].ExecutePtr:=bx_cpu.INT3;
  BxOpcodeInfo[$CD].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$CD].ExecutePtr:=bx_cpu.INT_Ib;
  BxOpcodeInfo[$CE].Attr:=0;  BxOpcodeInfo[$CE].ExecutePtr:=bx_cpu.INTO;
  BxOpcodeInfo[$CF].Attr:=0;  BxOpcodeInfo[$CF].ExecutePtr:=bx_cpu.IRET16;
  BxOpcodeInfo[$D0].Attr:=BxAnother or BxGroup2;  BxOpcodeInfo[$D0].ExecutePtr:=nil; BxOpcodeInfo[$D0].AnotherArray:=@BxOpcodeInfoG2Eb;
  BxOpcodeInfo[$D1].Attr:=BxAnother or BxGroup2;  BxOpcodeInfo[$D1].ExecutePtr:=nil; BxOpcodeInfo[$D1].AnotherArray:=@BxOpcodeInfoG2Ew;
  BxOpcodeInfo[$D2].Attr:=BxAnother or BxGroup2;  BxOpcodeInfo[$D2].ExecutePtr:=nil; BxOpcodeInfo[$D2].AnotherArray:=@BxOpcodeInfoG2Eb;
  BxOpcodeInfo[$D3].Attr:=BxAnother or BxGroup2;  BxOpcodeInfo[$D3].ExecutePtr:=nil; BxOpcodeInfo[$D3].AnotherArray:=@BxOpcodeInfoG2Ew;
  BxOpcodeInfo[$D4].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$D4].ExecutePtr:=bx_cpu.AAM;
  BxOpcodeInfo[$D5].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$D5].ExecutePtr:=bx_cpu.AAD;
  BxOpcodeInfo[$D6].Attr:=0;  BxOpcodeInfo[$D6].ExecutePtr:=bx_cpu.SALC;
  BxOpcodeInfo[$D7].Attr:=0;  BxOpcodeInfo[$D7].ExecutePtr:=bx_cpu.XLAT;
  BxOpcodeInfo[$D8].Attr:=BxAnother;  BxOpcodeInfo[$D8].ExecutePtr:=bx_cpu.ESC0;
  BxOpcodeInfo[$D9].Attr:=BxAnother;  BxOpcodeInfo[$D9].ExecutePtr:=bx_cpu.ESC1;
  BxOpcodeInfo[$DA].Attr:=BxAnother;  BxOpcodeInfo[$DA].ExecutePtr:=bx_cpu.ESC2;
  BxOpcodeInfo[$DB].Attr:=BxAnother;  BxOpcodeInfo[$DB].ExecutePtr:=bx_cpu.ESC3;
  BxOpcodeInfo[$DC].Attr:=BxAnother;  BxOpcodeInfo[$DC].ExecutePtr:=bx_cpu.ESC4;
  BxOpcodeInfo[$DD].Attr:=BxAnother;  BxOpcodeInfo[$DD].ExecutePtr:=bx_cpu.ESC5;
  BxOpcodeInfo[$DE].Attr:=BxAnother;  BxOpcodeInfo[$DE].ExecutePtr:=bx_cpu.ESC6;
  BxOpcodeInfo[$DF].Attr:=BxAnother;  BxOpcodeInfo[$DF].ExecutePtr:=bx_cpu.ESC7; 
  BxOpcodeInfo[$E0].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$E0].ExecutePtr:=bx_cpu.LOOPNE_Jb;
  BxOpcodeInfo[$E1].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$E1].ExecutePtr:=bx_cpu.LOOPE_Jb;
  BxOpcodeInfo[$E2].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$E2].ExecutePtr:=bx_cpu.LOOP_Jb;
  BxOpcodeInfo[$E3].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$E3].ExecutePtr:=bx_cpu.JCXZ_Jb;
  BxOpcodeInfo[$E4].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$E4].ExecutePtr:=bx_cpu.IN_ALIb;
  BxOpcodeInfo[$E5].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$E5].ExecutePtr:=bx_cpu.IN_eAXIb;
  BxOpcodeInfo[$E6].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$E6].ExecutePtr:=bx_cpu.OUT_IbAL;
  BxOpcodeInfo[$E7].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$E7].ExecutePtr:=bx_cpu.OUT_IbeAX;
  BxOpcodeInfo[$E8].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$E8].ExecutePtr:=bx_cpu.CALL_Aw;
  BxOpcodeInfo[$E9].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$E9].ExecutePtr:=bx_cpu.JMP_Jw;
  BxOpcodeInfo[$EA].Attr:=BxImmediate_IvIw;  BxOpcodeInfo[$EA].ExecutePtr:=bx_cpu.JMP_Ap;
  BxOpcodeInfo[$EB].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$EB].ExecutePtr:=bx_cpu.JMP_Jw;
  BxOpcodeInfo[$EC].Attr:=0;  BxOpcodeInfo[$EC].ExecutePtr:=bx_cpu.IN_ALDX;
  BxOpcodeInfo[$ED].Attr:=0;  BxOpcodeInfo[$ED].ExecutePtr:=bx_cpu.IN_eAXDX;
  BxOpcodeInfo[$EE].Attr:=0;  BxOpcodeInfo[$EE].ExecutePtr:=bx_cpu.OUT_DXAL;
  BxOpcodeInfo[$EF].Attr:=0;  BxOpcodeInfo[$EF].ExecutePtr:=bx_cpu.OUT_DXeAX;
  BxOpcodeInfo[$F0].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$F0].ExecutePtr:=bx_cpu.BxError; // LOCK
  BxOpcodeInfo[$F1].Attr:=0;  BxOpcodeInfo[$F1].ExecutePtr:=bx_cpu.INT1;
  BxOpcodeInfo[$F2].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$F2].ExecutePtr:=bx_cpu.BxError; // REPNE/REPNZ
  BxOpcodeInfo[$F3].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$F3].ExecutePtr:=bx_cpu.BxError; // REP, REPE/REPZ
  BxOpcodeInfo[$F4].Attr:=0;  BxOpcodeInfo[$F4].ExecutePtr:=bx_cpu.HLT;
  BxOpcodeInfo[$F5].Attr:=0;  BxOpcodeInfo[$F5].ExecutePtr:=bx_cpu.CMC;
  BxOpcodeInfo[$F6].Attr:=BxAnother or BxGroup3; BxOpcodeInfo[$F6].ExecutePtr:=nil; BxOpcodeInfo[$F6].AnotherArray:=@BxOpcodeInfoG3Eb;
  BxOpcodeInfo[$F7].Attr:=BxAnother or BxGroup3; BxOpcodeInfo[$F7].ExecutePtr:=nil; BxOpcodeInfo[$F7].AnotherArray:=@BxOpcodeInfoG3Ew;
  BxOpcodeInfo[$F8].Attr:=0;  BxOpcodeInfo[$F8].ExecutePtr:=bx_cpu.CLC;
  BxOpcodeInfo[$F9].Attr:=0;  BxOpcodeInfo[$F9].ExecutePtr:=bx_cpu.STC;
  BxOpcodeInfo[$FA].Attr:=0;  BxOpcodeInfo[$FA].ExecutePtr:=bx_cpu.CLI;
  BxOpcodeInfo[$FB].Attr:=0;  BxOpcodeInfo[$FB].ExecutePtr:=bx_cpu.STI;
  BxOpcodeInfo[$FC].Attr:=0;  BxOpcodeInfo[$FC].ExecutePtr:=bx_cpu.CLD;
  BxOpcodeInfo[$FD].Attr:=0;  BxOpcodeInfo[$FD].ExecutePtr:=bx_cpu.STD;
  BxOpcodeInfo[$FE].Attr:=BxAnother or BxGroup4;  BxOpcodeInfo[$FE].ExecutePtr:=nil; BxOpcodeInfo[$FE].AnotherArray:=@BxOpcodeInfoG4;
  BxOpcodeInfo[$FF].Attr:=BxAnother or BxGroup5;  BxOpcodeInfo[$FF].ExecutePtr:=nil; BxOpcodeInfo[$FF].AnotherArray:=@BxOpcodeInfoG5w;
  BxOpcodeInfo[$100].Attr:=BxAnother or BxGroup6;  BxOpcodeInfo[$100].ExecutePtr:=nil; BxOpcodeInfo[$100].AnotherArray:=@BxOpcodeInfoG6;
  BxOpcodeInfo[$101].Attr:=BxAnother or BxGroup7;  BxOpcodeInfo[$101].ExecutePtr:=nil; BxOpcodeInfo[$101].AnotherArray:=@BxOpcodeInfoG7;
  BxOpcodeInfo[$102].Attr:=BxAnother;  BxOpcodeInfo[$102].ExecutePtr:=bx_cpu.LAR_GvEw;
  BxOpcodeInfo[$103].Attr:=BxAnother;  BxOpcodeInfo[$103].ExecutePtr:=bx_cpu.LSL_GvEw;
  BxOpcodeInfo[$104].Attr:=0;  BxOpcodeInfo[$104].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$105].Attr:=0;  BxOpcodeInfo[$105].ExecutePtr:=bx_cpu.LOADALL;
  BxOpcodeInfo[$106].Attr:=0;  BxOpcodeInfo[$106].ExecutePtr:=bx_cpu.CLTS;
  BxOpcodeInfo[$107].Attr:=0;  BxOpcodeInfo[$107].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$108].Attr:=0;  BxOpcodeInfo[$108].ExecutePtr:=bx_cpu.INVD;
  BxOpcodeInfo[$109].Attr:=0;  BxOpcodeInfo[$109].ExecutePtr:=bx_cpu.WBINVD;
  BxOpcodeInfo[$10A].Attr:=0;  BxOpcodeInfo[$10A].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$10B].Attr:=0;  BxOpcodeInfo[$10B].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$10C].Attr:=0;  BxOpcodeInfo[$10C].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$10D].Attr:=0;  BxOpcodeInfo[$10D].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$10E].Attr:=0;  BxOpcodeInfo[$10E].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$10F].Attr:=0;  BxOpcodeInfo[$10F].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$110].Attr:=0;  BxOpcodeInfo[$110].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$111].Attr:=0;  BxOpcodeInfo[$111].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$112].Attr:=0;  BxOpcodeInfo[$112].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$113].Attr:=0;  BxOpcodeInfo[$113].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$114].Attr:=0;  BxOpcodeInfo[$114].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$115].Attr:=0;  BxOpcodeInfo[$115].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$116].Attr:=0;  BxOpcodeInfo[$116].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$117].Attr:=0;  BxOpcodeInfo[$117].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$118].Attr:=0;  BxOpcodeInfo[$118].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$119].Attr:=0;  BxOpcodeInfo[$119].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$11A].Attr:=0;  BxOpcodeInfo[$11A].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$11B].Attr:=0;  BxOpcodeInfo[$11B].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$11C].Attr:=0;  BxOpcodeInfo[$11C].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$11D].Attr:=0;  BxOpcodeInfo[$11D].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$11E].Attr:=0;  BxOpcodeInfo[$11E].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$11F].Attr:=0;  BxOpcodeInfo[$11F].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$120].Attr:=BxAnother;  BxOpcodeInfo[$120].ExecutePtr:=bx_cpu.MOV_RdCd;
  BxOpcodeInfo[$121].Attr:=BxAnother;  BxOpcodeInfo[$121].ExecutePtr:=bx_cpu.MOV_RdDd;
  BxOpcodeInfo[$122].Attr:=BxAnother;  BxOpcodeInfo[$122].ExecutePtr:=bx_cpu.MOV_CdRd;
  BxOpcodeInfo[$123].Attr:=BxAnother;  BxOpcodeInfo[$123].ExecutePtr:=bx_cpu.MOV_DdRd;
  BxOpcodeInfo[$124].Attr:=BxAnother;  BxOpcodeInfo[$124].ExecutePtr:=bx_cpu.MOV_RdTd;
  BxOpcodeInfo[$125].Attr:=0;  BxOpcodeInfo[$125].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$126].Attr:=BxAnother;  BxOpcodeInfo[$126].ExecutePtr:=bx_cpu.MOV_TdRd;
  BxOpcodeInfo[$127].Attr:=0;  BxOpcodeInfo[$127].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$128].Attr:=0;  BxOpcodeInfo[$128].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$129].Attr:=0;  BxOpcodeInfo[$129].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$12A].Attr:=0;  BxOpcodeInfo[$12A].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$12B].Attr:=0;  BxOpcodeInfo[$12B].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$12C].Attr:=0;  BxOpcodeInfo[$12C].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$12D].Attr:=0;  BxOpcodeInfo[$12D].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$12E].Attr:=0;  BxOpcodeInfo[$12E].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$12F].Attr:=0;  BxOpcodeInfo[$12F].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$130].Attr:=0;  BxOpcodeInfo[$130].ExecutePtr:=bx_cpu.WRMSR;
  BxOpcodeInfo[$131].Attr:=0;  BxOpcodeInfo[$131].ExecutePtr:=bx_cpu.RDTSC;
  BxOpcodeInfo[$132].Attr:=0;  BxOpcodeInfo[$132].ExecutePtr:=bx_cpu.RDMSR;
  BxOpcodeInfo[$133].Attr:=0;  BxOpcodeInfo[$133].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$134].Attr:=0;  BxOpcodeInfo[$134].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$135].Attr:=0;  BxOpcodeInfo[$135].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$136].Attr:=0;  BxOpcodeInfo[$136].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$137].Attr:=0;  BxOpcodeInfo[$137].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$138].Attr:=0;  BxOpcodeInfo[$138].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$139].Attr:=0;  BxOpcodeInfo[$139].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$13A].Attr:=0;  BxOpcodeInfo[$13A].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$13B].Attr:=0;  BxOpcodeInfo[$13B].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$13C].Attr:=0;  BxOpcodeInfo[$13C].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$13D].Attr:=0;  BxOpcodeInfo[$13D].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$13E].Attr:=0;  BxOpcodeInfo[$13E].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$13F].Attr:=0;  BxOpcodeInfo[$13F].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$140].Attr:=BxAnother;  BxOpcodeInfo[$140].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$141].Attr:=BxAnother;  BxOpcodeInfo[$141].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$142].Attr:=BxAnother;  BxOpcodeInfo[$142].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$143].Attr:=BxAnother;  BxOpcodeInfo[$143].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$144].Attr:=BxAnother;  BxOpcodeInfo[$144].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$145].Attr:=BxAnother;  BxOpcodeInfo[$145].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$146].Attr:=BxAnother;  BxOpcodeInfo[$146].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$147].Attr:=BxAnother;  BxOpcodeInfo[$147].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$148].Attr:=BxAnother;  BxOpcodeInfo[$148].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$149].Attr:=BxAnother;  BxOpcodeInfo[$149].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$14A].Attr:=BxAnother;  BxOpcodeInfo[$14A].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$14B].Attr:=BxAnother;  BxOpcodeInfo[$14B].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$14C].Attr:=BxAnother;  BxOpcodeInfo[$14C].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$14D].Attr:=BxAnother;  BxOpcodeInfo[$14D].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$14E].Attr:=BxAnother;  BxOpcodeInfo[$14E].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$14F].Attr:=BxAnother;  BxOpcodeInfo[$14F].ExecutePtr:=bx_cpu.CMOV_GwEw;
  BxOpcodeInfo[$150].Attr:=0;  BxOpcodeInfo[$150].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$151].Attr:=0;  BxOpcodeInfo[$151].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$152].Attr:=0;  BxOpcodeInfo[$152].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$153].Attr:=0;  BxOpcodeInfo[$153].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$154].Attr:=0;  BxOpcodeInfo[$154].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$155].Attr:=0;  BxOpcodeInfo[$155].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$156].Attr:=0;  BxOpcodeInfo[$156].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$157].Attr:=0;  BxOpcodeInfo[$157].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$158].Attr:=0;  BxOpcodeInfo[$158].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$159].Attr:=0;  BxOpcodeInfo[$159].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$15A].Attr:=0;  BxOpcodeInfo[$15A].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$15B].Attr:=0;  BxOpcodeInfo[$15B].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$15C].Attr:=0;  BxOpcodeInfo[$15C].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$15D].Attr:=0;  BxOpcodeInfo[$15D].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$15E].Attr:=0;  BxOpcodeInfo[$15E].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$15F].Attr:=0;  BxOpcodeInfo[$15F].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$160].Attr:=0;  BxOpcodeInfo[$160].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$161].Attr:=0;  BxOpcodeInfo[$161].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$162].Attr:=0;  BxOpcodeInfo[$162].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$163].Attr:=0;  BxOpcodeInfo[$163].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$164].Attr:=0;  BxOpcodeInfo[$164].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$165].Attr:=0;  BxOpcodeInfo[$165].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$166].Attr:=0;  BxOpcodeInfo[$166].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$167].Attr:=0;  BxOpcodeInfo[$167].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$168].Attr:=0;  BxOpcodeInfo[$168].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$169].Attr:=0;  BxOpcodeInfo[$169].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$16A].Attr:=0;  BxOpcodeInfo[$16A].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$16B].Attr:=0;  BxOpcodeInfo[$16B].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$16C].Attr:=0;  BxOpcodeInfo[$16C].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$16D].Attr:=0;  BxOpcodeInfo[$16D].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$16E].Attr:=0;  BxOpcodeInfo[$16E].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$16F].Attr:=0;  BxOpcodeInfo[$16F].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$170].Attr:=0;  BxOpcodeInfo[$170].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$171].Attr:=0;  BxOpcodeInfo[$171].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$172].Attr:=0;  BxOpcodeInfo[$172].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$173].Attr:=0;  BxOpcodeInfo[$173].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$174].Attr:=0;  BxOpcodeInfo[$174].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$175].Attr:=0;  BxOpcodeInfo[$175].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$176].Attr:=0;  BxOpcodeInfo[$176].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$177].Attr:=0;  BxOpcodeInfo[$177].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$178].Attr:=0;  BxOpcodeInfo[$178].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$179].Attr:=0;  BxOpcodeInfo[$179].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$17A].Attr:=0;  BxOpcodeInfo[$17A].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$17B].Attr:=0;  BxOpcodeInfo[$17B].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$17C].Attr:=0;  BxOpcodeInfo[$17C].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$17D].Attr:=0;  BxOpcodeInfo[$17D].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$17E].Attr:=0;  BxOpcodeInfo[$17E].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$17F].Attr:=0;  BxOpcodeInfo[$17F].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$180].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$180].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$181].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$181].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$182].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$182].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$183].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$183].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$184].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$184].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$185].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$185].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$186].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$186].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$187].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$187].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$188].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$188].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$189].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$189].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$18A].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$18A].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$18B].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$18B].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$18C].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$18C].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$18D].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$18D].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$18E].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$18E].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$18F].Attr:=BxImmediate_BrOff16;  BxOpcodeInfo[$18F].ExecutePtr:=bx_cpu.JCC_Jw;
  BxOpcodeInfo[$190].Attr:=BxAnother;  BxOpcodeInfo[$190].ExecutePtr:=bx_cpu.SETO_Eb;
  BxOpcodeInfo[$191].Attr:=BxAnother;  BxOpcodeInfo[$191].ExecutePtr:=bx_cpu.SETNO_Eb;
  BxOpcodeInfo[$192].Attr:=BxAnother;  BxOpcodeInfo[$192].ExecutePtr:=bx_cpu.SETB_Eb;
  BxOpcodeInfo[$193].Attr:=BxAnother;  BxOpcodeInfo[$193].ExecutePtr:=bx_cpu.SETNB_Eb;
  BxOpcodeInfo[$194].Attr:=BxAnother;  BxOpcodeInfo[$194].ExecutePtr:=bx_cpu.SETZ_Eb;
  BxOpcodeInfo[$195].Attr:=BxAnother;  BxOpcodeInfo[$195].ExecutePtr:=bx_cpu.SETNZ_Eb;
  BxOpcodeInfo[$196].Attr:=BxAnother;  BxOpcodeInfo[$196].ExecutePtr:=bx_cpu.SETBE_Eb;
  BxOpcodeInfo[$197].Attr:=BxAnother;  BxOpcodeInfo[$197].ExecutePtr:=bx_cpu.SETNBE_Eb;
  BxOpcodeInfo[$198].Attr:=BxAnother;  BxOpcodeInfo[$198].ExecutePtr:=bx_cpu.SETS_Eb;
  BxOpcodeInfo[$199].Attr:=BxAnother;  BxOpcodeInfo[$199].ExecutePtr:=bx_cpu.SETNS_Eb;
  BxOpcodeInfo[$19A].Attr:=BxAnother;  BxOpcodeInfo[$19A].ExecutePtr:=bx_cpu.SETP_Eb;
  BxOpcodeInfo[$19B].Attr:=BxAnother;  BxOpcodeInfo[$19B].ExecutePtr:=bx_cpu.SETNP_Eb;
  BxOpcodeInfo[$19C].Attr:=BxAnother;  BxOpcodeInfo[$19C].ExecutePtr:=bx_cpu.SETL_Eb;
  BxOpcodeInfo[$19D].Attr:=BxAnother;  BxOpcodeInfo[$19D].ExecutePtr:=bx_cpu.SETNL_Eb;
  BxOpcodeInfo[$19E].Attr:=BxAnother;  BxOpcodeInfo[$19E].ExecutePtr:=bx_cpu.SETLE_Eb;
  BxOpcodeInfo[$19F].Attr:=BxAnother;  BxOpcodeInfo[$19F].ExecutePtr:=bx_cpu.SETNLE_Eb;
  BxOpcodeInfo[$1A0].Attr:=0;  BxOpcodeInfo[$1A0].ExecutePtr:=bx_cpu.PUSH_FS;
  BxOpcodeInfo[$1A1].Attr:=0;  BxOpcodeInfo[$1A1].ExecutePtr:=bx_cpu.POP_FS;
  BxOpcodeInfo[$1A2].Attr:=0;  BxOpcodeInfo[$1A2].ExecutePtr:=bx_cpu.CPUID;
  BxOpcodeInfo[$1A3].Attr:=BxAnother;  BxOpcodeInfo[$1A3].ExecutePtr:=bx_cpu.BT_EvGv;
  BxOpcodeInfo[$1A4].Attr:=BxAnother or BxImmediate_Ib;  BxOpcodeInfo[$1A4].ExecutePtr:=bx_cpu.SHLD_EwGw;
  BxOpcodeInfo[$1A5].Attr:=BxAnother;                 BxOpcodeInfo[$1A5].ExecutePtr:=bx_cpu.SHLD_EwGw;
  BxOpcodeInfo[$1A6].Attr:=0;  BxOpcodeInfo[$1A6].ExecutePtr:=bx_cpu.CMPXCHG_XBTS;
  BxOpcodeInfo[$1A7].Attr:=0;  BxOpcodeInfo[$1A7].ExecutePtr:=bx_cpu.CMPXCHG_IBTS;
  BxOpcodeInfo[$1A8].Attr:=0;  BxOpcodeInfo[$1A8].ExecutePtr:=bx_cpu.PUSH_GS;
  BxOpcodeInfo[$1A9].Attr:=0;  BxOpcodeInfo[$1A9].ExecutePtr:=bx_cpu.POP_GS;
  BxOpcodeInfo[$1AA].Attr:=0;  BxOpcodeInfo[$1AA].ExecutePtr:=bx_cpu.RSM;
  BxOpcodeInfo[$1AB].Attr:=BxAnother;  BxOpcodeInfo[$1AB].ExecutePtr:=bx_cpu.BTS_EvGv;
  BxOpcodeInfo[$1AC].Attr:=BxAnother or BxImmediate_Ib;  BxOpcodeInfo[$1AC].ExecutePtr:=bx_cpu.SHRD_EwGw;
  BxOpcodeInfo[$1AD].Attr:=BxAnother;                 BxOpcodeInfo[$1AD].ExecutePtr:=bx_cpu.SHRD_EwGw;
  BxOpcodeInfo[$1AE].Attr:=0;  BxOpcodeInfo[$1AE].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1AF].Attr:=BxAnother;  BxOpcodeInfo[$1AF].ExecutePtr:=bx_cpu.IMUL_GwEw;
  BxOpcodeInfo[$1B0].Attr:=BxAnother;  BxOpcodeInfo[$1B0].ExecutePtr:=bx_cpu.CMPXCHG_EbGb;
  BxOpcodeInfo[$1B1].Attr:=BxAnother;  BxOpcodeInfo[$1B1].ExecutePtr:=bx_cpu.CMPXCHG_EwGw;
  BxOpcodeInfo[$1B2].Attr:=BxAnother;  BxOpcodeInfo[$1B2].ExecutePtr:=bx_cpu.LSS_GvMp;
  BxOpcodeInfo[$1B3].Attr:=BxAnother;  BxOpcodeInfo[$1B3].ExecutePtr:=bx_cpu.BTR_EvGv;
  BxOpcodeInfo[$1B4].Attr:=BxAnother;  BxOpcodeInfo[$1B4].ExecutePtr:=bx_cpu.LFS_GvMp;
  BxOpcodeInfo[$1B5].Attr:=BxAnother;  BxOpcodeInfo[$1B5].ExecutePtr:=bx_cpu.LGS_GvMp;
  BxOpcodeInfo[$1B6].Attr:=BxAnother;  BxOpcodeInfo[$1B6].ExecutePtr:=bx_cpu.MOVZX_GwEb;
  BxOpcodeInfo[$1B7].Attr:=BxAnother;  BxOpcodeInfo[$1B7].ExecutePtr:=bx_cpu.MOVZX_GwEw;
  BxOpcodeInfo[$1B8].Attr:=0;  BxOpcodeInfo[$1B8].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1B9].Attr:=0;  BxOpcodeInfo[$1B9].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1BA].Attr:=BxAnother or BxGroup8; BxOpcodeInfo[$1BA].ExecutePtr:=nil; BxOpcodeInfo[$1BA].AnotherArray:=@BxOpcodeInfoG8EvIb;
  BxOpcodeInfo[$1BB].Attr:=BxAnother;  BxOpcodeInfo[$1BB].ExecutePtr:=bx_cpu.BTC_EvGv;
  BxOpcodeInfo[$1BC].Attr:=BxAnother;  BxOpcodeInfo[$1BC].ExecutePtr:=bx_cpu.BSF_GvEv;
  BxOpcodeInfo[$1BD].Attr:=BxAnother;  BxOpcodeInfo[$1BD].ExecutePtr:=bx_cpu.BSR_GvEv;
  BxOpcodeInfo[$1BE].Attr:=BxAnother;  BxOpcodeInfo[$1BE].ExecutePtr:=bx_cpu.MOVSX_GwEb;
  BxOpcodeInfo[$1BF].Attr:=BxAnother;  BxOpcodeInfo[$1BF].ExecutePtr:=bx_cpu.MOVSX_GwEw;
  BxOpcodeInfo[$1C0].Attr:=BxAnother;  BxOpcodeInfo[$1C0].ExecutePtr:=bx_cpu.XADD_EbGb;
  BxOpcodeInfo[$1C1].Attr:=BxAnother;  BxOpcodeInfo[$1C1].ExecutePtr:=bx_cpu.XADD_EwGw;
  BxOpcodeInfo[$1C2].Attr:=0;  BxOpcodeInfo[$1C2].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1C3].Attr:=0;  BxOpcodeInfo[$1C3].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1C4].Attr:=0;  BxOpcodeInfo[$1C4].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1C5].Attr:=0;  BxOpcodeInfo[$1C5].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1C6].Attr:=0;  BxOpcodeInfo[$1C6].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1C7].Attr:=BxAnother or BxGroup9; BxOpcodeInfo[$1C7].ExecutePtr:=nil; BxOpcodeInfo[$1C7].AnotherArray:=@BxOpcodeInfoG9;
  BxOpcodeInfo[$1C8].Attr:=0;  BxOpcodeInfo[$1C8].ExecutePtr:=bx_cpu.BSWAP_EAX;
  BxOpcodeInfo[$1C9].Attr:=0;  BxOpcodeInfo[$1C9].ExecutePtr:=bx_cpu.BSWAP_ECX;
  BxOpcodeInfo[$1CA].Attr:=0;  BxOpcodeInfo[$1CA].ExecutePtr:=bx_cpu.BSWAP_EDX;
  BxOpcodeInfo[$1CB].Attr:=0;  BxOpcodeInfo[$1CB].ExecutePtr:=bx_cpu.BSWAP_EBX;
  BxOpcodeInfo[$1CC].Attr:=0;  BxOpcodeInfo[$1CC].ExecutePtr:=bx_cpu.BSWAP_ESP;
  BxOpcodeInfo[$1CD].Attr:=0;  BxOpcodeInfo[$1CD].ExecutePtr:=bx_cpu.BSWAP_EBP;
  BxOpcodeInfo[$1CE].Attr:=0;  BxOpcodeInfo[$1CE].ExecutePtr:=bx_cpu.BSWAP_ESI;
  BxOpcodeInfo[$1CF].Attr:=0;  BxOpcodeInfo[$1CF].ExecutePtr:=bx_cpu.BSWAP_EDI;
  BxOpcodeInfo[$1D0].Attr:=0;  BxOpcodeInfo[$1D0].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1D1].Attr:=0;  BxOpcodeInfo[$1D1].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1D2].Attr:=0;  BxOpcodeInfo[$1D2].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1D3].Attr:=0;  BxOpcodeInfo[$1D3].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1D4].Attr:=0;  BxOpcodeInfo[$1D4].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1D5].Attr:=0;  BxOpcodeInfo[$1D5].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1D6].Attr:=0;  BxOpcodeInfo[$1D6].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1D7].Attr:=0;  BxOpcodeInfo[$1D7].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1D8].Attr:=0;  BxOpcodeInfo[$1D8].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1D9].Attr:=0;  BxOpcodeInfo[$1D9].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1DA].Attr:=0;  BxOpcodeInfo[$1DA].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1DB].Attr:=0;  BxOpcodeInfo[$1DB].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1DC].Attr:=0;  BxOpcodeInfo[$1DC].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1DD].Attr:=0;  BxOpcodeInfo[$1DD].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1DE].Attr:=0;  BxOpcodeInfo[$1DE].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1DF].Attr:=0;  BxOpcodeInfo[$1DF].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1E0].Attr:=0;  BxOpcodeInfo[$1E0].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1E1].Attr:=0;  BxOpcodeInfo[$1E1].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1E2].Attr:=0;  BxOpcodeInfo[$1E2].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1E3].Attr:=0;  BxOpcodeInfo[$1E3].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1E4].Attr:=0;  BxOpcodeInfo[$1E4].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1E5].Attr:=0;  BxOpcodeInfo[$1E5].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1E6].Attr:=0;  BxOpcodeInfo[$1E6].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1E7].Attr:=0;  BxOpcodeInfo[$1E7].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1E8].Attr:=0;  BxOpcodeInfo[$1E8].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1E9].Attr:=0;  BxOpcodeInfo[$1E9].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1EA].Attr:=0;  BxOpcodeInfo[$1EA].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1EB].Attr:=0;  BxOpcodeInfo[$1EB].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1EC].Attr:=0;  BxOpcodeInfo[$1EC].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1ED].Attr:=0;  BxOpcodeInfo[$1ED].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1EE].Attr:=0;  BxOpcodeInfo[$1EE].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1EF].Attr:=0;  BxOpcodeInfo[$1EF].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$1F0].Attr:=0;  BxOpcodeInfo[$1F0].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$1F1].Attr:=0;  BxOpcodeInfo[$1F1].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$1F2].Attr:=0;  BxOpcodeInfo[$1F2].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$1F3].Attr:=0;  BxOpcodeInfo[$1F3].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$1F4].Attr:=0;  BxOpcodeInfo[$1F4].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$1F5].Attr:=0;  BxOpcodeInfo[$1F5].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$1F6].Attr:=0;  BxOpcodeInfo[$1F6].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$1F7].Attr:=0;  BxOpcodeInfo[$1F7].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$1F8].Attr:=0;  BxOpcodeInfo[$1F8].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$1F9].Attr:=0;  BxOpcodeInfo[$1F9].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$1FA].Attr:=0;  BxOpcodeInfo[$1FA].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$1FB].Attr:=0;  BxOpcodeInfo[$1FB].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$1FC].Attr:=0;  BxOpcodeInfo[$1FC].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$1FD].Attr:=0;  BxOpcodeInfo[$1FD].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$1FE].Attr:=0;  BxOpcodeInfo[$1FE].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$1FF].Attr:=0;  BxOpcodeInfo[$1FF].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$200].Attr:=BxAnother;  BxOpcodeInfo[$200].ExecutePtr:=bx_cpu.ADD_EbGb;
  BxOpcodeInfo[$201].Attr:=BxAnother;  BxOpcodeInfo[$201].ExecutePtr:=bx_cpu.ADD_EdGd;
  BxOpcodeInfo[$202].Attr:=BxAnother;  BxOpcodeInfo[$202].ExecutePtr:=bx_cpu.ADD_GbEb;
  BxOpcodeInfo[$203].Attr:=BxAnother;  BxOpcodeInfo[$203].ExecutePtr:=bx_cpu.ADD_GdEd;
  BxOpcodeInfo[$204].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$204].ExecutePtr:=bx_cpu.ADD_ALIb;
  BxOpcodeInfo[$205].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$205].ExecutePtr:=bx_cpu.ADD_EAXId;
  BxOpcodeInfo[$206].Attr:=0;  BxOpcodeInfo[$206].ExecutePtr:=bx_cpu.PUSH_ES;
  BxOpcodeInfo[$207].Attr:=0;  BxOpcodeInfo[$207].ExecutePtr:=bx_cpu.POP_ES;
  BxOpcodeInfo[$208].Attr:=BxAnother;  BxOpcodeInfo[$208].ExecutePtr:=bx_cpu.OR_EbGb;
  BxOpcodeInfo[$209].Attr:=BxAnother;  BxOpcodeInfo[$209].ExecutePtr:=bx_cpu.OR_EdGd;
  BxOpcodeInfo[$20A].Attr:=BxAnother;  BxOpcodeInfo[$20A].ExecutePtr:=bx_cpu.OR_GbEb;
  BxOpcodeInfo[$20B].Attr:=BxAnother;  BxOpcodeInfo[$20B].ExecutePtr:=bx_cpu.OR_GdEd;
  BxOpcodeInfo[$20C].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$20C].ExecutePtr:=bx_cpu.OR_ALIb;
  BxOpcodeInfo[$20D].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$20D].ExecutePtr:=bx_cpu.OR_EAXId;
  BxOpcodeInfo[$20E].Attr:=0;  BxOpcodeInfo[$20E].ExecutePtr:=bx_cpu.PUSH_CS;
  BxOpcodeInfo[$20F].Attr:=BxAnother;  BxOpcodeInfo[$20F].ExecutePtr:=bx_cpu.BxError; // 2-byte escape
  BxOpcodeInfo[$210].Attr:=BxAnother;  BxOpcodeInfo[$210].ExecutePtr:=bx_cpu.ADC_EbGb;
  BxOpcodeInfo[$211].Attr:=BxAnother;  BxOpcodeInfo[$211].ExecutePtr:=bx_cpu.ADC_EdGd;
  BxOpcodeInfo[$212].Attr:=BxAnother;  BxOpcodeInfo[$212].ExecutePtr:=bx_cpu.ADC_GbEb;
  BxOpcodeInfo[$213].Attr:=BxAnother;  BxOpcodeInfo[$213].ExecutePtr:=bx_cpu.ADC_GdEd;
  BxOpcodeInfo[$214].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$214].ExecutePtr:=bx_cpu.ADC_ALIb;
  BxOpcodeInfo[$215].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$215].ExecutePtr:=bx_cpu.ADC_EAXId;
  BxOpcodeInfo[$216].Attr:=0;  BxOpcodeInfo[$216].ExecutePtr:=bx_cpu.PUSH_SS;
  BxOpcodeInfo[$217].Attr:=0;  BxOpcodeInfo[$217].ExecutePtr:=bx_cpu.POP_SS;
  BxOpcodeInfo[$218].Attr:=BxAnother;  BxOpcodeInfo[$218].ExecutePtr:=bx_cpu.SBB_EbGb;
  BxOpcodeInfo[$219].Attr:=BxAnother;  BxOpcodeInfo[$219].ExecutePtr:=bx_cpu.SBB_EdGd;
  BxOpcodeInfo[$21A].Attr:=BxAnother;  BxOpcodeInfo[$21A].ExecutePtr:=bx_cpu.SBB_GbEb;
  BxOpcodeInfo[$21B].Attr:=BxAnother;  BxOpcodeInfo[$21B].ExecutePtr:=bx_cpu.SBB_GdEd;
  BxOpcodeInfo[$21C].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$21C].ExecutePtr:=bx_cpu.SBB_ALIb;
  BxOpcodeInfo[$21D].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$21D].ExecutePtr:=bx_cpu.SBB_EAXId;
  BxOpcodeInfo[$21E].Attr:=0;  BxOpcodeInfo[$21E].ExecutePtr:=bx_cpu.PUSH_DS;
  BxOpcodeInfo[$21F].Attr:=0;  BxOpcodeInfo[$21F].ExecutePtr:=bx_cpu.POP_DS;
  BxOpcodeInfo[$220].Attr:=BxAnother;  BxOpcodeInfo[$220].ExecutePtr:=bx_cpu.AND_EbGb;
  BxOpcodeInfo[$221].Attr:=BxAnother;  BxOpcodeInfo[$221].ExecutePtr:=bx_cpu.AND_EdGd;
  BxOpcodeInfo[$222].Attr:=BxAnother;  BxOpcodeInfo[$222].ExecutePtr:=bx_cpu.AND_GbEb;
  BxOpcodeInfo[$223].Attr:=BxAnother;  BxOpcodeInfo[$223].ExecutePtr:=bx_cpu.AND_GdEd;
  BxOpcodeInfo[$224].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$224].ExecutePtr:=bx_cpu.AND_ALIb;
  BxOpcodeInfo[$225].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$225].ExecutePtr:=bx_cpu.AND_EAXId;
  BxOpcodeInfo[$226].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$226].ExecutePtr:=bx_cpu.BxError; // ES:
  BxOpcodeInfo[$227].Attr:=0;  BxOpcodeInfo[$227].ExecutePtr:=bx_cpu.DAA;
  BxOpcodeInfo[$228].Attr:=BxAnother;  BxOpcodeInfo[$228].ExecutePtr:=bx_cpu.SUB_EbGb;
  BxOpcodeInfo[$229].Attr:=BxAnother;  BxOpcodeInfo[$229].ExecutePtr:=bx_cpu.SUB_EdGd;
  BxOpcodeInfo[$22A].Attr:=BxAnother;  BxOpcodeInfo[$22A].ExecutePtr:=bx_cpu.SUB_GbEb;
  BxOpcodeInfo[$22B].Attr:=BxAnother;  BxOpcodeInfo[$22B].ExecutePtr:=bx_cpu.SUB_GdEd;
  BxOpcodeInfo[$22C].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$22C].ExecutePtr:=bx_cpu.SUB_ALIb;
  BxOpcodeInfo[$22D].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$22D].ExecutePtr:=bx_cpu.SUB_EAXId;
  BxOpcodeInfo[$22E].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$22E].ExecutePtr:=bx_cpu.BxError; // CS:
  BxOpcodeInfo[$22F].Attr:=0;  BxOpcodeInfo[$22F].ExecutePtr:=bx_cpu.DAS;
  BxOpcodeInfo[$230].Attr:=BxAnother;  BxOpcodeInfo[$230].ExecutePtr:=bx_cpu.XOR_EbGb;
  BxOpcodeInfo[$231].Attr:=BxAnother;  BxOpcodeInfo[$231].ExecutePtr:=bx_cpu.XOR_EdGd;
  BxOpcodeInfo[$232].Attr:=BxAnother;  BxOpcodeInfo[$232].ExecutePtr:=bx_cpu.XOR_GbEb;
  BxOpcodeInfo[$233].Attr:=BxAnother;  BxOpcodeInfo[$233].ExecutePtr:=bx_cpu.XOR_GdEd;
  BxOpcodeInfo[$234].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$234].ExecutePtr:=bx_cpu.XOR_ALIb;
  BxOpcodeInfo[$235].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$235].ExecutePtr:=bx_cpu.XOR_EAXId;
  BxOpcodeInfo[$236].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$236].ExecutePtr:=bx_cpu.BxError; // SS:
  BxOpcodeInfo[$237].Attr:=0;  BxOpcodeInfo[$237].ExecutePtr:=bx_cpu.AAA;
  BxOpcodeInfo[$238].Attr:=BxAnother;  BxOpcodeInfo[$238].ExecutePtr:=bx_cpu.CMP_EbGb;
  BxOpcodeInfo[$239].Attr:=BxAnother;  BxOpcodeInfo[$239].ExecutePtr:=bx_cpu.CMP_EdGd;
  BxOpcodeInfo[$23A].Attr:=BxAnother;  BxOpcodeInfo[$23A].ExecutePtr:=bx_cpu.CMP_GbEb;
  BxOpcodeInfo[$23B].Attr:=BxAnother;  BxOpcodeInfo[$23B].ExecutePtr:=bx_cpu.CMP_GdEd;
  BxOpcodeInfo[$23C].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$23C].ExecutePtr:=bx_cpu.CMP_ALIb;
  BxOpcodeInfo[$23D].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$23D].ExecutePtr:=bx_cpu.CMP_EAXId;
  BxOpcodeInfo[$23E].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$23E].ExecutePtr:=bx_cpu.BxError; // DS:
  BxOpcodeInfo[$23F].Attr:=0;  BxOpcodeInfo[$23F].ExecutePtr:=bx_cpu.AAS;
  BxOpcodeInfo[$240].Attr:=0;  BxOpcodeInfo[$240].ExecutePtr:=bx_cpu.INC_ERX;
  BxOpcodeInfo[$241].Attr:=0;  BxOpcodeInfo[$241].ExecutePtr:=bx_cpu.INC_ERX;
  BxOpcodeInfo[$242].Attr:=0;  BxOpcodeInfo[$242].ExecutePtr:=bx_cpu.INC_ERX;
  BxOpcodeInfo[$243].Attr:=0;  BxOpcodeInfo[$243].ExecutePtr:=bx_cpu.INC_ERX;
  BxOpcodeInfo[$244].Attr:=0;  BxOpcodeInfo[$244].ExecutePtr:=bx_cpu.INC_ERX;
  BxOpcodeInfo[$245].Attr:=0;  BxOpcodeInfo[$245].ExecutePtr:=bx_cpu.INC_ERX;
  BxOpcodeInfo[$246].Attr:=0;  BxOpcodeInfo[$246].ExecutePtr:=bx_cpu.INC_ERX;
  BxOpcodeInfo[$247].Attr:=0;  BxOpcodeInfo[$247].ExecutePtr:=bx_cpu.INC_ERX;
  BxOpcodeInfo[$248].Attr:=0;  BxOpcodeInfo[$248].ExecutePtr:=bx_cpu.DEC_ERX;
  BxOpcodeInfo[$249].Attr:=0;  BxOpcodeInfo[$249].ExecutePtr:=bx_cpu.DEC_ERX;
  BxOpcodeInfo[$24A].Attr:=0;  BxOpcodeInfo[$24A].ExecutePtr:=bx_cpu.DEC_ERX;
  BxOpcodeInfo[$24B].Attr:=0;  BxOpcodeInfo[$24B].ExecutePtr:=bx_cpu.DEC_ERX;
  BxOpcodeInfo[$24C].Attr:=0;  BxOpcodeInfo[$24C].ExecutePtr:=bx_cpu.DEC_ERX;
  BxOpcodeInfo[$24D].Attr:=0;  BxOpcodeInfo[$24D].ExecutePtr:=bx_cpu.DEC_ERX;
  BxOpcodeInfo[$24E].Attr:=0;  BxOpcodeInfo[$24E].ExecutePtr:=bx_cpu.DEC_ERX;
  BxOpcodeInfo[$24F].Attr:=0;  BxOpcodeInfo[$24F].ExecutePtr:=bx_cpu.DEC_ERX;
  BxOpcodeInfo[$250].Attr:=0;  BxOpcodeInfo[$250].ExecutePtr:=bx_cpu.PUSH_ERX;
  BxOpcodeInfo[$251].Attr:=0;  BxOpcodeInfo[$251].ExecutePtr:=bx_cpu.PUSH_ERX;
  BxOpcodeInfo[$252].Attr:=0;  BxOpcodeInfo[$252].ExecutePtr:=bx_cpu.PUSH_ERX;
  BxOpcodeInfo[$253].Attr:=0;  BxOpcodeInfo[$253].ExecutePtr:=bx_cpu.PUSH_ERX;
  BxOpcodeInfo[$254].Attr:=0;  BxOpcodeInfo[$254].ExecutePtr:=bx_cpu.PUSH_ERX;
  BxOpcodeInfo[$255].Attr:=0;  BxOpcodeInfo[$255].ExecutePtr:=bx_cpu.PUSH_ERX;
  BxOpcodeInfo[$256].Attr:=0;  BxOpcodeInfo[$256].ExecutePtr:=bx_cpu.PUSH_ERX;
  BxOpcodeInfo[$257].Attr:=0;  BxOpcodeInfo[$257].ExecutePtr:=bx_cpu.PUSH_ERX;
  BxOpcodeInfo[$258].Attr:=0;  BxOpcodeInfo[$258].ExecutePtr:=bx_cpu.POP_ERX;
  BxOpcodeInfo[$259].Attr:=0;  BxOpcodeInfo[$259].ExecutePtr:=bx_cpu.POP_ERX;
  BxOpcodeInfo[$25A].Attr:=0;  BxOpcodeInfo[$25A].ExecutePtr:=bx_cpu.POP_ERX;
  BxOpcodeInfo[$25B].Attr:=0;  BxOpcodeInfo[$25B].ExecutePtr:=bx_cpu.POP_ERX;
  BxOpcodeInfo[$25C].Attr:=0;  BxOpcodeInfo[$25C].ExecutePtr:=bx_cpu.POP_ERX;
  BxOpcodeInfo[$25D].Attr:=0;  BxOpcodeInfo[$25D].ExecutePtr:=bx_cpu.POP_ERX;
  BxOpcodeInfo[$25E].Attr:=0;  BxOpcodeInfo[$25E].ExecutePtr:=bx_cpu.POP_ERX;
  BxOpcodeInfo[$25F].Attr:=0;  BxOpcodeInfo[$25F].ExecutePtr:=bx_cpu.POP_ERX;
  BxOpcodeInfo[$260].Attr:=0;  BxOpcodeInfo[$260].ExecutePtr:=bx_cpu.PUSHAD32;
  BxOpcodeInfo[$261].Attr:=0;  BxOpcodeInfo[$261].ExecutePtr:=bx_cpu.POPAD32;
  BxOpcodeInfo[$262].Attr:=BxAnother;  BxOpcodeInfo[$262].ExecutePtr:=bx_cpu.BOUND_GvMa;
  BxOpcodeInfo[$263].Attr:=BxAnother;  BxOpcodeInfo[$263].ExecutePtr:=bx_cpu.ARPL_EwGw;
  BxOpcodeInfo[$264].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$264].ExecutePtr:=bx_cpu.BxError; // FS:
  BxOpcodeInfo[$265].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$265].ExecutePtr:=bx_cpu.BxError; // GS:
  BxOpcodeInfo[$266].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$266].ExecutePtr:=bx_cpu.BxError; // OS:
  BxOpcodeInfo[$267].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$267].ExecutePtr:=bx_cpu.BxError; // AS:
  BxOpcodeInfo[$268].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$268].ExecutePtr:=bx_cpu.PUSH_Id;
  BxOpcodeInfo[$269].Attr:=BxAnother or BxImmediate_Iv;  BxOpcodeInfo[$269].ExecutePtr:=bx_cpu.IMUL_GdEdId;
  BxOpcodeInfo[$26A].Attr:=BxImmediate_Ib_SE;  BxOpcodeInfo[$26A].ExecutePtr:=bx_cpu.PUSH_Id;
  BxOpcodeInfo[$26B].Attr:=BxAnother or BxImmediate_Ib_SE;  BxOpcodeInfo[$26B].ExecutePtr:=bx_cpu.IMUL_GdEdId;
  BxOpcodeInfo[$26C].Attr:=BxRepeatable;  BxOpcodeInfo[$26C].ExecutePtr:=bx_cpu.INSB_YbDX;
  BxOpcodeInfo[$26D].Attr:=BxRepeatable;  BxOpcodeInfo[$26D].ExecutePtr:=bx_cpu.INSW_YvDX;
  BxOpcodeInfo[$26E].Attr:=BxRepeatable;  BxOpcodeInfo[$26E].ExecutePtr:=bx_cpu.OUTSB_DXXb;
  BxOpcodeInfo[$26F].Attr:=BxRepeatable;  BxOpcodeInfo[$26F].ExecutePtr:=bx_cpu.OUTSW_DXXv;
  BxOpcodeInfo[$270].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$270].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$271].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$271].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$272].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$272].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$273].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$273].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$274].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$274].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$275].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$275].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$276].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$276].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$277].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$277].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$278].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$278].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$279].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$279].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$27A].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$27A].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$27B].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$27B].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$27C].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$27C].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$27D].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$27D].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$27E].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$27E].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$27F].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$27F].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$280].Attr:=BxAnother or BxGroup1; BxOpcodeInfo[$280].ExecutePtr:=nil; BxOpcodeInfo[$280].AnotherArray:=@BxOpcodeInfoG1EbIb;
  BxOpcodeInfo[$281].Attr:=BxAnother or BxGroup1 or BxImmediate_Iv; BxOpcodeInfo[$281].ExecutePtr:=nil; BxOpcodeInfo[$281].AnotherArray:=@BxOpcodeInfoG1Ed;
  BxOpcodeInfo[$282].Attr:=BxAnother or BxGroup1;  BxOpcodeInfo[$282].ExecutePtr:=nil; BxOpcodeInfo[$282].AnotherArray:=@BxOpcodeInfoG1EbIb;
  BxOpcodeInfo[$283].Attr:=BxAnother or BxGroup1 or BxImmediate_Ib_SE; BxOpcodeInfo[$283].ExecutePtr:=nil; BxOpcodeInfo[$283].AnotherArray:=@BxOpcodeInfoG1Ed;
  BxOpcodeInfo[$284].Attr:=BxAnother;  BxOpcodeInfo[$284].ExecutePtr:=bx_cpu.TEST_EbGb;
  BxOpcodeInfo[$285].Attr:=BxAnother;  BxOpcodeInfo[$285].ExecutePtr:=bx_cpu.TEST_EdGd;
  BxOpcodeInfo[$286].Attr:=BxAnother;  BxOpcodeInfo[$286].ExecutePtr:=bx_cpu.XCHG_EbGb;
  BxOpcodeInfo[$287].Attr:=BxAnother;  BxOpcodeInfo[$287].ExecutePtr:=bx_cpu.XCHG_EdGd;
  BxOpcodeInfo[$288].Attr:=BxAnother;  BxOpcodeInfo[$288].ExecutePtr:=bx_cpu.MOV_EbGb;
  BxOpcodeInfo[$289].Attr:=BxAnother;  BxOpcodeInfo[$289].ExecutePtr:=bx_cpu.MOV_EdGd;
  BxOpcodeInfo[$28A].Attr:=BxAnother;  BxOpcodeInfo[$28A].ExecutePtr:=bx_cpu.MOV_GbEb;
  BxOpcodeInfo[$28B].Attr:=BxAnother;  BxOpcodeInfo[$28B].ExecutePtr:=bx_cpu.MOV_GdEd;
  BxOpcodeInfo[$28C].Attr:=BxAnother;  BxOpcodeInfo[$28C].ExecutePtr:=bx_cpu.MOV_EwSw;
  BxOpcodeInfo[$28D].Attr:=BxAnother;  BxOpcodeInfo[$28D].ExecutePtr:=bx_cpu.LEA_GdM;
  BxOpcodeInfo[$28E].Attr:=BxAnother;  BxOpcodeInfo[$28E].ExecutePtr:=bx_cpu.MOV_SwEw;
  BxOpcodeInfo[$28F].Attr:=BxAnother;  BxOpcodeInfo[$28F].ExecutePtr:=bx_cpu.POP_Ed;
  BxOpcodeInfo[$290].Attr:=0;  BxOpcodeInfo[$290].ExecutePtr:=bx_cpu.NOP;
  BxOpcodeInfo[$291].Attr:=0;  BxOpcodeInfo[$291].ExecutePtr:=bx_cpu.XCHG_ERXEAX;
  BxOpcodeInfo[$292].Attr:=0;  BxOpcodeInfo[$292].ExecutePtr:=bx_cpu.XCHG_ERXEAX;
  BxOpcodeInfo[$293].Attr:=0;  BxOpcodeInfo[$293].ExecutePtr:=bx_cpu.XCHG_ERXEAX;
  BxOpcodeInfo[$294].Attr:=0;  BxOpcodeInfo[$294].ExecutePtr:=bx_cpu.XCHG_ERXEAX;
  BxOpcodeInfo[$295].Attr:=0;  BxOpcodeInfo[$295].ExecutePtr:=bx_cpu.XCHG_ERXEAX;
  BxOpcodeInfo[$296].Attr:=0;  BxOpcodeInfo[$296].ExecutePtr:=bx_cpu.XCHG_ERXEAX;
  BxOpcodeInfo[$297].Attr:=0;  BxOpcodeInfo[$297].ExecutePtr:=bx_cpu.XCHG_ERXEAX;
  BxOpcodeInfo[$298].Attr:=0;  BxOpcodeInfo[$298].ExecutePtr:=bx_cpu.CWDE;
  BxOpcodeInfo[$299].Attr:=0;  BxOpcodeInfo[$299].ExecutePtr:=bx_cpu.CDQ;
  BxOpcodeInfo[$29A].Attr:=BxImmediate_IvIw;  BxOpcodeInfo[$29A].ExecutePtr:=bx_cpu.CALL32_Ap;
  BxOpcodeInfo[$29B].Attr:=0;  BxOpcodeInfo[$29B].ExecutePtr:=bx_cpu.FWAIT;
  BxOpcodeInfo[$29C].Attr:=0;  BxOpcodeInfo[$29C].ExecutePtr:=bx_cpu.PUSHF_Fv;
  BxOpcodeInfo[$29D].Attr:=0;  BxOpcodeInfo[$29D].ExecutePtr:=bx_cpu.POPF_Fv;
  BxOpcodeInfo[$29E].Attr:=0;  BxOpcodeInfo[$29E].ExecutePtr:=bx_cpu.SAHF;
  BxOpcodeInfo[$29F].Attr:=0;  BxOpcodeInfo[$29F].ExecutePtr:=bx_cpu.LAHF;
  BxOpcodeInfo[$2A0].Attr:=BxImmediate_O;  BxOpcodeInfo[$2A0].ExecutePtr:=bx_cpu.MOV_ALOb;
  BxOpcodeInfo[$2A1].Attr:=BxImmediate_O;  BxOpcodeInfo[$2A1].ExecutePtr:=bx_cpu.MOV_EAXOd;
  BxOpcodeInfo[$2A2].Attr:=BxImmediate_O;  BxOpcodeInfo[$2A2].ExecutePtr:=bx_cpu.MOV_ObAL;
  BxOpcodeInfo[$2A3].Attr:=BxImmediate_O;  BxOpcodeInfo[$2A3].ExecutePtr:=bx_cpu.MOV_OdEAX;
  BxOpcodeInfo[$2A4].Attr:=BxRepeatable;  BxOpcodeInfo[$2A4].ExecutePtr:=bx_cpu.MOVSB_XbYb;
  BxOpcodeInfo[$2A5].Attr:=BxRepeatable;  BxOpcodeInfo[$2A5].ExecutePtr:=bx_cpu.MOVSW_XvYv;
  BxOpcodeInfo[$2A6].Attr:=BxRepeatable or BxRepeatableZF;  BxOpcodeInfo[$2A6].ExecutePtr:=bx_cpu.CMPSB_XbYb;
  BxOpcodeInfo[$2A7].Attr:=BxRepeatable or BxRepeatableZF;  BxOpcodeInfo[$2A7].ExecutePtr:=bx_cpu.CMPSW_XvYv;
  BxOpcodeInfo[$2A8].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2A8].ExecutePtr:=bx_cpu.TEST_ALIb;
  BxOpcodeInfo[$2A9].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$2A9].ExecutePtr:=bx_cpu.TEST_EAXId;
  BxOpcodeInfo[$2AA].Attr:=BxRepeatable;  BxOpcodeInfo[$2AA].ExecutePtr:=bx_cpu.STOSB_YbAL;
  BxOpcodeInfo[$2AB].Attr:=BxRepeatable;  BxOpcodeInfo[$2AB].ExecutePtr:=bx_cpu.STOSW_YveAX;
  BxOpcodeInfo[$2AC].Attr:=BxRepeatable;  BxOpcodeInfo[$2AC].ExecutePtr:=bx_cpu.LODSB_ALXb;
  BxOpcodeInfo[$2AD].Attr:=BxRepeatable;  BxOpcodeInfo[$2AD].ExecutePtr:=bx_cpu.LODSW_eAXXv;
  BxOpcodeInfo[$2AE].Attr:=BxRepeatable or BxRepeatableZF;  BxOpcodeInfo[$2AE].ExecutePtr:=bx_cpu.SCASB_ALXb;
  BxOpcodeInfo[$2AF].Attr:=BxRepeatable or BxRepeatableZF;  BxOpcodeInfo[$2AF].ExecutePtr:=bx_cpu.SCASW_eAXXv;
  BxOpcodeInfo[$2B0].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2B0].ExecutePtr:=bx_cpu.MOV_RLIb;
  BxOpcodeInfo[$2B1].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2B1].ExecutePtr:=bx_cpu.MOV_RLIb;
  BxOpcodeInfo[$2B2].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2B2].ExecutePtr:=bx_cpu.MOV_RLIb;
  BxOpcodeInfo[$2B3].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2B3].ExecutePtr:=bx_cpu.MOV_RLIb;
  BxOpcodeInfo[$2B4].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2B4].ExecutePtr:=bx_cpu.MOV_RHIb;
  BxOpcodeInfo[$2B5].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2B5].ExecutePtr:=bx_cpu.MOV_RHIb;
  BxOpcodeInfo[$2B6].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2B6].ExecutePtr:=bx_cpu.MOV_RHIb;
  BxOpcodeInfo[$2B7].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2B7].ExecutePtr:=bx_cpu.MOV_RHIb;
  BxOpcodeInfo[$2B8].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$2B8].ExecutePtr:=bx_cpu.MOV_ERXId;
  BxOpcodeInfo[$2B9].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$2B9].ExecutePtr:=bx_cpu.MOV_ERXId;
  BxOpcodeInfo[$2BA].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$2BA].ExecutePtr:=bx_cpu.MOV_ERXId;
  BxOpcodeInfo[$2BB].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$2BB].ExecutePtr:=bx_cpu.MOV_ERXId;
  BxOpcodeInfo[$2BC].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$2BC].ExecutePtr:=bx_cpu.MOV_ERXId;
  BxOpcodeInfo[$2BD].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$2BD].ExecutePtr:=bx_cpu.MOV_ERXId;
  BxOpcodeInfo[$2BE].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$2BE].ExecutePtr:=bx_cpu.MOV_ERXId;
  BxOpcodeInfo[$2BF].Attr:=BxImmediate_Iv;  BxOpcodeInfo[$2BF].ExecutePtr:=bx_cpu.MOV_ERXId;
  BxOpcodeInfo[$2C0].Attr:=BxAnother or BxGroup2 or BxImmediate_Ib; BxOpcodeInfo[$2C0].ExecutePtr:=nil; BxOpcodeInfo[$2C0].AnotherArray:=@BxOpcodeInfoG2Eb;
  BxOpcodeInfo[$2C1].Attr:=BxAnother or BxGroup2 or BxImmediate_Ib; BxOpcodeInfo[$2C1].ExecutePtr:=nil; BxOpcodeInfo[$2C1].AnotherArray:=@BxOpcodeInfoG2Ed;
  BxOpcodeInfo[$2C2].Attr:=BxImmediate_Iw;  BxOpcodeInfo[$2C2].ExecutePtr:=bx_cpu.RETnear32_Iw;
  BxOpcodeInfo[$2C3].Attr:=0;             BxOpcodeInfo[$2C3].ExecutePtr:=bx_cpu.RETnear32;
  BxOpcodeInfo[$2C4].Attr:=BxAnother;  BxOpcodeInfo[$2C4].ExecutePtr:=bx_cpu.LES_GvMp;
  BxOpcodeInfo[$2C5].Attr:=BxAnother;  BxOpcodeInfo[$2C5].ExecutePtr:=bx_cpu.LDS_GvMp;
  BxOpcodeInfo[$2C6].Attr:=BxAnother or BxImmediate_Ib;  BxOpcodeInfo[$2C6].ExecutePtr:=bx_cpu.MOV_EbIb;
  BxOpcodeInfo[$2C7].Attr:=BxAnother or BxImmediate_Iv;  BxOpcodeInfo[$2C7].ExecutePtr:=bx_cpu.MOV_EdId;
  BxOpcodeInfo[$2C8].Attr:=BxImmediate_IwIb;  BxOpcodeInfo[$2C8].ExecutePtr:=bx_cpu.ENTER_IwIb;
  BxOpcodeInfo[$2C9].Attr:=0;  BxOpcodeInfo[$2C9].ExecutePtr:=bx_cpu.LEAVE;
  BxOpcodeInfo[$2CA].Attr:=BxImmediate_Iw;  BxOpcodeInfo[$2CA].ExecutePtr:=bx_cpu.RETfar32_Iw;
  BxOpcodeInfo[$2CB].Attr:=0;  BxOpcodeInfo[$2CB].ExecutePtr:=bx_cpu.RETfar32;
  BxOpcodeInfo[$2CC].Attr:=0;  BxOpcodeInfo[$2CC].ExecutePtr:=bx_cpu.INT3;
  BxOpcodeInfo[$2CD].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2CD].ExecutePtr:=bx_cpu.INT_Ib;
  BxOpcodeInfo[$2CE].Attr:=0;  BxOpcodeInfo[$2CE].ExecutePtr:=bx_cpu.INTO;
  BxOpcodeInfo[$2CF].Attr:=0;  BxOpcodeInfo[$2CF].ExecutePtr:=bx_cpu.IRET32;
  BxOpcodeInfo[$2D0].Attr:=BxAnother or BxGroup2;  BxOpcodeInfo[$2D0].ExecutePtr:=nil; BxOpcodeInfo[$2D0].AnotherArray:=@BxOpcodeInfoG2Eb;
  BxOpcodeInfo[$2D1].Attr:=BxAnother or BxGroup2;  BxOpcodeInfo[$2D1].ExecutePtr:=nil; BxOpcodeInfo[$2D1].AnotherArray:=@BxOpcodeInfoG2Ed;
  BxOpcodeInfo[$2D2].Attr:=BxAnother or BxGroup2;  BxOpcodeInfo[$2D2].ExecutePtr:=nil; BxOpcodeInfo[$2D2].AnotherArray:=@BxOpcodeInfoG2Eb;
  BxOpcodeInfo[$2D3].Attr:=BxAnother or BxGroup2;  BxOpcodeInfo[$2D3].ExecutePtr:=nil; BxOpcodeInfo[$2D3].AnotherArray:=@BxOpcodeInfoG2Ed;
  BxOpcodeInfo[$2D4].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2D4].ExecutePtr:=bx_cpu.AAM;
  BxOpcodeInfo[$2D5].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2D5].ExecutePtr:=bx_cpu.AAD;
  BxOpcodeInfo[$2D6].Attr:=0;  BxOpcodeInfo[$2D6].ExecutePtr:=bx_cpu.SALC;
  BxOpcodeInfo[$2D7].Attr:=0;  BxOpcodeInfo[$2D7].ExecutePtr:=bx_cpu.XLAT;
  BxOpcodeInfo[$2D8].Attr:=BxAnother;  BxOpcodeInfo[$2D8].ExecutePtr:=bx_cpu.ESC0;
  BxOpcodeInfo[$2D9].Attr:=BxAnother;  BxOpcodeInfo[$2D9].ExecutePtr:=bx_cpu.ESC1;
  BxOpcodeInfo[$2DA].Attr:=BxAnother;  BxOpcodeInfo[$2DA].ExecutePtr:=bx_cpu.ESC2;
  BxOpcodeInfo[$2DB].Attr:=BxAnother;  BxOpcodeInfo[$2DB].ExecutePtr:=bx_cpu.ESC3;
  BxOpcodeInfo[$2DC].Attr:=BxAnother;  BxOpcodeInfo[$2DC].ExecutePtr:=bx_cpu.ESC4;
  BxOpcodeInfo[$2DD].Attr:=BxAnother;  BxOpcodeInfo[$2DD].ExecutePtr:=bx_cpu.ESC5;
  BxOpcodeInfo[$2DE].Attr:=BxAnother;  BxOpcodeInfo[$2DE].ExecutePtr:=bx_cpu.ESC6;
  BxOpcodeInfo[$2DF].Attr:=BxAnother;  BxOpcodeInfo[$2DF].ExecutePtr:=bx_cpu.ESC7; 
  BxOpcodeInfo[$2E0].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$2E0].ExecutePtr:=bx_cpu.LOOPNE_Jb;
  BxOpcodeInfo[$2E1].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$2E1].ExecutePtr:=bx_cpu.LOOPE_Jb;
  BxOpcodeInfo[$2E2].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$2E2].ExecutePtr:=bx_cpu.LOOP_Jb;
  BxOpcodeInfo[$2E3].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$2E3].ExecutePtr:=bx_cpu.JCXZ_Jb;
  BxOpcodeInfo[$2E4].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2E4].ExecutePtr:=bx_cpu.IN_ALIb;
  BxOpcodeInfo[$2E5].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2E5].ExecutePtr:=bx_cpu.IN_eAXIb;
  BxOpcodeInfo[$2E6].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2E6].ExecutePtr:=bx_cpu.OUT_IbAL;
  BxOpcodeInfo[$2E7].Attr:=BxImmediate_Ib;  BxOpcodeInfo[$2E7].ExecutePtr:=bx_cpu.OUT_IbeAX;
  BxOpcodeInfo[$2E8].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$2E8].ExecutePtr:=bx_cpu.CALL_Ad;
  BxOpcodeInfo[$2E9].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$2E9].ExecutePtr:=bx_cpu.JMP_Jd;
  BxOpcodeInfo[$2EA].Attr:=BxImmediate_IvIw;  BxOpcodeInfo[$2EA].ExecutePtr:=bx_cpu.JMP_Ap;
  BxOpcodeInfo[$2EB].Attr:=BxImmediate_BrOff8;  BxOpcodeInfo[$2EB].ExecutePtr:=bx_cpu.JMP_Jd;
  BxOpcodeInfo[$2EC].Attr:=0;  BxOpcodeInfo[$2EC].ExecutePtr:=bx_cpu.IN_ALDX;
  BxOpcodeInfo[$2ED].Attr:=0;  BxOpcodeInfo[$2ED].ExecutePtr:=bx_cpu.IN_eAXDX;
  BxOpcodeInfo[$2EE].Attr:=0;  BxOpcodeInfo[$2EE].ExecutePtr:=bx_cpu.OUT_DXAL;
  BxOpcodeInfo[$2EF].Attr:=0;  BxOpcodeInfo[$2EF].ExecutePtr:=bx_cpu.OUT_DXeAX;
  BxOpcodeInfo[$2F0].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$2F0].ExecutePtr:=bx_cpu.BxError; // LOCK:
  BxOpcodeInfo[$2F1].Attr:=0;  BxOpcodeInfo[$2F1].ExecutePtr:=bx_cpu.INT1;
  BxOpcodeInfo[$2F2].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$2F2].ExecutePtr:=bx_cpu.BxError; // REPNE/REPNZ
  BxOpcodeInfo[$2F3].Attr:=BxPrefix or BxAnother;  BxOpcodeInfo[$2F3].ExecutePtr:=bx_cpu.BxError; // REP,REPE/REPZ
  BxOpcodeInfo[$2F4].Attr:=0;  BxOpcodeInfo[$2F4].ExecutePtr:=bx_cpu.HLT;
  BxOpcodeInfo[$2F5].Attr:=0;  BxOpcodeInfo[$2F5].ExecutePtr:=bx_cpu.CMC;
  BxOpcodeInfo[$2F6].Attr:=BxAnother or BxGroup3;  BxOpcodeInfo[$2F6].ExecutePtr:=nil; BxOpcodeInfo[$2F6].AnotherArray:=@BxOpcodeInfoG3Eb;
  BxOpcodeInfo[$2F7].Attr:=BxAnother or BxGroup3;  BxOpcodeInfo[$2F7].ExecutePtr:=nil; BxOpcodeInfo[$2F7].AnotherArray:=@BxOpcodeInfoG3Ed;
  BxOpcodeInfo[$2F8].Attr:=0;  BxOpcodeInfo[$2F8].ExecutePtr:=bx_cpu.CLC;
  BxOpcodeInfo[$2F9].Attr:=0;  BxOpcodeInfo[$2F9].ExecutePtr:=bx_cpu.STC;
  BxOpcodeInfo[$2FA].Attr:=0;  BxOpcodeInfo[$2FA].ExecutePtr:=bx_cpu.CLI;
  BxOpcodeInfo[$2FB].Attr:=0;  BxOpcodeInfo[$2FB].ExecutePtr:=bx_cpu.STI;
  BxOpcodeInfo[$2FC].Attr:=0;  BxOpcodeInfo[$2FC].ExecutePtr:=bx_cpu.CLD;
  BxOpcodeInfo[$2FD].Attr:=0;  BxOpcodeInfo[$2FD].ExecutePtr:=bx_cpu.STD;
  BxOpcodeInfo[$2FE].Attr:=BxAnother or BxGroup4;  BxOpcodeInfo[$2FE].ExecutePtr:=nil; BxOpcodeInfo[$2FE].AnotherArray:=@BxOpcodeInfoG4;
  BxOpcodeInfo[$2FF].Attr:=BxAnother or BxGroup5;  BxOpcodeInfo[$2FF].ExecutePtr:=nil; BxOpcodeInfo[$2FF].AnotherArray:=@BxOpcodeInfoG5d;
  BxOpcodeInfo[$300].Attr:=BxAnother or BxGroup6;  BxOpcodeInfo[$300].ExecutePtr:=nil; BxOpcodeInfo[$300].AnotherArray:=@BxOpcodeInfoG6;
  BxOpcodeInfo[$301].Attr:=BxAnother or BxGroup7;  BxOpcodeInfo[$301].ExecutePtr:=nil; BxOpcodeInfo[$301].AnotherArray:=@BxOpcodeInfoG7;
  BxOpcodeInfo[$302].Attr:=BxAnother;  BxOpcodeInfo[$302].ExecutePtr:=bx_cpu.LAR_GvEw;
  BxOpcodeInfo[$303].Attr:=BxAnother;  BxOpcodeInfo[$303].ExecutePtr:=bx_cpu.LSL_GvEw;
  BxOpcodeInfo[$304].Attr:=0;  BxOpcodeInfo[$304].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$305].Attr:=0;  BxOpcodeInfo[$305].ExecutePtr:=bx_cpu.LOADALL;
  BxOpcodeInfo[$306].Attr:=0;  BxOpcodeInfo[$306].ExecutePtr:=bx_cpu.CLTS;
  BxOpcodeInfo[$307].Attr:=0;  BxOpcodeInfo[$307].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$308].Attr:=0;  BxOpcodeInfo[$308].ExecutePtr:=bx_cpu.INVD;
  BxOpcodeInfo[$309].Attr:=0;  BxOpcodeInfo[$309].ExecutePtr:=bx_cpu.WBINVD;
  BxOpcodeInfo[$30A].Attr:=0;  BxOpcodeInfo[$30A].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$30B].Attr:=0;  BxOpcodeInfo[$30B].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$30C].Attr:=0;  BxOpcodeInfo[$30C].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$30D].Attr:=0;  BxOpcodeInfo[$30D].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$30E].Attr:=0;  BxOpcodeInfo[$30E].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$30F].Attr:=0;  BxOpcodeInfo[$30F].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$310].Attr:=0;  BxOpcodeInfo[$310].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$311].Attr:=0;  BxOpcodeInfo[$311].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$312].Attr:=0;  BxOpcodeInfo[$312].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$313].Attr:=0;  BxOpcodeInfo[$313].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$314].Attr:=0;  BxOpcodeInfo[$314].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$315].Attr:=0;  BxOpcodeInfo[$315].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$316].Attr:=0;  BxOpcodeInfo[$316].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$317].Attr:=0;  BxOpcodeInfo[$317].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$318].Attr:=0;  BxOpcodeInfo[$318].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$319].Attr:=0;  BxOpcodeInfo[$319].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$31A].Attr:=0;  BxOpcodeInfo[$31A].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$31B].Attr:=0;  BxOpcodeInfo[$31B].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$31C].Attr:=0;  BxOpcodeInfo[$31C].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$31D].Attr:=0;  BxOpcodeInfo[$31D].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$31E].Attr:=0;  BxOpcodeInfo[$31E].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$31F].Attr:=0;  BxOpcodeInfo[$31F].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$320].Attr:=BxAnother;  BxOpcodeInfo[$320].ExecutePtr:=bx_cpu.MOV_RdCd;
  BxOpcodeInfo[$321].Attr:=BxAnother;  BxOpcodeInfo[$321].ExecutePtr:=bx_cpu.MOV_RdDd;
  BxOpcodeInfo[$322].Attr:=BxAnother;  BxOpcodeInfo[$322].ExecutePtr:=bx_cpu.MOV_CdRd;
  BxOpcodeInfo[$323].Attr:=BxAnother;  BxOpcodeInfo[$323].ExecutePtr:=bx_cpu.MOV_DdRd;
  BxOpcodeInfo[$324].Attr:=BxAnother;  BxOpcodeInfo[$324].ExecutePtr:=bx_cpu.MOV_RdTd;
  BxOpcodeInfo[$325].Attr:=0;  BxOpcodeInfo[$325].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$326].Attr:=BxAnother;  BxOpcodeInfo[$326].ExecutePtr:=bx_cpu.MOV_TdRd;
  BxOpcodeInfo[$327].Attr:=0;  BxOpcodeInfo[$327].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$328].Attr:=0;  BxOpcodeInfo[$328].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$329].Attr:=0;  BxOpcodeInfo[$329].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$32A].Attr:=0;  BxOpcodeInfo[$32A].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$32B].Attr:=0;  BxOpcodeInfo[$32B].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$32C].Attr:=0;  BxOpcodeInfo[$32C].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$32D].Attr:=0;  BxOpcodeInfo[$32D].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$32E].Attr:=0;  BxOpcodeInfo[$32E].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$32F].Attr:=0;  BxOpcodeInfo[$32F].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$330].Attr:=0;  BxOpcodeInfo[$330].ExecutePtr:=bx_cpu.WRMSR;
  BxOpcodeInfo[$331].Attr:=0;  BxOpcodeInfo[$331].ExecutePtr:=bx_cpu.RDTSC;
  BxOpcodeInfo[$332].Attr:=0;  BxOpcodeInfo[$332].ExecutePtr:=bx_cpu.RDMSR;
  BxOpcodeInfo[$333].Attr:=0;  BxOpcodeInfo[$333].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$334].Attr:=0;  BxOpcodeInfo[$334].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$335].Attr:=0;  BxOpcodeInfo[$335].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$336].Attr:=0;  BxOpcodeInfo[$336].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$337].Attr:=0;  BxOpcodeInfo[$337].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$338].Attr:=0;  BxOpcodeInfo[$338].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$339].Attr:=0;  BxOpcodeInfo[$339].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$33A].Attr:=0;  BxOpcodeInfo[$33A].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$33B].Attr:=0;  BxOpcodeInfo[$33B].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$33C].Attr:=0;  BxOpcodeInfo[$33C].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$33D].Attr:=0;  BxOpcodeInfo[$33D].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$33E].Attr:=0;  BxOpcodeInfo[$33E].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$33F].Attr:=0;  BxOpcodeInfo[$33F].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$340].Attr:=BxAnother;  BxOpcodeInfo[$340].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$341].Attr:=BxAnother;  BxOpcodeInfo[$341].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$342].Attr:=BxAnother;  BxOpcodeInfo[$342].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$343].Attr:=BxAnother;  BxOpcodeInfo[$343].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$344].Attr:=BxAnother;  BxOpcodeInfo[$344].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$345].Attr:=BxAnother;  BxOpcodeInfo[$345].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$346].Attr:=BxAnother;  BxOpcodeInfo[$346].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$347].Attr:=BxAnother;  BxOpcodeInfo[$347].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$348].Attr:=BxAnother;  BxOpcodeInfo[$348].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$349].Attr:=BxAnother;  BxOpcodeInfo[$349].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$34A].Attr:=BxAnother;  BxOpcodeInfo[$34A].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$34B].Attr:=BxAnother;  BxOpcodeInfo[$34B].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$34C].Attr:=BxAnother;  BxOpcodeInfo[$34C].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$34D].Attr:=BxAnother;  BxOpcodeInfo[$34D].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$34E].Attr:=BxAnother;  BxOpcodeInfo[$34E].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$34F].Attr:=BxAnother;  BxOpcodeInfo[$34F].ExecutePtr:=bx_cpu.CMOV_GdEd;
  BxOpcodeInfo[$350].Attr:=0;  BxOpcodeInfo[$350].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$351].Attr:=0;  BxOpcodeInfo[$351].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$352].Attr:=0;  BxOpcodeInfo[$352].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$353].Attr:=0;  BxOpcodeInfo[$353].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$354].Attr:=0;  BxOpcodeInfo[$354].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$355].Attr:=0;  BxOpcodeInfo[$355].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$356].Attr:=0;  BxOpcodeInfo[$356].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$357].Attr:=0;  BxOpcodeInfo[$357].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$358].Attr:=0;  BxOpcodeInfo[$358].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$359].Attr:=0;  BxOpcodeInfo[$359].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$35A].Attr:=0;  BxOpcodeInfo[$35A].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$35B].Attr:=0;  BxOpcodeInfo[$35B].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$35C].Attr:=0;  BxOpcodeInfo[$35C].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$35D].Attr:=0;  BxOpcodeInfo[$35D].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$35E].Attr:=0;  BxOpcodeInfo[$35E].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$35F].Attr:=0;  BxOpcodeInfo[$35F].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$360].Attr:=0;  BxOpcodeInfo[$360].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$361].Attr:=0;  BxOpcodeInfo[$361].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$362].Attr:=0;  BxOpcodeInfo[$362].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$363].Attr:=0;  BxOpcodeInfo[$363].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$364].Attr:=0;  BxOpcodeInfo[$364].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$365].Attr:=0;  BxOpcodeInfo[$365].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$366].Attr:=0;  BxOpcodeInfo[$366].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$367].Attr:=0;  BxOpcodeInfo[$367].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$368].Attr:=0;  BxOpcodeInfo[$368].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$369].Attr:=0;  BxOpcodeInfo[$369].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$36A].Attr:=0;  BxOpcodeInfo[$36A].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$36B].Attr:=0;  BxOpcodeInfo[$36B].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$36C].Attr:=0;  BxOpcodeInfo[$36C].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$36D].Attr:=0;  BxOpcodeInfo[$36D].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$36E].Attr:=0;  BxOpcodeInfo[$36E].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$36F].Attr:=0;  BxOpcodeInfo[$36F].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$370].Attr:=0;  BxOpcodeInfo[$370].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$371].Attr:=0;  BxOpcodeInfo[$371].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$372].Attr:=0;  BxOpcodeInfo[$372].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$373].Attr:=0;  BxOpcodeInfo[$373].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$374].Attr:=0;  BxOpcodeInfo[$374].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$375].Attr:=0;  BxOpcodeInfo[$375].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$376].Attr:=0;  BxOpcodeInfo[$376].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$377].Attr:=0;  BxOpcodeInfo[$377].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$378].Attr:=0;  BxOpcodeInfo[$378].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$379].Attr:=0;  BxOpcodeInfo[$379].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$37A].Attr:=0;  BxOpcodeInfo[$37A].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$37B].Attr:=0;  BxOpcodeInfo[$37B].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$37C].Attr:=0;  BxOpcodeInfo[$37C].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$37D].Attr:=0;  BxOpcodeInfo[$37D].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$37E].Attr:=0;  BxOpcodeInfo[$37E].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$37F].Attr:=0;  BxOpcodeInfo[$37F].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$380].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$380].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$381].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$381].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$382].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$382].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$383].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$383].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$384].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$384].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$385].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$385].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$386].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$386].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$387].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$387].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$388].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$388].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$389].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$389].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$38A].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$38A].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$38B].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$38B].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$38C].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$38C].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$38D].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$38D].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$38E].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$38E].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$38F].Attr:=BxImmediate_BrOff32;  BxOpcodeInfo[$38F].ExecutePtr:=bx_cpu.JCC_Jd;
  BxOpcodeInfo[$390].Attr:=BxAnother;  BxOpcodeInfo[$390].ExecutePtr:=bx_cpu.SETO_Eb;
  BxOpcodeInfo[$391].Attr:=BxAnother;  BxOpcodeInfo[$391].ExecutePtr:=bx_cpu.SETNO_Eb;
  BxOpcodeInfo[$392].Attr:=BxAnother;  BxOpcodeInfo[$392].ExecutePtr:=bx_cpu.SETB_Eb;
  BxOpcodeInfo[$393].Attr:=BxAnother;  BxOpcodeInfo[$393].ExecutePtr:=bx_cpu.SETNB_Eb;
  BxOpcodeInfo[$394].Attr:=BxAnother;  BxOpcodeInfo[$394].ExecutePtr:=bx_cpu.SETZ_Eb;
  BxOpcodeInfo[$395].Attr:=BxAnother;  BxOpcodeInfo[$395].ExecutePtr:=bx_cpu.SETNZ_Eb;
  BxOpcodeInfo[$396].Attr:=BxAnother;  BxOpcodeInfo[$396].ExecutePtr:=bx_cpu.SETBE_Eb;
  BxOpcodeInfo[$397].Attr:=BxAnother;  BxOpcodeInfo[$397].ExecutePtr:=bx_cpu.SETNBE_Eb;
  BxOpcodeInfo[$398].Attr:=BxAnother;  BxOpcodeInfo[$398].ExecutePtr:=bx_cpu.SETS_Eb;
  BxOpcodeInfo[$399].Attr:=BxAnother;  BxOpcodeInfo[$399].ExecutePtr:=bx_cpu.SETNS_Eb;
  BxOpcodeInfo[$39A].Attr:=BxAnother;  BxOpcodeInfo[$39A].ExecutePtr:=bx_cpu.SETP_Eb;
  BxOpcodeInfo[$39B].Attr:=BxAnother;  BxOpcodeInfo[$39B].ExecutePtr:=bx_cpu.SETNP_Eb;
  BxOpcodeInfo[$39C].Attr:=BxAnother;  BxOpcodeInfo[$39C].ExecutePtr:=bx_cpu.SETL_Eb;
  BxOpcodeInfo[$39D].Attr:=BxAnother;  BxOpcodeInfo[$39D].ExecutePtr:=bx_cpu.SETNL_Eb;
  BxOpcodeInfo[$39E].Attr:=BxAnother;  BxOpcodeInfo[$39E].ExecutePtr:=bx_cpu.SETLE_Eb;
  BxOpcodeInfo[$39F].Attr:=BxAnother;  BxOpcodeInfo[$39F].ExecutePtr:=bx_cpu.SETNLE_Eb;
  BxOpcodeInfo[$3A0].Attr:=0;  BxOpcodeInfo[$3A0].ExecutePtr:=bx_cpu.PUSH_FS;
  BxOpcodeInfo[$3A1].Attr:=0;  BxOpcodeInfo[$3A1].ExecutePtr:=bx_cpu.POP_FS;
  BxOpcodeInfo[$3A2].Attr:=0;  BxOpcodeInfo[$3A2].ExecutePtr:=bx_cpu.CPUID;
  BxOpcodeInfo[$3A3].Attr:=BxAnother;  BxOpcodeInfo[$3A3].ExecutePtr:=bx_cpu.BT_EvGv;
  BxOpcodeInfo[$3A4].Attr:=BxAnother or BxImmediate_Ib;  BxOpcodeInfo[$3A4].ExecutePtr:=bx_cpu.SHLD_EdGd;
  BxOpcodeInfo[$3A5].Attr:=BxAnother;                 BxOpcodeInfo[$3A5].ExecutePtr:=bx_cpu.SHLD_EdGd;
  BxOpcodeInfo[$3A6].Attr:=0;  BxOpcodeInfo[$3A6].ExecutePtr:=bx_cpu.CMPXCHG_XBTS;
  BxOpcodeInfo[$3A7].Attr:=0;  BxOpcodeInfo[$3A7].ExecutePtr:=bx_cpu.CMPXCHG_IBTS;
  BxOpcodeInfo[$3A8].Attr:=0;  BxOpcodeInfo[$3A8].ExecutePtr:=bx_cpu.PUSH_GS;
  BxOpcodeInfo[$3A9].Attr:=0;  BxOpcodeInfo[$3A9].ExecutePtr:=bx_cpu.POP_GS;
  BxOpcodeInfo[$3AA].Attr:=0;  BxOpcodeInfo[$3AA].ExecutePtr:=bx_cpu.RSM;
  BxOpcodeInfo[$3AB].Attr:=BxAnother;  BxOpcodeInfo[$3AB].ExecutePtr:=bx_cpu.BTS_EvGv;
  BxOpcodeInfo[$3AC].Attr:=BxAnother or BxImmediate_Ib;  BxOpcodeInfo[$3AC].ExecutePtr:=bx_cpu.SHRD_EdGd;
  BxOpcodeInfo[$3AD].Attr:=BxAnother;                 BxOpcodeInfo[$3AD].ExecutePtr:=bx_cpu.SHRD_EdGd;
  BxOpcodeInfo[$3AE].Attr:=0;  BxOpcodeInfo[$3AE].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3AF].Attr:=BxAnother;  BxOpcodeInfo[$3AF].ExecutePtr:=bx_cpu.IMUL_GdEd;
  BxOpcodeInfo[$3B0].Attr:=BxAnother;  BxOpcodeInfo[$3B0].ExecutePtr:=bx_cpu.CMPXCHG_EbGb;
  BxOpcodeInfo[$3B1].Attr:=BxAnother;  BxOpcodeInfo[$3B1].ExecutePtr:=bx_cpu.CMPXCHG_EdGd;
  BxOpcodeInfo[$3B2].Attr:=BxAnother;  BxOpcodeInfo[$3B2].ExecutePtr:=bx_cpu.LSS_GvMp;
  BxOpcodeInfo[$3B3].Attr:=BxAnother;  BxOpcodeInfo[$3B3].ExecutePtr:=bx_cpu.BTR_EvGv;
  BxOpcodeInfo[$3B4].Attr:=BxAnother;  BxOpcodeInfo[$3B4].ExecutePtr:=bx_cpu.LFS_GvMp;
  BxOpcodeInfo[$3B5].Attr:=BxAnother;  BxOpcodeInfo[$3B5].ExecutePtr:=bx_cpu.LGS_GvMp;
  BxOpcodeInfo[$3B6].Attr:=BxAnother;  BxOpcodeInfo[$3B6].ExecutePtr:=bx_cpu.MOVZX_GdEb;
  BxOpcodeInfo[$3B7].Attr:=BxAnother;  BxOpcodeInfo[$3B7].ExecutePtr:=bx_cpu.MOVZX_GdEw;
  BxOpcodeInfo[$3B8].Attr:=0;  BxOpcodeInfo[$3B8].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3B9].Attr:=0;  BxOpcodeInfo[$3B9].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3BA].Attr:=BxAnother or BxGroup8;  BxOpcodeInfo[$3BA].ExecutePtr:=nil; BxOpcodeInfo[$3BA].AnotherArray:=@BxOpcodeInfoG8EvIb;
  BxOpcodeInfo[$3BB].Attr:=BxAnother;  BxOpcodeInfo[$3BB].ExecutePtr:=bx_cpu.BTC_EvGv;
  BxOpcodeInfo[$3BC].Attr:=BxAnother;  BxOpcodeInfo[$3BC].ExecutePtr:=bx_cpu.BSF_GvEv;
  BxOpcodeInfo[$3BD].Attr:=BxAnother;  BxOpcodeInfo[$3BD].ExecutePtr:=bx_cpu.BSR_GvEv;
  BxOpcodeInfo[$3BE].Attr:=BxAnother;  BxOpcodeInfo[$3BE].ExecutePtr:=bx_cpu.MOVSX_GdEb;
  BxOpcodeInfo[$3BF].Attr:=BxAnother;  BxOpcodeInfo[$3BF].ExecutePtr:=bx_cpu.MOVSX_GdEw;
  BxOpcodeInfo[$3C0].Attr:=BxAnother;  BxOpcodeInfo[$3C0].ExecutePtr:=bx_cpu.XADD_EbGb;
  BxOpcodeInfo[$3C1].Attr:=BxAnother;  BxOpcodeInfo[$3C1].ExecutePtr:=bx_cpu.XADD_EdGd;
  BxOpcodeInfo[$3C2].Attr:=0;  BxOpcodeInfo[$3C2].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3C3].Attr:=0;  BxOpcodeInfo[$3C3].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3C4].Attr:=0;  BxOpcodeInfo[$3C4].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3C5].Attr:=0;  BxOpcodeInfo[$3C5].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3C6].Attr:=0;  BxOpcodeInfo[$3C6].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3C7].Attr:=BxAnother or BxGroup9;  BxOpcodeInfo[$3C7].ExecutePtr:=nil; BxOpcodeInfo[$3C7].AnotherArray:=@BxOpcodeInfoG9;
  BxOpcodeInfo[$3C8].Attr:=0;  BxOpcodeInfo[$3C8].ExecutePtr:=bx_cpu.BSWAP_EAX;
  BxOpcodeInfo[$3C9].Attr:=0;  BxOpcodeInfo[$3C9].ExecutePtr:=bx_cpu.BSWAP_ECX;
  BxOpcodeInfo[$3CA].Attr:=0;  BxOpcodeInfo[$3CA].ExecutePtr:=bx_cpu.BSWAP_EDX;
  BxOpcodeInfo[$3CB].Attr:=0;  BxOpcodeInfo[$3CB].ExecutePtr:=bx_cpu.BSWAP_EBX;
  BxOpcodeInfo[$3CC].Attr:=0;  BxOpcodeInfo[$3CC].ExecutePtr:=bx_cpu.BSWAP_ESP;
  BxOpcodeInfo[$3CD].Attr:=0;  BxOpcodeInfo[$3CD].ExecutePtr:=bx_cpu.BSWAP_EBP;
  BxOpcodeInfo[$3CE].Attr:=0;  BxOpcodeInfo[$3CE].ExecutePtr:=bx_cpu.BSWAP_ESI;
  BxOpcodeInfo[$3CF].Attr:=0;  BxOpcodeInfo[$3CF].ExecutePtr:=bx_cpu.BSWAP_EDI;
  BxOpcodeInfo[$3D0].Attr:=0;  BxOpcodeInfo[$3D0].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3D1].Attr:=0;  BxOpcodeInfo[$3D1].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3D2].Attr:=0;  BxOpcodeInfo[$3D2].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3D3].Attr:=0;  BxOpcodeInfo[$3D3].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3D4].Attr:=0;  BxOpcodeInfo[$3D4].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3D5].Attr:=0;  BxOpcodeInfo[$3D5].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3D6].Attr:=0;  BxOpcodeInfo[$3D6].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3D7].Attr:=0;  BxOpcodeInfo[$3D7].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3D8].Attr:=0;  BxOpcodeInfo[$3D8].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3D9].Attr:=0;  BxOpcodeInfo[$3D9].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3DA].Attr:=0;  BxOpcodeInfo[$3DA].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3DB].Attr:=0;  BxOpcodeInfo[$3DB].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3DC].Attr:=0;  BxOpcodeInfo[$3DC].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3DD].Attr:=0;  BxOpcodeInfo[$3DD].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3DE].Attr:=0;  BxOpcodeInfo[$3DE].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3DF].Attr:=0;  BxOpcodeInfo[$3DF].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3E0].Attr:=0;  BxOpcodeInfo[$3E0].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3E1].Attr:=0;  BxOpcodeInfo[$3E1].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3E2].Attr:=0;  BxOpcodeInfo[$3E2].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3E3].Attr:=0;  BxOpcodeInfo[$3E3].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3E4].Attr:=0;  BxOpcodeInfo[$3E4].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3E5].Attr:=0;  BxOpcodeInfo[$3E5].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3E6].Attr:=0;  BxOpcodeInfo[$3E6].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3E7].Attr:=0;  BxOpcodeInfo[$3E7].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3E8].Attr:=0;  BxOpcodeInfo[$3E8].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3E9].Attr:=0;  BxOpcodeInfo[$3E9].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3EA].Attr:=0;  BxOpcodeInfo[$3EA].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3EB].Attr:=0;  BxOpcodeInfo[$3EB].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3EC].Attr:=0;  BxOpcodeInfo[$3EC].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3ED].Attr:=0;  BxOpcodeInfo[$3ED].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3EE].Attr:=0;  BxOpcodeInfo[$3EE].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3EF].Attr:=0;  BxOpcodeInfo[$3EF].ExecutePtr:=bx_cpu.BxError;
  BxOpcodeInfo[$3F0].Attr:=0;  BxOpcodeInfo[$3F0].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$3F1].Attr:=0;  BxOpcodeInfo[$3F1].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$3F2].Attr:=0;  BxOpcodeInfo[$3F2].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$3F3].Attr:=0;  BxOpcodeInfo[$3F3].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$3F4].Attr:=0;  BxOpcodeInfo[$3F4].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$3F5].Attr:=0;  BxOpcodeInfo[$3F5].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$3F6].Attr:=0;  BxOpcodeInfo[$3F6].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$3F7].Attr:=0;  BxOpcodeInfo[$3F7].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$3F8].Attr:=0;  BxOpcodeInfo[$3F8].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$3F9].Attr:=0;  BxOpcodeInfo[$3F9].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$3FA].Attr:=0;  BxOpcodeInfo[$3FA].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$3FB].Attr:=0;  BxOpcodeInfo[$3FB].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$3FC].Attr:=0;  BxOpcodeInfo[$3FC].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$3FD].Attr:=0;  BxOpcodeInfo[$3FD].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$3FE].Attr:=0;  BxOpcodeInfo[$3FE].ExecutePtr:=bx_cpu.UndefinedOpcode;
  BxOpcodeInfo[$3FF].Attr:=0;  BxOpcodeInfo[$3FF].ExecutePtr:=bx_cpu.UndefinedOpcode;

end;
