X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/bbcdaaa6dc6024911a280e5fda6b4a43f71fb98e..05fcf7e2a79bebb978d4aeaef26b12f70c6826f8:/Projects/AVRISP/Lib/V2Protocol.h diff --git a/Projects/AVRISP/Lib/V2Protocol.h b/Projects/AVRISP/Lib/V2Protocol.h index c9d39cb71..8cc4c3c68 100644 --- a/Projects/AVRISP/Lib/V2Protocol.h +++ b/Projects/AVRISP/Lib/V2Protocol.h @@ -37,31 +37,43 @@ #define _V2_PROTOCOL_ /* Includes: */ - #include - #include - - #include "V2ProtocolConstants.h" - - /* Macros: */ - #define PROGRAMMER_ID "AVRISP_MK2" - #define PROGRAMMER_ID_LEN (sizeof(PROGRAMMER_ID) - 1) + #include + #include - /* Type Defines: */ - typedef struct - { - uint8_t ParameterID; - uint8_t ParameterValue; - } ParameterItem_t; + #include "../Descriptors.h" + #include "V2ProtocolConstants.h" + #include "V2ProtocolParams.h" + #include "ISP/ISPProtocol.h" + #include "XPROG/XPROGProtocol.h" + + /* Preprocessor Checks: */ + #if ((BOARD == BOARD_XPLAIN) || (BOARD == BOARD_XPLAIN_REV1)) + #undef ENABLE_ISP_PROTOCOL + #undef ENABLE_TPI_PROTOCOL + + #if !defined(ENABLE_PDI_PROTOCOL) + #define ENABLE_PDI_PROTOCOL + #endif + #endif - /* Function Prototypes: */ + /* Macros: */ + /** Programmer ID string, returned to the host during the CMD_SIGN_ON command processing */ + #define PROGRAMMER_ID "AVRISP_MK2" + + /* External Variables: */ + extern uint32_t CurrentAddress; + extern bool MustSetAddress; + + /* Function Prototypes: */ void V2Protocol_ProcessCommand(void); #if defined(INCLUDE_FROM_V2PROTOCOL_C) - static ParameterItem_t* V2Protocol_GetParameterItem(uint8_t ParamID); - static void V2Protocol_ProcessCmdSignOn(void); - static void V2Protocol_ProcessCmdSetParam(void); - static void V2Protocol_ProcessCmdGetParam(void); + static void V2Protocol_UnknownCommand(uint8_t V2Command); + static void V2Protocol_SignOn(void); + static void V2Protocol_GetSetParam(uint8_t V2Command); + static void V2Protocol_ResetProtection(void); + static void V2Protocol_LoadAddress(void); #endif #endif