#include <stdio.h>
#include <stdint.h>
+#include <stdbool.h>
+#include <string.h>
+#include <stdlib.h>
+#include "errnum.h"
#define GCC_VERSION (__GNUC__*10000 + __GNUC_MINOR__*100 + __GNUC_PATCHLEVEL__)
+#define USED __attribute__((used))
+#define UNUSED __attribute__((unused))
+
#ifdef __AVR__
#include <avr/io.h>
#include <avr/pgmspace.h>
#define GCC_BUG_61443 1
#endif /* PR61443 */
+#define DEVICE_NAME __AVR_DEVICE_NAME__
+
#else
// TODO: stm32
#endif /* __AVR__ */
extern volatile uint_least8_t Stat;
#endif /* __AVR__ */
-#define S_10MS_TO (1<<0)
-#define S_MSG_PENDING (1<<1)
-#define S_CON_PENDING (1<<2)
+#define S_10MS_TO (1<<0)
+#define S_MSG_PENDING (1<<1)
+#define S_CON_PENDING (1<<3)
+#define S_RESET_POLARITY (1<<4)
static inline
-void my_puts(const char *s)
+int my_puts(const char *s)
{
- fputs(s, stdout);
+ return fputs(s, stdout);
}
static inline
-void my_puts_P(const char *s)
+int my_puts_P(const char *s)
{
#ifdef __AVR__
- fputs_P(s, stdout);
+ return fputs_P(s, stdout);
#else
- fputs(s, stdout);
+ return fputs(s, stdout);
#endif /* __AVR__ */
}