VOC Optimation
[owSlave2.git] / tools_cmd / rwOW / ibtmexcw.h
index 6c1bfbe..8729c7c 100644 (file)
-/*---------------------------------------------------------------------------
-* Copyright © 1992-2008 Maxim Integrated Products, All Rights Reserved.
-*
-* Permission is hereby granted, free of charge, to any person obtaining a
-* copy of this software and associated documentation files (the "Software"),
-* to deal in the Software without restriction, including without limitation
-* the rights to use, copy, modify, merge, publish, distribute, sublicense,
-* and/or sell copies of the Software, and to permit persons to whom the
-* Software is furnished to do so, subject to the following conditions:
-*
-* The above copyright notice and this permission notice shall be included
-* in all copies or substantial portions of the Software.
-*
-* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-* IN NO EVENT SHALL MAXIM INTEGRATED PRODUCTS BE LIABLE FOR ANY CLAIM, DAMAGES
-* OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
-* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-* OTHER DEALINGS IN THE SOFTWARE.
-*
-* Except as contained in this notice, the name of Maxim Integrated Products
-* shall not be used except as stated in the Maxim Integrated Products
-* Branding Policy.
-*---------------------------------------------------------------------------
-* Version 4.01
-*/
-
-/* includes */
-#include <stdlib.h>
-#include <string.h>
-#include <ctype.h>
-#include <windows.h>
-#ifndef _WIN32_WCE
-#include <stdio.h>
-#include <conio.h>
-#include <dos.h>
-#include <fcntl.h>
-#include <io.h>
-#include <time.h>
-#endif
-
-/* type defs */
-typedef unsigned char uchar;
-typedef unsigned short ushort;
-typedef unsigned long ulong;
-
-/* typedef structure sent back by TMEX routines */
-typedef struct 
-{
-uchar name[4];
-uchar extension;
-uchar startpage;
-uchar numpages;
-uchar attrib;
-uchar bitmap[32];
-} FileEntry;
-
-/* structure to hold directory path */
-typedef struct
-{
-uchar NumEntries; /* number of entries in path 0-10 */
-char Ref; /* reference character '\' or '.' */
-char Entries[10][4]; /* sub-directory entry names */ 
-} DirectoryPath;
-
-/* Holds info of each object in the Directory list */
-struct DirNumInfo 
-{ 
-unsigned char Name[4];
-unsigned char Extension;
-char Attrib;
-};
-
-/* structure to hold exportable device parameters by family code (3.11) */
-typedef struct
-{
-short features[32];
-char dscrptn[255];
-} Specification;
-
-
-/* Error codes from TMEX functions */
-#define NO_DEVICE -1 
-#define WRONG_TYPE -2 
-#define FILE_READ_ERR -3 
-#define BUFFER_TOO_SMALL -4 
-#define HANDLE_NOT_AVAIL -5 
-#define FILE_NOT_FOUND -6 
-#define REPEAT_FILE -7 
-#define HANDLE_NOT_USED -8 
-#define FILE_WRITE_ONLY -9 
-#define OUT_OF_SPACE -10 
-#define FILE_WRITE_ERR -11 
-#define TMFILE_READ_ONLY -12 
-#define FUNC_NOT_SUP -13 
-#define BAD_FILENAME -14 
-#define CANT_DEL_READ_ONLY -15 
-#define HANDLE_NOT_EXIST -16 
-#define ONE_WIRE_PORT_ERROR -17 
-#define INVALID_DIRECTORY -18 
-#define DIRECTORY_NOT_EMPTY -19 
-#define UNABLE_TO_CREATE_DIR -20 
-#define NO_PROGRAM_JOB -21 
-#define PROGRAM_WRITE_PROTECT -22
-#define NON_PROGRAM_PARTS -23 
-#define ADDFILE_TERMINATED -24 
-#define TIMEOUT -25 
-#define INVALID_ARGUMENT -26 
-#define BAD_ACK -27 
-#define INVALID_SESSION -200
-#define NO_BASDRV_FOUND -201
-
-/* Basic physical level error codes */
-#define BPORT_NOT_INITIALIZED -1 
-#define BPORT_NOT_EXIST -2 
-#define BNO_SUCH_FUNCTION -3 
-
-/* Transport level error codes */
-#define TERROR_READ_WRITE -4 
-#define TBUFFER_TOO_SMALL -5 
-#define TDEVICE_TOO_SMALL -6 
-#define TNO_DEVICE -7 
-#define TBLOCK_TOO_BIG -8 
-#define TWRONG_TYPE -9 
-#define TPAGE_REDIRECTED -10
-#define TPROGRAM_NOT_POSSIBLE -11
-#define BCOM_FAILURE -12
-#define BCOM_EVENT -13
-
-/* for TMOneWireLevel */
-#define LEVEL_NORMAL 0
-#define LEVEL_STRONG_PULLUP 1
-#define LEVEL_BREAK 2
-#define LEVEL_PROGRAM 3 
-#define PRIMED_NONE 0
-#define PRIMED_BIT 1
-#define PRIMED_BYTE 2 
-#define LEVEL_READ 1
-#define LEVEL_SET 0
-
-/* misc */
-#define GENERAL_FAIL -2 
-#define BAD_ARGUMENT 50
-#define NO_DRIVERS 51
-#define KEY_ABORT 52
-#define OUT_MEMORY 53
-#define NORMAL_EXIT 0
-
-#define TRUE 1
-#define FALSE 0
-#define DIR_READ 1
-#define DIR_SET 0
-#define DIR_REMOVE 1
-#define DIR_MAKE 0
-
-/* for specification */
-#define NOMEM 0
-#define NVRAM 1
-#define EPROM1 2
-#define EPROM2 3
-#define EPROM3 4
-#define EEPROM1 5
-#define MNVRAM 6
-#define EEPROM2 7
-#define NVRAM2 8
-#define NVRAM3 9 
-#define FTR_REG_PAGES 0
-#define FTR_REG_LEN 1
-#define FTR_STAT_PAGES 2
-#define FTR_STAT_LEN 3
-#define FTR_MAX_COM 4 
-#define FTR_MEM_TYPE 5
-
-// session
-extern long __fastcall TMExtendedStartSession(short, short, void far *);
-extern short __fastcall TMValidSession(long); 
-extern short __fastcall TMEndSession(long); 
-extern short __fastcall Get_Version(char far *); 
-// file_operations
-extern short __fastcall TMFirstFile(long, void far *, FileEntry far *); 
-extern short __fastcall TMNextFile(long, void far *, FileEntry far *);
-extern short __fastcall TMOpenFile(long, void far *, FileEntry far *);
-extern short __fastcall TMCreateFile(long, void far *, short far *, FileEntry far *);
-extern short __fastcall TMCloseFile(long, void far *, short);
-extern short __fastcall TMReadFile(long, void far *, short, uchar far *, short);
-extern short __fastcall TMWriteFile(long, void far *, short, uchar far *, short);
-extern short __fastcall TMDeleteFile(long, void far *, FileEntry far *);
-extern short __fastcall TMFormat(long, void far *);
-extern short __fastcall TMAttribute(long, void far *, short, FileEntry far *);
-extern short __fastcall TMReNameFile(long, void far *, short, FileEntry far *); 
-extern short __fastcall TMChangeDirectory(long, void far *, short, DirectoryPath far *); 
-extern short __fastcall TMDirectoryMR(long, void far *, short, FileEntry far *);
-extern short __fastcall TMCreateProgramJob(long, void far *);
-extern short __fastcall TMDoProgramJob(long, void far *);
-extern short __fastcall TMWriteAddFile(long, void far *, short, short, short, uchar far *, short);
-extern short __fastcall TMTerminateAddFile(long, void far *, FileEntry far *);
-extern short __fastcall TMGetFamilySpec(long, void far *, Specification *); 
-// transport
-extern short __fastcall TMReadPacket(long, void far *, short, uchar far *, short);
-extern short __fastcall TMWritePacket(long, void far *, short, uchar far *, short);
-extern short __fastcall TMBlockIO(long, uchar far *, short);
-extern short __fastcall TMExtendedReadPage(long, void far *, short, uchar far *, short);
-extern short __fastcall TMProgramByte(long, void far *, short, short, short, short far *, short);
-extern short __fastcall TMProgramBlock(long, void far *, uchar far *, short, short, short far *); /* (3.11) */
-extern long __fastcall TMCRC(short, uchar far *, ushort, short); 
-// network
-extern short __fastcall TMSkipFamily(long, void far *); 
-extern short __fastcall TMFamilySearchSetup(long, void far *, short); 
-extern short __fastcall TMFirst(long, void far *);
-extern short __fastcall TMNext(long, void far *);
-extern short __fastcall TMAccess(long, void far *);
-extern short __fastcall TMOverAccess(long, void far *);
-extern short __fastcall TMStrongAccess(long, void far *);
-extern short __fastcall TMStrongAlarmAccess(long, void far *);
-extern short __fastcall TMRom(long, void far *, short far *);
-extern short __fastcall TMFirstAlarm(long, void far *);
-extern short __fastcall TMNextAlarm(long, void far *); 
-extern short __fastcall TMAutoOverDrive(long, void far *, short); 
-extern short __fastcall TMSearch(short, short, short, short); 
-// hardware_specific
-extern short __fastcall TMSetup(long);
-extern short __fastcall TMTouchByte(long, short);
-extern short __fastcall TMTouchReset(long);
-extern short __fastcall TMTouchBit(long, short);
-extern short __fastcall TMClose(long);
-extern short __fastcall TMProgramPulse(long); 
-extern short __fastcall TMOneWireCom(long, short, short); 
-extern short __fastcall TMOneWireLevel(long, short, short, short); 
-extern short __fastcall TMGetTypeVersion(short,char far *); 
-extern short __fastcall TMBlockStream(long, uchar far *, short);
-extern short __fastcall TMGetAdapterSpec(long, Specification far *); 
-extern short __fastcall TMReadDefaultPort(short far *, short far *); 
-
+/*---------------------------------------------------------------------------\r
+* Copyright © 1992-2008 Maxim Integrated Products, All Rights Reserved.\r
+*\r
+* Permission is hereby granted, free of charge, to any person obtaining a\r
+* copy of this software and associated documentation files (the "Software"),\r
+* to deal in the Software without restriction, including without limitation\r
+* the rights to use, copy, modify, merge, publish, distribute, sublicense,\r
+* and/or sell copies of the Software, and to permit persons to whom the\r
+* Software is furnished to do so, subject to the following conditions:\r
+*\r
+* The above copyright notice and this permission notice shall be included\r
+* in all copies or substantial portions of the Software.\r
+*\r
+* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS\r
+* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
+* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\r
+* IN NO EVENT SHALL MAXIM INTEGRATED PRODUCTS BE LIABLE FOR ANY CLAIM, DAMAGES\r
+* OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,\r
+* ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\r
+* OTHER DEALINGS IN THE SOFTWARE.\r
+*\r
+* Except as contained in this notice, the name of Maxim Integrated Products\r
+* shall not be used except as stated in the Maxim Integrated Products\r
+* Branding Policy.\r
+*---------------------------------------------------------------------------\r
+* Version 4.01\r
+*/\r
+\r
+/* includes */\r
+#include <stdlib.h>\r
+#include <string.h>\r
+#include <ctype.h>\r
+#include <windows.h>\r
+#ifndef _WIN32_WCE\r
+#include <stdio.h>\r
+#include <conio.h>\r
+#include <dos.h>\r
+#include <fcntl.h>\r
+#include <io.h>\r
+#include <time.h>\r
+#endif\r
+\r
+/* type defs */\r
+typedef unsigned char uchar;\r
+typedef unsigned short ushort;\r
+typedef unsigned long ulong;\r
+\r
+/* typedef structure sent back by TMEX routines */\r
+typedef struct \r
+{\r
+uchar name[4];\r
+uchar extension;\r
+uchar startpage;\r
+uchar numpages;\r
+uchar attrib;\r
+uchar bitmap[32];\r
+} FileEntry;\r
+\r
+/* structure to hold directory path */\r
+typedef struct\r
+{\r
+uchar NumEntries; /* number of entries in path 0-10 */\r
+char Ref; /* reference character '\' or '.' */\r
+char Entries[10][4]; /* sub-directory entry names */ \r
+} DirectoryPath;\r
+\r
+/* Holds info of each object in the Directory list */\r
+struct DirNumInfo \r
+{ \r
+unsigned char Name[4];\r
+unsigned char Extension;\r
+char Attrib;\r
+};\r
+\r
+/* structure to hold exportable device parameters by family code (3.11) */\r
+typedef struct\r
+{\r
+short features[32];\r
+char dscrptn[255];\r
+} Specification;\r
+\r
+\r
+/* Error codes from TMEX functions */\r
+#define NO_DEVICE -1 \r
+#define WRONG_TYPE -2 \r
+#define FILE_READ_ERR -3 \r
+#define BUFFER_TOO_SMALL -4 \r
+#define HANDLE_NOT_AVAIL -5 \r
+#define FILE_NOT_FOUND -6 \r
+#define REPEAT_FILE -7 \r
+#define HANDLE_NOT_USED -8 \r
+#define FILE_WRITE_ONLY -9 \r
+#define OUT_OF_SPACE -10 \r
+#define FILE_WRITE_ERR -11 \r
+#define TMFILE_READ_ONLY -12 \r
+#define FUNC_NOT_SUP -13 \r
+#define BAD_FILENAME -14 \r
+#define CANT_DEL_READ_ONLY -15 \r
+#define HANDLE_NOT_EXIST -16 \r
+#define ONE_WIRE_PORT_ERROR -17 \r
+#define INVALID_DIRECTORY -18 \r
+#define DIRECTORY_NOT_EMPTY -19 \r
+#define UNABLE_TO_CREATE_DIR -20 \r
+#define NO_PROGRAM_JOB -21 \r
+#define PROGRAM_WRITE_PROTECT -22\r
+#define NON_PROGRAM_PARTS -23 \r
+#define ADDFILE_TERMINATED -24 \r
+#define TIMEOUT -25 \r
+#define INVALID_ARGUMENT -26 \r
+#define BAD_ACK -27 \r
+#define INVALID_SESSION -200\r
+#define NO_BASDRV_FOUND -201\r
+\r
+/* Basic physical level error codes */\r
+#define BPORT_NOT_INITIALIZED -1 \r
+#define BPORT_NOT_EXIST -2 \r
+#define BNO_SUCH_FUNCTION -3 \r
+\r
+/* Transport level error codes */\r
+#define TERROR_READ_WRITE -4 \r
+#define TBUFFER_TOO_SMALL -5 \r
+#define TDEVICE_TOO_SMALL -6 \r
+#define TNO_DEVICE -7 \r
+#define TBLOCK_TOO_BIG -8 \r
+#define TWRONG_TYPE -9 \r
+#define TPAGE_REDIRECTED -10\r
+#define TPROGRAM_NOT_POSSIBLE -11\r
+#define BCOM_FAILURE -12\r
+#define BCOM_EVENT -13\r
+\r
+/* for TMOneWireLevel */\r
+#define LEVEL_NORMAL 0\r
+#define LEVEL_STRONG_PULLUP 1\r
+#define LEVEL_BREAK 2\r
+#define LEVEL_PROGRAM 3 \r
+#define PRIMED_NONE 0\r
+#define PRIMED_BIT 1\r
+#define PRIMED_BYTE 2 \r
+#define LEVEL_READ 1\r
+#define LEVEL_SET 0\r
+\r
+/* misc */\r
+#define GENERAL_FAIL -2 \r
+#define BAD_ARGUMENT 50\r
+#define NO_DRIVERS 51\r
+#define KEY_ABORT 52\r
+#define OUT_MEMORY 53\r
+#define NORMAL_EXIT 0\r
+\r
+#define TRUE 1\r
+#define FALSE 0\r
+#define DIR_READ 1\r
+#define DIR_SET 0\r
+#define DIR_REMOVE 1\r
+#define DIR_MAKE 0\r
+\r
+/* for specification */\r
+#define NOMEM 0\r
+#define NVRAM 1\r
+#define EPROM1 2\r
+#define EPROM2 3\r
+#define EPROM3 4\r
+#define EEPROM1 5\r
+#define MNVRAM 6\r
+#define EEPROM2 7\r
+#define NVRAM2 8\r
+#define NVRAM3 9 \r
+#define FTR_REG_PAGES 0\r
+#define FTR_REG_LEN 1\r
+#define FTR_STAT_PAGES 2\r
+#define FTR_STAT_LEN 3\r
+#define FTR_MAX_COM 4 \r
+#define FTR_MEM_TYPE 5\r
+\r
+// session\r
+extern long __fastcall TMExtendedStartSession(short, short, void far *);\r
+extern short __fastcall TMValidSession(long); \r
+extern short __fastcall TMEndSession(long); \r
+extern short __fastcall Get_Version(char far *); \r
+// file_operations\r
+extern short __fastcall TMFirstFile(long, void far *, FileEntry far *); \r
+extern short __fastcall TMNextFile(long, void far *, FileEntry far *);\r
+extern short __fastcall TMOpenFile(long, void far *, FileEntry far *);\r
+extern short __fastcall TMCreateFile(long, void far *, short far *, FileEntry far *);\r
+extern short __fastcall TMCloseFile(long, void far *, short);\r
+extern short __fastcall TMReadFile(long, void far *, short, uchar far *, short);\r
+extern short __fastcall TMWriteFile(long, void far *, short, uchar far *, short);\r
+extern short __fastcall TMDeleteFile(long, void far *, FileEntry far *);\r
+extern short __fastcall TMFormat(long, void far *);\r
+extern short __fastcall TMAttribute(long, void far *, short, FileEntry far *);\r
+extern short __fastcall TMReNameFile(long, void far *, short, FileEntry far *); \r
+extern short __fastcall TMChangeDirectory(long, void far *, short, DirectoryPath far *); \r
+extern short __fastcall TMDirectoryMR(long, void far *, short, FileEntry far *);\r
+extern short __fastcall TMCreateProgramJob(long, void far *);\r
+extern short __fastcall TMDoProgramJob(long, void far *);\r
+extern short __fastcall TMWriteAddFile(long, void far *, short, short, short, uchar far *, short);\r
+extern short __fastcall TMTerminateAddFile(long, void far *, FileEntry far *);\r
+extern short __fastcall TMGetFamilySpec(long, void far *, Specification *); \r
+// transport\r
+extern short __fastcall TMReadPacket(long, void far *, short, uchar far *, short);\r
+extern short __fastcall TMWritePacket(long, void far *, short, uchar far *, short);\r
+extern short __fastcall TMBlockIO(long, uchar far *, short);\r
+extern short __fastcall TMExtendedReadPage(long, void far *, short, uchar far *, short);\r
+extern short __fastcall TMProgramByte(long, void far *, short, short, short, short far *, short);\r
+extern short __fastcall TMProgramBlock(long, void far *, uchar far *, short, short, short far *); /* (3.11) */\r
+extern long __fastcall TMCRC(short, uchar far *, ushort, short); \r
+// network\r
+extern short __fastcall TMSkipFamily(long, void far *); \r
+extern short __fastcall TMFamilySearchSetup(long, void far *, short); \r
+extern short __fastcall TMFirst(long, void far *);\r
+extern short __fastcall TMNext(long, void far *);\r
+extern short __fastcall TMAccess(long, void far *);\r
+extern short __fastcall TMOverAccess(long, void far *);\r
+extern short __fastcall TMStrongAccess(long, void far *);\r
+extern short __fastcall TMStrongAlarmAccess(long, void far *);\r
+extern short __fastcall TMRom(long, void far *, short far *);\r
+extern short __fastcall TMFirstAlarm(long, void far *);\r
+extern short __fastcall TMNextAlarm(long, void far *); \r
+extern short __fastcall TMAutoOverDrive(long, void far *, short); \r
+extern short __fastcall TMSearch(short, short, short, short); \r
+// hardware_specific\r
+extern short __fastcall TMSetup(long);\r
+extern short __fastcall TMTouchByte(long, short);\r
+extern short __fastcall TMTouchReset(long);\r
+extern short __fastcall TMTouchBit(long, short);\r
+extern short __fastcall TMClose(long);\r
+extern short __fastcall TMProgramPulse(long); \r
+extern short __fastcall TMOneWireCom(long, short, short); \r
+extern short __fastcall TMOneWireLevel(long, short, short, short); \r
+extern short __fastcall TMGetTypeVersion(short,char far *); \r
+extern short __fastcall TMBlockStream(long, uchar far *, short);\r
+extern short __fastcall TMGetAdapterSpec(long, Specification far *); \r
+extern short __fastcall TMReadDefaultPort(short far *, short far *); \r
+\r