📄 rtc.lst
字号:
896 .global _weekday
897 _weekday:
898 ; ENTRY
899 DBG80:
900 ; i in reg size 2
901 ; days in reg size 2
902 ; {
903 DBG81:
904 ; int i;
905 ; int days;
906 ; days = rtc.day + 6;
907 DBG82:
011c 5c420300 908 mov.b &_rtc+0x3,r12
0120 3c500600 909 add #0x6,r12
910 DBG83:
911 ; for (i = 1; i < rtc.month; i++)
0124 1d43 912 mov #0x1,r13
0126 5e420500 913 mov.b &_rtc+0x5,r14
012a 0d9e 914 cmp r14,r13
012c 0934 915 jge weekday_L1
916 weekday_L2:
917 ; days += month_lengths[i];
918 DBG84:
012e 5e4d0000 919 mov.b _month_lengths(r13),r14
0132 8e11 920 sxt r14
0134 0c5e 921 add r14,r12
0136 1d53 922 add #0x1,r13
0138 5e420500 923 mov.b &_rtc+0x5,r14
013c 0d9e 924 cmp r14,r13
013e f73b 925 jl weekday_L2
926 weekday_L1:
927 ; if ((rtc.year & 0x03) == 0 && rtc.month <= 2)
928 DBG85:
0140 f2b003000600 929 bit.b #0x3,&_rtc+0x6
0146 0520 930 jne weekday_L3
0148 6d43 931 mov.b #0x2,r13
014a 5d920500 932 cmp.b &_rtc+0x5,r13
014e 0128 933 jnc weekday_L3
934 DBG86:
935 ; days--;
0150 1c83 936 sub #0x1,r12
937 DBG87:
938 weekday_L3:
939 ; days += rtc.year;
0152 5d420600 940 mov.b &_rtc+0x6,r13
0156 0c5d 941 add r13,r12
942 DBG88:
943 ; days += (rtc.year >> 2);
0158 5d420600 944 mov.b &_rtc+0x6,r13
015c 12c3 945 clrc
015e 0d10 946 rrc r13
0160 0d11 947 rra r13
0162 0c5d 948 add r13,r12
949 DBG89:
950 ; days %= 7;
0164 3d400700 951 mov #0x7,r13
952 DBG92:
0168 b0120000 953 call #__sdiv16
954 DBG90:
955 DBG93:
956 ; return days;
016c 0c4d 957 mov r13,r12
958 DBG94:
959 DBG91:
960 ; EXIT
016e 3041 961 ret
962 .dbgseg dbg_syms
02d0 00000000 963 .long 0x0
02d4 000000bc 964 .long DBG17
02d8 00000000 965 .long 0x0
02dc 00000000 966 .long 0x0
02e0 00010002 967 .long 0x10002
02e4 00000000 968 .long 0x0
02e8 000002bc 969 .long DBG18
02ec 00000002 970 .long 0x2
02f0 00000000 971 .long 0x0
02f4 00010002 972 .long 0x10002
02f8 504e5f5f 973 .long 0x504e5f5f
02fc 534d5241 974 .long 0x534d5241
0300 00000000 975 .long 0x0
0304 00000000 976 .long 0x0
0308 00010002 977 .long 0x10002
978 DBG2:
030c 0062622e 979 .long 0x62622e
0310 00000000 980 .long 0x0
0314 00000124 981 .long DBG83
0318 00000000 982 .long 0x0
031c 01640001 983 .long 0x1640001
0320 00000000 984 .long 0x0
0324 0000000b 985 .long 0xb
0328 00000000 986 .long 0x0
032c 00000348 987 .long DBG95
0330 00000000 988 .long 0x0
0334 73796164 989 .long 0x73796164
0338 00000000 990 .long 0x0
033c 000c0102 991 .long 0xc0102
0340 00000004 992 .long 0x4
0344 0004ffff 993 .long 0x4ffff
994 DBG95:
0348 0062622e 995 .long 0x62622e
034c 00000000 996 .long 0x0
0350 0000012e 997 .long DBG84
0354 00000000 998 .long 0x0
0358 01640001 999 .long 0x1640001
035c 00000000 1000 .long 0x0
0360 0000000c 1001 .long 0xc
0364 00000000 1002 .long 0x0
0368 000003ac 1003 .long DBG96
036c 00000000 1004 .long 0x0
0370 00000069 1005 .long 0x69
0374 00000000 1006 .long 0x0
0378 000d0102 1007 .long 0xd0102
037c 00000004 1008 .long 0x4
0380 0004ffff 1009 .long 0x4ffff
0384 0062652e 1010 .long 0x62652e
0388 00000000 1011 .long 0x0
038c 00000150 1012 .long DBG86
0390 00000000 1013 .long 0x0
0394 01640001 1014 .long 0x1640001
0398 00000000 1015 .long 0x0
039c 0000000f 1016 .long 0xf
03a0 00000000 1017 .long 0x0
03a4 00000000 1018 .long 0x0
03a8 00000000 1019 .long 0x0
1020 DBG96:
03ac 0062622e 1021 .long 0x62622e
03b0 00000000 1022 .long 0x0
03b4 00000168 1023 .long DBG92
03b8 00000000 1024 .long 0x0
03bc 01640001 1025 .long 0x1640001
03c0 00000000 1026 .long 0x0
03c4 00000015 1027 .long 0x15
03c8 00000000 1028 .long 0x0
03cc 00000438 1029 .long DBG97
03d0 00000000 1030 .long 0x0
03d4 00000000 1031 .long 0x0
03d8 000001d4 1032 .long DBG98
03dc 00000000 1033 .long 0x0
03e0 00000000 1034 .long 0x0
03e4 00010002 1035 .long 0x10002
03e8 0062652e 1036 .long 0x62652e
03ec 00000000 1037 .long 0x0
03f0 0000016c 1038 .long DBG93
03f4 00000000 1039 .long 0x0
03f8 01640001 1040 .long 0x1640001
03fc 00000000 1041 .long 0x0
0400 00000015 1042 .long 0x15
0404 00000000 1043 .long 0x0
0408 00000000 1044 .long 0x0
040c 00000000 1045 .long 0x0
0410 0062652e 1046 .long 0x62652e
0414 00000000 1047 .long 0x0
0418 0000016c 1048 .long DBG90
041c 00000000 1049 .long 0x0
0420 01640001 1050 .long 0x1640001
0424 00000000 1051 .long 0x0
0428 00000015 1052 .long 0x15
042c 00000000 1053 .long 0x0
0430 00000000 1054 .long 0x0
0434 00000000 1055 .long 0x0
1056 DBG97:
0438 0062622e 1057 .long 0x62622e
043c 00000000 1058 .long 0x0
0440 0000016c 1059 .long DBG90
0444 00000000 1060 .long 0x0
0448 01640001 1061 .long 0x1640001
044c 00000000 1062 .long 0x0
0450 00000015 1063 .long 0x15
0454 00000000 1064 .long 0x0
0458 0000062c 1065 .long DBG99
045c 00000000 1066 .long 0x0
0460 73796164 1067 .long 0x73796164
0464 00000000 1068 .long 0x0
0468 000d0102 1069 .long 0xd0102
046c 00000004 1070 .long 0x4
0470 0004ffff 1071 .long 0x4ffff
0474 0062652e 1072 .long 0x62652e
0478 00000000 1073 .long 0x0
047c 0000016e 1074 .long DBG91
0480 00000000 1075 .long 0x0
0484 01640001 1076 .long 0x1640001
0488 00000000 1077 .long 0x0
048c 00000016 1078 .long 0x16
0490 00000000 1079 .long 0x0
0494 00000000 1080 .long 0x0
0498 00000000 1081 .long 0x0
049c 0066652e 1082 .long 0x66652e
04a0 00000000 1083 .long 0x0
04a4 0000016e 1084 .long DBG94
04a8 00000000 1085 .long 0x0
04ac 01650001 1086 .long 0x1650001
04b0 00000000 1087 .long 0x0
04b4 00000079 1088 .long 0x79
04b8 00000000 1089 .long 0x0
04bc 00000000 1090 .long 0x0
04c0 00000000 1091 .long 0x0
1092 .pseg rtc_code
1093 DBG76:
1094 .dbgseg dbg_syms
04c4 6b656577 1095 .long 0x6b656577
04c8 00796164 1096 .long 0x796164
04cc 00000170 1097 .long DBG76
04d0 00000000 1098 .long 0x0
04d4 00ff0001 1099 .long 0xff0001
1100 ; }
1101 ; void rtc_bumper(void)
1102 DBG75:
04d8 00000000 1103 .long 0x0
04dc 00000268 1104 .long DBG104
04e0 00000170 1105 .long _rtc_bumper
04e4 00000040 1106 .long 0x40
04e8 01020001 1107 .long 0x1020001
04ec 00000500 1108 .long DBG79
04f0 00000006 1109 .long DBG101-DBG102
04f4 000001f8 1110 .long DBG103
04f8 000005a0 1111 .long DBG100
04fc 00000000 1112 .long 0x0
1113 .pseg rtc_code
1114 DBG102:
1115 .dbgseg dbg_syms
1116 DBG79:
0500 0066622e 1117 .long 0x66622e
0504 00000000 1118 .long 0x0
0508 00000170 1119 .long DBG102
050c 00000000 1120 .long 0x0
0510 01650001 1121 .long 0x1650001
0514 00000000 1122 .long 0x0
0518 0000007b 1123 .long 0x7b
051c 00000000 1124 .long 0x0
0520 000005c8 1125 .long DBG105
0524 00000000 1126 .long 0x0
1127 .dbgseg dbg_line
1128 DBG103:
01f8 000004d8 1129 .long DBG75
01fc 00000000 1130 .long 0x0
0200 00000170 1131 .long _rtc_bumper
0204 00000001 1132 .long 0x1
0208 00000170 1133 .long DBG107
020c 00000002 1134 .long 0x2
0210 00000170 1135 .long DBG108
0214 00000005 1136 .long 0x5
0218 00000174 1137 .long DBG109
021c 00000028 1138 .long 0x28
1139 .pseg rtc_code
1140 .global _rtc_bumper
1141 _rtc_bumper:
1142 ; ENTRY
1143 DBG106:
1144 ; i in reg size 2
1145 ; {
1146 DBG107:
1147 ; int i;
1148 ; i = bump_rtc();
1149 DBG108:
0170 b0126200 1150 call #_bump_rtc
1151 DBG110:
1152 DBG109:
1153 ; EXIT
0174 3041 1154 ret
1155 .dbgseg dbg_syms
0528 00000000 1156 .long 0x0
052c 000000bc 1157 .long DBG17
0530 00000000 1158 .long 0x0
0534 00000000 1159 .long 0x0
0538 00010002 1160 .long 0x10002
053c 00000000 1161 .long 0x0
0540 000002bc 1162 .long DBG18
0544 00000002 1163 .long 0x2
0548 00000000 1164 .long 0x0
054c 00010002 1165 .long 0x10002
0550 504e5f5f 1166 .long 0x504e5f5f
0554 534d5241 1167 .long 0x534d5241
0558 00000000 1168 .long 0x0
055c 00000000 1169 .long 0x0
0560 00010002 1170 .long 0x10002
0564 0066652e 1171 .long 0x66652e
0568 00000000 1172 .long 0x0
056c 00000174 1173 .long DBG110
0570 00000000 1174 .long 0x0
0574 01650001 1175 .long 0x1650001
0578 00000000 1176 .long 0x0
057c 000000a2 1177 .long 0xa2
0580 00000000 1178 .long 0x0
0584 00000000 1179 .long 0x0
0588 00000000 1180 .long 0x0
1181 .pseg rtc_code
1182 DBG101:
1183 .dbgseg dbg_syms
058c 00000000 1184 .long 0x0
0590 00000268 1185 .long DBG104
0594 00000176 1186 .long DBG101
0598 00000000 1187 .long 0x0
059c 00ff0001 1188 .long 0xff0001
1189 ; }
1190 ; void correct_rtc(void)
1191 DBG100:
05a0 00000000 1192 .long 0x0
05a4 00000338 1193 .long DBG115
05a8 00000176 1194 .long _correct_rtc
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -