]> git.zerfleddert.de Git - proxmark3-svn/blobdiff - include/common.h
CHG: finalized the merge between peter filmoores 14atagfuzz branch (emv). I seriou...
[proxmark3-svn] / include / common.h
index fd1a6a56cb115ac4bfff730d5067e28d1cdf7f3b..434f050e895082c99482d835899f6f1c7528ac43 100644 (file)
 #ifndef __COMMON_H
 #define __COMMON_H
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <stddef.h>
 #include <stdint.h>
+#include <stdbool.h>
+#include <at91sam7s512.h>
+typedef unsigned char byte_t;
 
-//-----------------------------------------------------------------------------
-// ISO 14443A
-//-----------------------------------------------------------------------------
-typedef struct {
-       uint8_t atqa[2];
-       uint8_t  sak;
-       uint8_t  ats_len;
-       uint8_t  ats[20]; //FIXME: size?
-} __attribute__((__packed__)) iso14a_card_select_t;
-
-typedef enum ISO14A_COMMAND {
-       ISO14A_CONNECT = 1,
-       ISO14A_NO_DISCONNECT = 2,
-       ISO14A_APDU = 4,
-       ISO14A_RAW = 8,
-       ISO14A_REQUEST_TRIGGER = 0x10,
-       ISO14A_APPEND_CRC = 0x20,
-       ISO14A_SET_TIMEOUT = 0x40
-} iso14a_command_t;
+// debug
+// 0 - no debug messages 1 - error messages 2 - all messages 4 - extended debug mode
+#define MF_DBG_NONE          0         
+#define MF_DBG_ERROR         1
+#define MF_DBG_ALL           2
+#define MF_DBG_EXTENDED      4
+extern int MF_DBGLEVEL;
+
+// reader voltage field detector
+#define MF_MINFIELDV      4000
+
+#ifndef MIN
+# define MIN(a, b) (((a) < (b)) ? (a) : (b))
+#endif
+
+#ifndef MAX
+# define MAX(a, b) (((a) > (b)) ? (a) : (b))
+#endif
 
+#ifndef ABS
+# define ABS(a) ( ((a)<0) ? -(a) : (a) )
 #endif
+#define RAMFUNC __attribute((long_call, section(".ramfunc")))
+
+
+#ifdef __cplusplus
+}
+#endif                         
+
+#endif
\ No newline at end of file
Impressum, Datenschutz