Skip to content

Commit 2ba4c40

Browse files
committed
add more definitions to pgmspace.h to match ESP8266
1 parent 063b563 commit 2ba4c40

File tree

1 file changed

+50
-14
lines changed

1 file changed

+50
-14
lines changed

Diff for: cores/esp32/pgmspace.h

+50-14
Original file line numberDiff line numberDiff line change
@@ -19,25 +19,61 @@
1919
#ifndef PGMSPACE_INCLUDE
2020
#define PGMSPACE_INCLUDE
2121

22+
typedef void prog_void;
23+
typedef char prog_char;
24+
typedef unsigned char prog_uchar;
25+
typedef char prog_int8_t;
26+
typedef unsigned char prog_uint8_t;
27+
typedef short prog_int16_t;
28+
typedef unsigned short prog_uint16_t;
29+
typedef long prog_int32_t;
30+
typedef unsigned long prog_uint32_t;
31+
2232
typedef char __FlashStringHelper;
33+
34+
#define SIZE_IRRELEVANT 0x7fffffff
35+
2336
#define PROGMEM
24-
#define PSTR(s) (s)
25-
#define FPSTR(pstr_pointer) ((const char *)(pstr_pointer))
26-
#define F(string_literal) (string_literal)
37+
#define PGM_P const char *
38+
#define PGM_VOID_P const void *
39+
#define FPSTR(p) ((const char *)(p))
40+
#define PSTR(s) (s)
41+
#define F(s) (s)
42+
#define _SFR_BYTE(n) (n)
2743

28-
#define pgm_read_byte(addr) (*(const unsigned char *)(addr))
29-
#define pgm_read_word(addr) (*(const unsigned short *)(addr))
30-
#define pgm_read_dword(addr) (*(const unsigned long *)(addr))
31-
#define pgm_read_float(addr) (*(const float *)(addr))
44+
#define pgm_read_byte(addr) (*(const unsigned char *)(addr))
45+
#define pgm_read_word(addr) (*(const unsigned short *)(addr))
46+
#define pgm_read_dword(addr) (*(const unsigned long *)(addr))
47+
#define pgm_read_float(addr) (*(const float *)(addr))
3248

33-
#define pgm_read_byte_near(addr) pgm_read_byte(addr)
34-
#define pgm_read_word_near(addr) pgm_read_word(addr)
49+
#define pgm_read_byte_near(addr) pgm_read_byte(addr)
50+
#define pgm_read_word_near(addr) pgm_read_word(addr)
3551
#define pgm_read_dword_near(addr) pgm_read_dword(addr)
3652
#define pgm_read_float_near(addr) pgm_read_float(addr)
37-
#define pgm_read_byte_far(addr) pgm_read_byte(addr)
38-
#define pgm_read_word_far(addr) pgm_read_word(addr)
39-
#define pgm_read_dword_far(addr) pgm_read_dword(addr)
40-
#define pgm_read_float_far(addr) pgm_read_float(addr)
53+
#define pgm_read_byte_far(addr) pgm_read_byte(addr)
54+
#define pgm_read_word_far(addr) pgm_read_word(addr)
55+
#define pgm_read_dword_far(addr) pgm_read_dword(addr)
56+
#define pgm_read_float_far(addr) pgm_read_float(addr)
57+
58+
#define memcmp_P memcmp
59+
#define memccpy_P memccpy
60+
#define memmem_P memmem
61+
#define memcpy_P memcpy
62+
#define strncpy_P strncpy
63+
#define strncat_P strncat
64+
#define strncmp_P strncmp
65+
#define strncasecmp_P strncasecmp
66+
#define strnlen_P strnlen
67+
#define strstr_P strstr
68+
#define printf_P printf
69+
#define sprintf_P sprintf
70+
#define snprintf_P snprintf
71+
#define vsnprintf_P vsnprintf
72+
73+
#define strlen_P(strP) strnlen_P((strP), SIZE_IRRELEVANT)
74+
#define strcasecmp_P(str1, str2P) strncasecmp_P((str1), (str2P), SIZE_IRRELEVANT)
75+
#define strcmp_P(str1, str2P) strncmp_P((str1), (str2P), SIZE_IRRELEVANT)
76+
#define strcat_P(dest, src) strncat_P((dest), (src), SIZE_IRRELEVANT)
77+
#define strcpy_P(dest, src) strncpy_P((dest), (src), SIZE_IRRELEVANT)
4178

42-
#define memcpy_P(to,from,len) memcpy(to,from,len)
4379
#endif

0 commit comments

Comments
 (0)