demo
[mTask.git] / int / interface.h
index 1547501..f3920eb 100644 (file)
@@ -3,13 +3,16 @@
 
 #include <stdbool.h>
 #include <stdint.h>
+#include <stdarg.h>
 
 #ifndef STM
 extern int gargc;
 extern char **gargv;
 #endif
 
-#define read16() 256*read_byte() + read_byte()
+#define read16() 256*(uint8_t)read_byte() + (uint8_t)read_byte()
+#define from16(a, b) 256*a+b
+#define write16(i) { write_byte((uint8_t)i/256); write_byte((uint8_t)i%256); }
 uint8_t read_byte(void);
 void write_byte(uint8_t b);
 
@@ -19,21 +22,16 @@ bool read_dpin(uint8_t i);
 void write_apin(uint8_t i, uint8_t a);
 uint8_t read_apin(uint8_t i);
 
+void led_on(uint8_t i);
+void led_off(uint8_t i);
+
 long millis(void);
 bool input_available(void);
 void delay(long ms);
 
 void setup(void);
-void test(void);
-
-#ifdef STM
-#define debug(s, ...) {};
-#define pdie(s) {};
-#define die(s, ...) {};
-#else
-#define debug(s, ...) printf(s "\n", ##__VA_ARGS__);
-#define pdie(s) {perror(s); exit(1);}
-#define die(s, ...) {fprintf(stderr, s "\n", ##__VA_ARGS__); exit(1);}
-#endif
+void debug(char *fmt, ...);
+void pdie(char *s);
+void die(char *fmt, ...);
 
 #endif