HC_CMD_READ
if (cmd & HC_CMD_READ) {
val2 |= HC_CMD_READ;
if (val2 & HC_CMD_READ || val2 & HC_CMD_WRITE) {
if (!(val2 & HC_CMD_READ || val2 & HC_CMD_WRITE))