diff --git a/OLED.cpp b/OLED.cpp index d718a2a..5b9afe1 100644 --- a/OLED.cpp +++ b/OLED.cpp @@ -467,6 +467,36 @@ void COLED::clearNXDNInt() display.display(); } +void COLED::writePOCSAGInt(uint32_t ric, const std::string& message) +{ + m_mode = MODE_POCSAG; + + display.clearDisplay(); + display.fillRect(0, OLED_LINE1, display.width(), display.height(), BLACK); + + display.setCursor(0,OLED_LINE3); + display.printf("RIC: %u", ric); + + display.setCursor(0,OLED_LINE5); + display.printf("MSG: %s", message.c_str()); + + OLED_statusbar(); + display.display(); +} + +void COLED::clearPOCSAGInt() +{ + display.fillRect(0, OLED_LINE1, display.width(), display.height(), BLACK); + + display.setCursor(40,OLED_LINE4); + display.print("Listening"); + + display.setCursor(0,OLED_LINE6); + display.printf("%s",m_ipaddress.c_str()); + + display.display(); +} + void COLED::writeCWInt() { display.clearDisplay(); diff --git a/OLED.h b/OLED.h index 0379acd..2b05819 100644 --- a/OLED.h +++ b/OLED.h @@ -65,6 +65,9 @@ public: virtual void writeNXDNInt(const char* source, bool group, unsigned int dest, const char* type); virtual void clearNXDNInt(); + virtual void writePOCSAGInt(uint32_t ric, const std::string& message); + virtual void clearPOCSAGInt(); + virtual void writeCWInt(); virtual void clearCWInt();