HD_COMMAND
debug(3, "%s -> 0x%02x", (type == HD_COMMAND) ? "cmd " : "data", data);
debug(3, "0x%02x -> %s", val, (type == HD_COMMAND) ? "cmd " : "data");
hd44780_output(HD_COMMAND, val);
hd44780_output(HD_COMMAND, val);
hd44780_output(HD_COMMAND, val);
hd44780_output(HD_COMMAND, val);
hd44780_output(HD_COMMAND, val);
hd44780_output(HD_COMMAND, 0x06); /* shift cursor by increment */
hd44780_output(HD_COMMAND, 0x01);
hd44780_output(HD_COMMAND, 0xc0); /* beginning of second line */
val = hd44780_input(HD_COMMAND) & 0x3f; /* mask character position, save line pos */
hd44780_output(HD_COMMAND, 0x80 | val);
hd44780_output(HD_COMMAND, 0x02);