📄 time.asm
字号:
push ar7 push ar0 push _asctime_sloc0_1_0 push (_asctime_sloc0_1_0 + 1) push _asctime_sloc1_1_0 push (_asctime_sloc1_1_0 + 1) push _asctime_sloc2_1_0 push (_asctime_sloc2_1_0 + 1) push _asctime_sloc4_1_0 push (_asctime_sloc4_1_0 + 1) push (_asctime_sloc4_1_0 + 2) push ar2 push ar3 push ar4 push _asctime_sloc5_1_0 push (_asctime_sloc5_1_0 + 1) push (_asctime_sloc5_1_0 + 2) push _asctime_sloc6_1_0 push (_asctime_sloc6_1_0 + 1) push (_asctime_sloc6_1_0 + 2) lcall _sprintf mov a,sp add a,#0xea mov sp,a; time.c 96 mov dpl,_asctime_sloc6_1_0 mov dph,(_asctime_sloc6_1_0 + 1) mov b,(_asctime_sloc6_1_0 + 2)00101$: ret;------------------------------------------------------------;Allocation info for local variables in function 'ctime';------------------------------------------------------------;timep Allocated to in memory with name '_ctime_timep_1_1'; time.c 99; -----------------------------------------; function ctime; -----------------------------------------_ctime:; time.c 100 push b push dph push dpl mov dptr,#_ctime_timep_1_1 pop acc movx @dptr,a pop acc inc dptr movx @dptr,a pop acc inc dptr movx @dptr,a mov dptr,#_ctime_timep_1_1 movx a,@dptr mov r2,a inc dptr movx a,@dptr mov r3,a inc dptr movx a,@dptr mov r4,a mov dpl,r2 mov dph,r3 mov b,r4 lcall _localtime mov r2,dpl mov r3,dph mov r4,b mov dpl,r2 mov dph,r3 mov b,r4 lcall _asctime; Peephole 153 removed misc moves via dph, dpl, b before return00101$: ret;------------------------------------------------------------;Allocation info for local variables in function 'localtime';------------------------------------------------------------;timep Allocated to in memory with name '_localtime_timep_1_1'; time.c 116; -----------------------------------------; function localtime; -----------------------------------------_localtime:; time.c 117 push b push dph push dpl mov dptr,#_localtime_timep_1_1 pop acc movx @dptr,a pop acc inc dptr movx @dptr,a pop acc inc dptr movx @dptr,a mov dptr,#_localtime_timep_1_1 movx a,@dptr mov r2,a inc dptr movx a,@dptr mov r3,a inc dptr movx a,@dptr mov r4,a mov dpl,r2 mov dph,r3 mov b,r4 lcall _gmtime; Peephole 153 removed misc moves via dph, dpl, b before return00101$: ret;------------------------------------------------------------;Allocation info for local variables in function 'gmtime';------------------------------------------------------------;sloc0 Allocated to in memory with name '_gmtime_sloc0_1_0';sloc1 Allocated to in memory with name '_gmtime_sloc1_1_0';sloc2 Allocated to in memory with name '_gmtime_sloc2_1_0';timep Allocated to in memory with name '_gmtime_timep_1_1';epoch Allocated to in memory with name '_gmtime_epoch_1_1';year Allocated to in memory with name '_gmtime_year_1_1';month Allocated to in memory with name '_gmtime_month_1_1';monthLength Allocated to in memory with name '_gmtime_monthLength_1_1';days Allocated to in memory with name '_gmtime_days_1_1'; time.c 120; -----------------------------------------; function gmtime; -----------------------------------------_gmtime:; time.c 0 push b push dph push dpl mov dptr,#_gmtime_timep_1_1 pop acc movx @dptr,a pop acc inc dptr movx @dptr,a pop acc inc dptr movx @dptr,a; time.c 121 mov dptr,#_gmtime_timep_1_1 movx a,@dptr mov r2,a inc dptr movx a,@dptr mov r3,a inc dptr movx a,@dptr mov r4,a mov dpl,r2 mov dph,r3 mov b,r4 lcall __gptrget mov r2,a inc dptr lcall __gptrget mov r3,a inc dptr lcall __gptrget mov r4,a inc dptr lcall __gptrget mov r5,a; time.c 126; Peephole 228 replaced inefficient 32 constant mov dptr,#__modulong_PARM_2 mov a, #0x3C movx @dptr,a inc dptr clr a movx @dptr,a inc dptr movx @dptr,a inc dptr movx @dptr,a mov dptr,#__modulong_PARM_2 mov dpl,r2 mov dph,r3 mov b,r4 mov a,r5 push ar2 push ar3 push ar4 push ar5 lcall __modulong mov r6,dpl mov r7,dph mov r0,b mov r1,a pop ar5 pop ar4 pop ar3 pop ar2 mov dptr,#_lastTime mov a,r6 movx @dptr,a; time.c 127; Peephole 228 replaced inefficient 32 constant mov dptr,#__divulong_PARM_2 mov a, #0x3C movx @dptr,a inc dptr clr a movx @dptr,a inc dptr movx @dptr,a inc dptr movx @dptr,a mov dptr,#__divulong_PARM_2; time.c 128 mov dpl,r2 mov dph,r3 mov b,r4 mov a,r5 lcall __divulong mov r2,dpl mov r3,dph mov r4,b mov r5,a; Peephole 228 replaced inefficient 32 constant mov dptr,#__modulong_PARM_2 mov a, #0x3C movx @dptr,a inc dptr clr a movx @dptr,a inc dptr movx @dptr,a inc dptr movx @dptr,a mov dptr,#__modulong_PARM_2 mov dpl,r2 mov dph,r3 mov b,r4 mov a,r5 push ar2 push ar3 push ar4 push ar5 lcall __modulong mov r6,dpl mov r7,dph mov r0,b mov r1,a pop ar5 pop ar4 pop ar3 pop ar2 mov dptr,#(_lastTime + 0x0001) mov a,r6 movx @dptr,a; time.c 129; Peephole 228 replaced inefficient 32 constant mov dptr,#__divulong_PARM_2 mov a, #0x3C movx @dptr,a inc dptr clr a movx @dptr,a inc dptr movx @dptr,a inc dptr movx @dptr,a mov dptr,#__divulong_PARM_2; time.c 130 mov dpl,r2 mov dph,r3 mov b,r4 mov a,r5 lcall __divulong mov r2,dpl mov r3,dph mov r4,b mov r5,a; Peephole 228 replaced inefficient 32 constant mov dptr,#__modulong_PARM_2 mov a, #0x18 movx @dptr,a inc dptr clr a movx @dptr,a inc dptr movx @dptr,a inc dptr movx @dptr,a mov dptr,#__modulong_PARM_2 mov dpl,r2 mov dph,r3 mov b,r4 mov a,r5 push ar2 push ar3 push ar4 push ar5 lcall __modulong mov r6,dpl mov r7,dph mov r0,b mov r1,a pop ar5 pop ar4 pop ar3 pop ar2 mov dptr,#(_lastTime + 0x0002) mov a,r6 movx @dptr,a; time.c 131; Peephole 228 replaced inefficient 32 constant mov dptr,#__divulong_PARM_2 mov a, #0x18 movx @dptr,a inc dptr clr a movx @dptr,a inc dptr movx @dptr,a inc dptr movx @dptr,a mov dptr,#__divulong_PARM_2; time.c 132 mov dpl,r2 mov dph,r3 mov b,r4 mov a,r5 lcall __divulong mov r2,dpl mov r3,dph mov r4,b mov r5,a mov a,#0x04 add a,r2 mov r6,a; Peephole 180 changed mov to clr clr a addc a,r3 mov r7,a; Peephole 180 changed mov to clr clr a addc a,r4 mov r0,a; Peephole 180 changed mov to clr clr a addc a,r5 mov r1,a; Peephole 228 replaced inefficient 32 constant mov dptr,#__modulong_PARM_2 mov a, #0x07 movx @dptr,a inc dptr clr a movx @dptr,a inc dptr movx @dptr,a inc dptr movx @dptr,a mov dptr,#__modulong_PARM_2 mov dpl,r6 mov dph,r7 mov b,r0 mov a,r1 push ar2 push ar3 push ar4 push ar5 lcall __modulong mov r6,dpl mov r7,dph mov r0,b mov r1,a pop ar5 pop ar4 pop ar3 pop ar2 mov dptr,#(_lastTime + 0x0007) mov a,r6 movx @dptr,a; time.c 135; Peephole 227 replaced inefficient 32 bit clear mov dptr,#_gmtime_days_1_1 clr a movx @dptr,a inc dptr movx @dptr,a inc dptr movx @dptr,a inc dptr movx @dptr,a mov dptr,#_gmtime_days_1_1; time.c 136 mov r6,#0xB2 mov r7,#0x0700101$:; Peephole 230 replaced inefficient 16 constant mov dptr,#__moduint_PARM_2 mov a,#0x04 movx @dptr,a inc dptr clr a movx @dptr,a mov dptr,#__moduint_PARM_2 mov dpl,r6 mov dph,r7 push ar2 push ar3 push ar4 push ar5 push ar6 push ar7 lcall __moduint mov r0,dpl mov r1,dph pop ar7 pop ar6 pop ar5 pop ar4 pop ar3 pop ar2 cjne r0,#0x00,00132$ cjne r1,#0x00,00132$ mov a,#0x01 sjmp 00133$00132$: clr a00133$:; Peephole 105 removed redundant mov mov r0,a; Peephole 110 removed ljmp by inverse jump logic jz 00119$00134$: mov _gmtime_sloc0_1_0,#0x6E mov (_gmtime_sloc0_1_0 + 1),#0x01; Peephole 132 changed ljmp to sjmp sjmp 00120$00119$: mov _gmtime_sloc0_1_0,#0x6D mov (_gmtime_sloc0_1_0 + 1),#0x0100120$: mov dptr,#_gmtime_days_1_1 movx a,@dptr mov _gmtime_sloc1_1_0,a inc dptr movx a,@dptr mov (_gmtime_sloc1_1_0 + 1),a inc dptr movx a,@dptr mov (_gmtime_sloc1_1_0 + 2),a inc dptr movx a,@dptr mov (_gmtime_sloc1_1_0 + 3),a mov _gmtime_sloc2_1_0,_gmtime_sloc0_1_0 mov (_gmtime_sloc2_1_0 + 1),(_gmtime_sloc0_1_0 + 1) mov a,(_gmtime_sloc0_1_0 + 1) rlc a subb a,acc mov (_gmtime_sloc2_1_0 + 2),a mov (_gmtime_sloc2_1_0 + 3),a mov a,_gmtime_sloc2_1_0 add a,_gmtime_sloc1_1_0 mov _gmtime_sloc2_1_0,a mov a,(_gmtime_sloc2_1_0 + 1) addc a,(_gmtime_sloc1_1_0 + 1) mov (_gmtime_sloc2_1_0 + 1),a mov a,(_gmtime_sloc2_1_0 + 2) addc a,(_gmtime_sloc1_1_0 + 2) mov (_gmtime_sloc2_1_0 + 2),a mov a,(_gmtime_sloc2_1_0 + 3) addc a,(_gmtime_sloc1_1_0 + 3) mov (_gmtime_sloc2_1_0 + 3),a mov dptr,#_gmtime_days_1_1 mov a,_gmtime_sloc2_1_0 movx @dptr,a inc dptr mov a,(_gmtime_sloc2_1_0 + 1) movx @dptr,a inc dptr mov a,(_gmtime_sloc2_1_0 + 2) movx @dptr,a inc dptr mov a,(_gmtime_sloc2_1_0 + 3) movx @dptr,a clr c mov a,r2 subb a,_gmtime_sloc2_1_0 mov a,r3 subb a,(_gmtime_sloc2_1_0 + 1) mov a,r4 subb a,(_gmtime_sloc2_1_0 + 2) mov a,r5 subb a,(_gmtime_sloc2_1_0 + 3); Peephole 132 changed ljmp to sjmp; Peephole 160 removed sjmp by inverse jump logic jc 00103$00135$:; time.c 137 inc r6 cjne r6,#0x00,00136$ inc r700136$: ljmp 00101$00103$:; time.c 139 mov a,r6 add a,#0x94 mov r6,a mov a,r7 addc a,#0xf8 mov r7,a mov dptr,#(_lastTime + 0x0005) mov a,r6 movx @dptr,a inc dptr mov a,r7 movx @dptr,a; time.c 141 mov a,r0; Peephole 110 removed ljmp by inverse jump logic jz 00121$00137$: mov r6,#0x6E mov r7,#0x01; Peephole 132 changed ljmp to sjmp sjmp 00122$00121$: mov r6,#0x6D mov r7,#0x0100122$: mov _gmtime_sloc1_1_0,r6 mov (_gmtime_sloc1_1_0 + 1),r7 mov a,r7 rlc a subb a,acc mov (_gmtime_sloc1_1_0 + 2),a mov (_gmtime_sloc1_1_0 + 3),a clr c mov a,_gmtime_sloc2_1_0 subb a,_gmtime_sloc1_1_0 mov _gmtime_sloc2_1_0,a mov a,(_gmtime_sloc2_1_0 + 1) subb a,(_gmtime_sloc1_1_0 + 1) mov (_gmtime_sloc2_1_0 + 1),a mov a,(_gmtime_sloc2_1_0 + 2) subb a,(_gmtime_sloc1_1_0 + 2) mov (_gmtime_sloc2_1_0 + 2),a mov a,(_gmtime_sloc2_1_0 + 3) subb a,(_gmtime_sloc1_1_0 + 3) mov (_gmtime_sloc2_1_0 + 3),a; time.c 142 clr c mov a,r2 subb a,_gmtime_sloc2_1_0 mov r2,a mov a,r3 subb a,(_gmtime_sloc2_1_0 + 1) mov r3,a mov a,r4 subb a,(_gmtime_sloc2_1_0 + 2) mov r4,a mov a,r5 subb a,(_gmtime_sloc2_1_0 + 3) mov r5,a mov dptr,#_gmtime_epoch_1_1 mov a,r2 movx @dptr,a inc dptr mov a,r3 movx @dptr,a inc dptr mov a,r4 movx @dptr,a inc dptr mov a,r5 movx @dptr,a; time.c 143 mov dptr,#(_lastTime + 0x0008) mov a,r2 movx @dptr,a inc dptr mov a,r3 movx @dptr,a; time.c 148 mov r2,#0x0000113$: cjne r2,#0x0C,00138$00138$: jc 00139$ ljmp 00116$00139$:; time.c 149; Peephole 132 changed ljmp to sjmp; Peephole 199 optimized misc jump sequence cjne r2,#0x01,00108$;00140$:; Peephole 200 removed redundant sjmp00141$:; time.c 150 mov a,r0; Peephole 110 removed ljmp by inverse jump logic jz 00105$00142$:; time.c 151 mov dptr,#_gmtime_monthLength_1_1 mov a,#0x1D movx @dptr,a; Peephole 132 changed ljmp to sjmp sjmp 00109$00105$:; time.c 153 mov dptr,#_gmtime_monthLength_1_1 mov a,#0x1C movx @dptr,a; Peephole 132 changed ljmp to sjmp sjmp 00109$00108$:; time.c 156 mov a,r2; Peephole 180 changed mov to clr; Peephole 186 optimized movc sequence mov dptr,#_monthDays movc a,@a+dptr; Peephole 100 removed redundant mov mov r3,a mov dptr,#_gmtime_monthLength_1_1 movx @dptr,a00109$:; time.c 159 mov dptr,#_gmtime_monthLength_1_1 movx a,@dptr mov r3,a mov dptr,#_gmtime_epoch_1_1 movx a,@dptr mov r4,a inc dptr movx a,@dptr mov r5,a inc dptr movx a,@dptr mov r6,a inc dptr movx a,@dptr mov r7,a mov _gmtime_sloc2_1_0,r3 mov (_gmtime_sloc2_1_0 + 1),#0x00 mov (_gmtime_sloc2_1_0 + 2),#0x00 mov (_gmtime_sloc2_1_0 + 3),#0x00 clr c mov a,r4 subb a,_gmtime_sloc2_1_0 mov a,r5 subb a,(_gmtime_sloc2_1_0 + 1) mov a,r6 subb a,(_gmtime_sloc2_1_0 + 2) mov a,r7 subb a,(_gmtime_sloc2_1_0 + 3); Peephole 132 changed ljmp to sjmp; Peephole 160 removed sjmp by inverse jump logic jc 00116$00143$:; time.c 160 mov dptr,#_gmtime_epoch_1_1 clr c mov a,r4 subb a,_gmtime_sloc2_1_0 movx @dptr,a mov a,r5 subb a,(_gmtime_sloc2_1_0 + 1) inc dptr movx @dptr,a mov a,r6 subb a,(_gmtime_sloc2_1_0 + 2) inc dptr movx @dptr,a mov a,r7 subb a,(_gmtime_sloc2_1_0 + 3) inc dptr movx @dptr,a; time.c 148 inc r2 ljmp 00113$00116$:; time.c 165 mov dptr,#(_lastTime + 0x0004) mov a,r2 movx @dptr,a; time.c 166 mov dptr,#_gmtime_epoch_1_1 movx a,@dptr mov r2,a inc dptr movx a,@dptr mov r3,a inc dptr movx a,@dptr mov r4,a inc dptr movx a,@dptr mov r5,a inc r2 cjne r2,#0x00,00144$ inc r3 cjne r3,#0x00,00144$ inc r4 cjne r4,#0x00,00144$ inc r500144$: mov dptr,#(_lastTime + 0x0003) mov a,r2 movx @dptr,a; time.c 168 mov dptr,#(_lastTime + 0x000a); Peephole 180 changed mov to clr clr a movx @dptr,a; time.c 170 mov r2,#_lastTime mov r3,#(_lastTime >> 8) mov r4,#0x01 mov dpl,r2 mov dph,r3 mov b,r400117$: ret;------------------------------------------------------------;Allocation info for local variables in function 'mktime';------------------------------------------------------------;sloc0 Allocated to in memory with name '_mktime_sloc0_1_0';sloc1 Allocated to in memory with name '_mktime_sloc1_1_0';sloc2 Allocated to in memory with name '_mktime_sloc2_1_0';sloc3 Allocated to in memory with name '_mktime_sloc3_1_0';sloc4 Allocated to in memory with name '_mktime_sloc4_1_0';timeptr Allocated to in memory with name '_mktime_timeptr_1_1';year Allocated to in memory with name '_mktime_year_1_1';month Allocated to in memory with name '_mktime_month_1_1';i Allocated to in memory with name '_mktime_i_1_1';seconds Allocated to in memory with name '_mktime_seconds_1_1'; time.c 174; -----------------------------------------; function mktime; -----------------------------------------_mktime:; time.c 0 push b push dph push dpl mov dptr,#_mktime_timeptr_1_1 pop acc movx @dptr,a pop acc inc dptr movx @dptr,a pop acc inc dptr movx @dptr,a; time.c 175 mov dptr,#_mktime_timeptr_1_1 movx a,@dptr mov r2,a inc dptr movx a,@dptr mov r3,a inc dptr movx a,@dptr mov r4,a mov a,#0x05 add a,r2 mov dpl,a; Peephole 180 changed mov to clr clr a addc a,r3 mov dph,a mov b,r4 lcall __gptrget mov r5,a inc dptr lcall __gptrget mov r6,a mov a,#0x6C add a,r5 mov r5,a mov a,#0x07 addc a,r6 mov r6,a mov a,#0x04 add a,r2 mov dpl,a; Peephole 180 changed mov to clr clr a addc a,r3 mov dph,a mov b,r4 lcall __gptrget mov r7,a mov r0,#0x00; time.c 178 mov dpl,r2 mov dph,r3 mov b,r4 push ar5 push ar6 push ar7 push ar0 lcall _CheckTime pop ar0 pop ar7 pop ar6 pop ar5; time.c 181
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -