X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/ab43251bf926a3ce2ff42cac433dad723452bcb4..a147cee95f5373902242e7b34b92f7103fc05ae4:/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h?ds=sidebyside diff --git a/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h b/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h index 906ee82fb..d8ace7a7d 100644 --- a/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h +++ b/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h @@ -104,10 +104,17 @@ */ static inline uint8_t ISPTarget_ReceiveByte(void) { + #if !defined(INVERTED_ISP_MISO) if (HardwareSPIMode) return SPI_ReceiveByte(); else return ISPTarget_TransferSoftSPIByte(0x00); + #else + if (HardwareSPIMode) + return ~SPI_ReceiveByte(); + else + return ~ISPTarget_TransferSoftSPIByte(0x00); + #endif } /** Sends and receives a byte of ISP data to and from the attached target, using the @@ -119,10 +126,17 @@ */ static inline uint8_t ISPTarget_TransferByte(const uint8_t Byte) { + #if !defined(INVERTED_ISP_MISO) if (HardwareSPIMode) return SPI_TransferByte(Byte); else return ISPTarget_TransferSoftSPIByte(Byte); + #else + if (HardwareSPIMode) + return ~SPI_TransferByte(Byte); + else + return ~ISPTarget_TransferSoftSPIByte(Byte); + #endif } #endif