UPDATES TO DCCONNECT CLIENT/752X EMULATOR FOR DOS SINCE THE 1.4.0 RELEASE (8/1999) ---------------------------------------------------------------------------------- This file catalogs updates made to the various flavors of the DCConnect Client/ 752X Emulator for DOS that were released on CD as version 1.4.0 in August 1999. Note: Starting with the 1.4.0M fix pack, the product has been renamed to the 'DCConnect Client'. The documentation and product screens now reflect that new name. However, there are still some remnants of the old product name in the names of some of the files that are part of the product (e.g. EMULATOR.INI, EM.BAT). Where possible, the term 'the Client' will be used instead of 'the emulator'. This package includes fixes for all flavors of the Client. The self-extracting zip file is named CLNTvvvn.EXE where 'vvv' is a version number such as 200 for version 2.0.0 or 210 for version 2.1.0 and 'n' is a letter from 'A' to 'Z' indicating the sub-version of Client contained in the fix pack. It's also possible to have the 'vvv' without any 'n' sub-version following it. For example the fix pack for sub-version A of version 2.1.0 of the Client is called CLNT210A.EXE. For the remainder of this document, we will use the notation CLNTvvvn.EXE when referring to this self-extracting zip file. But you should substitute the appropriate version number for 'vvv' and the appropriate letter for 'n' based on the sub-version that you have. The self-extracting zip file CLNTvvvn.EXE contains the following files: Documentation ------------- CLIENTFX.HTM - This file MANUALS\DCCLIENT.HTM - Documentation for DCConnct Client/752x Emulator for DOS MANUALS\7524ETS.HTM - Technical Reference for DCConnect Client - includes information about CFR APIs, internal file formats and the communications protocol. MANUALS\E9GWROOT.HTM - Part of Technical Reference MANUALS\E9GWTOC.HTM - Part of Technical Reference DOS-based Device-Specific files ------------------------------- 6400\6400BC.CFG - Input file for 6400 Bar code configuration 6400\6400BC.EXE - Bar code Configuration program for 6400 terminals 6400\6400_TSR.EXE - TSR needed for the Client to control the scanner. 6400\6400DISP.EXE - Tool to configure the 6400 display. ANTARES\ETSPB.EXE - DOS flavor of serial Client that runs only on the Intermec Antares line of terminals. ANTARES\ETSPT.EXE - DOS, TCP/IP-attached flavor of the Client that runs only on the Intermec Antares line of terminals. ANTARES\FLASHLDR.BIN - File needed by LOADER.EXE to load terminals ANTARES\LISTFILE.DOS - Used with DOWNLOAD.BAT to load DOS files to Antares ANTARES\LOADER.EXE - DOS-based file load utility from Intermec ANTARES\LOAD1.BAT - Batch file for loading a single file to the terminal ANTARES\LOAD2.BAT - Batch file for loading two files to the terminal ANTARES\SETUPANT.EXE - Utility program for changing Antares configuration ANTARES\T24FCOPY.EXE - Windows-based file load utility provided by Intermec. It can be used to upload or download files to Antares terminals. ANTARES\T24FCOPY.HLP - Help file for T24FCOPY.EXE ANTARES\USER.BAT - Called by AUTOEXEC.BAT to start Client automatically ANTARES\SAMPLE\DOWNLOAD.BAT - Sample download batch file to use with LOADER.EXE ANTARES\SAMPLE\EM.BAT - Sample flavor of EM.BAT for Antares ANTARES\SAMPLE\EMULATOR.INI - Sample flavor of EMULATOR.INI for Antares ANTARES\SAMPLE\S.BAT - Easier-to-type sample batch file for calling SETUPANT.EXE ANTARES\SAMPLE\SETUPANT.INI - Sample input file for SETUPANT.EXE ANTARES\SAMPLE\UPGRADE.BAT - Alternate UPGRADE.BAT used when loading Intermec flash to Antares terminals. FALCON\FALC_TSR.EXE - TSR needed by the Client in order to distinguish between keyboard and scanner input on the Percon/PSC Falcon and its twin the LXE MX2. LANPTPRO\PREPOST.EXE - Utility for configuring the bar code pre/postamble on the Intelligent Instrumentation LanPoint Pro (aka Symbol FMT3000). SPEC24\CFG3000.EXE - Configuration utility for Symbol Spectrum 24 terminals. It modifies INIT.EXE. SPEC24\ETSPT.EXE - DOS, TCP/IP-attached flavor of Client used by the Symbol Spectrum 24 terminals. It uses Novell's LAN Workplace for DOS. The terminals are shipped by Symbol with the Novell software installed. SPEC24\FLSHBLD.ZIP - Zip file containing the set of files used when flashing the Symbol Spectrum 24 terminal. SPEC24\S24_TSR.EXE - Required for use of the scanner and Serial port on Symbol Spectrum 24 terminals TELXON\HHB.EXE - Version of Telxon's HandHeld Bridge that runs on the PC TELXON\HHB.TXT - Documentation for Telxon's HHB.EXE TELXON\HHBR.EXE - Version of Telxon's HandHeld Bridge that runs on the terminal TELXON\HHBR.TXT - Documentation for Telxon's HHBR.EXE TELXON\TELXONBC.EXE - Bar code Configuration program for Telxon terminals TELXON\TELXONBC.CFG - Input file for Telxon Bar code configuration TELXON\T870_TSR.EXE - TELX_TSR.EXE for use on PTC870; it is required for any scanner use on this terminal TELXON\TELX_TSR.EXE - Optional TSR for Telxon 960SL/X, 860IM; provides RS-232 support and enhanced scanner support TELXON\WANDTSR.EXE - TSR required for scanner support on Telxon 960SL/X, 860IM Two DOS Flavors of the Client that Communicate to DCConnect Serially -------------------------------------------------------------------- SERIAL\ETSPB.EXE - Serial-attached flavor of the Client for use on DOS devices. SERIAL\NLS\ETSPB.EXE - DOS flavor of serial Client built with different video routines that use whatever code page is set in DOS for displaying characters. Does not work on all devices (but does work on Janus 2050). Various DOS flavors of the Client for different TCP/IP stacks ------------------------------------------------------------- TCP_FTP\ETSPT.EXE - DOS, TCP/IP-attached flavor of the Client requiring FTP Software's PC/TCP Network Kernel for DOS. TCP_FTP\NLS\ETSPT.EXE - DOS flavor of TCP/IP Client for FTP stack built with different video routines that use whatever code page is set in DOS for displaying characters. Does not work on all devices (but does on Janus 2050). TCP_IBM\ETSPT.EXE - DOS, TCP/IP-attached flavor of the Client requiring IBM DOS TCP/IP Support. Also runs in a full screen DOS session of OS/2. TCP_NOV\ETSPT.EXE - DOS, TCP/IP-attached flavor of Client requiring Novell's LAN Workplace for DOS. TCP_VSL\ETSPT.EXE - DOS, TCP/IP-attached flavor of Client that requires the Virtual Socket Library from JSB Software. Client Files for Use on 32/64-bit Windows Platforms (95/98/Me/NT/2000/XP/7/Server) ---------------------------------------------------------------------------------- WIN32\ETSPT.EXE - Windows flavor of Client. Uses networking support that is provided by the operating system. This is the stub executable that is run to start the Client; the majority of the program is in WIN32\ETSPT.DLL. WIN32\ETSPT.DLL - Windows flavor of Client functionality; requires WIN32\ETSPT.EXE to start it. WIN32\ETSSCRPT.DLL - Windows flavor of Client DLL for support of text script file processing. WIN32\SAMPLE\EMULATOR.INI - Sample EMULATOR.INI for the 32-bit Windows flavor of the Client. NMWIN32.BAT - Batch file to use with the makefile ETSUSER.VCN in order to build ETSUSER.DLL for the Windows platforms. Also used with the various Windows makefiles that are part of the CFR packages. Client Files for Use on Windows CE Devices ------------------------------------------ MAKECAB.BAT - Used to build Windows CE .CAB files from .INF files DCCLIENT.INF - Sample .INF file used to create DCConnect Client .CAB files for the various flavors of Windows CE devices. CECONFIG.VB - Microsoft eMbedded Visual Basic executable for the IBM CE Config Tool. This tool uses an .INI file to set up registry values, create files, and perform file and directory operations for the purpose of automating the configuring a Windows CE device. Provides the ability to prompt the user for certain values, including the ability to provide a list of valid choices, while automating the setting of any values that would not change. CECONFIG.INI - Sample .INI file used by the IBM CE Config Tool. Includes sample commands for setting registry keys and creating a file. GETREG.VB - Microsoft eMbedded Visual Basic executable for the Get Registry tool. ETSUSER.C - Sample source for building Windows CE DLL needed on some devices to run the Client in 'full-screen' mode. Also can be used to add customer menu items to the Client's pull-down menus. ETSUSER.DEF - Sample module definition file to go with ETSUSER.C ETSUSER.VCN - Microsoft eMbedded Visual Toolkit makefile file used to build various flavors of ETSUSER.DLL from the source files ETSUSER.C and ETSUSER.DEF. ETSUSER.VCP - Microsoft eMbedded Visual Toolkit projecte file used to build various flavors of ETSUSER.DLL from the source files ETSUSER.C and ETSUSER.DEF. ETSUSER.VCW - Make file generated by Microsoft eMbedded Visual Toolkit; used to build various flavors of ETSUSER.DLL from the source files ETSUSER.C and ETSUSER.DEF. NMCK30.BAT - Batch file to use with the makefile ETSUSER.VCN in order to build ETSUSER.DLL for the Intermec CK30. Also used with the various Windows CE makefiles that are part of the CFR packages. NMCV60.BAT - Batch file to use with the makefile ETSUSER.VCN in order to build ETSUSER.DLL for the Intermec CV60. Also used with the various Windows CE makefiles that are part of the CFR packages. NMI5020.BAT - Batch file to use with the makefile ETSUSER.VCN in order to build ETSUSER.DLL for the Intermec 5020 (running Windows CE 3.0 or later). Also used with the various Windows CE makefiles that are part of the CFR packages. NMI600.BAT - Batch file to use with the makefile ETSUSER.VCN in order to build ETSUSER.DLL for the Intermec 600. Also used with the various Windows CE makefiles that are part of the CFR packages. NMI6651.BAT - Batch file to use with the makefile ETSUSER.VCN in order to build ETSUSER.DLL for the Intermec 6651. Also used with the various Windows CE makefiles that are part of the CFR packages. NMI700.BAT - Batch file to use with the makefile ETSUSER.VCN in order to build ETSUSER.DLL for the Intermec 700. Also used with the various Windows CE makefiles that are part of the CFR packages. NMS90XX.BAT - Batch file to use with the makefile ETSUSER.VCN in order to build ETSUSER.DLL for the Symbol 90xx terminals. Also used with the various Windows CE makefiles that are part of the CFR packages. NMLPTCE.BAT - Batch file to use with the makefile ETSUSER.VCN in order to build ETSUSER.DLL for the Intelligent Instrumentation LanPoint CE. Also used with the various Windows CE makefiles that are part of the CFR packages. NMX86EM.BAT - Batch file to use with the makefile ETSUSER.VCN in order to build ETSUSER.DLL for the MS Pocket PC Emulation environment. Also used with the various Windows CE makefiles that are part of the CFR packages. Windows CE Device with ARM Processor - but not Pocket PC API Available ---------------------------------------------------------------------- ARMNOPPC\ETSPT.EXE - Windows CE TCP/IP Sockets flavor of Client for use on devices with an Intel StrongARM processor or compatible and with Windows CE 3.0 or compatible later version but which are not Pocket PC devices. Uses networking support that is provided by the operating system. This is the stub executable that is run to start the Client; the majority of the program is in ARMNOPPC\ETSPT.DLL. ARMNOPPC\ETSPT.DLL - Windows CE TCP/IP Sockets flavor of Client DLL for use on devices with an Intel StrongARM processor or compatible and with Windows CE 3.0 or compatible later version but which are not Pocket PC devices; requires ARMNOPPC\ETSPT.EXE to start it. This flavor of ETSPT.DLL is similar to the IMEC700\ETSPT.DLL except that it does not require the Pocket PC library AGYSHELL.DLL. ARMNOPPC\ETSSCRPT.DLL - Intel StrongARM Client DLL containing text file processing. Interemc CK30 (XScale processor, Windows CE) -------------------------------------------- CK30\ETSPT.EXE - Windows CE TCP/IP Sockets flavor of Client for the Intermec CK30 terminal. Uses networking support that is provided by the operating system. This is the stub executable that is run to start the Client; the majority of the program is in CK30\ETSPT.DLL. CK30\ETSPT.DLL - Windows CE TCP/IP Sockets flavor of Client DLL for the Intermec CK30 terminal; requires CK30\ETSPT.EXE to start it. CK30\ETSSCRPT.DLL - Intermec CK30 Client DLL containing text file processing. CK30\SAMPLE\EMULATOR.INI - Sample EMULATOR.INI for Intermec CK30 CK30\SAMPLE\CK30.INF - Sample .INF file used with MAKECAB.BAT for creating CK30.CAB. Interemc CV60 (Intel P-III processor, Windows CE / Windows XP Embedded) ------------------------------------------------------------------------ CV60\ETSPT.EXE - Windows CE TCP/IP Sockets flavor of Client for the Intermec CV60 terminal. Uses networking support that is provided by the operating system. This is the stub executable that is run to start the Client; the majority of the program is in CV60\ETSPT.DLL. CV60\ETSPT.DLL - Windows CE TCP/IP Sockets flavor of Client DLL for the Intermec CV60 terminal; requires CV60\ETSPT.EXE to start it. CV60\ETSSCRPT.DLL - Intermec CV60 Client DLL containing text file processing. CV60\SAMPLE\EMULATOR.INI - Sample EMULATOR.INI for Intermec CV60 CV60\SAMPLE\CV60.INF - Sample .INF file used with MAKECAB.BAT for creating CV60.CAB. Interemc 5020 (Hitachi SH3 processor, running Windows CE 3.0 or later) ---------------------------------------------------------------------- IMEC5020\ETSPT.EXE - Windows CE TCP/IP Sockets flavor of Client for the Intermec 5020 terminal. Uses networking support that is provided by the operating system. This is the stub executable that is run to start the Client; the majority of the program is in IMEC5020\ETSPT.DLL. IMEC5020\ETSPT.DLL - Windows CE TCP/IP Sockets flavor of Client DLL for the Intermec 5020 terminal; requires IMEC5020\ETSPT.EXE to start it. IMEC5020\ETSSCRPT.DLL - Intermec 5020 Client DLL containing text file processing. IMEC5020\SAMPLE\EMULATOR.INI - Sample EMULATOR.INI for Intermec 5020 IMEC5020\SAMPLE\IMEC5020.INF - Sample .INF file used with MAKECAB.BAT for creating IMEC5020.CAB. Intermec 600 (AMD 486 processor, Windows CE 2.12) ------------------------------------------------- Note: script text file processing is not supported on the Intermec 600 terminal due to there being no support for C++ exception handling on this platform. IMEC600\ETSPT.EXE - Windows CE TCP/IP Sockets flavor of Client for the Intermec 600 terminal. Uses networking support that is provided by the operating system. This is the stub executable that is run to start the Client; the majority of the program is in IMEC600\ETSPT.DLL. IMEC600\ETSPT.DLL - Windows CE TCP/IP Sockets flavor of Client DLL for the Intermec 600 terminal; requires IMEC600\ETSPT.EXE to start it. IMEC600\SAMPLE\EMULATOR.INI - Sample EMULATOR.INI for Intermec 600 IMEC600\SAMPLE\IMEC600.INF - Sample .INF file used with MAKECAB.BAT for creating IMEC600.CAB. Interemc 6651 (Toshiba MIPS processor, running Windows CE 3.0 or later) ----------------------------------------------------------------------- IMEC6651\ETSPT.EXE - Windows CE TCP/IP Sockets flavor of Client for the Intermec 6651 terminal. Uses networking support that is provided by the operating system. This is the stub executable that is run to start the Client; the majority of the program is in IMEC6651\ETSPT.DLL. IMEC6651\ETSPT.DLL - Windows CE TCP/IP Sockets flavor of Client DLL for the Intermec 6651 terminal; requires IMEC6651\ETSPT.EXE to start it. IMEC6651\ETSSCRPT.DLL - Intermec 6651 Client DLL containing text file processing. IMEC6651\SAMPLE\EMULATOR.INI - Sample EMULATOR.INI for Intermec 6651 IMEC6651\SAMPLE\IMEC6651.INF - Sample .INF file used with MAKECAB.BAT for creating IMEC6651.CAB. Intermec 700 (Intel ARM processor or compatible, running Pocket PC 3.0) ----------------------------------------------------------------------------- Note: Intermec 700's that have Pocket PC 4.x or later can use the DCConnect Client build fles found in SYM90XX - which provides full support for text file processing. Intermec 700's with Pocket PC 3.x must use the files in IMEC700 which do not support text based processing due to the lack of exception handling in Pocket PC 3.x. IMEC700\ETSPT.EXE - Windows CE TCP/IP Sockets flavor of Client for the Intermec 700 terminal with Pocket PC 3.x. Uses networking support that is provided by the operating system. This is the stub executable that is run to start the Client; the majority of the program is in IMEC700\ETSPT.DLL. IMEC700\ETSPT.DLL - Windows CE TCP/IP Sockets flavor of Client DLL for the Intermec 700 terminal with Pocket PC 3.x; requires \IMEC700\ETSPT.EXE to start it. IMEC700\SAMPLE\EMULATOR.INI - Sample EMULATOR.INI for Intermec 700 IMEC700\SAMPLE\IMEC700.INF - Sample .INF file used with MAKECAB.BAT for creating IMEC700.CAB. LanPoint CE (AMD 486 processor, Windows CE 3.0) ----------------------------------------------- Note: Note: script text file processing is not supported on the LanPoint CE terminal due to there being no support for C++ exception handling on this platform. LANPTCE\ETSPT.EXE - Windows CE TCP/IP Sockets flavor of Client for the Intelligent Instrumentation LanPoint CE terminal. Uses networking support that is provided by the operating system. This is the stub executable that is run to start the Client; the majority of the program is in LANPTCE\ETSPT.DLL. LANPTCE\ETSPT.DLL - Windows CE TCP/IP Sockets flavor of Client DLL for the LanPoint CE terminal; requires \LANPTCE\ETSPT.EXE to start it. LANPTCE\SAMPLE\EMULATOR.INI - Sample EMULATOR.INI for LanPoint CE LANPTCE\SAMPLE\LANPTCE.INF - Sample .INF file used with MAKECAB.BAT for creating LANPTCE.CAB. Symbol 81xx (compatible with Intermec 700) ------------------------------------------ SYM81XX\SAMPLE\CECONFIG.INI - Sample CECONFIG.INI for Symbol 81xx SYM81XX\SAMPLE\EMULATOR.INI - Sample EMULATOR.INI for Symbol 81xx SYM81XX\SAMPLE\SYM81XX.INF - Sample .INF file used with MAKECAB.BAT for creating SYM81XX.CAB. Symbol 90xx (Intel ARM processor or compatible, running Windows CE or later) ---------------------------------------------------------------------------- SYM90XX\ETSPT.EXE - Windows CE TCP/IP Sockets flavor of Client for the Symbol MC90xx terminal. Uses networking support that is provided by the operating system. This is the stub executable that is run to start the Client; the majority of the program is in SYM90XX\ETSPT.DLL. SYM90XX\ETSPT.DLL - Windows CE TCP/IP Sockets flavor of Client DLL for the Symbol MC90xx terminal; requires \SYM90XX\ETSPT.EXE to start it. SYM90XX\ETSSCRPT.DLL - Symbol MC90xx Client DLL containing text file processing. SYM90XX\SAMPLE\EMULATOR.INI - Sample EMULATOR.INI for Symbol MC90xx SYM90XX\SAMPLE\SYM90XX.INF - Sample .INF file used with MAKECAB.BAT for creating SYM90XX.CAB. Symbol 91xx (Intel ARM processor or compatible, running Windows CE or later) ---------------------------------------------------------------------------- This flavor of the Client handles the VGA resolution of the Symbol 91xx and other compatible devices. SYM91XX\ETSPT.EXE - Windows CE TCP/IP Sockets flavor of Client for the Symbol MC91xx terminal. Uses networking support that is provided by the operating system. This is the stub executable that is run to start the Client; the majority of the program is in SYM91XX\ETSPT.DLL. SYM91XX\ETSPT.DLL - Windows CE TCP/IP Sockets flavor of Client DLL for the Symbol MC91xx terminal; requires \SYM91XX\ETSPT.EXE to start it. SYM91XX\ETSSCRPT.DLL - Symbol MC91xx Client DLL containing text file processing. Pocket PC Emulator (Debug Build) -------------------------------- X86EMDBG\ETSPT.EXE - Windows CE TCP/IP Sockets flavor of Client for the Microsoft Pocket PC Emulation Environment. Uses networking support that is provided by the operating system. This is the stub executable that is run to start the Client; the majority of the program is in X86EMDBG\ETSPT.DLL. X86EMDBG\ETSPT.DLL - Windows CE TCP/IP Sockets flavor of Client DLL for the Pocket PC Emulator; requires \X86EMDBG\ETSPT.EXE to start it. X86EMDBG\ETSSCRPT.DLL - Pocket PC Emulator Client DLL containing text file processing. X86EMDBG\SAMPLE\EMULATOR.INI - Sample EMULATOR.INI for the Pocket PC Emulator X86EMDBG\SAMPLE\X86EMDBG.INF - Sample .INF file used with MAKECAB.BAT for creating X86EMDBG.CAB. Files Used for Building CFRs to Run with the Client (DOS, 32-bit Windows, Windows CE) ------------------------------------------------------------------------------------- CFRTOOLS\CFRAPI24.H - Header file required for compiling all CFRs CFRTOOLS\CFRWIN32.H - Header file required for compiling Win32 and CE CFR DLLs CFRTOOLS\BORLAND\CFRAPI24.LIB - Library file required for linking when building CFRs with Borland Turbo C++ 3.0 for DOS CFRTOOLS\IBMC2\CFRAPI24.LIB - Library file required for linking when building CFRs with IBM C/2 1.10 CFRTOOLS\CK30\CFRAPICE.LIB - Library file required for linking CFR built for Intermec CK30 terminals CFRTOOLS\CV60\CFRAPICE.LIB - Library file required for linking CFR built for Intermec CV60 terminals CFRTOOLS\IMEC600\CFRAPICE.LIB - Library file required for linking CFR built for Intermec 600 terminals CFRTOOLS\IMEC700\CFRAPICE.LIB - Library file required for linking CFR built for Intermec 700 terminals CFRTOOLS\IMEC5020\CFRAPICE.LIB - Library file required for linking CFR built for Intermec 5020 terminals (running Windows CE 3.0) CFRTOOLS\IMEC6651\CFRAPICE.LIB - Library file required for linking CFR built for Intermec 6651 terminals CFRTOOLS\LANPTCE\CFRAPICE.LIB - Library file required for linking CFR built for Intelligent Instrumentation LanPoint CE terminals CFRTOOLS\SYM90XX\CFRAPICE.LIB - Library file required for linking CFR built for Symbol MC90xx terminals CFRTOOLS\X86EMDBG\CFRAPICE.LIB - Library file required for linking CFR built for MS Pocket PC Emulation Environment CFRTOOLS\WIN32\CFRAPI32.LIB - Library file required for linking 32-bit Windows CFRs CFRTOOLS\CFRUTL24.RME - README file describing the files in the CFR utility library package in more detail. CFRTOOLS\CFRUTL24.HTM - More detailed documentation about each utility routine. CFRTOOLS\CFRUTL24.H - Include file use in building the CFR utility library - and needed when building a CFR that uses the routines in this library. CFRTOOLS\*.C - Source files used to build the utility library. See CFRTOOLS\CFRUTL24.RME for a description of each. CFRTOOLS\CFRUTL24.MAK - Used for building the flavor of CFR utility library for either the Borland Turbo C++ 3.0 for DOS compiler or the IBM C/2 1.10 compiler. CFRTOOLS\CFRUTL32.DSP - Project file used with MS Visual Studio for building / working with the 32-bit Windows flavor of the CFR utility library. CFRTOOLS\CFRUTL32.DSW - Workspace file used with MS Visual Studio for building / working with the 32-bit Windows flavor of the CFR utility library. CFRTOOLS\CFRUTL32.MAK - Generated by MS Visual Studio for building the 32-bit Windows flavor of the CFR utility library CFRTOOLS\NMUTL32.BAT - Batch file used to build the 32-bit Windows flavor of the CFR utility library. Uses CFRTOOLS\CFRUTL32.MAK. CFRTOOLS\CFRULT40.VCN - MS Embedded Visual C++ Version 4.0 makefile, generated by the build environment when loaded from cfrutl40.vcw. Used by several of the build batch files below that build the various CE flavors of the utility library, cfrutlce.lib, for devices that run Windows CE 4.x and later (in subdirectories CK30, CV60, SYM90XX...) CFRTOOLS\CFRULT40.VCP - MS Embedded Visual C++ Version 4.0 project file used for building some of the various flavors of cfrutlce.lib. See cfrutl40.vcn file above for more details. CFRTOOLS\CFRULT40.VCW - MS Embedded Visual C++ Version 4.0 workspace file used for building some of the various flavors of cfrutlce.lib. See cfrutl40.vcn file above for more details. CFRTOOLS\CFRULTCE.VCN - MS Embedded Visual C++ Version 3.0 makefile, generated by the build environment when loaded from cfrutlce.vcw. Used by several of the build batch files below that build the various CE flavors of the utility library, cfrutlce.lib, for devices that run Windows CE 3.x and earlier (in subdirectories IMEC600, IMEC700, ...) CFRTOOLS\CFRULTCE.VCP - MS Embedded Visual C++ Version 3.0 project file used for building many of the various flavors of cfrutlce.lib. See cfrutlce.vcn file above for more details. CFRTOOLS\CFRULTCE.VCW - MS Embedded Visual C++ Version 3.0 workspace file used for building many of the various flavors of cfrutlce.lib. See cfrutlce.vcn file above for more details. CFRTOOLS\NMCK30.BAT - Batch file for building Intermec CK30 flavor of cfrutlce.lib. Uses CFRTOOLS\CFUTL40.VCN. CFRTOOLS\NMCV60.BAT - Batch file for building Intermec CV60 flavor of cfrutlce.lib. Uses CFRTOOLS\CFUTL40.VCN. CFRTOOLS\NMI600.BAT - Batch file for building Intermec 600 flavor of cfrutlce.lib. Uses CFRTOOLS\CFUTLCE.VCN. CFRTOOLS\NMI700.BAT - Batch file for building Intermec 700 flavor of cfrutlce.lib. Uses CFRTOOLS\CFUTLCE.VCN. CFRTOOLS\NMI5020.BAT - Batch file for building Intermec 5020 (running Windows CE 3.0) flavor of cfrutlce.lib. Uses CFRTOOLS\CFUTLCE.VCN. CFRTOOLS\NMI6651.BAT - Batch file for building Intermec 6651 flavor of cfrutlce.lib. Uses CFRTOOLS\CFUTLCE.VCN. CFRTOOLS\NMLPTCE.BAT - Batch file for building Intelligent Instrumentation LanPoint CE flavor of cfrutlce.lib. Uses CFRTOOLS\CFUTLCE.VCN. CFRTOOLS\NMS90XX.BAT - Batch file for building Symbol MC90xx flavor of cfrutlce.lib. Uses CFRTOOLS\CFUTL40.VCN. CFRTOOLS\NMX86EM.BAT - Batch file for building the MS Pocket PC Emulator flavor of cfrutlce.lib. Uses CFRTOOLS\CFRUTLCE.VCN. CFRTOOLS\BORLAND\CFRUTL24.LIB - Utility library file used when linking CFRs built with Borland Turbo C++ 3.0 for DOS CFRTOOLS\IBMC2\CFRUTL24.LIB - Utility library file used when linking CFRs built with IBM C/2 1.10 CFRTOOLS\CK30\CFRUTLCE.LIB - The utility library for use on Intermec CK30 terminals CFRTOOLS\CV60\CFRUTLCE.LIB - The utility library for use on Intermec CV60 terminals CFRTOOLS\IMEC600\CFRUTLCE.LIB - Utility library file used when linking CFRs built for Intermec 600 terminals CFRTOOLS\IMEC700\CFRUTLCE.LIB - Utility library file used when linking CFRs built for Intermec 700 terminals CFRTOOLS\IMEC5020\CFRUTLCE.LIB - Utility library file used when linking CFRs built for Intermec 5020 terminals (running Windows CE 3.0) CFRTOOLS\IMEC6651\CFRUTLCE.LIB - Utility library file used when linking CFRs built for Intermec 6651 terminals CFRTOOLS\LANPTCE\CFRUTLCE.LIB - Utility library file used when linking CFRs built for Intelligent Instrumentation LanPoint CE terminals CFRTOOLS\SYM90XX\CFRUTLCE.LIB - The utility library for use on Symbol MC90XX terminals CFRTOOLS\X86EMDBG\CFRUTLCE.LIB - Utility library file used when linking CFRs built for the MS Pocket PC Emulator. CFRTOOLS\WIN32\CFRUTL32.LIB - Utility library file used when linking CFRS built for 32-bit Windows. CFRTOOLS\CFRSMP24.ZIP - Sample CFR package. Source, make and library files included for DOS, 32-bit Windows and Windows CE devices CFRTOOLS\CFRPAN24.ZIP - Input panel driver CFR package. Source, make and library files included for DOS, 32-bit Windows and Windows CE devices CFRTOOLS\CFRUTL24.ZIP - Package of useful utility routines to include in CFRs. Source, make and library files included for DOS, 32-bit Windows and Windows CE devices Miscellaneous Files ------------------- LOGFILE.LOG - Empty transaction logfile. Needed when building Windows CE .CAB files - along with LOGFILE.NDX. LOGFILE.NDX - Empty transaction index file. Needed when building Windows CE .CAB files - along with LOGFILE.LOG. To expand the file, copy it to an empty directory. If you have installed a version of the Client from a version 2.00 CD or later, then copy this self-extracting zip file to the directory into which the product CD was installed (e.g. C:\DCCONN\DCCLIENT) Then run the following from that directory: CLNTvvvn where 'vvv' is the 3-digit version number and 'n' is a letter from 'A' to 'Z' for the sub-version. The sub-directories will be created automatically. Refer to the documentation in DCCLIENT.HTM for device specific instructions about how the updated Client executable and associated files should be loaded into the device you are using. CHRONOLOGICAL SUMMARY OF FIXES/CHANGES -------------------------------------- 07-16-99: - Fixed temporary loss of communication problem that occurs when loading large validation files in the serial version. End-of- download processing which converts record separators to NULLs was not yielding the processor thus preventing incoming host commands from being processed. ---------------------------------------------------------------------------- End of changes in version 1.40A version of product (July 1999). ---------------------------------------------------------------------------- 07-23-99: - For the SEND (:W) command, if the target is RS-232 and the length of the data being written is 0, message 9053, RS-232 Length Error' will now be given and the transaction program will abort. In the past 9316, BIOS ComWrite error was given in this error situation. - Corrected/enhanced the return codes for the following CFR APIs: - AliasTransID() now returns RANGE_ERROR, as is documented, instead of E_PARAM - if the ID is invalid. - ClearUserVariable() now returns RANGE_ERROR if the user variable is invalid. Before no error was given. - Validation() now returns FILE_NOT_FOUND if the validation file could not be found. Before RANGE_ERROR was given in certain error situations. - WaitEvent() will not return TERMINAL_OFFLINE if the terminal is put out of service during the call. This is the same behavior as IdleManager(). - Fixed problem that occurs if you send a transaction from case 0 or 2 of a CFR. The code was trying to run some other transaction program when the CFR completed - resulting in one of several possible erroneous messages such as 'invalid parameter'. ---------------------------------------------------------------------------- End of changes in version 1.40B version of product (July 1999). ---------------------------------------------------------------------------- 08-16-99: - Client is now considered in the transaction state when case 0 or case 2 of a CFR are run during a change to the in service state. This fixes problem where certain keys were not being passed to the CFR in this scenario. 08-27-99: - Fixed the DUMP MEMORY option under INFO/STATUS menu for the CFR file (file C). Before the fix, no file data would be dumped even when the CFR was loaded. ---------------------------------------------------------------------------- End of changes in version 1.40C version of product (August 1999). ---------------------------------------------------------------------------- 10-22-99: - Fixed problem downloading transaction programs > 64K. On the terminal the loading of file 0 would fail around block 138. So the terminal would show: Loading file 0: 138 and in DCConnect, there would be an error message about the downloading failing - specifying -309 for the return code. 11-02-99: - Fixed problem allocating memory for CFRs that require > 32767 bytes of memory. ---------------------------------------------------------------------------- End of changes in version 1.40D version of product (November 1999). ---------------------------------------------------------------------------- 11-09-99: - Fixed READ command so that it does not activate the scanner unless the scanner was one of the input devices selected. At this writing this really only affects Telxon and the Symbol Spectrum 24 terminals; for all others the scanner is always on - even though the Client might ignore it's input. 11-26-99: - Fixed cause of POST 82 error on startup - which might occur in rare circumstances if there was limited free terminal memory. Problem was there used to be an assumption that a task ID could not be greater than 0x8000 when in fact it could. 12-02-99: - Minor changes to serial port code to turn the power on to the serial port when a read is issued to a device (using CFR API ComRead). Power stays on for 10 seconds - unless other reads or writes are done. In the past, only the ComWrite API or SEND command from a transaction program would turn the power on. 12-02-99: - Added support for Telxon 870 IM terminal. The device parameter to use is -dPTC870. 12-02-99: - Added support for use of a TSR to handle scanning functions and RS-232 functions. The scanning functions allow the Client to distinguish between keyboard and scanner input and allow better enforcement of length - for those devices which do not support configuring preamble and postamble characters. The RS-232 functions allow the use of the serial port on devices that do not have a standard interface to the serial port. As of now, two TSRs have been created to take advantage of this new TSR interface. One is for use on the Telxon 960SL, 960X, and 860IM terminals. The other is for the Telxon 870IM terminal. Two new keywords for the EMULATOR.INI file tell the Client to use the TSR for scanner/RS-232 functions: USE_TSR_FOR_SCANNER and USE_TSR_FOR_RS232. ---------------------------------------------------------------------------- End of changes in version 1.40E version of product (November 1999). ---------------------------------------------------------------------------- 12-14-99: - Fix for error message/bad return code when writing to serial port from transaction program/cfr. Return code was not being set properly. - Added support for Antares terminals in the serial version of Client. Includes full scanner support too. 12-16-99: - Scrolling using the arrow keys is now available. This allows you to view out to column 40 and down to row 20 on devices such as the Telxon PTC960 which do not have that many rows or columns. - The command line parameter -h for specifying the host IP address and port number will now assume the port is 7500 if only the IP address is specified. - Moved into EMULATOR.INI from the menus all configuration parameters that were not already configurable from EMULATOR.INI. This was done for future consistency and to save space. The menus will be just for diagnostic tools and exiting the program. A couple command line parameters also now have equivalents in EMULATOR.INI The new commands in EMULATOR.INI are: NUM_ROWS NUM_COLS or NUM_COLUMNS STATUS_ROW MSG_BUFFER_FULL MSG_WAITING_FOR_FILES TCPIP_PORT TCPIP_HOST RESEND_TIMER ADDRESS BAUD_RATE COM_PORT DEVICE Please refer to the latest version of DCCLIENT.HTM for a description of how they are used. ---------------------------------------------------------------------------- End of changes in version 1.40F version of product (December 1999). ---------------------------------------------------------------------------- 2000-01-20: Fixed problem handling duplicate messages in TCP/IP versions of the Client. When a duplicate was received, if the sequence of the current message matched the one from the saved response, the saved response should have been resent. The problem was the saved sequence number was never being updated and thus the resend of a saved response never occurred when it should have. With this fix, communications with DCConnect is now more tolerant of packets that are lost or duplicated in the network. ---------------------------------------------------------------------------- End of changes in version 1.40G version of product (January 2000). ---------------------------------------------------------------------------- 2000-01-24: Added support for Intermec's Antares line of terminals. Special executables specific to Antares terminals were created for both the serial and TCP/IP flavors of the Client. Because of the design of Antares terminals, TCP/IP attached Antares terminals must be configured to use the same port number as DCConnect. 2000-01-25: Removed from the menus, all of the menus related to configuring parameters since all parameters can now be configured via the EMULATOR.INI file (see 12-16-99 comment above). The main menu now has the following options: 1) VERSION INFO 2) TXTN COUNT 3) TRACE LOG 4) DUMP MEMORY 5) VIEW SETTINGS 6) CLOSE MENUS X) EXIT PROGRAM The first 4 options are the same as what used to be on the INFO/STATUS menu. Option 5 is new and it allows you to view the current setting of all parameters that could be configured using EMULATOR.INI - but it does not allow you to change any of them. Option 6 is for leaving the menus without ending the Client. And Option X is just like the former 'EXIT TO DOS" option but has been reworded so it is applicable in non-DOS environments. Due to these changes the size of the Client was reduced by 5K - 10K which should allow more space for downloading files. ---------------------------------------------------------------------------- End of changes in version 1.40H version of product (February 2000). ---------------------------------------------------------------------------- 2000-02-02: For Antares, removed the TRACE LOG and DUMP MEMORY diagnostic options from the menus to save +5K in the executable size. The Antares has less available memory than the other terminals. - Changed the underlying code for the CFR API GetTerminalAddress so that it no longer uses the C function sprintf(). Prior to this change, calling this CFR API could cause a runtime stack overflow error if the CFR stack was not big enough. 2000-02-03: Restructured CFRAPI24.LIB so that every function in it is now in it's own .OBJ file. This can reduce the CFR size up to 3K, depending on how many CFR API functions are being used. ---------------------------------------------------------------------------- End of changes in version 1.40I version of product (February 2000). ---------------------------------------------------------------------------- 2000-02-18: The transaction program file can now be greater than 99999 bytes in size. In order to take advantage of this change, Fix Pack D for the 1.4.0 CDs of DCConnect must be installed. 5 bytes are used to specify the size. If the size is > 99999, the first byte is 'A' to 'Z' indicating a multiple of 65536, where 'A' is a multiple of 1. The remaining 4 bytes is a hex value from 0x0000 to 0xFFFF specifying the remainder value to be added to the value derived from the first byte - resulting in the true file size. 2000-03-03: Fixed date roll over problem. At midnight the terminal date would intermittently fail to be updated. The terminal continues to display the correct time, but the date can be off by one or more days. The problem appears to be one with DOS itself failing to reflect the change in date if a request to get the date and time is being made right at midnight. The Client now detects the problem and corrects the date within a second after midnight, or sooner if the Client needs to get the date/time for a transaction, CFR call, ... ---------------------------------------------------------------------------- End of changes in version 1.40J version of product (March 2000). ---------------------------------------------------------------------------- 2000-03-30: Changed the start up code to clear the opening screen when the terminal is put out of service at the start of a download. This fixes a problem trying to run a mode 2 CFR in the case that the download completes before the 20 seconds that the opening screen automatically times out after. 2000-04-03: Fixed problem calling CallKeyDef from a mode 2 CFR (one that never returns from a function 0 or 2). A return code of TRANS_IN_PROGRESS would always be given. This problem was introduced with the 8-16-99 fix (see above) for a problem getting certain keystrokes in a CFR. ---------------------------------------------------------------------------- End of changes in version 1.40K version of product (April 2000). ---------------------------------------------------------------------------- 2000-04-20: Made a couple of changes to improve performance on Antares. ---------------------------------------------------------------------------- End of changes in version 1.40L version of product (April 2000). ---------------------------------------------------------------------------- 2000-05-01: Another fix for Antares - possible mix up of messages generated when duplicate messages are received. ---------------------------------------------------------------------------- End of changes in version 1.40M version of product (May 2000). ---------------------------------------------------------------------------- 2000-05-24: Added new CFR API called KbdHandleArrowKeys. This allows a CFR to turn on and off the Client's handling of the arrow keys to scroll the window. The format of the API is: USHORT KbdHandleArrowKeys (UCHAR flag); where 'flag' is either HANDLE_ARROWS_YES or HANDLE_ARROWS_NO. By default the Client filters out the arrow keys and scrolls the screen based on the key pressed. But if the Client has been told not to filter out the arrow keys, then the CFR can receive these keys using KbdReadAscii(). The values for the arrow keys, which are defined in CFRAPI24.H are CURSOR_UP, CURSOR_DOWN, CURSOR_LEFT and CURSOR_RIGHT. 2000-05-25: Found that several CFR APIs were missing from the Windows/NT and Windows CE versions of the Client. The missing CFR APIs were: QueryTransactionCnt, SendTransaction, AliasTransID, GetTerminalAddress, GetPowerState, KbdGetShift 2000-05-26: For the Windows versions of the Client, XON/XOFF was not explicitly being turned off when the configuration indicated it should not be on. Therefore the previous setting would stay in effect. ---------------------------------------------------------------------------- End of changes in version 1.40N version of product (May 2000). ---------------------------------------------------------------------------- 2000-06-14: Added a TSR for use with Symbol Spectrum 24 terminals. This TSR provides support of the serial port as well as scanner support, which allows the Client to be able to distinguish between keyboard and scanner input. ---------------------------------------------------------------------------- End of changes in version 1.40O version of product (June 2000). ---------------------------------------------------------------------------- 2000-07-12: For the Intermec 5020 version of the Client, certain CFR APIs did not work correctly because the Client was not being built with the 8 byte alignment that is required by all applications that run on this device. 2000-07-21: The CFR API ClearUserVariable() can now be used to clear the transaction buffer by passing a -1 in for the user variable number. The constant TRANS_BUFFER has also been added to CFRAPI24.H for this purpose. ---------------------------------------------------------------------------- End of changes in version 1.40P version of product (July 2000). ---------------------------------------------------------------------------- 2000-08-22: Fixed a memory fragmentation problem that would cause downloads to fail even when there was sufficient memory in total. When the problem existed, a restart of the Client would allow the download to complete successfully. The problem was caused by the fact that space occupied by the CFR was not freed until several allocations for other files were attempted. So the space occupied by the CFR from a previous load was locked while the first couple of allocations were attempted. If one of the earlier files grew in size, other files would no longer fit before the CFR - and if there wasn't sufficient space after, the allocation would fail. Now the CFR is freed at the start of the download. The problem was found on the Antares terminal - which has less memory than most other terminals. However, the problem has always existed and could have affected any terminal. ---------------------------------------------------------------------------- End of changes in version 1.40Q version of product (August 2000). ---------------------------------------------------------------------------- 2000-08-23: Modified the SHOW_IDLE_TIME keyword for EMULATOR.INI to allow you to specify a date and/or time format. These would override the formats that are downloaded from DCConnect (which aren't currently able to be changed any way!) The choices for date format are: MMDDYY YYMMDD DDMMYY JJJYY YYJJJ the choices for time format are: 12 24 If both date and time are to be shown, separate the date and time format by at least 1 space or comma. Here are some examples: To show just the date using MMDDYY format, add the following line to EMULATOR.INI: SHOW_IDLE_TIME = MMDDYY To show the date using YYMMDD and the time using 24 hour format, add the following line to EMULATOR.INI: SHOW_IDLE_TIME = YYMMDD, 24 To show just the time in 24 hour format, add the following line to EMULATOR.INI: SHOW_IDLE_TIME = 24 Using SHOW_IDLE_TIME = Y is still supported and will use whatever formats are dowloaded from DCConnect (which are currently YYMMDD and 12 hour time). - The date separator can now be changed using the new keyword in EMULATOR.INI: DATE_SEPARATOR = - where the valid choices to the right of the equal sign are - / or . If this keyword is not used, the default date separator is the slash (/) character. - The time separator can now be changed using the new keyword in EMULATOR.INI: TIME_SEPARATOR = . where the valid choices to the right of the equal sign are . or : If this keyword is not used, the default time separator is the colon (:) character. 8-31-00 - Fixed a problem with the Win32 version of the Client trapping if a download is started while the Client code is looping in a CFR and not responding to the TERMINAL_OFFLINE return code. All versions of the Client will now respond to the CFR memory allocate request during the download with a no memory available response if the request is received while the CFR is actively running. ---------------------------------------------------------------------------- End of changes in version 1.40R version of product (August 2000). ---------------------------------------------------------------------------- 2000-09-21: Added support for new keyword in EMULATOR.INI for disabling the arrow keys. If the following statement is added to EMULATOR.INI: IGNORE_ARROW_KEYS = Y then pressing the DCConnect Client will no longer perform scrolling of the screen when the arrow keys are pressed. ---------------------------------------------------------------------------- End of changes in version 1.40S version of product (September 2000). ---------------------------------------------------------------------------- 2000-09-27: Message 9801 (Error in program command string) has been changed to show the actual program command string that is in error. This should help to understand what is going wrong - although it requires you know the raw program data format (e.g. RETURN = :R) 2000-09-29: Added to the menus, the ability to view the contents of user variables. A new DIAGNOSTICS sub menu was added to the main menu and the options TRACE LOG and DUMP MEMORY were moved to this menu from the main menu. You can view the contents of any user variable from 0-99 and you can specify to view the next non-blank user variable, given some starting point. 2000-09-30: Added the ability to step through a transaction program for debug purposes. Turning 'stepping' on and off is done using an option on the new DIAGNOSTICS menu. When stepping is active, the next command to be executed is shown at the bottom of the screen. You must press Enter to move to the next step. You can also press Esc to turn stepping off at any step in the program. 2000-10-23: In order to allow larger downloads, paging of the transaction program file (file 0) and validation files has been implemented. When paging is in effect, these files are loaded to the 'hard disk' of the terminal and are only loaded into the terminal's RAM memory, as programs / validation files are actually used. Previously, all files were loaded into RAM memory at all times. Please see the updated documentation regarding the new EMULATOR.INI keywords FILE_PAGING and LOCK_IN_MEMORY for more details. Note: In order for this feature to work properly when the transaction program file (file 0) exceeds 99,999 bytes, you must have a version of \DCCONN\DLL\TDCOMMON.DLL that is later than October 19, 2000 (which will be fix pack D or later for version 1.40 of the DCConnect products). Note: On certain devices (e.g. Antares), writing to the 'hard disk' is a slow operation and can therefore affect the terminal's responsiveness during a download. To get around this, the Poll Timeout parameter for the line will probably need to be increased in the DCConnect Line Settings notebook. By default this timeout is usually around 0.5 seconds. We've found that 1.5 seconds is usually sufficient - for both TCP/IP and serial lines. If the timeout is not increased, you may start seeing more 'Unexpected data' messages during the download or the download may fail altogether during the download of the transaction program file or a validation file - because the terminal did not respond in time to the DCConnect Server's load command. 2000-11-01: Updated the Spectrum24 flash build files (FLSHBLD.ZIP) to include the new level Symbol flash drivers( FLASHDSK.SYS, FLSHCTL.EXE and FLSHFMT.EXE). This driver change was required because Symbol is now using a different type flash chip on their new terminals. The replacement drivers are compatible with both the new and the older model terminals. 2000-11-01: Added a new KEY_CLICK ini file keyword. This keyword can be used to turn on the terminal keyboard key click sound. ---------------------------------------------------------------------------- End of changes in version 1.40T version of product (November 2000). ---------------------------------------------------------------------------- 2000-11-09: Fixed problem with Validation() API in CFR: it was failing to find a remote validation file name when that name was at the end of the list of valid file names (file E). 2000-11-09: Fixed problem enforcing the maximum length for a validation request. The maximum data length is from 87 to 94 bytes depending on the length of the validation file name (x.VAL to xxxxxxxx.VAL). Before this fix, if the data was too long, memory corruption occurred. ---------------------------------------------------------------------------- End of changes in version 1.40U version of product (November 2000). ---------------------------------------------------------------------------- 2000-11-29: Fixed GetTerminalAddress() API for the TCP/IP versions of the Client that run on any flavor of Windows. Prior to this fix, the IP address would always be 0.0.0.0 - although the port number was correct. 2000-11-29: Fixed another problem with the CFR API Validation() which occurred when there were more than 6 validation files in use. The problem resulted in a malformed validation transaction (it contained no validation file name). The DCConnect Server would give an error about this bad validation transaction. 2000-12-07: Fixed handling of different screen sizes for the 32-bit Windows version of the Client. The window is now precisely sized based on the -d (or DEVICE = ) parameter or by the NUM_ROWS and NUM_COLS parameters. The window no longer has scroll bars. The arrow keys are now used to scroll the contents of the screen - in the same way that they are used on real terminals. Also added the use of color for certain display attributes for the 32-bit Windows version of the Client. The reverse attribute shows up as white on blue. The blink attribute shows up as white on red and the underline attribute shows up as blue on black. Where combinations of these attributes are used, blinking supercedes reverse which supercedes underline. For example, if both the reverse and blinking attribute were selected, the blinking attribute would be used - so you'd get white on red. ---------------------------------------------------------------------------- End of changes in version 1.40V version of product (December 2000). ---------------------------------------------------------------------------- 2000-12-26: Fixed a problem which prevented the Client from reading transactions from the logfile on startup. This problem occurred when the MAX_TRANSACTIONS keyword was being used in EMULATOR.INI and the capacity specified matched the current capacity of the logfile. ---------------------------------------------------------------------------- End of changes in version 1.40W version of product (December 2000). ---------------------------------------------------------------------------- 2001-01-05: Additional changes for handling of different screen sizes by the 32-bit Windows version of the Client (original changes made 12-07-00). Cursor positioning was incorrect and part of screen was getting cleared when scrolling. - Cursor positioning after scrolling was also a problem for DOS versions of the Client. That too has been fixed. 2001-01-15: Added new EMULATOR.INI keyword POWER_OFF_TIMER to allow the user to specify how long a terminal can remain idle before it is automatically powered off by the Client. The format is: POWER_OFF_TIMER = 3 where the value specified is the number of minutes. Each time a key is pressed or a scan is done, the timer resets to the full timeout value. This keyword is only valid for Symbol Spectrum 24 terminals - which don't have an easy way to configure this timeout. Most other terminals include this kind of configuration in the native firmware - outside the control of the Client. ---------------------------------------------------------------------------- End of changes in version 1.40X version of product (January 2001). ---------------------------------------------------------------------------- 2001-01-19: For the 32-bit Windows version of the Client, using colors for the reverse/blinking/underline attributes (as described for version 1.40V above) is now only done if the following keyword is included in EMULATOR.INI: COLOR_ATTRIBUTES = Y Otherwise the attributes are displayed as they were prior to version 1.40V. 2001-01-22: The DUMP MEMORY option on the DIAGNOSTICS MENU now handles file 0 (transaction program file) even when paging is in effect. The contents of all transaction programs that are in memory can now be viewed. For those programs that are not currently loaded in memory, the string "!!<1e>" is shown. - The TRACE LOG and DUMP MEMORY options on the DIAGNOSTICS menu can now have the output go to the serial port of Antares terminals. Prior to this, sending the output to the serial port did not work. 2001-01-29: Added new CFR API GetTerminalSettings(). It takes two parameter, a pointer to the new TERM_SETTINGS structure and a value indicating which settings should be filled in. At this time, only two settings can be obtained: SETTING_NUMROWS and SETTING_NUMCOLS. SETTING_ALL is also defined to get all available settings. The TERM_SETTINGS structure contains 'numRows' and numCols'. These can be used to find out the physical dimensions of the view port of the screen (e.g. 16x21 for PTC960, 20x40 for JANUS2050, 15x20 for INTERMEC6400, ...). In the future, if we find additional terminal settings need to be added to this structure, they will be added at the end and new SETTING_ values will be defined. SETTING_ALL will always be defined as a union of all the other SETTING_??? constants. Here's an example of the APIs use: ... UCHAR numRows; UCHAR numCols; int main(int func, char * parms) { TERM_SETTINGS termSettings; GetTerminalSettings(&termSettings, SETTING_NUMROWS | SETTING_NUMCOLS); numRows = termSettings.numRows; numCols = termSettings.numCols; ... } - Fixed minor problem for Antares terminals in a TCP/IP network in the situation where an ill-formed packet was received. The bad packet was not being discarded properly. This actually would only occur if the DCConnect Server or other server were actually generating the packets badly. (This problem was found when the terminal was talking to an echo server, not the DCConnect Server). - The version description string (shown in parenthesis in the title on the MAIN Client menu) now uses "ANT" for "Antares", "BAT" for "batch" and "UDP" for most TCP/IP versions of the Client except for those that actually use TCP stream sockets - like the Antares. - The GetTerminalAddress API no longer includes the port number for versions of the Client using TCP stream sockets (Antares) because the port number can vary each time the terminal connects with the DCConnect Server. 2001-01-30: Added the display of the message "SWITCHED HOSTS!" if the Client detects that a different DCConnect Server is talking to it. That message is followed by a message showing the IP address of the new host. ---------------------------------------------------------------------------- End of changes in version 1.40Y version of product (January 2001). ---------------------------------------------------------------------------- 2001-02-01: Copyright changed to 2001. 2001-02-05: When stepping through a transaction program, the next command now shows on the configured status row - instead of always using the last row on the screen. 2001-02-07: Fixed problem with GOTO/GOSUB command that caused a branch larger than 64K bytes to go to the wrong place in the transaction program file. This problem was introduced with the 10-23-01 change for support of FILE_PAGING in version 1.40T. It is not a problem if FILE_PAGING is in effect. ---------------------------------------------------------------------------- End of changes in version 1.40Z version of product (February 2001). ---------------------------------------------------------------------------- 2001-02-14: Ran out of letters for 1.40! ---------------------------------------------------------------------------- End of changes in version 1.41 version of product (February 2001). ---------------------------------------------------------------------------- 2001-02-26: Fixed the cause of a stack overflow error when using any of the ComXXX() CFR API calls on an Antares terminal. 2001-02-28: The menu options TRACE LOG and DUMP MEMORY now work properly to the RS-232 port for terminals that use a TSR for serial port support (Telxon and Symbol Spectrum 24). ---------------------------------------------------------------------------- End of changes in version 1.41A version of product (March 2001). ---------------------------------------------------------------------------- 2001-03-05: The menu options DUMP MEMORY and VIEW USER VAR were both improperly showing characters with hex values greater than or equal to 0x80. They now now show as < xx > where 'xx' is the hex value. Before the fix they showed as < ffx where 'x' was the first digit of the 2 digit hex value. This problem was introduced in version 1.40T - when VIEW USER VAR was added. 2001-03-08: Fixed problem running 32-bit Windows Client on Windows 95/98. Problem was introduced in version 1.40V. ---------------------------------------------------------------------------- End of changes in version 1.41B version of product (March 2001). ---------------------------------------------------------------------------- 2001-03-30: The DUMP MEMORY option can now view any validation file, not just 2-7. Meaningful names are now given for each file - instead of just 0, 1, 2, ... 2001-04-04: Added support for initiation of transaction 55 when data is received on the RS-232 port. If a transaction program is bound to position 55 ("055: RS-232 Port" in DCConnect), then if the terminal is idle (not running a transaction program) and any data is received on the serial port, the "055: RS-232 Port" transaction program will be started. Similarly, when any transaction program ends, if there is data remaining in the RS-232 input buffer, the "055: RS-232 Port" program will be started right away. It is therefore recommended that the "055: RS-232 Port" program take care to read all data from the port before it ends. Unlike 7527 terminals, when the RS-232 initiated program starts, the data from the serial port is not already in user variable 0. Instead the CFR API ComRead() must be used to retrieve all data that is in the Client's internal incoming RS-232 buffer. This is how the 7526 terminal handles RS-232 port initiated transactions. RS-232 port initiated transactions are not supported with batch versions of the Client - because of the conflict with the Client's use of the serial port to talk to the data collection server. When an RS-232 initiated transaction is bound to transaction 55, the terminal's serial interface is active at all times after the download completes, and the port is configured based on the RS-232 device parameters that are specified in the file 0 record 0 configuration that is downloaded. 2001-04-04: Fixed problem starting transaction program if NOOP is the first but not the only command in a transaction program. 2001-05-07: Fixed problem allocating/freeing validation files when FILE_PAGING is in effect and validation files are being swapped in and out of memory. This problem could manifest itself as a terminal lockup, 'invalid command' or 'parameter out of range' messages, or as a 'Download error - not enough memory available'. It might also cause downloads to fail with a message about insufficient space - even when a reboot of the terminal downloads successfully. 2001-05-08: Fixed an additional problem that could occur when FILE_PAGING is in effect. At times, an attempt to start a transaction program would result in no action (and no error message either) if that program could not be loaded into memory - even though total available memory was sufficient. A change to the use of compiler memory allocation functions resolved the problem. ---------------------------------------------------------------------------- End of changes in version 1.41C version of product (May 2001). ---------------------------------------------------------------------------- 2001-05-31: Added to CFRAPI24.H #definitions for PAGEDOWN_KEY, PAGEUP_KEY, HOME_KEY, BACKTAB_KEY, INSERT_KEY and DELETE_KEY. Also typedef for BOOL is no longer included when building Windows CFRs. 2001-06-04: Found that when using the arrow keys to scroll, if the screen width was 40 and the right arrow was pressed, the screen would be repositioned back at row 0 no matter where it was. - When 'Echo to Display' is turned off for an input field, we now show an asterisk (*) for each character that has been entered. We used to show a blank. 2001-06-06: The POWER_OFF_TIMER keyword for EMULATOR.INI that was added in version 1.40X for the Symbol terminals is now available for Intermec 6400 terminals. Both ETSPT.EXE (from TCP_FTP directory) and 6400_TSR.EXE were updated. 2001-06-07: Lots of enhancements for the CE versions of the Client: - Added support for the Intelligent Instrumentation LanPoint CE - Font now adjusts based on the NUM_ROWS and NUM_COLS keywords. When closest font doesn't use whole screen, gray border is drawn. - Extended keys now work (arrows, home, F1-F10, insert, delete) - Arrow keys now scroll screen contents when screen dimensions are less than 20x40. - Menu options are grayed when another menu option is in progress - Dump File option updated with same enhancements made in 1.41C for all other flavors of the Client. - COM1 now works (actually called COM1: in Windows CE) - DUMP MEMORY and TRACE LOG memory options now work to COM1 at 19200, 8, None, 1. - Improvements in performance for screen updates. - Cursor now properly sized, positioned and not visible when not in visible portion of screen. - Fixed the DUMP MEMORY and TRACE LOG options for Antares so that when they write to the serial port they now use 19200 just like all the other flavors of the Client do. - DUMP MEMORY and TRACE LOG options now work for 32-bit Windows Client too. - The Antares terminal will now return the bar code type in the data (byte 0) returned by a SenRead() CFR API call. Before this change the returned bar code type was always 0xff. Note: the Antares does not distinguish between EAN and UPC; UPC is returned when either an EAN or UPC code is scanned. - Added to CFRAPI24.H the constants CODE_49, CODE_16K and PLESSEY as possibilities for the bar code type. - For Symbol Spectrum 24 terminals, we now return MSI bar code type properly. We used to return 0xff. 2001-06-08: The 32-bit Windows and Windows CE versions of the Client can now run multiple copies from the same directory, provided that the port number is specified on the command line using the -P option. In this situation, the logfile name will be based on the port number (e.g. DCC07501.LOG and DCC07501.NDX) and the local copy of a downloaded CFR will also have a name based on the port number (DCC07501.DLL). If the port number is not specified on the command line, then the names LOGFILE.LOG and LOGFILE.NDX are used for the logfile. Note 1: Even if TCPIP_PORT is specified in EMULATOR.INI, the value for that parameter is not known at the time the logfile is initially processed because the logfile processing is done before EMULATOR.INI is read. Note 2: Command line parameters take precedence over their counterparts that might be found in EMULATOR.INI. - The TCP/IP versions of the Client will now exit with ERRORLEVEL set to 1 if there is an error trying to create a socket or bind to it. This was done to allow a batch file to detect if the Client had a TCP/IP error so that it could try a different port number. ---------------------------------------------------------------------------- End of changes in version 1.41D version of product (June 2001). ---------------------------------------------------------------------------- 2001-06-13: Fixed problem positioning cursor for scan only fields when Enter was pressed and the Client was running on a PC that was not able to get distinguish scanned input via a TSR or via the use of the keyword SCAN_SENTINEL_CHARS. The cursor positioning problem would also occur for AK and NK commands when Autofill was not active. Also found autofill was not even properly being allowed for the NK command. - Added new constants to CFRAPI24.H for serial port configuration values for baud rate, parity, data bits and stop bits. The new constants match the old constants except that they have CFR_ as a prefix. The old constants are still in the file for use when building 7524 or DOS CFRs. But for Windows CFRs, the CFR_???? constants must be used because some of the others conflict with constants in winbase.h. The CFR_??? constants are also available when building 7524/DOS CFRs. So the same source can be used to generate DOS/7524 and Windows CFRs that talk to the serial port. 2001-06-14: Added ability to read scanner input from the serial port by adding a new parameter to EMULATOR.INI: USE_RS232_FOR_SCANNER = Y By default, it is expected that each scan received from the serial port will be terminated with a carriage return character (ascii value of 13 in decimal). However, you can specify an alternate terminating character by replacing the Y above with the decimal number for the ascii value of that character. For example, if the terminating character will be a line feed (ascii value of 10 in decimal), you would use: USE_RS232_FOR_SCANNER = 10 When using the serial port for the scanner, the port is configured based on the RS-232 device parameters that are downloaded to the terminal. These are configured in DCConnect from the Terminal Settings notebook, on the Devices tab, RS-232 device page. In this mode, the serial port is only turned on when scanner input is expected. That is - when a DB, FB, KB or VB command is waiting for input or when a READ command that specifies SN or SA is waiting for input. Also, for the entire duration of any CFR call, the scanned input could occur at any time, so the serial port will be active then as well. ---------------------------------------------------------------------------- End of changes in version 1.41E version of product (June 2001). ---------------------------------------------------------------------------- 2001-08-08: Fixed problem with use of RS-232 initiated transactions. When CFR calls were made to read the port, the port was unnecessarily closed and reopened - resulting in the resetting of the input buffer and thus possibly resulting in the loss of some data that had been read. 2001-09-21: Added support for the keyword TIMEZONE_ADJUST in EMULATOR.INI. This keyword is primarily intended for use when the DCConnect Client is running in a Citrix environment. For all the details please see the section about TIMEZONE_ADJUST in the DCConnect Client documentation. ---------------------------------------------------------------------------- End of changes in version 1.41F version of product (September 2001). ---------------------------------------------------------------------------- 2001-11-14: The location of all files used by the Client on the device can now be specified using the environment variable DCCLIENT - except on Windows CE devices. For Windows CE devices use the registry key: HKEY_LOCAL_MACHINE\SOFTWARE\IBM\DCConnect Client\path For non-Windows CE devices, if the environment variable is not defined, the files are looked for/created in the current directory. Because Windows CE does not support environment variables or the concept of the current directory, if the registry key above is not defined, the files are looked for/created in the root directory of the CE device. The files affected are: - ETSCHECK.LIC - EMULATOR.INI - LOGFILE.LOG and LOGFILE.NDX (used for storing transactions) - All files that are 'paged' to disk during download - The CFR DLL that is written to disk during download (32-bit Windows and CE only) 2001-12-06: Windows CE only: Added support for the keyword SELECT_FONT which is used to specify which font the Client should use on the terminal. For all the details please see the section about SELECT_FONT in the DCConnect Client documentation. The name of font in use can be found on the second page of the View Settings screens. - Windows CE only: Created the 'Diagnostics' pull-down, moved the 'Trace Logfile...' and 'Dump Memory...' options to it. Then added the missing 'Start Stepping...' and 'View User Variables...' options to it. - Windows CE only: Added support of reverse video. - Esc can now be used to exit the Transaction Count screen. 2001-12-18: Fixed problem parsing EMULATOR.INI when comments were at the end of a line. Also fix bug printing error if TIMEZONE_ADJUST value was invalid. 2002-01-03: Windows CE only: Fixed problem where menus would sometimes disappear if the Client were moved to the background and back. - Windows CE only: Pressing X to close now results in a confirmation pop-up. - Menu titles are now centered based on number of columns defined. 2002-01-07: Added support for MENU_PASSWORD keyword in EMULATOR.INI - which, when used, requires the user to enter the correct password before gaining access to any menu option. See the documentation for all the details. This is valid for all flavors of the Client. 2002-01-08: Windows CE only: Added support for the MENU_ITEM keyword in EMULATOR.INI. This allows for new menu items to be added to a new 'User' pull-down. These menu items are tied to user-created functions in a DLL, ETSUSER.DLL. See the documentation for all the details. 2002-01-11: Better checking for invalid command - especially when APNDSTR has invalid length. 2002-01-16: Fixed problem when using TIMEZONE_ADJUST. An adjustment back to the midnight hour (00) was incorrectly setting the hour to 24. ---------------------------------------------------------------------------- End of changes in version 1.41G version of product (January 2002). ---------------------------------------------------------------------------- 2002-01-24: Batch versions of the Client that are doing dial-up will now wait up to 10 seconds to see if the line is already connected to the DCConnect Server before dialing. This allows the same terminal to be plugged into a dock with a dedicated line or a dock that requires dial-up to establish the connection. 2002-01-29: Windows CE only: Added support for FULL_SCREEN keyword in EMULATOR.INI. See the documentation for all the details. Added button to toolbar for toggling software keyboard. 2002-02-05: When SHOW_IDLE_TIME was being used and NUM_COLS was used to override the default number of columns, the time would still be shown based on the default. This has been fixed. - Windows CE versions of the Client now use an icon that looks like a barcode. 2002-02-19: Windows CE only: fixed problem handling MAX_TRANSACTIONS parameter. This was introduced with the 12-06-01 change to support the SELECT_FONT keyword in EMULATOR.INI. 2002-02-21: The scanner is now turned on when the Client exits. This allows testing of the scanner at the DOS prompt on an Antares and other terminals. 2002-02-21: Fixed problem showing message on startup if the MAX_TRANSACTIONS parameter was out of synch with the current logfile size and the fact that transactions were in the logfile prevented the Client from changing the size. ---------------------------------------------------------------------------- End of changes in version 1.41H version of product (February 2002). ---------------------------------------------------------------------------- 2002-02-27: Added support for new EMULATOR.INI keyword IGNORE_UNDERLINE for support of LXE's MX2 terminal and the PSC/Percon Falcon terminal (same physical terminal). Must set equal to Y, otherwise text that is supposed to have the underline attribute (such as the menu titles) will not be visible. See the documentation for a complete description of this keyword. - Added support for new EMULATOR.INI keyword DONT_CHANGE_SCREEN_SIZE for support of LXE's MX2 and VX1 terminals and the PSC/Percon Falcon. Must set equal to Y, otherwise the Client might change the screen size inappropriately. The Client already does this when the device type is set for certain devices such as JANUS2010/2020, PTC960, MAXILAN and FMT10X0. See the documentation for a complete description of this keyword. - Fixed problem that caused a lockup on the LXE MX2 terminal. Client was making a TSR call to set up the scanner even when the keyword USE_TSR_FOR_SCANNER was not being used. 2002-03-06: Added support for new EMULATOR.INI keyword PF_AUTO_ENTER which tells the Client to assume an Enter key has been pressed after any PF Key is pressed during a READ command for which PF Key input is allowed. This is true even when the PF Key String associated with the pressed PF Key is 0 length. The Client now gives an alarm beep if you try to press a key for a PF key number that exceeds the current value of NUM_PF_STRINGS. This applies only to READ commands with PF Strings defined as a valid input 'device' - not using PF Keys in ONKEY/ONSUB commands or to start a transaction program. 2002-03-14: Fixes to prevent Windows versions of the Client from trapping if an invalid CFR is loaded. 2002-03-29: The CFR packages (CFRUTL24.ZIP, CFRSMP24.ZIP and CFRPAN24.ZIP) are now set up to use the environment variable CFRTOOLS to find the .H and .LIB files. 2002-04-19: Fixed problem in DOS versions of Client where startup error messages (e.g. for missing license file) would not show properly. 2002-05-03: Added support for USE_TSR_FOR_KEYBOARD keyword in EMULATOR.INI and created falc_tsr.exe for use with the PSC/Percon Falcon terminal and its twin the LXE MX2 terminal. The use of this TSR is required in order for the Client to be able to distinguish between keyboard and scanner input on these terminals. This keyword must be used with USE_TSR_FOR_SCANNER. See the documentation for all the details. 2002-05-03: The specifying of a MENU_PASSWORD in EMULATOR.INI no longer affects the Txtn Count menu option. 2002-05-10: Fixed problem showing startup messages on Windows CE - for example: when the TCP/IP port is not available. 2002-05-10: Removed some debug message generation for COM READ errors in WIN32 version of Client. 2002-05-14: Fixed problem with transaction logfile and index file sizes on Windows CE devices. 2002-05-15: Windows CE only: The MENU_ITEM keyword now allows an optional password parameter. ---------------------------------------------------------------------------- End of changes in version 1.41I version of product (March 2002). ---------------------------------------------------------------------------- 2002-06-06: Version bumped up to 2.00 for release of new CD 2002-06-06: Added support for MENU_KEY keyword in EMULATOR.INI in order to override the use of ?, = and Home for bringing up the Client menus. See the documentation for a complete description. 2002-06-06: The MENU_PASSWORD for DOS and 32-bit Windows version of the Client is now required when any option other than VERSION INFO and TXTN COUNT is selected from the Main Menu. Of course if MENU_PASSWORD is not defined in EMULATOR.INI, no password is required. 2002-06-13: Windows CE only: the Client now handles the pressing of the extra X button on the upper right corner of terminals that are loaded with Pocket PC 2002. - Windows CE only: if a second copy of the Client is started it will now locate the first copy and bring it to the foreground and the second copy will end itself. 2002-06-19: For 32-bit Windows flavor of the Client fixed problem setting time on Windows 95/98/Me systems (wasn't being done at all because a non-supported function was being called to set privileges). - For DOS flavors of the Client, corrected problem where time would be off by an hour during daylight savings time transitions. Had to request time directly from DOS instead of using C function. ---------------------------------------------------------------------------- End of changes in version 2.00 version of product (June 2002). ---------------------------------------------------------------------------- 2002-06-25: Windows CE only: For the 6-13-02 fix to handle the extra X button in Pocket PC 2002, the Client no longer goes through the exit process when the button is pressed. This is because the message sent by the pressing of the extra X button is also sent in other situations which have nothing to do with exiting and the Client has no way to tell the difference. So the Client will merely ensure that it is in the foreground. Before the 6-13-02 fix, pressing the X button would move the Client to the background. 2002-08-01: Fixed problem with backspace when getting user variable number on the View User Var screen. - Fixed problem where serial port could be shut off in the middle of a dial-up attempt. ---------------------------------------------------------------------------- End of changes in version 2.00A version of product (June 2002). ---------------------------------------------------------------------------- 2002-08-15: Length of phone number for modem dial-up can now be 120 characters. 2002-08-20: Fix for FLSHBLD.EXE - was not self-extracting properly. - MAKEHEX.BAT (part of FLSHBLD.EXE for Symbol Spectrum 24 terminals) now copies EM.HEX to xxxxx.HEX where 'xxxxx' is the parameter passed in to MAKEHEX.BAT. LOADTERM.BAT (also part of FLSHBLD.EXE) now takes the same parameter that MAKEHEX.BAT takes. 2002-08-21: If none of the keywords SCAN_SENTINEL_CHARS, USE_TSR_FOR_SCANNER or USE_RS232_FOR_SCANNER were being used, the Client would do auto-filling for READ commands that were variable length and allowed scanning. The mistake was in the code that converted scanner reads to keyboards reads so that you could run transaction programs that had scan-only inputs on the Windows flavor of the Client, for example, even when you had no ability to scan from the PC. The auto-filling no longer occurs when it shouldn't. 2002-08-22: Decreased MAX_TRANSACTIONS parameter to 100 from 135 in the EMULATOR.INI provided in FLSHBLD.EXE for Symbol Spectrum 24 terminals so that we wouldn't have disk space problems when trying to start the Client. 2002-08-23: When a terminal comes out of suspend mode, the Client now does a few more retries to communicate with the DCConnect Server. This is because the first attempt to send the 'I-am-here' message to the Server can sometimes get lost while the terminal TCP/IP and radio drivers are reinitializing themselves during the resume process. 2002-08-26: Fixed problem switching transaction logfile sizes. Would not switch even when it was empty. Workaround was to delete the logfile and index file (e.g. LOGFILE.LOG and LOGFILE.NDX). - Added FLSHPREP.BAT to the self-extracting zip FLSHBLD.EXE for Symbol Spectrum 24 terminals. This is needed in order to load the DCConnect Client .hex file to the terminal any time after the initial load. - Fix for loading CFR on Windows CE devices ---------------------------------------------------------------------------- End of changes in version 2.00B version of product (August 2002). ---------------------------------------------------------------------------- 2002-08-28: Client is no longer terminated when it receives a break or terminate signal (e.g. when someone presses Cntrl-C). You may still see the ^C show up on the screen but a repaint of the screen will clear that up. 2002-08-30: Fix for problem with positioning of view port on the Intermec 6400. A call that the Client was making to obtain the current screen size was actually interpreted by the 6400 BIOS as a request to move the view port to the bottom of the screen. This problem was introduced with the 2-27-02 change to add support for the DONT_CHANGE_SCREEN_SIZE keyword. 2002-09-26: Fixed problem with the get user variable host command 'Q' for 32-bit versions of the Client (Windows CE / Windows 95/98/Me/NT/200/XP). Data corruption resulted in invalid response going back to the Server (part of TCP/IP message number was overwritten). ---------------------------------------------------------------------------- End of changes in version 2.00C version of product (September 2002). ---------------------------------------------------------------------------- 2002-11-28: Fixed problem for Symbol 38xx, 68xx terminals (spec24\etspt.exe) in the API SpkBeep and the host beep command (CMD 5). Due to an interrupt conflict, there could be a 10+ second delay whenever an attempt was made to beep the speaker. 2002-12-03: Added support for TSR_INTERRUPT keyword in EMULATOR.INI and the ability to pass in the interrupt value as a parameter for 6400_tsr.exe, falc_tsr.exe, s24_tsr.exe, and telx_tsr.exe. This was necessary for the PSC Falcon / LXE MX2 terminal where the use of default interrupt 0x6A caused the terminal to hang. (Found that interrupt 0x63 worked). 2002-12-18: Win CE only: Fixed problem where screen font would change after a certain period of usage - usually a day or two. ---------------------------------------------------------------------------- End of changes in version 2.00D version of product (December 2002). ---------------------------------------------------------------------------- 2003-03-05: Fixed problem with fast-clocking transactions when no program was bound to function 30. This was introduced in the 1.40T version of the Client. 2003-05-21: Added support for the POWER_OFF_TIMER keyword for PSC/Percon Falcon and LXE MX2 terminals by enhancing falc_tsr.exe. 2003-08-14: More updates to the self-extracting zip file FLSHBLD.EXE for Symbol Spectrum 24 terminals: after load to terminal, EM.BAT is now available to run from the DOS prompt in order to restart the Client - just like other devices. Symbol provided a new SCANPARM.EXE that fixed problems when trying to update the scanner symbology configuration. Default SCANPARM.INI is smaller. 2003-08-27: Fix for Windows and Windows CE flavors of the Client; there was a potential for an access violation during shutdown of the Client while trying to unload the CFR. 2003-09-25: We now build a flavor of the Client for devices with an ARM processor (and compatible) running Windows CE 3.0 (and compatible later versions) without Pocket PC. Two such devices are the Symbol 88xx and the MA 1000 from Group Mobile. The executables for this flavor of the Client are in the .\ARMNOPPC subdirectory where the Client is installed (akin to .\IMEC700, .\LANPTCE, ...). ---------------------------------------------------------------------------- End of changes in version 2.00E version of product (August 2003). ---------------------------------------------------------------------------- 2003-10-02: Added new EMULATOR.INI keyword, UV_POOL_SIZE, which allows you to specify how much space is allocated for storing the contents of all user variables (0-99). In the past each UV took up 128 bytes of memory regardless of the actual content; so the 100 UVs consumed 12800 bytes of memory even if all were empty. Now a default pool size of 10000 bytes is used for all user variables; only user variables that contain data actually consume space in this pool. The UV_POOL_SIZE can be from 1000 to 99999 bytes. Of course the amount of RAM in the device places a limit on the practical maximum. The following command in EMULATOR.INI sets the UV pool size to 5000 bytes: UV_POOL_SIZE = 5000 Note: as part of this change, individual user variables are no longer limited to 128 bytes. However, the transaction record and the amount of user variable data that can be sent to the terminal and received from the terminal is still restricted by previous limitations. Work is in progress to increase these other limits as well. 2003-10-07: Fixed possibility of a trap in 32-bit Windows version of the Client if certain keys, such as the Home key, were pressed on certain menu screens - such as the VIEW USER VAR screen. ---------------------------------------------------------------------------- End of changes in version 2.00F version of product (October 2003). ---------------------------------------------------------------------------- 2004-01-14: Fixed cause of problem where a "Message 5 not found" message would flash briefly when a download was done during a fast clocking interval. 2004-03-16: New keywords for EMULATOR.INI: ABORT_READ_ON_RS232_INPUT and ABORT_ONKEY_ON_RS232_INPUT can be used to interrupt a READ/ONKEY command that is waiting for user input should data be received on the RS-232 port. - The CFR API ComQueryData now properly returns the number of bytes available from the serial port. ---------------------------------------------------------------------------- End of changes in version 2.00G version of product (March 2004). ---------------------------------------------------------------------------- 2004-04-30: Fixed problem handling 7 character passwords on Windows CE. 2004-04-30: ALL_SCAN_DATA_UPPER_CASE now works when USE_TSR_FOR_SCANNER is in effect. 2004-06-01: For the -h command line parameter and the TCPIP_HOST keyword in EMULATOR.INI, the hostname of the DCConnect Server can now be specified instead of its IP address. For example, in EMULATOR.INI, if the Windows flavor of the Client is running on the same PC as the Server, the DCConnect server and port could be specified as: TCPIP_HOST = localhost, 7500 Also a colon can now be used instead of the comma: TCPIP_HOST = localhost:7500 2004-06-01: Added support for the Intermec CK30, Intermec CV60 and Symbol MC 90xx terminals. 2004-06-01: Add a number of transaction programming enhancements. Please refer to the DCTPB User's Guide for more details about each of these: - New SET and SETSTR commands to go along with APND and APNDSTR commands. These new commands clear the target before appending the data. - The commands CURS, CLRP and SHOW can now use the relative row/column indicators PREVIOUS_ROW, NEXT_ROW and PREVIOUS_COLUMN, NEXT_COLUMN instead of absolute row/column values. - New MATH commands for performing the following operations: + - \ * / % (last two are integer divide and modulus) Numeric constants and fractional values are allowed. - New options for the FRMT command (similar to TC): - STRIP_LEADING_CHARS - STRIP_TRAILING_CHARS - STRIP_ALL_CHARS - TAKE_LEADING_CHARS - DROP_LEADING_CHARS - TAKE_TRAILING_CHARS - DROP_TRAILING_CHARS - PAD_LEADING - PAD_TRAILING - TAKE_MID_CHARS - DROP_MID_CHARS - UPPER_CASE - CUSTOM_STRING - CUSTOM_INTEGER - CUSTOM_FLOAT - ONKEY/ONSUB now allow nearly any key using the syntax ASCII_nnn or EXTENDED_nnn or one of the new keywords such as KEY_ENTER, KEY_SPACE, KEY_CANCEL, ... - The CLRP can now take a 4th parameter specifying how many rows should be cleared - each being cleared starting at the same column for the same number of columns. - Many commands now allow global variables/local variables/ parameters instead of hard-coded values or strings: - AKA - TransID - APND/SET - Field number - Position - Length - CCFR - Parameter string - CLRP - Row - Column - Length - - # of rows - CURS - Row - Column - DLAY - # of Seconds - FRMT - Length - Right Strip Char - Left Strip Char - Fill Char - READ - Length - SHOW - Row - Column - Multiple variables (including global, local and parameters) can now be cleared in a single CLRD command. - Subroutines can now be passed parameters and return data using new SUB/ENDSUB command. Up to 92 parameters can be passed. Parameters passed into a subroutine may be global variables, local variables, parameters from a parent subroutine, the return code variable, numeric constants or text constants. - Support for up to 92 local variables (new Declare command) for each transaction program and each subroutine. - New return code user variable that can be set via the RETURN command or explicitly manipulated like other variables. - CFRs can access local variables, parameters and the return code variable in the same way that it can access global variables. 2004-06-01: The FULL_SCREEN keyword can now be used for Windows CE devices that do not have Pocket PC installed. 2004-06-01: New HIDE_MENU_BAR keyword available for Windows CE devices that need to maximize the amount of the physical screen that is available for transaction programs. When in effect, menus can be brought up using the same methods available for DOS and 32-bit Windows flavors of the Client. 2004-06-09: Fixed problem where transaction resend timer would only be kicked off once, thus resulting in only two send attempts for transactions. ---------------------------------------------------------------------------- End of changes in version 2.10 version of product (June 2004). ---------------------------------------------------------------------------- 2004-06-17: The SET command did not clear the target when the source was empty. 2004-06-21: The APND/SET commands now allow a variable / subroutine parameter for the delimiter. 2004-06-22: The download of a single validation file now ensures that any paged validation files and paged transaction programs are unloaded before attempting to allocate memory for the new validation file. ---------------------------------------------------------------------------- End of changes in version 2.10A version of product (September 2004). ---------------------------------------------------------------------------- 2004-10-06: Added ability to view parameters on the VIEW USER VARS screen. 2004-10-08: Fixed misalignment exception on Windows CE devices with certain processors. 2004-10-11: For Symbol Spectrum 24 terminals (e.g. PTD6840, VRC6940, WSS1040) had to remove support for allowing a hostname to be provided for the TCPIP_HOST keyword and the -h command line parameter. With this support included, the resulting executable for the DCConnect Client was too large to run properly. ---------------------------------------------------------------------------- End of changes in version 2.10B version of product (October 2004). ---------------------------------------------------------------------------- 2004-10-12: Added support for transactions with up to 750 bytes of data. Other changes that go along with this include: - Transaction logfile now contains variable length records instead of fixed length records. - Logfile capacity now specified as number of bytes and can be in the range from 1000-65535 bytes. The size is now set from the server. But if the Client starts and no logfile is found, a default one is created with a size of 1000 bytes or if the keywords MAX_TRANSACTIONS is defined, the logfile is created with the size of 131 * MAX_TRANSACTIONS. - The TXTN COUNT screen shows the number of transactions and it shows the number of bytes that are used out of the total capacity. - The Client no longer stores all buffered transactions in memory; only the oldest transaction is stored in memory. 2004-10-18: The AKA command was expecting a hex value when a variable or parameter was specified instead of a hard-coded value. It now looks for a decimal value. 2004-10-22: Corrected problem restoring the attributes when saving/ restoring parts of the screen using the CFR APIs VioReadCellStr/VioWrtCellStr, VioReadCell/VioWrtNCell. ---------------------------------------------------------------------------- End of changes in version 2.10C version of product (October 2004). ---------------------------------------------------------------------------- 2004-11-19: Some fixes for handling of the variable length record format of the logfile. 2004-11-23: You can now specify that instead of showing the idle menu the Client should run a particular transaction program. This in effect allows you to change the look and options available on the 'idle screen' on the fly. To accomplish this, simply add the following text to the first line of the Idle Menu: $$IdleProgram = nnn where 'nnn' is the number of the program to be started from 1 through 121. Spaces around the equal sign are optional. ---------------------------------------------------------------------------- End of changes in version 2.10D version of product (November 2004). ---------------------------------------------------------------------------- 2004-12-10: Put the hooks in place for Client, when running on Windows CE devices, to be able to control the scanner. This is done by creating a device-specific .dll called etshw.dll that contains entry points for the functions ScannerOpen, ScannerInit, ScannerOn and ScannerOff. At this time, that .dll has only been created for Intermec 700 devices running Windows Mobile 2003. 2004-12-10: Added new CFR API, SenPower, which allows the CFR to control when scanner input is valid. In the past, scanner input was valid for all CFR API calls for the entire duration of the CFR call even for calls that were not reading any scanner input. The prototype for the API is: USHORT SenPower(int enable); where the value passed in is a boolean. If 0 (FALSE) the scanner should turned off. If non-0 (TRUE) the scanner should be turned on. The first time SenPower is called by the CFR, the Client will set a flag telling it to no longer turn on the scanner for all CFR calls. Therefore, the CFR should call SenPower(0) in case 0 and case 2 of the CFR so that the scanner is turned off before any transaction programs are started. Even when this API is being used by the CFR, the Client will still turn the scanner off after all API calls - in case the CFR turned it on and forgot to turn it off. Note: Whether the scanner is actually powered off is up to the ETSHW.DLL. In some cases the scanner may be left on but its input might be ignored. For example, the ETSHW.DLL for the Intermec 7xx running Windows Mobile 2003 simply disables the Wedge input. The scanner is left on, but a different beep is given by the scanner if someone attempts to scan while the Wedge input is disabled. 2005-01-28: The PgDn and PgUp keys which are defined in cfrapi24.h as PAGEDOWN_KEY and PAGEUP_KEY are now actually available to the CFR. They also work on the View Settings menu. ---------------------------------------------------------------------------- End of changes in version 2.10E version of product (January 2005). ---------------------------------------------------------------------------- 2005-02-07: Added support for diagnostic keyword, TXTN_BUFFER_WARNING_COUNT. This is used to force the TXTN COUNT menu screen to pop up automatically when the transaction buffer reaches a certain minimum number of transactions. This lets the terminal user know the transactions are not being sent to the DCConnect Server - which may signal a communications problem. Specify that minimum number of transactions as follows: TXTN_BUFFER_WARNING_COUNT = 10 where 10 can be any number greater than 0. Eliminating this keyword or setting it to 0 turns off this feature. 2005-02-08: Fixed problem resulting in corruption of logfile in the following scenario: - Logfile contains no transactions - Next-in and next-out pointers are equal (as they should be when there are no transactions) and are anywhere but the start of the file. - The Client is started and receives its download of files. - The Client loses communication with the Server - One or more transactions are created (corruption occurs only with the first transaction that is created; it is written to the start of the file instead of at the head pointer) - The Client is shutdown before the first transaction could be sent to the Server (if first transaction is successfully sent before Client is shutdown, corruption in file is irrelevant because that transaction is maintained in memory). - Upon startup, the Client tries to read the first transaction from where it is supposed to be but instead it gets either the middle of some old transaction or part of the file that has been initialized to 0. The problem can manifest itself in a number of different ways depending on what is read from the file: hang, application exception, trap, partial or empty transactions, old transaction resent, ... 2005-02-08: Fixed minor memory leak in the Windows flavor of the Client (not in Windows CE or DOS). Every time the time was set, two handles would be allocated and not freed. ---------------------------------------------------------------------------- End of changes in version 2.10F version of product (February 2005). ---------------------------------------------------------------------------- 2005-03-21: Special keys, such as the tab key, used during an input command, such as READ, would end up putting nulls in the transaction record - if AUTO transaction setting was currently enabled. Any key resulting in a null is now ignored. 2005-04-06: Added support for the ONCE_ONLY option of the TXTN_BUFFER_WARNING_COUNT keyword in EMULATOR.INI 2005-04-13: Added support for the REPEAT option of the TXTN_BUFFER_WARNING_COUNT keyword in EMULATOR.INI. Added support for new keyword TXTN_BUFFER_WARNING_TIMER in EMULATOR.INI. This specifies a number of minutes after which a warning will be given if the transaction buffer contains transactions. 2005-05-16: Error transactions that reference a step number in the transaction program now use the program number rather than the transaction ID; the latter can be affected by an AKA command or the CFR API AliasTransID. ---------------------------------------------------------------------------- End of changes in version 2.10G version of product (May 2005). ---------------------------------------------------------------------------- 2005-06-06: Fixed problem showing the & character on Windows CE devices. It was being treated as a control character, signifying that the next character should be underlined. The Client now takes advantage of this heretofore unknown feature and it now supports the underline attribute in addition to reverse video on Windows CE devices. The only caveat is that the & character itself cannot be underlined; that is a restriction of Windows CE. A small change has also resulted in a slight increase in the performance of painting the screen for Windows CE devices. 2005-06-06: Painting of the idle screen and clearing of the screen for the CLRS command is now more efficient. 2005-06-10: Fixed the use of CFR intervals/alarms for Windows and Windows CE platforms. These are the intervals/alarms that can be set up using the TimerSetInterval and TimerSetAlarm CFR APIs ---------------------------------------------------------------------------- End of changes in version 2.10H version of product (June 2005). ---------------------------------------------------------------------------- 2005-10-03: Added support for if and else commands along with blocks in the if-else clause. See DCTPB documentation for more details. 2005-10-31: Fixed problem with internal step numbers that led to 'skip' operations going to the wrong place. ---------------------------------------------------------------------------- End of changes in version 2.20 version of product (October 2005). ---------------------------------------------------------------------------- 2005-11-04: The trace log now pauses on each screen. 2006-02-13: Fixed problem accessing the last validation file in file E when calling the Validation API from a CFR. 2006-02-24: Antares terminals can only work with whole numbers in MATH, FRMT and IF commands. IF commands can now be used, along with the TEST command, to look at unpassed parameters in a subroutine. Also an unpassed parameter from one subroutine can be passed to another nested subroutine. Commands such as CURS, SHOW, DLAY that use variables for their parameters now accept values that contain a decimal point as long as all digits after the decimal point are 0. A SKIP operation that results from a command such as CCFR, VRFY or TEST, will now skip the entire IF/ELSE construct if an IF command is what follows the CCFR/VRFY/TEST command. Fixed another problem managing internal steps for certain branch operations. ---------------------------------------------------------------------------- End of changes in version 2.20A version of product (February 2006). ---------------------------------------------------------------------------- 2006-03-21: Fixed cause of eventual filling of user variable pool if Esc is pressed to end a transaction program. The source and target of an APND or SET command can now be the same. In the case of a SET command, the result is that the variable is not changed. In the case of an APND command, the result is that the contents of the variable are duplicated. Fixed problem using the SET command with the transaction buffer. ---------------------------------------------------------------------------- End of changes in version 2.20B version of product (March 2006). ---------------------------------------------------------------------------- 2006-11-02: Fixed cause of "Not STX, ..." messages shown on Windows CE terminals when using a hostname and the host is not available. 2006-12-11: Sped up the return from subroutine calls. ---------------------------------------------------------------------------- End of changes in version 2.30 version of product (December 2006). ---------------------------------------------------------------------------- 2007-01-15: In FULL_SCREEN mode, the X in the upper right corner of Windows Mobile devices is now removed. 2007-01-29: For Windows CE flavors of the Client, sounds are now generated as .WAV files allowing for variation in the frequency and duration. Before all application-generated sounds were the same tone and duration. 2007-01-30: Fixed problem exiting the Client or showing certain menu screens on Windows CE devices when MENU_KEY is defined. 2007-01-31: Workaround implemented to handle CE devices with Hi-Res displays which don't provide true fixed character width fonts. ---------------------------------------------------------------------------- End of changes in version 2.30A version of product (February 2007). ---------------------------------------------------------------------------- 2007-03-02: Added support for MAPPED_KEY keyword in EMULATOR.INI. Use it to map the ASCII value of one key to another. Extended keys may be mapped to or from as well. For example to map the A key (ASCII 65) to the B key (ASCII 66): MAPPED_KEY 65, 66 To map the A key to the F1 key (extended ASCII 59): MAPPED_KEY 65, x59 Has been used for the Intermec CV30 in order to get the F1-F10 keys to work properly. 2007-03-11: CFR temporary file now written to root directory on Windows CE devices because certain devices (e.g. Symbol WT4070) had periodic slow write times to the non-volatile storage, causing downloads to fail due to a failure to respond to the DCConnect server in time. ---------------------------------------------------------------------------- End of changes in version 2.30B version of product (March 2007). ---------------------------------------------------------------------------- 2007-05-09: CE Config Tool now supports FINAL_MESSAGE command, COLDBOOT command and WARMBOOT as synonym for REBOOT. See the latest DCConnect Client User's Guide for the details. Also, if no [Registry] commands are performed, the registry flush is no longer done at exit or reboot. 2007-05-11: Better use of screen width when number of columns is an odd size such as 31. 2007-05-22: Added DONT_END to the CE Config Tool. See the latest DCConnect Client User's Guide for the details. ---------------------------------------------------------------------------- End of changes in version 2.30C version of product (May 2007). ---------------------------------------------------------------------------- 2007-06-14: Added support for IGNORE_KEY keyword in EMULATOR.INI See documentation for usage. 2007-08-07: The default for the RESEND_TIMER is now 5 seconds for TCP/IP flavors of the Client. The default for serial versions is still 25 seconds. ---------------------------------------------------------------------------- End of changes in version 2.30D version of product (August 2007). ---------------------------------------------------------------------------- 2007-12-21: Exit is now enabled even when the menus are showing (in Windows CE) and it does shut down the client. Enter can now be used to accept the password on Windows CE devices. 2008-02-18: Added new key options for use in stepping mode: 1-9,0 = Skip 1-10 steps S = Skip current subroutine. Only valid when stopped at a GOSUB or ONSUB command. All commands are processed in that subroutine as well as any subroutine(s) that it calls. Stepping pauses at the command following the subroutine call. R = Return from the current subroutine. Only valid when in a subroutine. Commands are processed up to and including the RETURN command. Stepping pauses where the subroutine returns. B = Leave the current (if or else) block. Stepping resumes after the end block command (}) that ends the current block. Any other blocks that are entered will be exited on the way to the target end of the block. 2008-02-22: Fix for handling of the if-else flow control when a goto command branches backwards in the program. 2008-02-22: Fix for cursor disappearing on Windows CE devices when dialog (for example Exit confirmation) is shown. Also fix for reverse video painting improperly. 2008-03-07: Windows CE: Generated .wav files are now created in the same folder as the transaction logfiles. Also, if the .wav file already exists, the Client will now use whatever is there rather than replacing it. This allows user to use their own .wav files. 2008-03-12: Fix for beeps. Conversion from 0.1 second to 0.25 granularity was resulting in 0 length beep for 0.1 and 0.2 seconds. Now all values are rounded up to the nearest 0.25 second. ---------------------------------------------------------------------------- End of changes in version 2.30E version of product (March 2008). ---------------------------------------------------------------------------- 2008-03-20: Better fix for cursor disappearing on Windows CE devices (2-22-08 fix had problem with extra cursors showing up). ---------------------------------------------------------------------------- End of changes in version 2.30F version of product (March 2008). ---------------------------------------------------------------------------- 2008-06-27: Added support for the VOLUME keyword in EMULATOR.INI for Windows CE devices. See the DCConnect Client User's Guide for more information. ---------------------------------------------------------------------------- End of changes in version 2.30G version of product (June 2008). ---------------------------------------------------------------------------- 2008-11-26: Added support for the TURN ON / OFF CMD LOG option in the DIAGNOSTICS menu for Windows and Windows CE devices. ---------------------------------------------------------------------------- End of changes in version 2.30H / 3.00 version of product (November 2008). ---------------------------------------------------------------------------- 2012-05-16: Added support for the SCAN_STRIP_COUNT_FRONT keyword in EMULATOR.INI. For example: SCAN_STRIP_COUNT_FRONT = 3 will strip the first 3 characters of every scanned bar code. The specified length may be from 1-128. The use of this keyword requires that the SCAN_SENTINEL_CHARS keyword also be used. In addition, if the stripped characters are determined to be AIM Symbology Identifier characters (first of three character sequence is ], the ending square bracket), then the identifier sequence will be parsed to determine the bar code type - which is a value that is returned in the first byte of the scan data buffer for the SenRead CFR API. Below is a list of the AIM Symbology Identifier values that are handled, along with the value from CFRAPI24.H that will be returned in SenRead for each. Note that there is always a 3rd 'modifier' byte that follows the 2 byte values shown below: ]A CODE_39 ]B TELEPEN_CODE ]C CODE_128 ]D CODE_ONE ]E UPC_A // This covers all UPC and EAN variations ]e RSS_CODE ]F CODABAR ]G CODE_93 ]H CODE_11 ]I I_25_CODE ]K CODE_16K ]L PDF417 ]M MSI_CODE ]N ANKER_CODE ]O CODABLOCK ]P PLESSEY ]R S_25_CODE // 2 bar ]S S_25_CODE // 3 bar ]T CODE_49 ]z AZTEC_CODE The following new bar code type values have been added to cfrapi24.h: #define TELEPEN_CODE 28 #define CODE_ONE 29 #define RSS_CODE 30 #define ANKER_CODE 31 #define CODABLOCK 32 #define AZTEC_CODE 33 ---------------------------------------------------------------------------- End of changes in version 3.00A version of product (May 2012). ---------------------------------------------------------------------------- 2012-06-07: Added the new SCAN_STRIP_COUNT_FRONT option to the VIEW SETTINGS menu. As a result a ninth page was added to the menus. Scan settings are on page 5. RS-232 settings are on page 6. ---------------------------------------------------------------------------- End of changes in version 3.00B version of product (June 2012). ---------------------------------------------------------------------------- 2012-06-15: Added flavor of the DCConnect Client for the Motorola MC 91xx device with Windows Mobile (6.5) or with Windows CE when running in VGA mode (instead of 1/4 VGA that is also available with Windows CE). Changes were needed to switch to a newer menu bar implementation, which shows at the bottom of the screen, because the old menu bar does not show correctly on the MC 91xx when in VGA mode. The executables for this device can be found in the MC91xx sub-directory where the DCConnect Client is installed. CFRs built for Intermec 700 or Symbol 81xx or Symbol 91xx will run unchanged on the MC 91xx terminals; there is no need to recompile them. Note that the FULL_SCREEN = Y option that can be added to EMULATOR.INI to "lock down" the device is no longer supported in this flavor of the DCConnect Client; the soft keyboard no longer works correctly when in that mode. "Lock down" of the device can instead be accomplished using Motorola's AppCenter tool which is a much more comprehensive solution for this functionality offering fine control over what icons are visible and what applications can be run by the user. ---------------------------------------------------------------------------- End of changes in version 3.00C version of product (June 2012). ---------------------------------------------------------------------------- 2012-08-14: Improvement to speed of transaction program processing on Windows and windows CE devices. Also changed the version from 3.00 to 3.08 to be consistent with the most recent IBM Data Collection CD version. ---------------------------------------------------------------------------- End of changes in version 3.08D version of product (August 2012). ---------------------------------------------------------------------------- 2012-12-01: Start of changes for direct compile of .COD files. ---------------------------------------------------------------------------- End of changes in version 3.08E version of product (December 2012). ---------------------------------------------------------------------------- 2013-01-20: Completed direct compile of .COD files. Added SET_LANGUAGE command. 2013-04-01: Added ENCRYPT command. ---------------------------------------------------------------------------- End of changes in version 3.08F version of product (May 2013). ---------------------------------------------------------------------------- 2013-05-14: The maximum "common" (non-language specific messages) is now 250 instead of 100. Named messages can now be 64 characters instead of 32. Fixed problem where the script name defined on the command line (-s) was not overriding the script name defined in EMULATOR.INI (SCRIPT_NAME). In compile-only mode, popup is now shown when compile is successful rather than just ending. New QUERY_VAR command: QUERY_VAR ( ResultVar, SourceVar, QueryType ) where QueryType can be any of: LENGTH, IS_NUMERIC or IS_NUMBER ---------------------------------------------------------------------------- End of changes in version 3.08G version of product (May 2013). ---------------------------------------------------------------------------- 2013-05-16: Compile errors involving unresolved labels or parameter list mismatches are now shown before warnings in ETSPT.MSG so they are easier to locate and handle. ---------------------------------------------------------------------------- End of changes in version 3.08G version of product (May 2013). ---------------------------------------------------------------------------- 2013-05-20: Corrected line number given in "command too long" compile error when the first failing line was preceded by blank lines and/or comments. 2013-05-22: Added more specific error messages for situations where 9801 (PGM command error) and 9802 (Parameter out of range) errors were shown. Default for message prompt (timer B) from 3 to 4.5 seconds. Added check to give compile error for CLRS with parameters; it should be CLRP. Fixed problem with CLRP command not handling the optional 4th parameter properly if it was a variable and the third was not - or vice versa. Also corrected order of parameter display (when stepping) of 3rd and 4th parameters. Display of GOTO/GOSUB during stepping now uses colon then opening paren not comma then colon. ---------------------------------------------------------------------------- End of changes in version 3.08H version of product (May 2013). ---------------------------------------------------------------------------- 2013-05-25: Added the ability to have comments in the middle of commands that span more than one line. Both // and /* comments are supported - either as the first non-white space characters at the beginning of the line or as as a comment at the end of the line, following part of the command. For example: CALL ADDL1 : BuildTxn ( Txn, // Result Var // ID, Badge, PW, /* Encrypted OptionalFld ) Changed QUERY_VAR to QUERY, switched the query type to the second position rather than the third and added the following query types which do not require the third parameter (source var): QUERY ( resultVar, NUM_ROWS ) // Height of screen "portal" QUERY ( resultVar, NUM_COLS ) // Width of screen portal QUERY ( resultVar, CURSOR_ROW ) // Current cursor row QUERY ( resultVar, CURSOR_COL ) // Current cursor col 2013-05-28: Added "quick" keys to bring up the Start Stepping and View User VAR screen in the menus: - The '@' will bring up the Start Stepping menu. Just press Enter once from that screen and you'll be back at the program with stepping mode in effect. - The '#' will bring up the View User Var screen directly. When done, press Enter to return to the program The View User Var screen now gives the option to show the return code variable, uvRC (also called gRC). The R key is used to show this. The View User Var screen now shows the variable names when the programs are loaded directly. Fixed the handling of the R key in stepping mode. Before the fix pressing R would run the program until the next RETURN command was found - even if that RETURN was from another subroutine call that was made after the point that the R was pressed. After the fix, the program pauses only after it returns from the subroutine that it was in when the R key was pressed. ---------------------------------------------------------------------------- End of changes in version 3.08i version of product (May 2013). ---------------------------------------------------------------------------- 2013-05-29: Arrow keys can now be used to move the "view port" for the menus just like they have always been able to be used to move the view port of the main transaction program screen. When in the menus and the view port is moved, the view port position for the main transaction program screen is not affected. Whenever the menus are entered - whether at the main menu or via a short cut key to a sub-menu - the menu view port is always repositioned to the top left corner. 2013-06-04: Added support for downloading of text files (e.g. .COD, .MSG) from DCConnect Server. 2013-06-13: The maximum command size, when counting white space, has been changed from 1024 to 4000 bytes. 2013-06-14: Encrypt was not allowing UV0 to be a target. ---------------------------------------------------------------------------- End of changes in version 3.08j version of product (June 2013). ---------------------------------------------------------------------------- 2013-06-28: Fixes for downloading of text files 2013-07-03: Added versioning of text file downloads via VERSION command. 2013-07-08: Added support for optional model parameter on the CFR_FILE command. ---------------------------------------------------------------------------- End of changes in version 3.08k version of product (July 2013). ---------------------------------------------------------------------------- 2013-08-06: Added support for terminal name resolution via new -n command line parameter and new keyword TERM_NAME for EMULATOR.INI. Use either of these to specify a valid terminal name in the DCConnect configuration, and in the DCConnect configuration, specify 255.0.0.0 oras the IP address for this terminal. The terminal can then connect to DCConnect server by name without the server needing to know its IP address or hostname ahead of time - assuming the client has configured the server's IP/hostname via the -h command line parameter or TCPIP_HOST keyword in EMULATOR.INI. This allows clients to connect to the server when a VPN is involved - which is typically a problem because the client's IP address and hostname are usually not known ahead of time in this case. ---------------------------------------------------------------------------- End of changes in version 3.08L version of product (August 2013). ---------------------------------------------------------------------------- 2013-08-15: Added support for [CONFIG] section title in EMULATOR.INI to allow for InstallShield update of that file using the standard Windows .INI update mechanism. 2013-08-19: Fixed time stamp shown in COMMANDS.LOG when command logging is used. Used to show UTC time rather than local time. 2013-08-22: Maximum length allowed by APNDSTR/SETSTR changed from 256 to 999. Also now properly generate an error if that length is exceeded. Previously, the data would be truncated without notification. An error is now generated when multiple programs use the same key ID in their KEY statements. When text scripts are in use, the VIEW USER VAR screen now shows local variable names when GOSUB ( key_id, 1 ) is used to call the program as a subroutine. ---------------------------------------------------------------------------- End of changes in version 3.08m version of product (August 2013). ---------------------------------------------------------------------------- 2013-08-29: The "Loading..." message during a download now shows the block # before the file number/name so that when running with a smaller NUM_COLS value (e.g. 20 columns) and a text file load is in progress the number will be visible and it will not look like the download is stuck. 2013-09-03: Added mechanism to detect if an incomplete download is present locally. If an incomplete download is detected on startup, the files will be ignored and a request will be made to the server for a complete download. 2013-09-06: Better detection of missing parenthesis at end of Declare command and better reporting of the line # when parenthesis is missing for any command. NOOP command no longer gives exception if considered outside of transaction program. 2013-09-11: The LOCK_IN_MEMORY keyword in EMULATOR.INI can now include a list of program numbers (1-121) or key names (F1, F2, PF1, ADDL1, ... - the same ones used for the AKA command) in addition to (or instead of) validation file names. Programs that are most commonly used, such as those that include common subroutines, are ideal candidates for being locked in memory. This will improve performance. ---------------------------------------------------------------------------- End of changes in version 3.08n version of product (September 2013). ---------------------------------------------------------------------------- 2013-09-20: When FILE_PAGING is in effect, the DUMP MEMORY option of the Diagnostics menu now lists all programs and their sizes and shows an asterisk next to those that are loaded in memory. The command line option -N (for terminal name) now properly overrides the EMULATOR.INI parameter TERM_NAME. 2013-10-04: Fixed cause of exception upon loading local files with certain errors. 2013-10-12: The @ and # menu shortcut keys made available in version 3.08i are no longer enabled by default. To enable them add the following keyword to EMULATOR.INI: ENABLE_MENU_SHORTCUTS=Y The MENU_KEY keyword for EMULATOR.INI now allows extended keys to be specified by putting X followed by the decimal value of the high order byte for the extended key code. For example, to specify the home key as the menu key: MENU_KEY = X71 Do not put a space between the X and the the decimal number. The X can be upper or lower case. Other common extended keys are: F1 = X59 F2 = X60 ... = ... F9 = X67 F10 = X68 Home = X71 Page Up = X73 End = X79 Page Down = X81 Insert = X82 Delete = X83 F11 = X133 F12 = X134 ---------------------------------------------------------------------------- End of changes in version 3.08o version of product (October 2013). ---------------------------------------------------------------------------- 2013-10-14: Fix for previous MENU_KEY enhancement to allow extended keys: the non-extended equivalent key for extended keys was also bringing up the menus. e.g. If X71 was specified to have Home bring up the menus, then G (also 71 but non-extended) was also bringing up the menus when it should not have been. 2013-10-24: The Client no longer logs warnings to ETSPT.MSG by default because there can be hundreds of warnings that have to be logged and the writing of these to the log can affect the performance of the handshaking with the server that occurs at the end of the download process. If warnings should be logged, add the following keyword to EMULATOR.INI: LOG_COMPILE_WARNINGS=Y or use the command line option: -o=LOG_COMPILE_WARNINGS 2013-10-24: Fixes for properly handling the COMPILE_ONLY mode. 2013-10-28: Fix for use of F11 and F12 keys on Windows CE flavors of the Client. 2013-10-29: Fix for excessive sending of 'I-am-here' messages when running in 'named client' mode. Could result in -303 errors (command not allowed) errors when applications such as Transaction Connection attempted to send commands to the client - such as setting user variables. 2013-11-08: After a CFR-only or scripts-only download that is part of a text-based configuration, the CFR initialization call was not being made. ---------------------------------------------------------------------------- End of changes in version 3.0.9 version of product (November 2013). ---------------------------------------------------------------------------- 2013-12-18: Added support for handling configuration commands for those flavors of the Client that support direct loading from text-based script files. These commands include COMMUNICATIONS_TIMEOUT, DATE_SEPARATOR, and RS232_BAUD_RATE. The complete set is documented in the Data Collection Transaction Program Builder User's Guide (dctpb32.htm). 2014-01-02: Fix for Windows CE platforms when detecting if a complete load of locally stored text files could be used without having to redownload from the server. 2014-01-03: Fix to handle scenario where Client fails to connect to host after local file load if it has the wrong host address. ---------------------------------------------------------------------------- End of changes in version 3.0.9a version of product (January 2014). ---------------------------------------------------------------------------- 2014-02-07: Fix for DataFile and Validation CFR APIs always returning error; introduced with implementation of direct text file compile. Added support for handling compressed files downloaded from server when in text file mode. Compression is handled for the text file, validation files and the CFR. Requires server files from February 2014 as well. ---------------------------------------------------------------------------- End of changes in version 3.0.9b version of product (February 2014). ---------------------------------------------------------------------------- 2014-02-25: Fix for validation from transaction program commands (e.g. VRFY) which would attempt remote validation when local should have been done. 2014-03-06: The files for the Intermec 700 (.\IMEC700 subfolder) are again being built with the 3.0 compiler in order to support Intermec 700 devices with Pocket PC 3.x. This will not allow the use of direct script compiling - just like the Intermec 600 and LanPoint CE builds. (Only 2 files are needed: etspt.exe and etspt.dll). However, for any Intermec 700 that has Pocket PC 4.x, the DCConnect Client build that is for the Symbol 90xx devices (.\SYM90XX subfolder) can be used - and this build does support the use of direct script compiling (3 files needed: etspt.exe, etspt.dll and etsscrpt.dll). ---------------------------------------------------------------------------- End of changes in version 3.0.9c version of product (March 2014). ---------------------------------------------------------------------------- 2014-03-14: Fix for Pocket PC 3.0 builds related to GOSUB / GOTO commands. Also fix for other builds when branching into or out of a block. ---------------------------------------------------------------------------- End of changes in version 3.0.9d version of product (March 2014). ---------------------------------------------------------------------------- 2014-03-19: Fix that caused a script-only download to be followed immediately by a full-download because the Client requested it. ---------------------------------------------------------------------------- End of changes in version 3.0.9e version of product (March 2014). ---------------------------------------------------------------------------- 2014-11-07: Fix for the Client ignoring settings in the Terminal Settings notebook - such as timeouts. ---------------------------------------------------------------------------- End of changes in version 3.0.9f version of product (November 2014). ---------------------------------------------------------------------------- 2015-08-05: For the SenRead API, the first byte returned, which is the symbology ID, now supports DATAMATRIX (34), QR_CODE (35) and MAXICODE (36). CFRAPI24.H has been updated with these constants. Note that these were added for PC and Windows CE versions of the DCConnect Client and the type is only filled in if the SCAN_STRIP_COUNT_FRONT keyword is used in conjunction with the device scanner hardware having been configured to prepend the bar code data with the 3 character AIM Symbology string (e.g. ]C0 for Code 128). As required by the use of SCAN_STRIP_COUNT_FRONT keyword in EMULATOR.INI, the SCAN_SENTINEL_CHARS keyword must also be used. Also added support for the keyword SCAN_LOOK_FOR_AIM_CODE (Y/N) which tells the client to look for the ] character at the front of the scan string. If found, the next character is interpreted to determine the symbology type according to the AIM standard and all three characters are stripped from the front of the scan data. If not found, then the scan data is not changed. See the DCConnect Client documentation for more details. ---------------------------------------------------------------------------- End of changes in version 3.0.9g version of product (August 2015). ---------------------------------------------------------------------------- 2015-09-25: Fix for the IGNORE_KEY keyword (in EMULATOR.INI) not working on the Windows PC platform. Minor improvement to CPU usage when waiting for keystroke in certain situations 2015-12-02: Fix for exception that occurs when attempting to log an error message if an invalid validation type parameter (TEXT, DOTVAL, BINARY) is provided for the LOCAL_VALIDATION command. Also, the documentation incorrectly spelled DOTVAL as DOT_VAL. The documentation has been updated but at the same, the Client now accepts either spelling. 2015-12-07: Added new optional parameter, DELETE_UNZIPPED, to the LOCAL_VALIDATION command that is used to specify which validation files should be downloaded to the Client device when text-based scripts are used. If included, this should be added after any other parameters. This parameter tells the Client to delete the local, uncompressed file after its contents are loaded. This can be useful if there is data in the uncompressed file that should not be easily visible. The DCConnect Client now looks for and ignores imbedded end-of-file characters found while processing text-based scripts files. ---------------------------------------------------------------------------- End of changes in version 3.0.9h version of product (December 2015). ---------------------------------------------------------------------------- 2016-01-25: Added support for loading a new version of the Client or its files (e.g. emulator.ini) from the DCConnect Server. This includes support for the emulator.ini keyword: USE_ROOT_FOR_DOWNLOAD_FILES=Y for any device that has slow non-volatile memory affecting the download. 2016-01-27: Fixed problem with Validation() CFR API that was introduced during implementation of direct compile of .COD files. 2016-03-16: Fix for failure to identify missing messages when doing a direct compile of scripts. For example, no error was given if an APND command referenced message number 120 and there was no MESSAGE command that defined the text for message number 120. 2016-07-03: Fixed the MC91xx build for running on the Intermec CN70 - and possibly other devices. Still version 3.1.0 because no code changed. ---------------------------------------------------------------------------- End of changes in version 3.1.0 version of product (July 2016). ---------------------------------------------------------------------------- 2016-09-28: Added Q as an option to quit the View User Vars menu screen - in case the Esc key is mapped. 2017-01-31: Added support for Android devices. Requires version 3.1.0b of the DCConnect Server. Added two new options for the QUERY command: MODEL and TOUCH_SUPPORTED Added KEYPAD_xxxx and ROW_PIXEL_SPACING keyword support for EMULATOR.INI - intended for use on Android terminals without physical keyboards. ---------------------------------------------------------------------------- End of changes in version 3.1.0a version of product (January 2017). ---------------------------------------------------------------------------- 2017-02-26: Added support for AUTO_SCROLL_ROW for Android builds of the DCConnect Client. This is used when the soft keyboard is showing to reposition the screen content such that the cursor row is visible. Added support for EMULATOR_INI command in text-based script files - as a means to download EMULATOR.INI as part of the script file download. Requires DCConnect Server fixpack 3.1.0c or later. For Android builds of the Client, the main menu now has a MOVE KEYPAD option for switching the keypad from one side of the screen to the other (if the keypad is configured in EMULATOR.INI). On restart the keypad position reverts to what is specified in EMULATOR.INI. ---------------------------------------------------------------------------- End of changes in version 3.1.0b version of product (February 2017). ---------------------------------------------------------------------------- 2017-03-06: Fix for Windows CE builds after changes made for Android build; getting file size for EMULATOR.INI was failing. Startup "I-am-here" message to server now delayed till after all local file processing is complete so that that processing does not delay replies to server commands. ---------------------------------------------------------------------------- End of changes in version 3.1.0c version of product (March 2017). ---------------------------------------------------------------------------- 2017-03-24: Android versions of the Client will now look for EMULATOR.INI (must be upper case) in the Download folder. If EMULATOR.INI is found in the Download folder, it supersedes the one included in the .apk installation package, if there was one. But an EMULATOR.INI that is downloaded from the DCConnect server will supersede all the others. Maximum font size increased for Android version of the Client. ---------------------------------------------------------------------------- End of changes in version 3.1.0d version of product (March 2017). ---------------------------------------------------------------------------- 2017-03-29: For Android flavors, the package name / application ID and consequently the installation path changed from com.ibm.datacollection.dcclient to com.ibm.gbs.datacollection.dcclient in order to comply with IBM naming guidelines. 2017-05-01: The 3.0.8d change to improve performance has been refined to be less CPU intensive during wait operations, such as waiting for a transaction program to be started or waiting for keyboard or scan input during a transaction program. 2017-05-08: Improved responsiveness of client to server commands while uncompressing and processing text script files. Also removed showing of subroutine names during this processing; only key (program) names are shown now. ---------------------------------------------------------------------------- End of changes in version 3.1.0e version of product (May 2017). ---------------------------------------------------------------------------- 2017-05-22: For Android flavors, fixed two problems that could cause the Client to crash during its shutdown or startup - particularly on devices with faster processors. Also added the showing of a "Restarting....." status message when the Client is restarted due to the completion of the downloading of Client files, including EMULATOR.INI. 2017-06-12: For Android and Windows flavors, added the EMULATOR.INI keyword: IDLE_DELAY_MIN_AND_MAX to allow for the tuning of the performance and subsequent battery usage of the DCConnect Client. 2017-06-30: Expanded the number of pixel rows included when the reverse video attribute is used - in order to better cover letters that extended lower than others - such as the capital Q. 2017-07-03: Non-debug Android version built for creation of signed package file. ---------------------------------------------------------------------------- End of changes in version 3.1.0f version of product (July 2017). ---------------------------------------------------------------------------- 2017-08-01: Added showing of license agreement for Android flavors. Only shows the first time the app is run after installation. 2017-09-15: Updated displaying of DCConnect Client name and version on title screen and in and in Version Info menu option per IBM Mobile app guidelines. All flavors use new format. 2017-09-19: Official signed release of the Android version of the DCConnect Client is now available. ---------------------------------------------------------------------------- End of changes in version 3.1.0g version of product (September 2017). ---------------------------------------------------------------------------- 2017-10-09: Fixed truncation of error messages related to loading and running Android CFR files. 2017-11-21: Added support for KEYPAD_FONT_SIZE keyword in EMULATOR.INI for overriding the default text sizing for keypad labels for Android devices. 2017-12-07: By default, the sizing of the text on keypad labels for Android devices is now automatically resized to maximize its size relative to the button size. This automatic sizing can be overridden by the KEYPAD_FONT_SIZE keyword in EMULATOR.INI. ---------------------------------------------------------------------------- End of changes in version 3.1.0h version of product (December 2017). ---------------------------------------------------------------------------- 2018-02-07: Fix for handling flow control through an if-then-else structure (including nested if-then-elses) after a GOTO or ONKEY that goes backward, into the middle of an IF statement or block. 2018-04-11: The text-file command INPUT_TIMEOUT was erroneously setting the same internal value that COMMUNICATIONS_TIMEOUT sets. 2018-12-18: Fix for crash of Android client on first run on devices with security patch that limits the amount of data that can be fetched by the getString API (for example, Nougat and Oreo). This occurred during the attempt to display the license agreement on first run of app after install. ---------------------------------------------------------------------------- End of changes in version 3.1.0i version of product (December 2018). ---------------------------------------------------------------------------- 2019-01-22: Android: Fix for misaligned rendering of buttons labels on the optional keypad that started in the Oreo version of Android. ---------------------------------------------------------------------------- End of changes in version 3.1.0j version of product (January 2019). ---------------------------------------------------------------------------- 2020-06-05: Android: Implemented the high / low frequency and duration for beeper functionality - for the SpkBeep CFR API and the CMD 5 beep command. Previously all beeps were a single frequency and always for 1 second. 2020-06-09: Increased the internal buffer size for Android, Windows and Window Mobile to speed up the download process by reducing the number of messages needed to transmit the download, particularly for the CFR. 2021-03-16: Added TEST SCAN/KEY option to the DIAGNOSTICS menu. Android: EMULATOR.INI can now be named with all lower case letters or all upper case. ---------------------------------------------------------------------------- End of changes in version 3.1.0k version of product (March 2021). ----------------------------------------------------------------------------