Is it possible for Mach3's version of G-code to know the current XYZ position of the machine? I'm finding this surprisingly difficult.

I see that parameters from #5161 to #10306 can access offsets, though AFAIK that's offsets of the coordinate system from machine zero but not the coordinates themselves.

For example, I'm needing to write an O-routine to grow a rectangular pocket. The routine will not know which coordinate system is currently selected, but there are 2 parameters it uses for X0 and Y0 of the rectangle center. So, if current position is Xcurrent,Ycurrent=-5,3 and X0,Y0=1,1, it needs to run a rectangle centered around X0,Y0 using -5,3 as a starting corner. The first move should be G1 X[2*#X0-#Xcurrent]. But to do that, we need the Xcurrent but it's strangely absent from the parameter list, or am I misreading the list?

I could assign X,Y manually to yet another #parameter, but those are already incredibly messy. It's pretty undesirable as a solution.