Message Integrity Checking
[uccvend-snackrom.git] / ROM2 / vend.h
index 17ba674..5d4f5ac 100644 (file)
@@ -26,12 +26,31 @@ extern volatile u8 _misc_input;
 extern volatile u8 _home_sensors;
 #define home_sensors _home_sensors
 
+#define is_standalone() (misc_input & 0x01) /* DIP sw 1 */
+#define must_verify()   !(misc_input & 0x02) /* DIP sw 2 */
+
 extern u16 _stack;
+extern char _nvram[]; /* 2048 bytes of nvram! */
+// uncomment for testing. char _nvram[20]; /* 2048 bytes of nvram! */
+/* NVRAM map:
+ *
+ * START LEN
+ * 0x800 0x02  mic.h - current challenge
+ * 0x802 0x10  mic.h - current secret password
+ * 0x812
+ *
+ */
 
 /******* from helpers.c *******/
 void delay(u16 ms);
 void my_strncpy(char* dst, char* src, u8 max_size); /* for null-term strings */
+bool my_strncmp(char* a, char* b, u8 len);
 void my_memcpy(char* dst, char* src, u8 size);
+void my_memset(char* dst, u8 val, u16 count);
+char* u82hex(u8 a);
+u8 hex2u8(char msb, char lsb);
+char nibble2hexchar(u8 b);
+u8 hexchar2u8(char b);
 
 /******** Some meaningful bits ******/
 #define PORTA_CHIME         0x10 /* chime is on when set */

UCC git Repository :: git.ucc.asn.au