Thanks Steve
Stepping by two fixes my issue and your test code worked fine. In my real application I use 8bit decode ADC which give values 0 to 255 so i can fetch 0 to 255 position values from the map block of memory I load from my pc program. ie adcin value plus start memory register number = motor destination. I have multiple maps for position and also current control, speed , acceleration. Stepping by two means a day rewrite.
I am changing pic for speed as my top step speed for my motor control loops is limited by processor speed. Why does 18f index memory by two's and is there a fast pic that can write code space memory indexed by 1.
regards Paul
ps if the ME programmer displayed memory address in decimal when decimal display is selected I may have picked up the 16 value difference for each row. Perhaps a enhancement.