FreeCalypso > hg > freecalypso-reveng
comparison dsample-fw-disasm @ 266:bb46e9f67cd5
dsample-fw-disasm: found apparent beginning of the tpudrv10 module
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Thu, 18 Jan 2018 17:12:17 +0000 |
| parents | d15f701b1434 |
| children | ace3136d0601 |
comparison
equal
deleted
inserted
replaced
| 265:d15f701b1434 | 266:bb46e9f67cd5 |
|---|---|
| 956 803c2e: 2201 mov r2, #1 | 956 803c2e: 2201 mov r2, #1 |
| 957 803c30: f000 f863 bl 0x803cfa | 957 803c30: f000 f863 bl 0x803cfa |
| 958 803c34: b004 add sp, #16 ; 0x10 | 958 803c34: b004 add sp, #16 ; 0x10 |
| 959 803c36: bd00 pop {pc} | 959 803c36: bd00 pop {pc} |
| 960 | 960 |
| 961 ; apparent beginning of tpudrv10 module | |
| 962 | |
| 963 811df8: b500 push {lr} | |
| 964 811dfa: b084 sub sp, #16 ; 0x10 | |
| 965 811dfc: 4669 mov r1, sp | |
| 966 811dfe: 8008 strh r0, [r1, #0] | |
| 967 811e00: 2014 mov r0, #20 ; 0x14 | |
| 968 811e02: 49c6 ldr r1, =0x83c0a1 ; via 0x81211c | |
| 969 811e04: 7809 ldrb r1, [r1, #0] | |
| 970 811e06: 4348 mul r0, r1 | |
| 971 811e08: 49c3 ldr r1, =0x83c054 ; via 0x812118 | |
| 972 811e0a: 5808 ldr r0, [r1, r0] | |
| 973 811e0c: 9003 str r0, [sp, #12] ; 0xc | |
| 974 811e0e: 9803 ldr r0, [sp, #12] ; 0xc | |
| 975 811e10: 8801 ldrh r1, [r0, #0] | |
| 976 811e12: 4668 mov r0, sp | |
| 977 811e14: 8800 ldrh r0, [r0, #0] | |
| 978 811e16: 4281 cmp r1, r0 | |
| 979 811e18: da08 bge 0x811e2c | |
| 980 811e1a: 9803 ldr r0, [sp, #12] ; 0xc | |
| 981 811e1c: 3004 add r0, #4 | |
| 982 811e1e: 9003 str r0, [sp, #12] ; 0xc | |
| 983 811e20: 9803 ldr r0, [sp, #12] ; 0xc | |
| 984 811e22: 8800 ldrh r0, [r0, #0] | |
| 985 811e24: 4669 mov r1, sp | |
| 986 811e26: 8809 ldrh r1, [r1, #0] | |
| 987 811e28: 4288 cmp r0, r1 | |
| 988 811e2a: dbf6 blt 0x811e1a | |
| 989 811e2c: 4669 mov r1, sp | |
| 990 811e2e: 9803 ldr r0, [sp, #12] ; 0xc | |
| 991 811e30: 8840 ldrh r0, [r0, #2] | |
| 992 811e32: 0040 lsl r0, r0, #1 | |
| 993 811e34: 80c8 strh r0, [r1, #6] | |
| 994 811e36: 4668 mov r0, sp | |
| 995 811e38: 88c0 ldrh r0, [r0, #6] | |
| 996 811e3a: 210d mov r1, #13 ; 0xd | |
| 997 811e3c: f002 fd8e bl 0x81495c | |
| 998 811e40: 4668 mov r0, sp | |
| 999 811e42: 8101 strh r1, [r0, #8] | |
| 1000 811e44: 8900 ldrh r0, [r0, #8] | |
| 1001 811e46: 1081 asr r1, r0, #2 | |
| 1002 811e48: 0f49 lsr r1, r1, #29 | |
| 1003 811e4a: 1808 add r0, r1, r0 | |
| 1004 811e4c: 10c1 asr r1, r0, #3 | |
| 1005 811e4e: 4668 mov r0, sp | |
| 1006 811e50: 8041 strh r1, [r0, #2] | |
| 1007 811e52: 8901 ldrh r1, [r0, #8] | |
| 1008 811e54: 8840 ldrh r0, [r0, #2] | |
| 1009 811e56: 00c0 lsl r0, r0, #3 | |
| 1010 811e58: 1a09 sub r1, r1, r0 | |
| 1011 811e5a: 4668 mov r0, sp | |
| 1012 811e5c: 8081 strh r1, [r0, #4] | |
| 1013 811e5e: 8880 ldrh r0, [r0, #4] | |
| 1014 811e60: 0740 lsl r0, r0, #29 | |
| 1015 811e62: 0f40 lsr r0, r0, #29 | |
| 1016 811e64: 0141 lsl r1, r0, #5 | |
| 1017 811e66: 4668 mov r0, sp | |
| 1018 811e68: 8840 ldrh r0, [r0, #2] | |
| 1019 811e6a: 0680 lsl r0, r0, #26 | |
| 1020 811e6c: 0e80 lsr r0, r0, #26 | |
| 1021 811e6e: 0200 lsl r0, r0, #8 | |
| 1022 811e70: 4301 orr r1, r0 | |
| 1023 811e72: 0408 lsl r0, r1, #16 | |
| 1024 811e74: 0c00 lsr r0, r0, #16 | |
| 1025 811e76: b004 add sp, #16 ; 0x10 | |
| 1026 811e78: bd00 pop {pc} | |
| 1027 | |
| 1028 811e7a: b500 push {lr} | |
| 1029 811e7c: b08d sub sp, #52 ; 0x34 | |
| 1030 811e7e: 466a mov r2, sp | |
| 1031 811e80: 7091 strb r1, [r2, #2] | |
| 1032 811e82: 4669 mov r1, sp | |
| 1033 811e84: 8008 strh r0, [r1, #0] | |
| 1034 811e86: 2014 mov r0, #20 ; 0x14 | |
| 1035 811e88: 49a4 ldr r1, =0x83c0a1 ; via 0x81211c | |
| 1036 811e8a: 7809 ldrb r1, [r1, #0] | |
| 1037 811e8c: 4348 mul r0, r1 | |
| 1038 811e8e: 49a4 ldr r1, =0x83c050 ; via 0x812120 | |
| 1039 811e90: 5808 ldr r0, [r1, r0] | |
| 1040 811e92: 900c str r0, [sp, #48] ; 0x30 | |
| 1041 811e94: 980c ldr r0, [sp, #48] ; 0x30 | |
| 1042 811e96: 8881 ldrh r1, [r0, #4] | |
| 1043 811e98: 4668 mov r0, sp | |
| 1044 811e9a: 8800 ldrh r0, [r0, #0] | |
| 1045 811e9c: 4281 cmp r1, r0 | |
| 1046 811e9e: da08 bge 0x811eb2 | |
| 1047 811ea0: 980c ldr r0, [sp, #48] ; 0x30 | |
| 1048 811ea2: 3018 add r0, #24 ; 0x18 | |
| 1049 811ea4: 900c str r0, [sp, #48] ; 0x30 | |
| 1050 811ea6: 980c ldr r0, [sp, #48] ; 0x30 | |
| 1051 811ea8: 8881 ldrh r1, [r0, #4] | |
| 1052 811eaa: 4668 mov r0, sp | |
| 1053 811eac: 8800 ldrh r0, [r0, #0] | |
| 1054 811eae: 4281 cmp r1, r0 | |
| 1055 811eb0: dbf6 blt 0x811ea0 | |
| 1056 811eb2: 2014 mov r0, #20 ; 0x14 | |
| 1057 811eb4: 4999 ldr r1, =0x83c0a1 ; via 0x81211c | |
| 1058 811eb6: 7809 ldrb r1, [r1, #0] | |
| 1059 811eb8: 4348 mul r0, r1 | |
| 1060 811eba: 4997 ldr r1, =0x83c054 ; via 0x812118 | |
| 1061 811ebc: 5808 ldr r0, [r1, r0] | |
| 1062 811ebe: 900a str r0, [sp, #40] ; 0x28 | |
| 1063 811ec0: 980a ldr r0, [sp, #40] ; 0x28 | |
| 1064 811ec2: 8801 ldrh r1, [r0, #0] | |
| 1065 811ec4: 4668 mov r0, sp | |
| 1066 811ec6: 8800 ldrh r0, [r0, #0] | |
| 1067 811ec8: 4281 cmp r1, r0 | |
| 1068 811eca: da08 bge 0x811ede | |
| 1069 811ecc: 980a ldr r0, [sp, #40] ; 0x28 | |
| 1070 811ece: 3004 add r0, #4 | |
| 1071 811ed0: 900a str r0, [sp, #40] ; 0x28 | |
| 1072 811ed2: 980a ldr r0, [sp, #40] ; 0x28 | |
| 1073 811ed4: 8801 ldrh r1, [r0, #0] | |
| 1074 811ed6: 4668 mov r0, sp | |
| 1075 811ed8: 8800 ldrh r0, [r0, #0] | |
| 1076 811eda: 4281 cmp r1, r0 | |
| 1077 811edc: dbf6 blt 0x811ecc | |
| 1078 811ede: 980a ldr r0, [sp, #40] ; 0x28 | |
| 1079 811ee0: 8840 ldrh r0, [r0, #2] | |
| 1080 811ee2: 9009 str r0, [sp, #36] ; 0x24 | |
| 1081 811ee4: 4668 mov r0, sp | |
| 1082 811ee6: 7880 ldrb r0, [r0, #2] | |
| 1083 811ee8: 2800 cmp r0, #0 | |
| 1084 811eea: d026 beq 0x811f3a | |
| 1085 811eec: 488d ldr r0, =0x27627 ; via 0x812124 | |
| 1086 811eee: 990c ldr r1, [sp, #48] ; 0x30 | |
| 1087 811ef0: 7b09 ldrb r1, [r1, #12] ; 0xc | |
| 1088 811ef2: 4348 mul r0, r1 | |
| 1089 811ef4: 3008 add r0, #8 | |
| 1090 811ef6: 9008 str r0, [sp, #32] ; 0x20 | |
| 1091 811ef8: 980c ldr r0, [sp, #48] ; 0x30 | |
| 1092 811efa: 6880 ldr r0, [r0, #8] | |
| 1093 811efc: 0081 lsl r1, r0, #2 | |
| 1094 811efe: 1841 add r1, r0, r1 | |
| 1095 811f00: 4668 mov r0, sp | |
| 1096 811f02: 8800 ldrh r0, [r0, #0] | |
| 1097 811f04: 1841 add r1, r0, r1 | |
| 1098 811f06: 980c ldr r0, [sp, #48] ; 0x30 | |
| 1099 811f08: 6800 ldr r0, [r0, #0] | |
| 1100 811f0a: 1a08 sub r0, r1, r0 | |
| 1101 811f0c: 9007 str r0, [sp, #28] ; 0x1c | |
| 1102 811f0e: 9807 ldr r0, [sp, #28] ; 0x1c | |
| 1103 811f10: 990c ldr r1, [sp, #48] ; 0x30 | |
| 1104 811f12: 7b09 ldrb r1, [r1, #12] ; 0xc | |
| 1105 811f14: 4348 mul r0, r1 | |
| 1106 811f16: 4669 mov r1, sp | |
| 1107 811f18: 8088 strh r0, [r1, #4] | |
| 1108 811f1a: 4668 mov r0, sp | |
| 1109 811f1c: 8880 ldrh r0, [r0, #4] | |
| 1110 811f1e: 0540 lsl r0, r0, #21 | |
| 1111 811f20: 9006 str r0, [sp, #24] ; 0x18 | |
| 1112 811f22: 9808 ldr r0, [sp, #32] ; 0x20 | |
| 1113 811f24: 9907 ldr r1, [sp, #28] ; 0x1c | |
| 1114 811f26: 4348 mul r0, r1 | |
| 1115 811f28: 9005 str r0, [sp, #20] ; 0x14 | |
| 1116 811f2a: 2014 mov r0, #20 ; 0x14 | |
| 1117 811f2c: 497b ldr r1, =0x83c0a1 ; via 0x81211c | |
| 1118 811f2e: 7809 ldrb r1, [r1, #0] | |
| 1119 811f30: 4348 mul r0, r1 | |
| 1120 811f32: 497d ldr r1, =0x83c058 ; via 0x812128 | |
| 1121 811f34: 5808 ldr r0, [r1, r0] | |
| 1122 811f36: 900b str r0, [sp, #44] ; 0x2c | |
| 1123 811f38: e024 b 0x811f84 | |
| 1124 811f3a: 487c ldr r0, =0x2762f ; via 0x81212c | |
| 1125 811f3c: 9008 str r0, [sp, #32] ; 0x20 | |
| 1126 811f3e: 980c ldr r0, [sp, #48] ; 0x30 | |
| 1127 811f40: 6900 ldr r0, [r0, #16] ; 0x10 | |
| 1128 811f42: 0081 lsl r1, r0, #2 | |
| 1129 811f44: 1840 add r0, r0, r1 | |
| 1130 811f46: 4669 mov r1, sp | |
| 1131 811f48: 8809 ldrh r1, [r1, #0] | |
| 1132 811f4a: 1809 add r1, r1, r0 | |
| 1133 811f4c: 980c ldr r0, [sp, #48] ; 0x30 | |
| 1134 811f4e: 6800 ldr r0, [r0, #0] | |
| 1135 811f50: 1a08 sub r0, r1, r0 | |
| 1136 811f52: 9007 str r0, [sp, #28] ; 0x1c | |
| 1137 811f54: 2114 mov r1, #20 ; 0x14 | |
| 1138 811f56: 980c ldr r0, [sp, #48] ; 0x30 | |
| 1139 811f58: 5609 ldrsb r1, [r1, r0] | |
| 1140 811f5a: 9809 ldr r0, [sp, #36] ; 0x24 | |
| 1141 811f5c: 4348 mul r0, r1 | |
| 1142 811f5e: 9907 ldr r1, [sp, #28] ; 0x1c | |
| 1143 811f60: 1841 add r1, r0, r1 | |
| 1144 811f62: 4668 mov r0, sp | |
| 1145 811f64: 8081 strh r1, [r0, #4] | |
| 1146 811f66: 8880 ldrh r0, [r0, #4] | |
| 1147 811f68: 0540 lsl r0, r0, #21 | |
| 1148 811f6a: 9006 str r0, [sp, #24] ; 0x18 | |
| 1149 811f6c: 2114 mov r1, #20 ; 0x14 | |
| 1150 811f6e: 980c ldr r0, [sp, #48] ; 0x30 | |
| 1151 811f70: 5609 ldrsb r1, [r1, r0] | |
| 1152 811f72: 9809 ldr r0, [sp, #36] ; 0x24 | |
| 1153 811f74: 4348 mul r0, r1 | |
| 1154 811f76: 9907 ldr r1, [sp, #28] ; 0x1c | |
| 1155 811f78: 1841 add r1, r0, r1 | |
| 1156 811f7a: 9808 ldr r0, [sp, #32] ; 0x20 | |
| 1157 811f7c: 4348 mul r0, r1 | |
| 1158 811f7e: 9005 str r0, [sp, #20] ; 0x14 | |
| 1159 811f80: 486b ldr r0, =0x83bea8 ; via 0x812130 | |
| 1160 811f82: 900b str r0, [sp, #44] ; 0x2c | |
| 1161 811f84: 980b ldr r0, [sp, #44] ; 0x2c | |
| 1162 811f86: 8801 ldrh r1, [r0, #0] | |
| 1163 811f88: 4668 mov r0, sp | |
| 1164 811f8a: 8880 ldrh r0, [r0, #4] | |
| 1165 811f8c: 4281 cmp r1, r0 | |
| 1166 811f8e: da08 bge 0x811fa2 | |
| 1167 811f90: 980b ldr r0, [sp, #44] ; 0x2c | |
| 1168 811f92: 3004 add r0, #4 | |
| 1169 811f94: 900b str r0, [sp, #44] ; 0x2c | |
| 1170 811f96: 980b ldr r0, [sp, #44] ; 0x2c | |
| 1171 811f98: 8801 ldrh r1, [r0, #0] | |
| 1172 811f9a: 4668 mov r0, sp | |
| 1173 811f9c: 8880 ldrh r0, [r0, #4] | |
| 1174 811f9e: 4281 cmp r1, r0 | |
| 1175 811fa0: dbf6 blt 0x811f90 | |
| 1176 811fa2: 4964 ldr r1, =0x83be2c ; via 0x812134 | |
| 1177 811fa4: 980b ldr r0, [sp, #44] ; 0x2c | |
| 1178 811fa6: 7880 ldrb r0, [r0, #2] | |
| 1179 811fa8: 0740 lsl r0, r0, #29 | |
| 1180 811faa: 0f40 lsr r0, r0, #29 | |
| 1181 811fac: 0140 lsl r0, r0, #5 | |
| 1182 811fae: 7008 strb r0, [r1, #0] | |
| 1183 811fb0: 9805 ldr r0, [sp, #20] ; 0x14 | |
| 1184 811fb2: 2110 mov r1, #16 ; 0x10 | |
| 1185 811fb4: f001 fe92 bl 0x813cdc | |
| 1186 811fb8: 0d48 lsr r0, r1, #21 | |
| 1187 811fba: 9002 str r0, [sp, #8] | |
| 1188 811fbc: 9905 ldr r1, [sp, #20] ; 0x14 | |
| 1189 811fbe: 9802 ldr r0, [sp, #8] | |
| 1190 811fc0: 0640 lsl r0, r0, #25 | |
| 1191 811fc2: 1a08 sub r0, r1, r0 | |
| 1192 811fc4: 0d40 lsr r0, r0, #21 | |
| 1193 811fc6: 9003 str r0, [sp, #12] ; 0xc | |
| 1194 811fc8: 9903 ldr r1, [sp, #12] ; 0xc | |
| 1195 811fca: 9802 ldr r0, [sp, #8] | |
| 1196 811fcc: 0100 lsl r0, r0, #4 | |
| 1197 811fce: 1809 add r1, r1, r0 | |
| 1198 811fd0: 200d mov r0, #13 ; 0xd | |
| 1199 811fd2: 0540 lsl r0, r0, #21 | |
| 1200 811fd4: 4348 mul r0, r1 | |
| 1201 811fd6: 9906 ldr r1, [sp, #24] ; 0x18 | |
| 1202 811fd8: 1a08 sub r0, r1, r0 | |
| 1203 811fda: 0d40 lsr r0, r0, #21 | |
| 1204 811fdc: 9004 str r0, [sp, #16] ; 0x10 | |
| 1205 811fde: 9803 ldr r0, [sp, #12] ; 0xc | |
| 1206 811fe0: 0700 lsl r0, r0, #28 | |
| 1207 811fe2: 0f00 lsr r0, r0, #28 | |
| 1208 811fe4: 0300 lsl r0, r0, #12 | |
| 1209 811fe6: 9902 ldr r1, [sp, #8] | |
| 1210 811fe8: 0649 lsl r1, r1, #25 | |
| 1211 811fea: 0e49 lsr r1, r1, #25 | |
| 1212 811fec: 0409 lsl r1, r1, #16 | |
| 1213 811fee: 4308 orr r0, r1 | |
| 1214 811ff0: 9904 ldr r1, [sp, #16] ; 0x10 | |
| 1215 811ff2: 0709 lsl r1, r1, #28 | |
| 1216 811ff4: 0f09 lsr r1, r1, #28 | |
| 1217 811ff6: 0209 lsl r1, r1, #8 | |
| 1218 811ff8: 4308 orr r0, r1 | |
| 1219 811ffa: b00d add sp, #52 ; 0x34 | |
| 1220 811ffc: bd00 pop {pc} | |
| 1221 | |
| 961 $Convert_l1_radio_freq: | 1222 $Convert_l1_radio_freq: |
| 962 811ffe: b081 sub sp, #4 | 1223 811ffe: b081 sub sp, #4 |
| 963 812000: 4669 mov r1, sp | 1224 812000: 4669 mov r1, sp |
| 964 812002: 8008 strh r0, [r1, #0] | 1225 812002: 8008 strh r0, [r1, #0] |
| 965 812004: e06c b 0x8120e0 | 1226 812004: e06c b 0x8120e0 |
