Redid the opcode dispatch