X-Git-Url: http://git.rot13.org/?p=goodfet;a=blobdiff_plain;f=firmware%2Finclude%2Fcommand.h;h=7e2d83a08c444edcc08d34b5e96a4be775049cbb;hp=2a751a83e2fb34b484492f81ccc223dc3aab9d13;hb=f10e55ab25dfe0b4114a1700920a1433708e8fcd;hpb=eddb0eb08f187dc156a6cb51878104df67d97436 diff --git a/firmware/include/command.h b/firmware/include/command.h index 2a751a8..7e2d83a 100644 --- a/firmware/include/command.h +++ b/firmware/include/command.h @@ -41,6 +41,8 @@ extern unsigned char silent; #define SETUP 0x10 #define START 0x20 #define STOP 0x21 +#define CALL 0x30 +#define EXEC 0x31 #define NOK 0x7E #define OK 0x7F @@ -72,7 +74,12 @@ extern unsigned char silent; #define OCT_CMP 0x90 #define OCT_RES 0x91 +#ifdef GCC #define WEAKDEF __attribute__ ((weak)) +#else +//Compiler doesn't support weak linking. :( +#define WEAKDEF +#endif //! Handle a plugin, weak-linked to error. extern int pluginhandle(unsigned char app, @@ -110,6 +117,8 @@ void txword(unsigned int l); //! Transmit a debug string. void debugstr(const char *str); +//! brief Debug a hex word string. +void debughex(u16 v); //! Delay for a count. void delay(unsigned int count); @@ -123,8 +132,14 @@ void i2chandle(unsigned char, unsigned char, unsigned long) WEAKDEF; void cchandle(unsigned char, unsigned char, unsigned long) WEAKDEF; void jtaghandle(unsigned char, unsigned char, unsigned long); void jtag430handle(unsigned char, unsigned char, unsigned long); +void ejtaghandle(unsigned char, unsigned char, unsigned long); + void jtag430x2handle(unsigned char app, unsigned char verb, unsigned long len); + void avrhandle(unsigned char app, unsigned char verb, unsigned long len); +int smartcardhandle(unsigned char app, + unsigned char verb, + unsigned int len);