Data Master 2000 is open-source product: source code of all its components, written in famous Borland Delphi, is available for free download. This feature is extremely important and allows you to modify original code and make Data Master 2000 more suitable for your individual purposes. You can use modified versions of DM2000 as you want but you are specially prohibited from public distribution of modified versions (see license agreement for more details).
If you are beginner in the world of programming, DM2000 sources will help you to learn about advanced programming techniques, implemented in this project, and improve your own applications. Anyway I hope that these files will be useful for you. Programming topics covered in this project briefly listed below:
Data Master 2000 source code consists of several independent parts: VCL components, main DM2000 application, shell extensions, hardware-specific applications, MetaBase modules and demo programs. The most reusable part of DM2000 source code is Delphi components. DM2000 VCL component library includes a set of following components (click links for detailed description):
In addition, DM2000 VCL component library includes a number of utility procedures and objects. At present it is fully compatible with Delphi 6, but I hope that you can compile it by other versions of Delphi with minimal modifications. Although these components were specially created for DM2000 application, they can be widely used in other projects oriented in technical and scientific graphics and data processing. Two simple Delphi demonstrations, plotdemo.dpr and wksdemo.dpr included in samples.zip archive, can help you in using these components. See also DM2000 source code files for more information (note that you have to compile and install dm2000.dpk in order to load some of DM2000 units into the Delphi IDE).
Although direct modifications of the source code gives the highest degree of flexibility to the programmer, keep in mind that this is most complex and not the only way to program DM2000 (and probably not the best way in many cases), because this application supports OLE Automation and may be controlled externally by automation controllers without any modifications (see DM2000 Programmer's Guide for detailed instructions).