// All return value that TRUE for Function successful , FALSE for Function fail

#define DEVICE_HAS_BEEN_IN_ISP           0xE0000100L
#define ANOTHER_DOWNLOAD_IS_RUNNING      0xE0000101L

BOOL __cdecl DFU_Reset_To_ISP(                   // Reset device to DFU mode
							   DWORD VID,        // Vender ID
                               DWORD PID         // Product ID
                             );
                            
BOOL __cdecl DFU_Reset_To_AP( void );            // Reset device to AP mode

BOOL __cdecl DFU_Download(                       // Download firmware to target
						   BYTE *FW,             // FW binary file 
                           DWORD Addr,           // Download start address
                           DWORD Size,           // FW file size
                           DWORD CheckSum        // FW checksum
                         );

int __cdecl DFU_Get_ProcessCount();              // Return percentage of upgrage process
