Drill2gbr is a simple utility that reads in a drill file and converts it into a Gerber file. Drill files are CNC files used to control the machines that drill printed circuit boards. The most common drill format is called Excellon but there are many other variants for other machines.
Drill files look fairly similar to Gerber files -- they both have CNC code as their basis, but drill files may include additional commands about feed rates and other items that don't apply in Gerber.
When converting a drill file into Gerber the program must take into account many real world details. These include:
Undefined Tool Size - while the drill format includes the ability to define a tool's diameter, such information is not always included. The user has to manually enter the correct diameter.
Units - Drill files are either in units of inches or mm. However the actual unit identification may or may not be present in the drill file.
Zero Suppression - often either leading or trailing zeros are suppressed to make the file smaller. However this information must be provided to the drill2gbr program so that it knows from which side of the value to re-insert the decimal point.
Mode - data can be absolute or coordinates can be expressed relative to the previous location.
Offset - Occasionally we come across drill files whose reference point does not match that of the Gerber files. In order to line up the drill hole centers with the pads on the board it is necessary to offset the drill data. Since the actual offset is not known, one does a conversion with no offset, measures it using GBRVU and then does another conversion.