fixed opcode generation