I'll do my explaining the DRO's blurb - it might make it a biy clearer.
The Digital Radouts show two positions for Mach 3.
If you click the Machine Co-ordinates button, the button surround will light. The DRO's are now showing Machine Co-ordinates. This is the system by which Mach 3 keeps track of where everything is. You cannot alter Machine Co-ordinates. The only way to change these is by the "RefAllHome" buttpn. If you have "Home" switches installed on your machine - and they have been activated - then the machine will visit each switch in turn, and stop at it. It will zero each axis DRO in turn as it does so. The machine now knows exactly where it is. If your Home switches are not connected up (and not activated) then you can press "RefAllHome" and the DRO's will zero where-ever the machine happens to be, but it is meaningless.
It is unlikely that this position will be of any use to you for machining purposes, and will almost certainly NOT be the position from which your GCode program has been written. This, for a mill, is usually (but not always) to the bottom left of the workpiece, with the cutter resting on the top of the workpiece.
If you click the "Machine Co-ordinates" button, so the light goes out, the DRO's are now displaying "Program Co-ordinates". These you can zero and if you do so, they will display 0,0,0, the same as the Machine Co-ordinates.
If you now jog your machine to where your program starts, you will see the Program Co-ordinates move, and when you get to the correct position, you can zero them again. The machine now knows where your program starts.
If you look again at the Machine Co-ordinates you will see that these have not changed - and they display the "offset" between your Machine Co-ordinates ad your Program Co-ordinates. If you look at the list in Config/Fixtures you will see that G54 has the same co-ordinates in it.
If you switch back to Program Co-ordinates, you can run your program, and the DRO's will show the position as it is written in the program - this is not how the machine keeps track of it's own position (which is a combination of Machine Co-ordinates plus offset).
What is the purpose of this -
In a professional machine shop, each day (perhaps more often), the machines are zero'ed with "RefAllHome or the equivelant. The machines now know where they are. All obstructions, and fixtures are mapped in them to avoid collisions etc. When starting a program, the program will have in it an "offset" code G54 to G58, and G59P7 to G59P255, written in near the beginning. The machine then moves to this "offset" code and therefore sets itself for the particular job - and away it goes. As you can see - each job can start on a different "offset" depending where the workpiece is put.
You need not bother with all that. By all means "RefAllHome" but as I said, the DRO's will just zero, where-ever you are, unless your switches are set up. You need to be in Program Co-ordinates. To start with all you have to do is jog to the right starting position, zero the DRO's and press "cycle start" - and away you go.
To use Machine Co-ordinates and "offsets" you need to be very disciplined, and always work the same way. If you are writing programs and running them, they are not necessary. I use them on my machine, becasue I have a drilling fixture on the cross-slide that needs to know where it is, but other than that, I don't need them.
Hope this sheds a bit of light.