Color or monochrome $50
Reviewed by Ian Chadwick
This is the first of a series of reviews of CAD—Computer Aided Design (often called Computer Aided Drafting and Design)—programs. These programs are used by such professions as circuit designers, architects, draftsmen and surveyors.
CAD programs differ from paint programs in that they deal not with pixels but with vectors and objects. Objects are not stored as a series of pixels (bits set in video memory), but rather as points in "space," usually connected by lines. CAD programs have defined spatial environments, sometimes in three dimensions, so objects can be positioned with exactitude and sized accurately. The results are generally line-drawings, as compared with the broad canvas paintings created by DEGAS or Neochrome.
Three-dimensional CAD programs deal in planes, lines and points. Two-dimensional CAD programs deal in points and lines, but usually allow a layering effect so that 2D images can be drawn over each other to create such images as a multi-layered circuit board. Using layers and perspective, 3D effects can be simulated in 2D programs.
CAD programs provide object primitives—that is, pre-defined object types (circle, ellipse, line, rectangle, arc, spline curves, etc.) that are used as the basis of a drawing. Custom objects can usually be created as "components" by connecting lines or defining points, then saved and loaded into other drawings. This object-vector orientation also allows drawings to be saved as ASCII files, since only the points and connections need to be defined in most cases.
Because of its graphic nature, the ST is well-suited for CAD applications. Over the next five or six issues, the major contenders in this field will be reviewed.
FirstCADD is one of those rare software ports from the PC/MS-DOS world, where it is known as Generic CADD. The PC/MS-DOS version is up to 3.0, while the current ST version is 1.02. In the PC/MS-DOS version there are approximately 140 commands, compared to roughly 80 in the ST version.
This is an entry-level, two-dimensional CAD program, with enough features to permit complex drawing and design, using real-world measurement, but too few to be a serious professional tool. However, it serves quite well as an inexpensive introduction to CAD principles, and you can produce high-quality drawings with a modest amount of effort.
Although it offers a menu structure for command entry, FirstCADD is a TOS, not a GEM, application. The "menu" is a vertical list of commands and sub-commands which can be selected with the mouse or entered manually through the keyboard. The menu is actually a convenience rather than a necessity, and can be hidden to enlarge the drawing-display area. This mirrors the PC/MS-DOS version, but ST users will find the system awkward and clumsy compared with the smoother and more recognizable GEM menu structure. On the plus side, the menu is simply an ASCII file and can easily be customized for your own use.
The major problem with this method is that the menu cursor moves simultaneously with the drawing cursor, and you may sometimes click the mouse, thinking to work on a drawing but instead selecting a menu choice! Pressing Escape clears a command, although there is no Undo feature. If you find yourself in a menu without the correct command to display the previous menu (the component list, for example), you must twice type DM followed by Return to re-display the root menu.
You can also define the function keys (alone, not with Shift or Alternate) to perform any basic First-CADD command.
Because it's not a GEM application, FirstCADD also doesn't use the convenient file selector for loading or saving files, although it does, curiously, let you look at a directory list in order to find a file. Then you must type the path and name to load the file. It is unforgiving about such things as setting the default directory. This isn't a serious problem, merely annoying. You just have to remember to type the drive and pathname if you want to load a picture from a drive or path different than the one from which you loaded the program.
Drawings are made from the essential drawing entities, or primitives, the program supports (point, line, rectangle, two and three point circles, three and four point arcs, ellipses, regular polygons and b-spline, or complex, curves). Drawing is quite straightforward, using the mouse to define start and end points for most objects. The program takes care of the actual connections between points. Some objects, such as lines and rectangles, can be drawn with a "rubber band" effect so you can see where the boundaries are as you position them.
Once drawn, a line (most types, including curves and text) can be edited, recolored, moved, copied and changed. It's a good idea to turn on the display of construction points before starting to draw, because working with the cursor and the X/Y coordinates alone is difficult. The status display shows both the coordinates for the absolute X/Y and the delta X/Y (the relative distance from the last point) in the current unit of measurement.
Groups of lines within a specified window can be defined as a component, named, and saved in your own library. Components of any complexity can be loaded into any drawing on any layer. Components can also be scaled, rotated and removed from a drawing.
FirstCADD permits up to 256 transparent layers, which can be individually or collectively viewed. You can draw in and edit any individual layer, even draw in one layer with others displayed, but unlike the PC/MS-DOS version, layers cannot be saved individually. All layers must be saved together in a single drawing.
Lines and objects can be snapped to the definable grid, either at the grid point, the nearest drawing point or to a point within the definable tolerance level. Tolerance permits you to snap a line to the point nearest the cursor, within the defined limit.
There are three forms of measurement available in the program. You can measure distance between any two points, the area of any number of connected, straight-line segments, and the angle between any two points.
You can zoom in on any area of the drawing using several options. You can specify a zoom value, define a zoom window, or zoom to predefined limits. You can also zoom backwards and forwards from any other zoom state.
Text is a special type of component in FirstCADD. Only one rather simple font is provided (the PC/MS-DOS version has seven), but a built-in font editor permits the user to define fonts by creating each letter, much the same way as one would create any other component—by drawing the lines and primitives for each character. Fonts, therefore, can be made of various components, not necessarily just characters. However, the font creation routine, while sounding simple in the manual, is much trickier when you attempt it. Experiment and practice a lot first. But be careful not to overwrite your "main" font!
If you choose Font Select after you've chosen Start Define, your disk will whirl away endlessly, and the program will hang, while seemingly writing to the drive all the while! You can select any zoom, component or drawing command, but if you select another text command other than Define Start or Define End, you may end up with a hung program. This is the only serious bug I've found in the program.
FirstCADD supports 105 printers, including a wide range of the most popular dot-matrix printers. The Atari laser printer isn't on the list, but the HP Laser-jet series is. Only one printer at a time can be selected, using the configuration program (not from within the actual CAD program).
When you print ("plot" in the manual) a drawing, you have several controls over the result. You can print it to scale either according to the paper size or to your own defined scale. You can even rotate a drawing 90 degrees. However, you can print only what you see on the screen. You cannot print a large drawing in several sheets if it is too large for a single sheet. While a drawing is theoretically unlimited in size (as set by the configuration program), the output is limited to your sheet size. That can mean some cramped results on a single page.
FirstCADD is slow in three areas: printing, loading a file and screen redraws. The latter two are not excessive, albeit annoying at times, but when you start printing a complex drawing, be prepared to spend many long minutes waiting for completion.
The major failing of the program lies in its pitifully weak documentation, a mere 100 pages or so, lacking illustrations, a tutorial or even examples of commands. The manual reads as if it was hurriedly and unthinkingly dashed off, a sort of slash and burn editing of the PC/MS-DOS manual. This is unfortunate, because it makes the program appear much weaker and less capable than it really is.
There is also no description of error messages. The index is sparse. The commands are explained in as few words as possible, usually ignoring problems, reliable descriptions and side effects. For the novice user, it will take a lot of experimentation and careful reading to properly understand how the program operates and the caveats that come with it. The PC/MS-DOS version, in contrast, is more than 500 pages long, illustrated, explained and considerably clearer.
Once, however, you surmount the difficult slope the manual presents, FirstCADD is reasonably easy to use and understand. For the newcomer to CAD and the non-professional user, it is an inexpensive entry into a demanding field. While it lacks the ultra-slick features of a program like DynaCADD, it has sufficient power for the casual user at a considerably lower price.