OK - moving on.
Taking out the chaf from your macropump code it resolves to the one single functional line of:
SetOemDRO 803, GetUserDRO(1502)/60.06041
I'm assuming that user DRO 1502 is updated somehow to contain the real time position (in encoder position) of the slider. Is that correct?
So FUNCTIONALLY, all the macropump code does is divide that by your scaling value and pop it into the A axis DRO.
Moving on to your button macro. Again, removing all the chaf, all it does is copy the A axis DRO into the tool table for a given tool.
So, if we (for the time being) fix it to tool 1. Your button code can be resolved to 1 line:
SetToolParam 1, 2, GetOEMDRO(803)
So use these two one liners for your macropump code and for your button code.
Then do your tool slider thing, press the button and then manually open the tool table and get back with the results.
Oh - one more question:
In post #411 Hood said:
And then I also have the zero button which just pulses the Index input on the Enc module.
What does "pulsing the Index input" actually do?
Why does Hood do it?
I don't see anywhere where you do it?