X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=mware%2Fxmodem.h;h=564a6ff71fa7b351147fa3f97b2c9ad5811489fd;hb=35ae4275d8730a376ca61a92f08fb447eb2935b3;hp=8e66a5b7e71f86e53b5391b49443eeaff8a96691;hpb=277b540c0764dd376dcf583acdc97a2b2fd3d8e6;p=bertos.git diff --git a/mware/xmodem.h b/mware/xmodem.h old mode 100755 new mode 100644 index 8e66a5b7..564a6ff7 --- a/mware/xmodem.h +++ b/mware/xmodem.h @@ -1,40 +1,73 @@ -/*! +/** * \file * * \brief X-Modem serial transmission protocol (interface) * * \version $Id$ * \author Bernardo Innocenti + * \author Francesco Sacchi */ -/*#* - *#* $Log$ - *#* Revision 1.3 2004/08/25 14:12:09 rasky - *#* Aggiornato il comment block dei log RCS - *#* - *#* Revision 1.2 2004/08/15 05:31:46 bernie - *#* Add an #error to spread some FUD about the quality of this module; - *#* Add a few TODOs from Rasky's review; - *#* Update to the new drv/ser.c API; - *#* Move FlushSerial() to drv/ser.c and generalize. - *#* - *#* Revision 1.1 2004/08/11 19:54:22 bernie - *#* Import XModem protocol into DevLib. - *#* - *#*/ + #ifndef MWARE_XMODEM_H #define MWARE_XMODEM_H +#include +#include + +/** + * Called to know if we want to abort data tranfer. + * Redefine to whatever you need. + * \{ + */ +#ifndef XMODEM_CHECK_ABORT +#define XMODEM_CHECK_ABORT (false) +#endif +/*\}*/ + + +/** + * Called to printf progress messages. + * Default to kprintf debug, redefine to whatever you need. + * \{ + */ +#ifndef XMODEM_PROGRESS +#define XMODEM_PROGRESS(msg, ...) kprintf(msg, ## __VA_ARGS__) +#endif + /* fwd decl */ -struct _KFile; struct Serial; -bool xmodem_recv(struct Serial *port, struct _KFile *fd); -bool xmodem_send(struct Serial *port, struct _KFile *fd); +bool xmodem_recv(struct Serial *port, KFile *fd); +bool xmodem_send(struct Serial *port, KFile *fd); #endif /* MWARE_XMODEM_H */ -