============================= README.TXT: DTD 5.10 Release ============================= DTD 5.10 extends all features of DTD release 5.03 to newer compiler environments. DTD 5.10 supports Microsoft Visual C++ versions 6.0 through 9.0. However, the tool environments and command options are not compatible among these compiler versions. Check installation help files, the related Microsoft documents, and the DTD example makefiles for information about the correct options and environments to use. Following is a list of Microsoft products and the versions of Visual C++ compilers they are associated with: Microsoft Visual Studio 6 - Microsoft Visual C++ 6.0 Microsoft Visual Studio .NET 2002 - Microsoft Visual C++ 7.0 Microsoft Visual Studio .NET 2003 - Microsoft Visual C++ 7.1 Microsoft Visual Studio 2005 - Microsoft Visual C++ 8.0 Microsoft Visual Studio 2008 - Microsoft Visual C++ 9.0 Installed files ================ The installation program will place some files into folder "C:\Program Files\Microstar Laboratories\DTD". The following is used under the MSL DTD command window to build downloadable modules with Microsoft Visual C++ compilers. MSLDTD.BAT If you do not wish to use the command line environment, but instead integrate the build process into your own IDE or automation scripts, you can see an example of how to do this in the following make file for the NMAKE utility. MODMAKEM.MAK The following example configuration files show how to use the environment of the Borland C++ 5.5 free compiler. MODMAKEB.MAK MODULE.BPF MODULE.BPG MODULE.BPR MODULE.CPP The following is used during installation, uninstallation and configuration of the DTD and compiler environments. MDTDVARS.BAT MSLDTDCF.EXE The installer program will make a copy of the Examples file folder from location C:\Program Files\Microstar Laboratories\DTD\Examples and place the copy folder within the User "My Documents" folder. If you have a multi-user workstation, you might choose to make a copy of these files in the All Users "Shared Documents" folder. (The shared copies will not be cleaned away if you uninstall.) New functions ============== DTD 5.10 also provides some additional functions that can be used with DAPL 3000. These functions are not available with DAPL 2000; do not use them if DAPL 2000 compatibility is required. The new functions are: void __stdcall Sleep( unsigned long uS ) - yields execution control for the specified number of microseconds. unsigned __int64 __stdcall SleepUntil( unsigned __int64 ticks ) - yields execution control until the specified system tick count is reached. unsigned __int64 __stdcall u64SystemTicksGet( void ) - returns the current system tick count. unsigned __int64 __stdcall u64SysTicksToUs( unsigned __int64 ) - converts system ticks to microseconds unsigned __int64 __stdcall u64UsToSysTicks( unsigned __int64 ) - converts microseconds to system ticks Limitations of the embedded environment ======================================== Many features of C++ and its "runtime libraries" cannot work in the DAPL embedded environment. Sometimes the reason is obvious: keyboard access, BIOS access, time-of-day clock, other devices that DAP boards do not have. But sometimes there is no obvious reason why a feature should not work. C++ runtime functions are implementation dependent, and if an implementation depends on features of the Windows system for whatever reason, the function will not work in the DAPL environment. In particular, BEWARE OF THE FOLLOWING! -- Do not use exceptions. -- Do not use run-time type information. -- Do not use 'debug mode' builds. -- Use the non-standard __int64 and __uint64 types for 64 bit compatibility. -- Do not use threads and thread libraries Using Microsoft Visual C++ compilers ====================================== Install your Visual C++ compiler first, before you install the Developer's Toolkit for DAPL. The installer will identify the paths to your compiler and the DTD tools. To build a downloadable DTD module, invoke the Microstar Laboratories DTD command window using the Start | Programs menus. In the command window, use the CD command to change to the directory where your C++ source files are located. If you are making one of the example commands (or a variation), the Examples folder is already selected for the current directory, and you don't need to change anything. Invoke the compiler tools using the following command line. MSLDTD source.cpp Substitute for "source.cpp" the custom command code that you want to compile. If you want to build all of the example modules, invoke the examples makefile with the following command line. NMAKE /f EXMAKEM.MAK To use an automated build process, or any other build process that does not run in the MSL DTD command window, you can do this starting from a copy of the example makefile C:\Program Files\Microstar Laboratories\DTD\Src\MODMAKEM.MAK You can put this with your project source files, and invoke it with the NMAKE utility directly. Or you can examine what it does and configure the same steps into your build process. The makefile assumes that global environment variables point to the compiler and DTD install locations. If this is not the case, you must edit your makefile or equivalent build script to use the correct Visual C++ and DTD locations. You must also verify that the command line options are the appropriate ones for your compiler version. Compiling with the Borland C++ 5.5 compiler ============================================= Borland no longer supports this C++ compiler. Using it is possible, but not recommended except for legacy application support. To build downloadable modules using the Borland C++ 5.5 compiler and the Borland MAKE utility, use the CD command to make the folder with your source code file the current working directory. Then use the following command line form. "C:\Program Files\Borland\CBuilder5\Bin\make.exe" -f MAKEFILE Substitute for 'MAKEFILE' the name of the makefile you set up for your project. If you installed the compiler in a location different from the default as shown above, adjust for this in your command line. You can use the MODMAKEB.MAK file as an example for configuring your project makefiles. IDE systems ============ IDE software systems are not supported with the DTD 5.10 release. This does not say that you can't use an IDE, but it might not be straightforward getting it to work the way you want. The configuration must use exactly the right compiler and linker command options, as shown in the example makefiles. If you can achieve this, your IDE systems will work fine. ---- End of README.TXT ---- [END]