diff --git a/cores/esp8266/pgmspace.cpp b/cores/esp8266/pgmspace.cpp index 93bf15ded..7f03de402 100644 --- a/cores/esp8266/pgmspace.cpp +++ b/cores/esp8266/pgmspace.cpp @@ -26,6 +26,18 @@ size_t strnlen_P(PGM_P s, size_t size) { return (size_t) (cp - s); } +void* memcpy_P(void* dest, PGM_VOID_P src, size_t count) { + const uint8_t* read = reinterpret_cast(src); + uint8_t* write = reinterpret_cast(dest); + + while (count) + { + *write++ = pgm_read_byte(read++); + count--; + } + + return dest; +} int memcmp_P(const void* buf1, PGM_VOID_P buf2P, size_t size) { int result = 0;