Skip to content

Commit

Permalink
Hack around F() macro and PSTR for running on Due
Browse files Browse the repository at this point in the history
  • Loading branch information
don committed Mar 16, 2013
1 parent e9ea1ee commit d97c3f1
Showing 1 changed file with 25 additions and 0 deletions.
25 changes: 25 additions & 0 deletions Due.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
// redefine some stuff so code works on Due
// http://arduino.cc/forum/index.php?&topic=153761.0

#ifndef Due_h
#define Due_h

#if defined(__SAM3X8E__)
#define PROGMEM
#define pgm_read_byte(x) (*((char *)x))
// #define pgm_read_word(x) (*((short *)(x & 0xfffffffe)))
#define pgm_read_word(x) ( ((*((unsigned char *)x + 1)) << 8) + (*((unsigned char *)x)))
#define pgm_read_byte_near(x) (*((char *)x))
#define pgm_read_byte_far(x) (*((char *)x))
// #define pgm_read_word_near(x) (*((short *)(x & 0xfffffffe))
// #define pgm_read_word_far(x) (*((short *)(x & 0xfffffffe)))
#define pgm_read_word_near(x) ( ((*((unsigned char *)x + 1)) << 8) + (*((unsigned char *)x)))
#define pgm_read_word_far(x) ( ((*((unsigned char *)x + 1)) << 8) + (*((unsigned char *)x))))
#define PSTR(x) x
#if defined F
#undef F
#endif
#define F(X) (X)
#endif

#endif

0 comments on commit d97c3f1

Please sign in to comment.