/*
- isp.h - part of USBasp
-
- Autor..........: Thomas Fischl <tfischl@gmx.de>
- Description....: Provides functions for communication/programming
- over ISP interface
- Licence........: Free under certain conditions. See Documentation.
- Creation Date..: 2005-02-23
- Last change....: 2005-04-20
-*/
+ * isp.h - part of USBasp
+ *
+ * Autor..........: Thomas Fischl <tfischl@gmx.de>
+ * Description....: Provides functions for communication/programming
+ * over ISP interface
+ * Licence........: GNU GPL v2 (see Readme.txt)
+ * Creation Date..: 2005-02-23
+ * Last change....: 2009-02-28
+ */
#ifndef __isp_h_included__
#define __isp_h_included__
#define ISP_MISO PB4
#define ISP_SCK PB5
-#define ISP_DELAY 1
-#define ISP_SCK_SLOW 0
-#define ISP_SCK_FAST 1
-
/* Prepare connection to target device */
void ispConnect();
uchar ispReadEEPROM(unsigned int address);
/* write byte to flash at given address */
-uchar ispWriteFlash(unsigned int address, uchar data, uchar pollmode);
+uchar ispWriteFlash(unsigned long address, uchar data, uchar pollmode);
-uchar ispFlushPage(unsigned int address, uchar pollvalue);
+uchar ispFlushPage(unsigned long address, uchar pollvalue);
/* read byte from flash at given address */
-uchar ispReadFlash(unsigned int address);
+uchar ispReadFlash(unsigned long address);
/* write byte to eeprom at given address */
uchar ispWriteEEPROM(unsigned int address, uchar data);
/* set SCK speed. call before ispConnect! */
void ispSetSCKOption(uchar sckoption);
+/* load extended address byte */
+void ispLoadExtendedAddressByte(unsigned long address);
+
#endif /* __isp_h_included__ */