- #include <LUFA/Drivers/USB/USB.h>
- #include <LUFA/Drivers/Peripheral/SPI.h>\r
- \r
- #include "../Descriptors.h"
- #include "V2ProtocolConstants.h"\r
- #include "V2ProtocolParams.h"
- #include "ISP/ISPProtocol.h"\r
- #include "XPROG/XPROGProtocol.h"\r
-\r
- /* Preprocessor Checks: */\r
- #if ((BOARD == BOARD_XPLAIN) || (BOARD == BOARD_XPLAIN_REV1))\r
- #undef ENABLE_ISP_PROTOCOL\r
- \r
- #if !defined(ENABLE_XPROG_PROTOCOL)\r
- #define ENABLE_XPROG_PROTOCOL\r
- #endif\r
- #endif\r
+ #if !defined(__ASSEMBLER__)
+ #include <LUFA/Drivers/USB/USB.h>
+ #include <LUFA/Drivers/Peripheral/SPI.h>
+
+ #include "../Descriptors.h"
+ #include "V2ProtocolConstants.h"
+ #include "V2ProtocolParams.h"
+ #include "ISP/ISPProtocol.h"
+ #include "XPROG/XPROGProtocol.h"
+ #endif
+
+ /* Preprocessor Checks: */
+ #if ((BOARD == BOARD_XPLAIN) || (BOARD == BOARD_XPLAIN_REV1))
+ #undef ENABLE_ISP_PROTOCOL
+
+ #if !defined(ENABLE_XPROG_PROTOCOL)
+ #define ENABLE_XPROG_PROTOCOL
+ #endif
+ #endif
+
+ /* Macros: */
+ #if !defined(__DOXYGEN__)
+ #define _GETADCMUXMASK2(x, y) x ## y
+ #define _GETADCMUXMASK(x, y) _GETADCMUXMASK2(x, y)
+ #endif
+
+ /** Programmer ID string, returned to the host during the CMD_SIGN_ON command processing. */
+ #define PROGRAMMER_ID "AVRISP_MK2"
+
+ /** Timeout period for each issued command from the host before it is aborted. */
+ #define COMMAND_TIMEOUT_MS 200
+
+ /** Command timeout counter register, GPIOR for speed. */
+ #define TimeoutMSRemaining GPIOR0
+
+ /** MUX mask for the VTARGET ADC channel number. */
+ #define VTARGET_ADC_CHANNEL_MASK _GETADCMUXMASK(ADC_CHANNEL, VTARGET_ADC_CHANNEL)
+
+ #if !defined(WIN_AVRDUDE_COMPAT)
+ #define SELECT_DATA_OUT_ENDPOINT() Endpoint_SetEndpointDirection(ENDPOINT_DIR_OUT);
+ #else
+ #define SELECT_DATA_OUT_ENDPOINT() Endpoint_SelectEndpoint();
+ #endif
+
+ /* External Variables: */
+ #if !defined(__ASSEMBLER__)
+ extern uint32_t CurrentAddress;
+ extern bool MustLoadExtendedAddress;
+ #endif