I was once into 68k so I may be rusty, but shouldn't it be move.w d1,(a0)+ (increment the target address after each step)?

The hardware increments an internal pointer after each access. The view to that address is through value in a0.