Erm , yes, but unexpected things happen.
I've tried to arrange this information in 2 columns, to make the comparison between what happens and I what I hoped was going to happen more obvious. You will need to widen this window out to be able to view it as such.
Code:-
( New )
G21
G90
G64
G00 A0.2 F2500
( T )
M06 T001
G00 X0 Y-20
G00 A0
G91
G00 A0.4 Z1500
G00 A-0.4
M00
( !!! ZERO Z AXIS NOW!!! )
G90
G00 A0.2
G00 X10 etc
What happens:-                                             What I want to  happen:-
1) It executes to line 12 (M00)                        It executes to line 12 (M00)
2) I scroll back up until line 9 (G91)                   "
    is in the white band, press "Run
    from here", and "cycle start"
3) I get a box saying                                       "
    X 4.8567017
    Y -20
    Z 1500
    etc
    (why the X value, I do not know...) 
4) I press 'OK'. Z moves                                  I press 'OK', Z moves 
     BACKWARDS    1500 units.                         forwards 1500 units,
     A doesn't move at all                                 A goes up 0.4, and down 0.4
5) I repeat step2, box from step 3 
    appears again, I press okay                          I press okay, Z moves forwards 1500 units,
    Z moves forward a bit, and                         A goes up 0.4, and down 0.4            
    back a bit, ending up BACK 
    WHERE IT  STARTED after step 4
6) I repeat above step,                                  I press okay, Z moves forwards 1500 units,
     same thing happens again                         A goes up 0.4, and down 0.4
7) I scroll up until line 14 (G90) is                    "
    in the white band, press "Run
    from here", "Cycle start", same box
    appears as before, same numbers...
    I press 'OK'                                              I press 'OK'

 Only axis that moves is Y,                          All lines including and after 
    which moves to minus 6!                           line 14 execute, until end.
Maybe the odd behaviour in 

 was caused by me ignoring my own instruction to 'Zero the Z axis', but otherwise I don't understand whats happening in this, it seems to defy logic to me. Does it make sense to anyone?