DCAL Tools
Useful tools for DCAL programming.

DCAL Manual


  • Programmers File Editor - Windows 95, 98, NT, and 2000. Features user programmable macros to enable use as a integrated development environment (IDE) for DCAL. Best feature is the price.... FREE. See below for additional files to use with this editor.
  • UltraEdit-32 - UltraEdit-32 is a disk-based editor for Windows 98/Me/NT/2000/2003 and XP (not Win32s). UltraEdit-32 supports 64-bit file handling (standard) on all 32-bit Windows platforms. Excellent for use as an IDE for DCAL. See below for additional files to use with this editor.

Editor Configuration Files

Build / Make Files

  • Build.bat - A simple batch file to provide visual feedback on compile errors or success. Works well with or without one of the editors featured above.

Code Snippets / Modules

  • SS_Fixes.txt - Ted Blockley's Fixes to problems with the SelSets DCAL functions under Windows. Download a copy of this file.
  • Another module by Ted Blockley and modified slightly by Patrick B. McConnell. This one will search for an available selection set for use by your macro. If no SelSet is empty, it will prompt the user to empty one. Helps to avoid the nagging "is it ok to use selset 8?" messages. Download a copy of this file.
  • Layer Memory module by Patrick B. McConnell. This module is used to have your macro remember what layer entities are to be created on. By using this module your macros can always know on which layer the user wants to place entities create by your macro. Download a copy of this file.
  • GetLine module by Patrick B. McConnell. Noticeably absent from the DCAL feature set is a routine to allow a macro to offer a choice of linetypes for selection by the user. This module fixes this omission. Download a copy of this file.
  • Ellipse Intersection Module by Bill D'Amico. This module will determine the intersection points of a line and either a complete ellipse or an elliptical arc. Source code and include file provided. File is a self extrracting zip file.
  • Dave Henderson describes some limits found in the current WRTMSG procedure in this file. He mentions that WRTMSG is limited to an 80 character input string. David provided a work around procedure.
  • Ted Blockley has discovered that the DWGNAME procedure will return long filenames when used under Windows; however, the GETFLNAME procedure is limited to input of 8 characters. To avoid any complications, Ted has come up with this procedure to convert a long filename to a standard 8 character filename.
  • David Henderson offers this code snippet to detect which version of DataCAD the user is running. Note: some machines may be setup with both DOS and Windows version installed in the same directory structure. In this case this procedure may not be accurate.
  • Entity Utilities Module. Here is a DCAL Module by Patrick McConnell to aid in the creation of entities. This module will simplify the creation of lines, arcs, circles, 'boxes', slabs and polygons.
  • Got some good pieces of code to share? Let's have 'em