
MoveCodeToRam MACRO CodeStart,CodeEnd,Target
        Local   loop
        MOV     DPTR,#CodeStart          ;
        MOV     R0,  #Low (Target)       ;
        MOV     R1,  #(CodeEnd-CodeStart);
loop:   MOV     A,   #0h                 ;
        MOVC    A,   @A+DPTR             ;
        MOV     P2,  #High(Target)       ;???
        MOVX    @R0, A                   ;will this work
        INC     DPTR                     ;
        INC     R0                       ;
        DJNZ    R1, Loop                 ;
ENDM
