--- /dev/null
+#include <Arduino.h>
+#include <stdbool.h>
+#include <stdint.h>
+
+extern "C" unsigned long getmillis(void);
+extern "C" void pdie(char *, ...);
+extern "C" void die(char *, ...);
+extern "C" void debug(char *, ...);
+extern "C" void real_setup(void);
+extern "C" void write_byte(uint8_t);
+extern "C" uint8_t read_byte(void);
+extern "C" bool input_available(void);
+extern "C" void msdelay(unsigned long);
+
+unsigned long getmillis(void)
+{
+ return millis();
+}
+
+void msdelay(unsigned long ms)
+{
+ delay(ms);
+}
+
+bool input_available(void)
+{
+ return Serial.available();
+}
+
+uint8_t read_byte(void)
+{
+ return Serial.read();
+}
+
+void write_byte(uint8_t b)
+{
+ Serial.write(b);
+}
+
+void real_setup(void)
+{
+ Serial.begin(9600);
+}
+
+void debug(char *fmt, ...)
+{
+ Serial.println(fmt);
+}
+
+void die(char *fmt, ...)
+{
+ Serial.println(fmt);
+ while(1){
+ msdelay(1000);
+ Serial.print("die");
+ }
+}
+
+void pdie(char *s)
+{
+ die(s);
+}