2         `INSN_ALU8,`INSN_ALU8IMM: begin
 
   3                 if ((opcode[7:6] == 2'b11) && (cycle == 0)) begin       // alu8imm
 
   6                 end else if ((opcode[2:0] == `INSN_reg_dHL) && (cycle == 0))
 
  12                         `INSN_reg_A:    tmp <= `_A;
 
  13                         `INSN_reg_B:    tmp <= `_B;
 
  14                         `INSN_reg_C:    tmp <= `_C;
 
  15                         `INSN_reg_D:    tmp <= `_D;
 
  16                         `INSN_reg_E:    tmp <= `_E;
 
  17                         `INSN_reg_H:    tmp <= `_H;
 
  18                         `INSN_reg_L:    tmp <= `_L;
 
  19                         `INSN_reg_dHL:  tmp <= rdata;
 
  26         `INSN_ALU8,`INSN_ALU8IMM: begin
 
  27                 if (((opcode[2:0] == `INSN_reg_dHL) || (opcode[7:6] == 2'b11)) && (cycle == 0)) begin
 
  28                         /* Sit on our asses. */
 
  29                 end else begin          /* Actually do the computation! */
 
  33                                 `_F <=  { /* Z */ ((`_A + tmp) == 0) ? 1'b1 : 1'b0,
 
  35                                           /* H */ (({1'b0,`_A[3:0]} + {1'b0,tmp[3:0]}) >> 4 == 1) ? 1'b1 : 1'b0,
 
  36                                           /* C */ (({1'b0,`_A} + {1'b0,tmp}) >> 8 == 1) ? 1'b1 : 1'b0,
 
  41                                 `_A <= `_A + tmp + {7'b0,`_F[4]};
 
  42                                 `_F <=  { /* Z */ ((`_A + tmp + {7'b0,`_F[4]}) == 0) ? 1'b1 : 1'b0,
 
  44                                           /* H */ (({1'b0,`_A[3:0]} + {1'b0,tmp[3:0]} + {4'b0,`_F[4]}) >> 4 == 1) ? 1'b1 : 1'b0,
 
  45                                           /* C */ (({1'b0,`_A} + {1'b0,tmp} + {8'b0,`_F[4]}) >> 8 == 1) ? 1'b1 : 1'b0,
 
  51                                 `_F <=  { /* Z */ (`_A == tmp) ? 1'b1 : 1'b0,
 
  53                                           /* H */ (tmp[3:0] > `_A[3:0]) ? 1'b1 : 1'b0,
 
  54                                           /* C */ (tmp > `_A) ? 1'b1 : 1'b0,
 
  59                                 `_A <= `_A - (tmp + {7'b0,`_F[4]});
 
  60                                 `_F <=  { /* Z */ ((`_A - (tmp + {7'b0,`_F[4]})) == 0) ? 1'b1 : 1'b0,
 
  62                                           /* H */ (({1'b0,tmp[3:0]} + {4'b0,`_F[4]}) > {1'b0,`_A[3:0]}) ? 1'b1 : 1'b0,
 
  63                                           /* C */ (({1'b0,tmp} + {8'b0,`_F[4]}) > {1'b0,`_A[7:0]}) ? 1'b1 : 1'b0,
 
  69                                 `_F <=  { /* Z */ ((`_A & tmp) == 0) ? 1'b1 : 1'b0,
 
  76                                 `_F <=  { /* Z */ ((`_A | tmp) == 0) ? 1'b1 : 1'b0,
 
  83                                 `_F <=  { /* Z */ ((`_A ^ tmp) == 0) ? 1'b1 : 1'b0,
 
  89                                 `_F <=  { /* Z */ (`_A == tmp) ? 1'b1 : 1'b0,
 
  91                                           /* H */ (tmp[3:0] > `_A[3:0]) ? 1'b1 : 1'b0,
 
  92                                           /* C */ (tmp > `_A) ? 1'b1 : 1'b0,