📄 smc_drv_load.a51
字号:
sfr UEPDATX = 0xCF
PUBLIC _smc_download_buff_64
PUBLIC _smc_usb_to_buff_64
PUBLIC smc_upload_buffer
PUBLIC smc_download_buffer
NF_MODULE SEGMENT CODE
RSEG NF_MODULE
; transfer 64 bytes from buffer to NF
_smc_download_buff_64:
MOV A,R7
MOV R0,A
MOV DPTR,#2400H
MOVX A,@R0 ;1
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;2
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;3
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;4
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;5
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;6
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;7
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;8
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;9
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;10
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;11
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;12
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;13
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;14
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;15
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;16
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;17
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;18
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;19
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;20
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;21
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;22
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;23
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;24
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;25
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;26
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;27
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;28
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;29
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;30
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;31
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;32
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;1
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;2
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;3
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;4
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;5
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;6
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;7
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;8
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;9
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;10
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;11
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;12
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;13
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;14
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;15
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;16
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;17
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;18
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;19
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;20
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;21
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;22
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;23
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;24
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;25
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;26
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;27
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;28
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;29
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;30
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;31
MOVX @DPTR,A
INC R0
MOVX A,@R0 ;32
MOVX @DPTR,A
RET
; transfer 64 bytes from usb to buff
_smc_usb_to_buff_64:
MOV A,R7
MOV R0,A
MOV A,UEPDATX ;1
MOVX @R0,A
INC R0
MOV A,UEPDATX ;2
MOVX @R0,A
INC R0
MOV A,UEPDATX ;3
MOVX @R0,A
INC R0
MOV A,UEPDATX ;4
MOVX @R0,A
INC R0
MOV A,UEPDATX ;5
MOVX @R0,A
INC R0
MOV A,UEPDATX ;6
MOVX @R0,A
INC R0
MOV A,UEPDATX ;7
MOVX @R0,A
INC R0
MOV A,UEPDATX ;8
MOVX @R0,A
INC R0
MOV A,UEPDATX ;9
MOVX @R0,A
INC R0
MOV A,UEPDATX ;10
MOVX @R0,A
INC R0
MOV A,UEPDATX ;11
MOVX @R0,A
INC R0
MOV A,UEPDATX ;12
MOVX @R0,A
INC R0
MOV A,UEPDATX ;13
MOVX @R0,A
INC R0
MOV A,UEPDATX ;14
MOVX @R0,A
INC R0
MOV A,UEPDATX ;15
MOVX @R0,A
INC R0
MOV A,UEPDATX ;16
MOVX @R0,A
INC R0
MOV A,UEPDATX ;17
MOVX @R0,A
INC R0
MOV A,UEPDATX ;18
MOVX @R0,A
INC R0
MOV A,UEPDATX ;19
MOVX @R0,A
INC R0
MOV A,UEPDATX ;20
MOVX @R0,A
INC R0
MOV A,UEPDATX ;21
MOVX @R0,A
INC R0
MOV A,UEPDATX ;22
MOVX @R0,A
INC R0
MOV A,UEPDATX ;23
MOVX @R0,A
INC R0
MOV A,UEPDATX ;24
MOVX @R0,A
INC R0
MOV A,UEPDATX ;25
MOVX @R0,A
INC R0
MOV A,UEPDATX ;26
MOVX @R0,A
INC R0
MOV A,UEPDATX ;27
MOVX @R0,A
INC R0
MOV A,UEPDATX ;28
MOVX @R0,A
INC R0
MOV A,UEPDATX ;29
MOVX @R0,A
INC R0
MOV A,UEPDATX ;30
MOVX @R0,A
INC R0
MOV A,UEPDATX ;31
MOVX @R0,A
INC R0
MOV A,UEPDATX ;32
MOVX @R0,A
INC R0
MOV A,UEPDATX ;1
MOVX @R0,A
INC R0
MOV A,UEPDATX ;2
MOVX @R0,A
INC R0
MOV A,UEPDATX ;3
MOVX @R0,A
INC R0
MOV A,UEPDATX ;4
MOVX @R0,A
INC R0
MOV A,UEPDATX ;5
MOVX @R0,A
INC R0
MOV A,UEPDATX ;6
MOVX @R0,A
INC R0
MOV A,UEPDATX ;7
MOVX @R0,A
INC R0
MOV A,UEPDATX ;8
MOVX @R0,A
INC R0
MOV A,UEPDATX ;9
MOVX @R0,A
INC R0
MOV A,UEPDATX ;10
MOVX @R0,A
INC R0
MOV A,UEPDATX ;11
MOVX @R0,A
INC R0
MOV A,UEPDATX ;12
MOVX @R0,A
INC R0
MOV A,UEPDATX ;13
MOVX @R0,A
INC R0
MOV A,UEPDATX ;14
MOVX @R0,A
INC R0
MOV A,UEPDATX ;15
MOVX @R0,A
INC R0
MOV A,UEPDATX ;16
MOVX @R0,A
INC R0
MOV A,UEPDATX ;17
MOVX @R0,A
INC R0
MOV A,UEPDATX ;18
MOVX @R0,A
INC R0
MOV A,UEPDATX ;19
MOVX @R0,A
INC R0
MOV A,UEPDATX ;20
MOVX @R0,A
INC R0
MOV A,UEPDATX ;21
MOVX @R0,A
INC R0
MOV A,UEPDATX ;22
MOVX @R0,A
INC R0
MOV A,UEPDATX ;23
MOVX @R0,A
INC R0
MOV A,UEPDATX ;24
MOVX @R0,A
INC R0
MOV A,UEPDATX ;25
MOVX @R0,A
INC R0
MOV A,UEPDATX ;26
MOVX @R0,A
INC R0
MOV A,UEPDATX ;27
MOVX @R0,A
INC R0
MOV A,UEPDATX ;28
MOVX @R0,A
INC R0
MOV A,UEPDATX ;29
MOVX @R0,A
INC R0
MOV A,UEPDATX ;30
MOVX @R0,A
INC R0
MOV A,UEPDATX ;31
MOVX @R0,A
INC R0
MOV A,UEPDATX ;32
MOVX @R0,A
RET
;upload_buffer NF->XRAM
smc_upload_buffer:
MOV R0,#0H
MOV DPTR,#2400H
MOVX A,@DPTR ;1
MOVX @R0,A
INC R0
MOVX A,@DPTR ;2
MOVX @R0,A
INC R0
MOVX A,@DPTR ;3
MOVX @R0,A
INC R0
MOVX A,@DPTR ;4
MOVX @R0,A
INC R0
MOVX A,@DPTR ;5
MOVX @R0,A
INC R0
MOVX A,@DPTR ;6
MOVX @R0,A
INC R0
MOVX A,@DPTR ;7
MOVX @R0,A
INC R0
MOVX A,@DPTR ;8
MOVX @R0,A
INC R0
MOVX A,@DPTR ;9
MOVX @R0,A
INC R0
MOVX A,@DPTR ;10
MOVX @R0,A
INC R0
MOVX A,@DPTR ;11
MOVX @R0,A
INC R0
MOVX A,@DPTR ;12
MOVX @R0,A
INC R0
MOVX A,@DPTR ;13
MOVX @R0,A
INC R0
MOVX A,@DPTR ;14
MOVX @R0,A
INC R0
MOVX A,@DPTR ;15
MOVX @R0,A
INC R0
MOVX A,@DPTR ;16
MOVX @R0,A
INC R0
MOVX A,@DPTR ;17
MOVX @R0,A
INC R0
MOVX A,@DPTR ;18
MOVX @R0,A
INC R0
MOVX A,@DPTR ;19
MOVX @R0,A
INC R0
MOVX A,@DPTR ;20
MOVX @R0,A
INC R0
MOVX A,@DPTR ;21
MOVX @R0,A
INC R0
MOVX A,@DPTR ;22
MOVX @R0,A
INC R0
MOVX A,@DPTR ;23
MOVX @R0,A
INC R0
MOVX A,@DPTR ;24
MOVX @R0,A
INC R0
MOVX A,@DPTR ;25
MOVX @R0,A
INC R0
MOVX A,@DPTR ;26
MOVX @R0,A
INC R0
MOVX A,@DPTR ;27
MOVX @R0,A
INC R0
MOVX A,@DPTR ;28
MOVX @R0,A
INC R0
MOVX A,@DPTR ;29
MOVX @R0,A
INC R0
MOVX A,@DPTR ;30
MOVX @R0,A
INC R0
MOVX A,@DPTR ;31
MOVX @R0,A
INC R0
MOVX A,@DPTR ;32
MOVX @R0,A
INC R0
MOVX A,@DPTR ;33
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR ;65
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR ;97
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR ;129
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR ;161
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
MOVX @R0,A
INC R0
MOVX A,@DPTR
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -