nocamhere (good grief lad)
Does it need to be macro?
Can you take the profile/contour (whatever it is you're doing) and
make it a sub-program, and in the sub have a G91 X.... then when calling the sub just loop it.
M98P....L6

Ahh......You could use a G65 line to store XY incremental positions.
to make it quicker to change the positions.

....OR G10 it and use offsets.

To answer you question ...no. I like to mess with this kinda thing too. But as of tomorrow I'm on vacation for two weeks.
Hope you find what you need before that, but if not I'll try somthing when I get back.