#define CMD_FB_READ 0x42
#define CMD_FB_WRITE 0x43
#define CMD_FB_READL 0x44
+ #define CMD_DISP_READ 0x66
#define CMD_DISP_INT 0x45
#define CMD_DISP_ADDR 0x63
#define CMD_DISP_BLNK 0x64
}
#endif
} else if (command == CMD_FB_READ) {
- if (sbyte != 0x00) {
- kiss_indicate_fb();
- }
+ if (sbyte != 0x00) { kiss_indicate_fb(); }
+ } else if (command == CMD_DISP_READ) {
+ if (sbyte != 0x00) { kiss_indicate_disp(); }
} else if (command == CMD_DEV_HASH) {
#if MCU_VARIANT == MCU_ESP32 || MCU_VARIANT == MCU_NRF52
if (sbyte != 0x00) {
serial_write(FEND);
}
+void kiss_indicate_disp() {
+ serial_write(FEND);
+ serial_write(CMD_DISP_READ);
+ #if HAS_DISPLAY
+ uint8_t *da = disp_area.getBuffer();
+ uint8_t *sa = stat_area.getBuffer();
+ for (int i = 0; i < 512; i++) { escaped_serial_write(da[i]); }
+ for (int i = 0; i < 512; i++) { escaped_serial_write(sa[i]); }
+ #else
+ serial_write(0xFF);
+ #endif
+ serial_write(FEND);
+}
+
void kiss_indicate_ready() {
serial_write(FEND);
serial_write(CMD_READY);