Daco home page

Maintained by
Agnar Renolen agnarr@c2i.net

[What is Daco] [Catches using Daco] [Running Daco] [Download Daco] [Known Problems] [Compiling Daco]

What is Daco?

In short, Daco is Ocad spelled backwards. Ocad is a mapping software that was orignally designed to digitally make orienteerings maps, and has now become the de facto standard for making orienteering maps world wide amongst clubs and federations. However, Ocad is also capable of producing other types of maps, such as city maps, tourist maps etc.

Ocad is commercial software, and the current release is version 7, with version 8 sheduled for September 2001. However, somewhen by the time of the release of version 7, the old version 5 was released as free software, for anyone to freely download and use. It is available for dowload on Ocad's homepage.

Although Ocad 6 and Ocad 7 provides a lot of capabilities over the old Ocad 5, Ocad 5 is still sufficient to make outstanding maps. So why purchase the latest release of Ocad, even if Ocad is really cheap, if you think the old Ocad 5 will do the job for you.

But there's a potential problem of using Ocad 5 when everyone else is using version 6, 7 or even 8. Neither of the later versions can save the map to a fileformat readable by earlier versions of the software. So when you receive an Ocad 7 file from a club, and you want to update it with Ocad5, you are stuck. That's where Daco comes in.

The purpose of Daco is to convert your Ocad 6 or 7 files into Ocad 5 files, so you can work with them on your free version of Ocad. In other words, Daco ensures backward compatibility with newer releases of Ocad and your free version 5 of Ocad. That's why I named the software Daco, by spelling Ocad backwards.

Daco also opens up other possible uses of the old Ocad5. Suppose that you as head of mapping in your club is mainting the maps using a single-computer license of Ocad 6 or 7. Then for the event the forthcomming summer, the course planners would like to have a digital copy of the map, to set their courses. It would be more than sufficient for them to work with the free version 5 of Ocad, if not else to make print-outs. Then you simple use Daco to prepare the Ocad5 file, and mail them to the course planners.

Daco also enables you to digitally distribute maps amongst orienteerers, not having the latest release of Ocad. All you have to do is to use Daco to produce the ocad5 version, whereas the recipients simply can download the free version from www.ocad.com to view and, possible edit the map.

Daco is also free software, and is relased under the GNU General Public License (GPL). This allows you to modify and redistribute Daco and its source code, under certain conditions.

Catches using Daco

Yes, there are a few. Ocad 5, can only handle very simple text, while Ocad 7 can handle text along lines, text within rectangles (so called formatted text), and multi-lined text. For text along lines or within rectangles, Daco will not covert the text, only the line or the rectangle. For multi-lined text, Daco will produce one straight line.

Ocad5 does not handle dash points. As of version 1.0 of Daco, dash points are converted to corner points in Ocad5. This does not always give a good result. In future versions of Daco, I consider providing a command-line switch where you can turn on or off this conversion.

There is also another catch. Ocad5 is limited to a maximum map size of 800x800cm, the coordinate space in Ocad6 and 7 is potentially larger than for Ocad5. Thus, it might be that objects in the Ocad6 or 7 file fall outside the range of coordinates that can be represented in the Ocad5 files. However, it seems highly unlikely that you will make a map that large (unless yo plan to wallpaper your bedroom with it :-), so in case your map is located in in of the corners of the mapping area, all you have to do is to move it to the centre of the map.

Running Daco

Daco is a command line tool that can be run from your command shell or DOS prompt. Go to the directory where your Ocad6 or 7 file is stored, and enter the following command:

daco [-o outputfile] inputfile
where inputfile should be replaced with the name of the Ocad6 or 7 file you want to convert, and the optional outputfile is the name of the Ocad5 file which Daco should write it's output to. If outputfile is omitted, Daco will create a file with the name inputfile5.ocd. For example, if you enter the command

daco myfile.ocd

Daco will write the output to the file myfile.ocd5.ocd. In this case, it is recommended that you should rename this file later if you want. Daco gives this name only to make it easier to determin the origin of the file. Remember that Ocad5 assumes the old filename types of 8+3 characters.

The next step in the three-step procedure is to open the file in Ocad and assign a symbol sections. Daco does not convert the symbol section of the Ocad 6 or 7 file, but leaves the Ocad 5 file with an empty symbol sections. Upon opening the new Ocad file, the first thing you shouls do, is to load a symbol section from another file. You can do this by running the command Load Symbols From... in the Symbol menu of Ocad.

The last step is the most important one, and should be carried out before you start browsing your file. Even i Daco does its best to produce a valid Ocad file, it is not always successfull on this. So the next command you should run in Ocad is Optimize/repair... from the Extras menu. After this step, you should have a Ocad file tha you can work with.

Download Daco

Daco is distributed in two formats: As a binary executable for windows, and as source code. The current release is version 1.0.1, which was released on Feb 1st 2001.

Known Problems

The following problems have been fixed in version 1.0.1:

Runtime error 87 after 255 elements
The algorithm for reading objects from Ocad6/7 files is not good. If you encounter this problem, you might choose to optimize/repair your Ocad files before using Daco. It should hopefully help. Thank's to Petri Hartman for discovering this bug. I'm currently working on solving this problem.
Runtime error 5 if no arguments are supplied
This error is now corrected for the next release of Daco. Daco will now display a synopsis if no argument is supplied.

Compiling Daco

Daco is compiled using FreePascal which is free software released under the GNU GPL license (which also applies to Daco). All you have to do is to install FreePascal, copy the source files to your hard disk and write the command make in your command shell (DOS prompt) from the directory where the source files are installed

I believe it is alos possible to compile it using an old version of Borland Pascal, that you can downlod for free from Borland's home pages.