Rev 20 | Details | Compare with Previous | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 21 | mjames | 1 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 1 |
| 16 | mjames | 2 | |
| 3 | |||
| 4 | 1 .cpu cortex-m3 |
||
| 5 | 2 .eabi_attribute 20, 1 |
||
| 6 | 3 .eabi_attribute 21, 1 |
||
| 7 | 4 .eabi_attribute 23, 3 |
||
| 8 | 5 .eabi_attribute 24, 1 |
||
| 9 | 6 .eabi_attribute 25, 1 |
||
| 10 | 7 .eabi_attribute 26, 1 |
||
| 11 | 8 .eabi_attribute 30, 1 |
||
| 12 | 9 .eabi_attribute 34, 1 |
||
| 13 | 10 .eabi_attribute 18, 4 |
||
| 14 | 11 .file "nmea.c" |
||
| 15 | 12 .text |
||
| 16 | 13 .Ltext0: |
||
| 17 | 14 .cfi_sections .debug_frame |
||
| 18 | 15 .section .text.decodeDec,"ax",%progbits |
||
| 19 | 16 .align 1 |
||
| 20 | 17 .arch armv7-m |
||
| 21 | 18 .syntax unified |
||
| 22 | 19 .thumb |
||
| 23 | 20 .thumb_func |
||
| 24 | 21 .fpu softvfp |
||
| 25 | 23 decodeDec: |
||
| 26 | 24 .LVL0: |
||
| 27 | 25 .LFB66: |
||
| 28 | 26 .file 1 "../libNMEA/src/nmea.c" |
||
| 29 | 1:../libNMEA/src/nmea.c **** /* |
||
| 30 | 2:../libNMEA/src/nmea.c **** * nmea.c |
||
| 31 | 3:../libNMEA/src/nmea.c **** * |
||
| 32 | 4:../libNMEA/src/nmea.c **** * Created on: 6 Sep 2020 |
||
| 33 | 5:../libNMEA/src/nmea.c **** * Author: mike |
||
| 34 | 6:../libNMEA/src/nmea.c **** */ |
||
| 35 | 7:../libNMEA/src/nmea.c **** |
||
| 36 | 8:../libNMEA/src/nmea.c **** #include <math.h> |
||
| 37 | 9:../libNMEA/src/nmea.c **** #include <stdint.h> |
||
| 38 | 10:../libNMEA/src/nmea.c **** #include <stdlib.h> |
||
| 39 | 11:../libNMEA/src/nmea.c **** #include <memory.h> |
||
| 40 | 12:../libNMEA/src/nmea.c **** |
||
| 41 | 13:../libNMEA/src/nmea.c **** #include "libNMEA/nmea.h" |
||
| 42 | 14:../libNMEA/src/nmea.c **** |
||
| 43 | 15:../libNMEA/src/nmea.c **** #include "libSerial/serial.h" |
||
| 44 | 16:../libNMEA/src/nmea.c **** |
||
| 45 | 17:../libNMEA/src/nmea.c **** char linebuff[80]; |
||
| 46 | 18:../libNMEA/src/nmea.c **** unsigned linePos = 0; |
||
| 47 | 19:../libNMEA/src/nmea.c **** |
||
| 48 | 20:../libNMEA/src/nmea.c **** typedef enum |
||
| 49 | 21:../libNMEA/src/nmea.c **** { |
||
| 50 | 22:../libNMEA/src/nmea.c **** SEARCH, READING |
||
| 51 | 23:../libNMEA/src/nmea.c **** } NmeaState_t; |
||
| 52 | 24:../libNMEA/src/nmea.c **** |
||
| 53 | 25:../libNMEA/src/nmea.c **** NmeaState_t lineState = SEARCH; |
||
| 54 | 26:../libNMEA/src/nmea.c **** |
||
| 55 | 27:../libNMEA/src/nmea.c **** static bool |
||
| 56 | 28:../libNMEA/src/nmea.c **** decodePacket (char *linebuff, int linePos, Location *loc); |
||
| 57 | 29:../libNMEA/src/nmea.c **** |
||
| 58 | 30:../libNMEA/src/nmea.c **** bool |
||
| 59 | 31:../libNMEA/src/nmea.c **** updateLocation (Location *loc, usart_ctl * uc) |
||
| 60 | 32:../libNMEA/src/nmea.c **** { |
||
| 21 | mjames | 61 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 2 |
| 16 | mjames | 62 | |
| 63 | |||
| 64 | 33:../libNMEA/src/nmea.c **** while (1) |
||
| 65 | 34:../libNMEA/src/nmea.c **** { |
||
| 66 | 35:../libNMEA/src/nmea.c **** if (!SerialCharsReceived (uc)) |
||
| 67 | 36:../libNMEA/src/nmea.c **** return false; // nothing to read, return immediately |
||
| 68 | 37:../libNMEA/src/nmea.c **** |
||
| 69 | 38:../libNMEA/src/nmea.c **** char c = GetCharSerial (uc); |
||
| 70 | 39:../libNMEA/src/nmea.c **** switch (lineState) |
||
| 71 | 40:../libNMEA/src/nmea.c **** { |
||
| 72 | 41:../libNMEA/src/nmea.c **** case SEARCH: |
||
| 73 | 42:../libNMEA/src/nmea.c **** if (c == '$') |
||
| 74 | 43:../libNMEA/src/nmea.c **** lineState = READING; |
||
| 75 | 44:../libNMEA/src/nmea.c **** linePos = 0; |
||
| 76 | 45:../libNMEA/src/nmea.c **** break; |
||
| 77 | 46:../libNMEA/src/nmea.c **** case READING: |
||
| 78 | 47:../libNMEA/src/nmea.c **** if (c == '\r') |
||
| 79 | 48:../libNMEA/src/nmea.c **** { |
||
| 80 | 49:../libNMEA/src/nmea.c **** // handle the read code |
||
| 81 | 50:../libNMEA/src/nmea.c **** bool success = decodePacket (linebuff, linePos, loc); |
||
| 82 | 51:../libNMEA/src/nmea.c **** lineState = SEARCH; |
||
| 83 | 52:../libNMEA/src/nmea.c **** |
||
| 84 | 53:../libNMEA/src/nmea.c **** linePos = 0; |
||
| 85 | 54:../libNMEA/src/nmea.c **** return success; |
||
| 86 | 55:../libNMEA/src/nmea.c **** } |
||
| 87 | 56:../libNMEA/src/nmea.c **** if (linePos < sizeof(linebuff)) |
||
| 88 | 57:../libNMEA/src/nmea.c **** linebuff[linePos++] = c; |
||
| 89 | 58:../libNMEA/src/nmea.c **** else |
||
| 90 | 59:../libNMEA/src/nmea.c **** { |
||
| 91 | 60:../libNMEA/src/nmea.c **** lineState = SEARCH; |
||
| 92 | 61:../libNMEA/src/nmea.c **** // search for the $ in any unread string |
||
| 93 | 62:../libNMEA/src/nmea.c **** int i; |
||
| 94 | 63:../libNMEA/src/nmea.c **** |
||
| 95 | 64:../libNMEA/src/nmea.c **** for (i = 0; i < linePos; i++) |
||
| 96 | 65:../libNMEA/src/nmea.c **** if (linebuff[i] == '$') |
||
| 97 | 66:../libNMEA/src/nmea.c **** { |
||
| 98 | 67:../libNMEA/src/nmea.c **** int n = i+1; |
||
| 99 | 68:../libNMEA/src/nmea.c **** memcpy (linebuff, linebuff + n, linePos - i); |
||
| 100 | 69:../libNMEA/src/nmea.c **** linePos = linePos - i; |
||
| 101 | 70:../libNMEA/src/nmea.c **** linebuff[linePos++] = c; |
||
| 102 | 71:../libNMEA/src/nmea.c **** lineState = READING; |
||
| 103 | 72:../libNMEA/src/nmea.c **** } |
||
| 104 | 73:../libNMEA/src/nmea.c **** |
||
| 105 | 74:../libNMEA/src/nmea.c **** if (lineState == SEARCH) |
||
| 106 | 75:../libNMEA/src/nmea.c **** linePos = 0; |
||
| 107 | 76:../libNMEA/src/nmea.c **** } |
||
| 108 | 77:../libNMEA/src/nmea.c **** break; |
||
| 109 | 78:../libNMEA/src/nmea.c **** } |
||
| 110 | 79:../libNMEA/src/nmea.c **** } |
||
| 111 | 80:../libNMEA/src/nmea.c **** return 0; |
||
| 112 | 81:../libNMEA/src/nmea.c **** } |
||
| 113 | 82:../libNMEA/src/nmea.c **** |
||
| 114 | 83:../libNMEA/src/nmea.c **** |
||
| 115 | 84:../libNMEA/src/nmea.c **** static int8_t decodeDec(char c) |
||
| 116 | 85:../libNMEA/src/nmea.c **** { |
||
| 117 | 27 .loc 1 85 1 view -0 |
||
| 118 | 28 .cfi_startproc |
||
| 119 | 29 @ args = 0, pretend = 0, frame = 0 |
||
| 120 | 30 @ frame_needed = 0, uses_anonymous_args = 0 |
||
| 21 | mjames | 121 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 3 |
| 16 | mjames | 122 | |
| 123 | |||
| 124 | 31 @ link register save eliminated. |
||
| 125 | 86:../libNMEA/src/nmea.c **** if (c>'9' && c<'0') |
||
| 126 | 32 .loc 1 86 3 view .LVU1 |
||
| 127 | 87:../libNMEA/src/nmea.c **** return -1; |
||
| 128 | 88:../libNMEA/src/nmea.c **** return c-'0'; |
||
| 129 | 33 .loc 1 88 3 view .LVU2 |
||
| 130 | 34 .loc 1 88 11 is_stmt 0 view .LVU3 |
||
| 131 | 35 0000 3038 subs r0, r0, #48 |
||
| 132 | 36 .LVL1: |
||
| 133 | 89:../libNMEA/src/nmea.c **** } |
||
| 134 | 37 .loc 1 89 1 view .LVU4 |
||
| 135 | 38 0002 40B2 sxtb r0, r0 |
||
| 136 | 39 0004 7047 bx lr |
||
| 137 | 40 .cfi_endproc |
||
| 138 | 41 .LFE66: |
||
| 139 | 43 .section .text.decodeHex,"ax",%progbits |
||
| 140 | 44 .align 1 |
||
| 141 | 45 .syntax unified |
||
| 142 | 46 .thumb |
||
| 143 | 47 .thumb_func |
||
| 144 | 48 .fpu softvfp |
||
| 145 | 50 decodeHex: |
||
| 146 | 51 .LVL2: |
||
| 147 | 52 .LFB67: |
||
| 148 | 90:../libNMEA/src/nmea.c **** |
||
| 149 | 91:../libNMEA/src/nmea.c **** static uint8_t |
||
| 150 | 92:../libNMEA/src/nmea.c **** decodeHex (char c) |
||
| 151 | 93:../libNMEA/src/nmea.c **** { |
||
| 152 | 53 .loc 1 93 1 is_stmt 1 view -0 |
||
| 153 | 54 .cfi_startproc |
||
| 154 | 55 @ args = 0, pretend = 0, frame = 0 |
||
| 155 | 56 @ frame_needed = 0, uses_anonymous_args = 0 |
||
| 156 | 57 .loc 1 93 1 is_stmt 0 view .LVU6 |
||
| 157 | 58 0000 10B5 push {r4, lr} |
||
| 158 | 59 .LCFI0: |
||
| 159 | 60 .cfi_def_cfa_offset 8 |
||
| 160 | 61 .cfi_offset 4, -8 |
||
| 161 | 62 .cfi_offset 14, -4 |
||
| 162 | 63 0002 0446 mov r4, r0 |
||
| 163 | 94:../libNMEA/src/nmea.c **** int8_t v = decodeDec(c); |
||
| 164 | 64 .loc 1 94 3 is_stmt 1 view .LVU7 |
||
| 165 | 65 .loc 1 94 14 is_stmt 0 view .LVU8 |
||
| 166 | 66 0004 FFF7FEFF bl decodeDec |
||
| 167 | 67 .LVL3: |
||
| 168 | 95:../libNMEA/src/nmea.c **** if(v>=0) |
||
| 169 | 68 .loc 1 95 3 is_stmt 1 view .LVU9 |
||
| 170 | 69 .loc 1 95 5 is_stmt 0 view .LVU10 |
||
| 171 | 70 0008 0028 cmp r0, #0 |
||
| 172 | 71 .LVL4: |
||
| 173 | 72 .loc 1 95 5 view .LVU11 |
||
| 174 | 73 000a 0DDA bge .L9 |
||
| 175 | 96:../libNMEA/src/nmea.c **** return v; |
||
| 176 | 97:../libNMEA/src/nmea.c **** c = tolower (c); |
||
| 177 | 74 .loc 1 97 3 is_stmt 1 view .LVU12 |
||
| 178 | 75 .LBB2: |
||
| 179 | 76 .loc 1 97 7 view .LVU13 |
||
| 180 | 77 .LVL5: |
||
| 21 | mjames | 181 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 4 |
| 16 | mjames | 182 | |
| 183 | |||
| 184 | 78 .loc 1 97 7 view .LVU14 |
||
| 185 | 79 000c 0A4B ldr r3, .L12 |
||
| 186 | 80 000e E35C ldrb r3, [r4, r3] @ zero_extendqisi2 |
||
| 187 | 81 0010 03F00303 and r3, r3, #3 |
||
| 188 | 82 0014 012B cmp r3, #1 |
||
| 189 | 83 0016 09D0 beq .L10 |
||
| 190 | 84 .LVL6: |
||
| 191 | 85 .L6: |
||
| 192 | 86 .loc 1 97 7 is_stmt 0 view .LVU15 |
||
| 193 | 87 .LBE2: |
||
| 194 | 88 .loc 1 97 5 discriminator 4 view .LVU16 |
||
| 195 | 89 0018 E4B2 uxtb r4, r4 |
||
| 196 | 90 .LVL7: |
||
| 197 | 98:../libNMEA/src/nmea.c **** if (c >= 'a' && c <= 'f') |
||
| 198 | 91 .loc 1 98 3 is_stmt 1 discriminator 4 view .LVU17 |
||
| 199 | 92 .loc 1 98 16 is_stmt 0 discriminator 4 view .LVU18 |
||
| 200 | 93 001a A4F16103 sub r3, r4, #97 |
||
| 201 | 94 001e DBB2 uxtb r3, r3 |
||
| 202 | 95 .loc 1 98 6 discriminator 4 view .LVU19 |
||
| 203 | 96 0020 052B cmp r3, #5 |
||
| 204 | 97 0022 05D9 bls .L11 |
||
| 205 | 99:../libNMEA/src/nmea.c **** return c - 'a' + 10; |
||
| 206 | 100:../libNMEA/src/nmea.c **** return 0; |
||
| 207 | 98 .loc 1 100 10 view .LVU20 |
||
| 208 | 99 0024 0020 movs r0, #0 |
||
| 209 | 100 0026 00E0 b .L4 |
||
| 210 | 101 .LVL8: |
||
| 211 | 102 .L9: |
||
| 212 | 96:../libNMEA/src/nmea.c **** c = tolower (c); |
||
| 213 | 103 .loc 1 96 5 is_stmt 1 view .LVU21 |
||
| 214 | 96:../libNMEA/src/nmea.c **** c = tolower (c); |
||
| 215 | 104 .loc 1 96 12 is_stmt 0 view .LVU22 |
||
| 216 | 105 0028 C0B2 uxtb r0, r0 |
||
| 217 | 106 .LVL9: |
||
| 218 | 107 .L4: |
||
| 219 | 101:../libNMEA/src/nmea.c **** } |
||
| 220 | 108 .loc 1 101 1 view .LVU23 |
||
| 221 | 109 002a 10BD pop {r4, pc} |
||
| 222 | 110 .LVL10: |
||
| 223 | 111 .L10: |
||
| 224 | 112 .LBB3: |
||
| 225 | 97:../libNMEA/src/nmea.c **** if (c >= 'a' && c <= 'f') |
||
| 226 | 113 .loc 1 97 7 discriminator 1 view .LVU24 |
||
| 227 | 114 002c 2034 adds r4, r4, #32 |
||
| 228 | 115 .LVL11: |
||
| 229 | 97:../libNMEA/src/nmea.c **** if (c >= 'a' && c <= 'f') |
||
| 230 | 116 .loc 1 97 7 discriminator 1 view .LVU25 |
||
| 231 | 117 002e F3E7 b .L6 |
||
| 232 | 118 .LVL12: |
||
| 233 | 119 .L11: |
||
| 234 | 97:../libNMEA/src/nmea.c **** if (c >= 'a' && c <= 'f') |
||
| 235 | 120 .loc 1 97 7 discriminator 1 view .LVU26 |
||
| 236 | 121 .LBE3: |
||
| 237 | 99:../libNMEA/src/nmea.c **** return 0; |
||
| 238 | 122 .loc 1 99 5 is_stmt 1 view .LVU27 |
||
| 239 | 99:../libNMEA/src/nmea.c **** return 0; |
||
| 240 | 123 .loc 1 99 20 is_stmt 0 view .LVU28 |
||
| 21 | mjames | 241 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 5 |
| 16 | mjames | 242 | |
| 243 | |||
| 244 | 124 0030 573C subs r4, r4, #87 |
||
| 245 | 125 .LVL13: |
||
| 246 | 99:../libNMEA/src/nmea.c **** return 0; |
||
| 247 | 126 .loc 1 99 20 view .LVU29 |
||
| 248 | 127 0032 E0B2 uxtb r0, r4 |
||
| 249 | 128 0034 F9E7 b .L4 |
||
| 250 | 129 .L13: |
||
| 251 | 130 0036 00BF .align 2 |
||
| 252 | 131 .L12: |
||
| 253 | 132 0038 01000000 .word _ctype_+1 |
||
| 254 | 133 .cfi_endproc |
||
| 255 | 134 .LFE67: |
||
| 256 | 136 .global __aeabi_i2f |
||
| 257 | 137 .global __aeabi_fmul |
||
| 258 | 138 .global __aeabi_fadd |
||
| 259 | 139 .global __aeabi_fsub |
||
| 260 | 140 .global __aeabi_f2d |
||
| 261 | 141 .global __aeabi_dcmplt |
||
| 262 | 142 .global __aeabi_fdiv |
||
| 263 | 143 .section .text.decodeLL,"ax",%progbits |
||
| 264 | 144 .align 1 |
||
| 265 | 145 .syntax unified |
||
| 266 | 146 .thumb |
||
| 267 | 147 .thumb_func |
||
| 268 | 148 .fpu softvfp |
||
| 269 | 150 decodeLL: |
||
| 270 | 151 .LVL14: |
||
| 271 | 152 .LFB68: |
||
| 272 | 102:../libNMEA/src/nmea.c **** |
||
| 273 | 103:../libNMEA/src/nmea.c **** // lat/long decoder |
||
| 274 | 104:../libNMEA/src/nmea.c **** static float |
||
| 275 | 105:../libNMEA/src/nmea.c **** decodeLL (char *ptr, int msDigitWeight) |
||
| 276 | 106:../libNMEA/src/nmea.c **** { |
||
| 277 | 153 .loc 1 106 1 is_stmt 1 view -0 |
||
| 278 | 154 .cfi_startproc |
||
| 279 | 155 @ args = 0, pretend = 0, frame = 0 |
||
| 280 | 156 @ frame_needed = 0, uses_anonymous_args = 0 |
||
| 281 | 157 .loc 1 106 1 is_stmt 0 view .LVU31 |
||
| 282 | 158 0000 F8B5 push {r3, r4, r5, r6, r7, lr} |
||
| 283 | 159 .LCFI1: |
||
| 284 | 160 .cfi_def_cfa_offset 24 |
||
| 285 | 161 .cfi_offset 3, -24 |
||
| 286 | 162 .cfi_offset 4, -20 |
||
| 287 | 163 .cfi_offset 5, -16 |
||
| 288 | 164 .cfi_offset 6, -12 |
||
| 289 | 165 .cfi_offset 7, -8 |
||
| 290 | 166 .cfi_offset 14, -4 |
||
| 291 | 167 0002 0746 mov r7, r0 |
||
| 292 | 107:../libNMEA/src/nmea.c **** float digitWeight = msDigitWeight; |
||
| 293 | 168 .loc 1 107 3 is_stmt 1 view .LVU32 |
||
| 294 | 169 .loc 1 107 9 is_stmt 0 view .LVU33 |
||
| 295 | 170 0004 0846 mov r0, r1 |
||
| 296 | 171 .LVL15: |
||
| 297 | 172 .loc 1 107 9 view .LVU34 |
||
| 298 | 173 0006 FFF7FEFF bl __aeabi_i2f |
||
| 299 | 174 .LVL16: |
||
| 300 | 175 .loc 1 107 9 view .LVU35 |
||
| 21 | mjames | 301 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 6 |
| 16 | mjames | 302 | |
| 303 | |||
| 304 | 176 000a 0446 mov r4, r0 |
||
| 305 | 177 .LVL17: |
||
| 306 | 108:../libNMEA/src/nmea.c **** float result = 0; |
||
| 307 | 178 .loc 1 108 3 is_stmt 1 view .LVU36 |
||
| 308 | 109:../libNMEA/src/nmea.c **** int i = 0; |
||
| 309 | 179 .loc 1 109 3 view .LVU37 |
||
| 310 | 180 .loc 1 109 7 is_stmt 0 view .LVU38 |
||
| 311 | 181 000c 0023 movs r3, #0 |
||
| 312 | 108:../libNMEA/src/nmea.c **** float result = 0; |
||
| 313 | 182 .loc 1 108 9 view .LVU39 |
||
| 314 | 183 000e 0025 movs r5, #0 |
||
| 315 | 184 0010 1EE0 b .L15 |
||
| 316 | 185 .LVL18: |
||
| 317 | 186 .L21: |
||
| 318 | 187 .LBB4: |
||
| 319 | 110:../libNMEA/src/nmea.c **** while (1) |
||
| 320 | 111:../libNMEA/src/nmea.c **** { |
||
| 321 | 112:../libNMEA/src/nmea.c **** char c = ptr[i++]; |
||
| 322 | 113:../libNMEA/src/nmea.c **** if (c == '.') |
||
| 323 | 114:../libNMEA/src/nmea.c **** continue; |
||
| 324 | 115:../libNMEA/src/nmea.c **** int8_t v = decodeDec(c); |
||
| 325 | 116:../libNMEA/src/nmea.c **** if (v>0) |
||
| 326 | 117:../libNMEA/src/nmea.c **** { |
||
| 327 | 118:../libNMEA/src/nmea.c **** result += digitWeight * v; |
||
| 328 | 188 .loc 1 118 4 is_stmt 1 view .LVU40 |
||
| 329 | 189 .loc 1 118 26 is_stmt 0 view .LVU41 |
||
| 330 | 190 0012 FFF7FEFF bl __aeabi_i2f |
||
| 331 | 191 .LVL19: |
||
| 332 | 192 0016 2146 mov r1, r4 |
||
| 333 | 193 0018 FFF7FEFF bl __aeabi_fmul |
||
| 334 | 194 .LVL20: |
||
| 335 | 195 .loc 1 118 11 view .LVU42 |
||
| 336 | 196 001c 0146 mov r1, r0 |
||
| 337 | 197 001e 2846 mov r0, r5 |
||
| 338 | 198 0020 FFF7FEFF bl __aeabi_fadd |
||
| 339 | 199 .LVL21: |
||
| 340 | 200 0024 0546 mov r5, r0 |
||
| 341 | 201 .LVL22: |
||
| 342 | 119:../libNMEA/src/nmea.c **** if (fabs (digitWeight - 1) < 0.01) |
||
| 343 | 202 .loc 1 119 4 is_stmt 1 view .LVU43 |
||
| 344 | 203 .loc 1 119 26 is_stmt 0 view .LVU44 |
||
| 345 | 204 0026 4FF07E51 mov r1, #1065353216 |
||
| 346 | 205 002a 2046 mov r0, r4 |
||
| 347 | 206 .LVL23: |
||
| 348 | 207 .loc 1 119 26 view .LVU45 |
||
| 349 | 208 002c FFF7FEFF bl __aeabi_fsub |
||
| 350 | 209 .LVL24: |
||
| 351 | 210 .loc 1 119 8 view .LVU46 |
||
| 352 | 211 0030 20F00040 bic r0, r0, #-2147483648 |
||
| 353 | 212 0034 FFF7FEFF bl __aeabi_f2d |
||
| 354 | 213 .LVL25: |
||
| 355 | 214 .loc 1 119 7 view .LVU47 |
||
| 356 | 215 0038 0BA3 adr r3, .L22 |
||
| 357 | 216 003a D3E90023 ldrd r2, [r3] |
||
| 358 | 217 003e FFF7FEFF bl __aeabi_dcmplt |
||
| 359 | 218 .LVL26: |
||
| 360 | 219 0042 78B9 cbnz r0, .L19 |
||
| 21 | mjames | 361 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 7 |
| 16 | mjames | 362 | |
| 363 | |||
| 364 | 120:../libNMEA/src/nmea.c **** digitWeight = 1 / 6.0; |
||
| 365 | 121:../libNMEA/src/nmea.c **** else |
||
| 366 | 122:../libNMEA/src/nmea.c **** digitWeight = digitWeight / 10; |
||
| 367 | 220 .loc 1 122 6 is_stmt 1 view .LVU48 |
||
| 368 | 221 .loc 1 122 18 is_stmt 0 view .LVU49 |
||
| 369 | 222 0044 0A49 ldr r1, .L22+8 |
||
| 370 | 223 0046 2046 mov r0, r4 |
||
| 371 | 224 0048 FFF7FEFF bl __aeabi_fdiv |
||
| 372 | 225 .LVL27: |
||
| 373 | 226 004c 0446 mov r4, r0 |
||
| 374 | 227 .LVL28: |
||
| 375 | 228 .L16: |
||
| 376 | 229 .loc 1 122 18 view .LVU50 |
||
| 377 | 230 .LBE4: |
||
| 378 | 106:../libNMEA/src/nmea.c **** float digitWeight = msDigitWeight; |
||
| 379 | 231 .loc 1 106 1 view .LVU51 |
||
| 380 | 232 004e 3346 mov r3, r6 |
||
| 381 | 233 .LVL29: |
||
| 382 | 234 .L15: |
||
| 383 | 110:../libNMEA/src/nmea.c **** { |
||
| 384 | 235 .loc 1 110 3 is_stmt 1 view .LVU52 |
||
| 385 | 236 .LBB5: |
||
| 386 | 112:../libNMEA/src/nmea.c **** if (c == '.') |
||
| 387 | 237 .loc 1 112 7 view .LVU53 |
||
| 388 | 112:../libNMEA/src/nmea.c **** if (c == '.') |
||
| 389 | 238 .loc 1 112 21 is_stmt 0 view .LVU54 |
||
| 390 | 239 0050 5E1C adds r6, r3, #1 |
||
| 391 | 240 .LVL30: |
||
| 392 | 112:../libNMEA/src/nmea.c **** if (c == '.') |
||
| 393 | 241 .loc 1 112 12 view .LVU55 |
||
| 394 | 242 0052 F85C ldrb r0, [r7, r3] @ zero_extendqisi2 |
||
| 395 | 243 .LVL31: |
||
| 396 | 113:../libNMEA/src/nmea.c **** continue; |
||
| 397 | 244 .loc 1 113 7 is_stmt 1 view .LVU56 |
||
| 398 | 113:../libNMEA/src/nmea.c **** continue; |
||
| 399 | 245 .loc 1 113 10 is_stmt 0 view .LVU57 |
||
| 400 | 246 0054 2E28 cmp r0, #46 |
||
| 401 | 247 0056 FAD0 beq .L16 |
||
| 402 | 115:../libNMEA/src/nmea.c **** if (v>0) |
||
| 403 | 248 .loc 1 115 7 is_stmt 1 view .LVU58 |
||
| 404 | 115:../libNMEA/src/nmea.c **** if (v>0) |
||
| 405 | 249 .loc 1 115 18 is_stmt 0 view .LVU59 |
||
| 406 | 250 0058 FFF7FEFF bl decodeDec |
||
| 407 | 251 .LVL32: |
||
| 408 | 116:../libNMEA/src/nmea.c **** { |
||
| 409 | 252 .loc 1 116 7 is_stmt 1 view .LVU60 |
||
| 410 | 116:../libNMEA/src/nmea.c **** { |
||
| 411 | 253 .loc 1 116 10 is_stmt 0 view .LVU61 |
||
| 412 | 254 005c 0028 cmp r0, #0 |
||
| 413 | 255 .LVL33: |
||
| 414 | 116:../libNMEA/src/nmea.c **** { |
||
| 415 | 256 .loc 1 116 10 view .LVU62 |
||
| 416 | 257 005e D8DC bgt .L21 |
||
| 417 | 258 .LBE5: |
||
| 418 | 123:../libNMEA/src/nmea.c **** |
||
| 419 | 124:../libNMEA/src/nmea.c **** continue; |
||
| 420 | 125:../libNMEA/src/nmea.c **** } |
||
| 21 | mjames | 421 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 8 |
| 16 | mjames | 422 | |
| 423 | |||
| 424 | 126:../libNMEA/src/nmea.c **** break; |
||
| 425 | 127:../libNMEA/src/nmea.c **** } |
||
| 426 | 128:../libNMEA/src/nmea.c **** |
||
| 427 | 129:../libNMEA/src/nmea.c **** return result; |
||
| 428 | 130:../libNMEA/src/nmea.c **** |
||
| 429 | 131:../libNMEA/src/nmea.c **** } |
||
| 430 | 259 .loc 1 131 1 view .LVU63 |
||
| 431 | 260 0060 2846 mov r0, r5 |
||
| 432 | 261 0062 F8BD pop {r3, r4, r5, r6, r7, pc} |
||
| 433 | 262 .LVL34: |
||
| 434 | 263 .L19: |
||
| 435 | 264 .LBB6: |
||
| 436 | 120:../libNMEA/src/nmea.c **** else |
||
| 437 | 265 .loc 1 120 18 view .LVU64 |
||
| 438 | 266 0064 034C ldr r4, .L22+12 |
||
| 439 | 267 .LVL35: |
||
| 440 | 124:../libNMEA/src/nmea.c **** } |
||
| 441 | 268 .loc 1 124 4 is_stmt 1 view .LVU65 |
||
| 442 | 269 0066 F2E7 b .L16 |
||
| 443 | 270 .L23: |
||
| 444 | 271 .align 3 |
||
| 445 | 272 .L22: |
||
| 446 | 273 0068 7B14AE47 .word 1202590843 |
||
| 447 | 274 006c E17A843F .word 1065646817 |
||
| 448 | 275 0070 00002041 .word 1092616192 |
||
| 449 | 276 0074 ABAA2A3E .word 1042983595 |
||
| 450 | 277 .LBE6: |
||
| 451 | 278 .cfi_endproc |
||
| 452 | 279 .LFE68: |
||
| 453 | 281 .section .text.decodeDecimal,"ax",%progbits |
||
| 454 | 282 .align 1 |
||
| 455 | 283 .syntax unified |
||
| 456 | 284 .thumb |
||
| 457 | 285 .thumb_func |
||
| 458 | 286 .fpu softvfp |
||
| 459 | 288 decodeDecimal: |
||
| 460 | 289 .LVL36: |
||
| 461 | 290 .LFB70: |
||
| 462 | 132:../libNMEA/src/nmea.c **** |
||
| 463 | 133:../libNMEA/src/nmea.c **** static float |
||
| 464 | 134:../libNMEA/src/nmea.c **** decodeFP (char *ptr) |
||
| 465 | 135:../libNMEA/src/nmea.c **** { |
||
| 466 | 136:../libNMEA/src/nmea.c **** return strtof (ptr, NULL); |
||
| 467 | 137:../libNMEA/src/nmea.c **** } |
||
| 468 | 138:../libNMEA/src/nmea.c **** |
||
| 469 | 139:../libNMEA/src/nmea.c **** static int decodeDecimal(char * ptr) |
||
| 470 | 140:../libNMEA/src/nmea.c **** { |
||
| 471 | 291 .loc 1 140 1 view -0 |
||
| 472 | 292 .cfi_startproc |
||
| 473 | 293 @ args = 0, pretend = 0, frame = 0 |
||
| 474 | 294 @ frame_needed = 0, uses_anonymous_args = 0 |
||
| 475 | 295 .loc 1 140 1 is_stmt 0 view .LVU67 |
||
| 476 | 296 0000 70B5 push {r4, r5, r6, lr} |
||
| 477 | 297 .LCFI2: |
||
| 478 | 298 .cfi_def_cfa_offset 16 |
||
| 479 | 299 .cfi_offset 4, -16 |
||
| 480 | 300 .cfi_offset 5, -12 |
||
| 21 | mjames | 481 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 9 |
| 16 | mjames | 482 | |
| 483 | |||
| 484 | 301 .cfi_offset 6, -8 |
||
| 485 | 302 .cfi_offset 14, -4 |
||
| 486 | 303 0002 0646 mov r6, r0 |
||
| 487 | 141:../libNMEA/src/nmea.c **** int i; |
||
| 488 | 304 .loc 1 141 5 is_stmt 1 view .LVU68 |
||
| 489 | 142:../libNMEA/src/nmea.c **** int res=0; |
||
| 490 | 305 .loc 1 142 5 view .LVU69 |
||
| 491 | 306 .LVL37: |
||
| 492 | 143:../libNMEA/src/nmea.c **** int const width =2 ; |
||
| 493 | 307 .loc 1 143 5 view .LVU70 |
||
| 494 | 144:../libNMEA/src/nmea.c **** for(i=0; i< width; i++) |
||
| 495 | 308 .loc 1 144 5 view .LVU71 |
||
| 496 | 142:../libNMEA/src/nmea.c **** int res=0; |
||
| 497 | 309 .loc 1 142 9 is_stmt 0 view .LVU72 |
||
| 498 | 310 0004 0024 movs r4, #0 |
||
| 499 | 311 .loc 1 144 10 view .LVU73 |
||
| 500 | 312 0006 2546 mov r5, r4 |
||
| 501 | 313 .LVL38: |
||
| 502 | 314 .L25: |
||
| 503 | 315 .loc 1 144 5 discriminator 1 view .LVU74 |
||
| 504 | 316 0008 012D cmp r5, #1 |
||
| 505 | 317 000a 0BDC bgt .L24 |
||
| 506 | 318 .LBB7: |
||
| 507 | 145:../libNMEA/src/nmea.c **** { |
||
| 508 | 146:../libNMEA/src/nmea.c **** int8_t v = decodeDec(*ptr); |
||
| 509 | 319 .loc 1 146 2 is_stmt 1 view .LVU75 |
||
| 510 | 320 .loc 1 146 13 is_stmt 0 view .LVU76 |
||
| 511 | 321 000c 3078 ldrb r0, [r6] @ zero_extendqisi2 |
||
| 512 | 322 000e FFF7FEFF bl decodeDec |
||
| 513 | 323 .LVL39: |
||
| 514 | 147:../libNMEA/src/nmea.c **** if(v<0) return 0; |
||
| 515 | 324 .loc 1 147 2 is_stmt 1 view .LVU77 |
||
| 516 | 325 .loc 1 147 4 is_stmt 0 view .LVU78 |
||
| 517 | 326 0012 0028 cmp r0, #0 |
||
| 518 | 327 .LVL40: |
||
| 519 | 328 .loc 1 147 4 view .LVU79 |
||
| 520 | 329 0014 05DB blt .L28 |
||
| 521 | 148:../libNMEA/src/nmea.c **** res *=10; |
||
| 522 | 330 .loc 1 148 2 is_stmt 1 discriminator 2 view .LVU80 |
||
| 523 | 331 .loc 1 148 6 is_stmt 0 discriminator 2 view .LVU81 |
||
| 524 | 332 0016 04EB8404 add r4, r4, r4, lsl #2 |
||
| 525 | 333 .LVL41: |
||
| 526 | 334 .loc 1 148 6 discriminator 2 view .LVU82 |
||
| 527 | 335 001a 6300 lsls r3, r4, #1 |
||
| 528 | 336 .LVL42: |
||
| 529 | 149:../libNMEA/src/nmea.c **** res +=v; |
||
| 530 | 337 .loc 1 149 2 is_stmt 1 discriminator 2 view .LVU83 |
||
| 531 | 338 .loc 1 149 6 is_stmt 0 discriminator 2 view .LVU84 |
||
| 532 | 339 001c C418 adds r4, r0, r3 |
||
| 533 | 340 .LVL43: |
||
| 534 | 341 .loc 1 149 6 discriminator 2 view .LVU85 |
||
| 535 | 342 .LBE7: |
||
| 536 | 144:../libNMEA/src/nmea.c **** { |
||
| 537 | 343 .loc 1 144 25 discriminator 2 view .LVU86 |
||
| 538 | 344 001e 0135 adds r5, r5, #1 |
||
| 539 | 345 .LVL44: |
||
| 540 | 144:../libNMEA/src/nmea.c **** { |
||
| 21 | mjames | 541 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 10 |
| 16 | mjames | 542 | |
| 543 | |||
| 544 | 346 .loc 1 144 25 discriminator 2 view .LVU87 |
||
| 545 | 347 0020 F2E7 b .L25 |
||
| 546 | 348 .L28: |
||
| 547 | 349 .LBB8: |
||
| 548 | 147:../libNMEA/src/nmea.c **** res *=10; |
||
| 549 | 350 .loc 1 147 17 view .LVU88 |
||
| 550 | 351 0022 0024 movs r4, #0 |
||
| 551 | 352 .LVL45: |
||
| 552 | 353 .L24: |
||
| 553 | 147:../libNMEA/src/nmea.c **** res *=10; |
||
| 554 | 354 .loc 1 147 17 view .LVU89 |
||
| 555 | 355 .LBE8: |
||
| 556 | 150:../libNMEA/src/nmea.c **** } |
||
| 557 | 151:../libNMEA/src/nmea.c **** return res; |
||
| 558 | 152:../libNMEA/src/nmea.c **** } |
||
| 559 | 356 .loc 1 152 1 view .LVU90 |
||
| 560 | 357 0024 2046 mov r0, r4 |
||
| 561 | 358 0026 70BD pop {r4, r5, r6, pc} |
||
| 562 | 359 .loc 1 152 1 view .LVU91 |
||
| 563 | 360 .cfi_endproc |
||
| 564 | 361 .LFE70: |
||
| 565 | 363 .section .text.decodeFP,"ax",%progbits |
||
| 566 | 364 .align 1 |
||
| 567 | 365 .syntax unified |
||
| 568 | 366 .thumb |
||
| 569 | 367 .thumb_func |
||
| 570 | 368 .fpu softvfp |
||
| 571 | 370 decodeFP: |
||
| 572 | 371 .LVL46: |
||
| 573 | 372 .LFB69: |
||
| 574 | 135:../libNMEA/src/nmea.c **** return strtof (ptr, NULL); |
||
| 575 | 373 .loc 1 135 1 is_stmt 1 view -0 |
||
| 576 | 374 .cfi_startproc |
||
| 577 | 375 @ args = 0, pretend = 0, frame = 0 |
||
| 578 | 376 @ frame_needed = 0, uses_anonymous_args = 0 |
||
| 579 | 135:../libNMEA/src/nmea.c **** return strtof (ptr, NULL); |
||
| 580 | 377 .loc 1 135 1 is_stmt 0 view .LVU93 |
||
| 581 | 378 0000 08B5 push {r3, lr} |
||
| 582 | 379 .LCFI3: |
||
| 583 | 380 .cfi_def_cfa_offset 8 |
||
| 584 | 381 .cfi_offset 3, -8 |
||
| 585 | 382 .cfi_offset 14, -4 |
||
| 586 | 136:../libNMEA/src/nmea.c **** } |
||
| 587 | 383 .loc 1 136 3 is_stmt 1 view .LVU94 |
||
| 588 | 136:../libNMEA/src/nmea.c **** } |
||
| 589 | 384 .loc 1 136 10 is_stmt 0 view .LVU95 |
||
| 590 | 385 0002 0021 movs r1, #0 |
||
| 591 | 386 0004 FFF7FEFF bl strtof |
||
| 592 | 387 .LVL47: |
||
| 593 | 137:../libNMEA/src/nmea.c **** |
||
| 594 | 388 .loc 1 137 1 view .LVU96 |
||
| 595 | 389 0008 08BD pop {r3, pc} |
||
| 596 | 390 .cfi_endproc |
||
| 597 | 391 .LFE69: |
||
| 598 | 393 .section .text.decodePacket,"ax",%progbits |
||
| 599 | 394 .align 1 |
||
| 600 | 395 .syntax unified |
||
| 21 | mjames | 601 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 11 |
| 16 | mjames | 602 | |
| 603 | |||
| 604 | 396 .thumb |
||
| 605 | 397 .thumb_func |
||
| 606 | 398 .fpu softvfp |
||
| 607 | 400 decodePacket: |
||
| 608 | 401 .LVL48: |
||
| 609 | 402 .LFB71: |
||
| 610 | 153:../libNMEA/src/nmea.c **** |
||
| 611 | 154:../libNMEA/src/nmea.c **** bool |
||
| 612 | 155:../libNMEA/src/nmea.c **** decodePacket (char *linebuff, int linePos, Location *loc) |
||
| 613 | 156:../libNMEA/src/nmea.c **** { |
||
| 614 | 403 .loc 1 156 1 is_stmt 1 view -0 |
||
| 615 | 404 .cfi_startproc |
||
| 616 | 405 @ args = 0, pretend = 0, frame = 80 |
||
| 617 | 406 @ frame_needed = 0, uses_anonymous_args = 0 |
||
| 618 | 407 .loc 1 156 1 is_stmt 0 view .LVU98 |
||
| 619 | 408 0000 2DE9F043 push {r4, r5, r6, r7, r8, r9, lr} |
||
| 620 | 409 .LCFI4: |
||
| 621 | 410 .cfi_def_cfa_offset 28 |
||
| 622 | 411 .cfi_offset 4, -28 |
||
| 623 | 412 .cfi_offset 5, -24 |
||
| 624 | 413 .cfi_offset 6, -20 |
||
| 625 | 414 .cfi_offset 7, -16 |
||
| 626 | 415 .cfi_offset 8, -12 |
||
| 627 | 416 .cfi_offset 9, -8 |
||
| 628 | 417 .cfi_offset 14, -4 |
||
| 629 | 418 0004 95B0 sub sp, sp, #84 |
||
| 630 | 419 .LCFI5: |
||
| 631 | 420 .cfi_def_cfa_offset 112 |
||
| 632 | 421 0006 0646 mov r6, r0 |
||
| 633 | 422 0008 0F46 mov r7, r1 |
||
| 634 | 423 000a 9046 mov r8, r2 |
||
| 635 | 157:../libNMEA/src/nmea.c **** uint8_t checksum = 0; |
||
| 636 | 424 .loc 1 157 3 is_stmt 1 view .LVU99 |
||
| 637 | 425 .LVL49: |
||
| 638 | 158:../libNMEA/src/nmea.c **** for (int i = 0; i < linePos - 3; i++) |
||
| 639 | 426 .loc 1 158 3 view .LVU100 |
||
| 640 | 427 .LBB9: |
||
| 641 | 428 .loc 1 158 8 view .LVU101 |
||
| 642 | 429 .loc 1 158 12 is_stmt 0 view .LVU102 |
||
| 643 | 430 000c 0023 movs r3, #0 |
||
| 644 | 431 .LBE9: |
||
| 645 | 157:../libNMEA/src/nmea.c **** uint8_t checksum = 0; |
||
| 646 | 432 .loc 1 157 11 view .LVU103 |
||
| 647 | 433 000e 1D46 mov r5, r3 |
||
| 648 | 434 .LVL50: |
||
| 649 | 435 .L33: |
||
| 650 | 436 .LBB10: |
||
| 651 | 437 .loc 1 158 31 discriminator 1 view .LVU104 |
||
| 652 | 438 0010 FC1E subs r4, r7, #3 |
||
| 653 | 439 .loc 1 158 3 discriminator 1 view .LVU105 |
||
| 654 | 440 0012 9C42 cmp r4, r3 |
||
| 655 | 441 0014 03DD ble .L45 |
||
| 656 | 159:../libNMEA/src/nmea.c **** checksum ^= linebuff[i]; |
||
| 657 | 442 .loc 1 159 5 is_stmt 1 discriminator 3 view .LVU106 |
||
| 658 | 443 .loc 1 159 25 is_stmt 0 discriminator 3 view .LVU107 |
||
| 659 | 444 0016 F25C ldrb r2, [r6, r3] @ zero_extendqisi2 |
||
| 660 | 445 .loc 1 159 14 discriminator 3 view .LVU108 |
||
| 21 | mjames | 661 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 12 |
| 16 | mjames | 662 | |
| 663 | |||
| 664 | 446 0018 5540 eors r5, r5, r2 |
||
| 665 | 447 .LVL51: |
||
| 666 | 158:../libNMEA/src/nmea.c **** for (int i = 0; i < linePos - 3; i++) |
||
| 667 | 448 .loc 1 158 37 discriminator 3 view .LVU109 |
||
| 668 | 449 001a 0133 adds r3, r3, #1 |
||
| 669 | 450 .LVL52: |
||
| 670 | 158:../libNMEA/src/nmea.c **** for (int i = 0; i < linePos - 3; i++) |
||
| 671 | 451 .loc 1 158 37 discriminator 3 view .LVU110 |
||
| 672 | 452 001c F8E7 b .L33 |
||
| 673 | 453 .L45: |
||
| 674 | 158:../libNMEA/src/nmea.c **** for (int i = 0; i < linePos - 3; i++) |
||
| 675 | 454 .loc 1 158 37 discriminator 3 view .LVU111 |
||
| 676 | 455 .LBE10: |
||
| 677 | 160:../libNMEA/src/nmea.c **** uint8_t givenSum = (decodeHex (linebuff[linePos - 2]) << 4) |
||
| 678 | 456 .loc 1 160 3 is_stmt 1 view .LVU112 |
||
| 679 | 457 .loc 1 160 42 is_stmt 0 view .LVU113 |
||
| 680 | 458 001e BB1E subs r3, r7, #2 |
||
| 681 | 459 .LVL53: |
||
| 682 | 460 .loc 1 160 23 view .LVU114 |
||
| 683 | 461 0020 F05C ldrb r0, [r6, r3] @ zero_extendqisi2 |
||
| 684 | 462 .LVL54: |
||
| 685 | 463 .loc 1 160 23 view .LVU115 |
||
| 686 | 464 0022 FFF7FEFF bl decodeHex |
||
| 687 | 465 .LVL55: |
||
| 688 | 466 .loc 1 160 57 view .LVU116 |
||
| 689 | 467 0026 0001 lsls r0, r0, #4 |
||
| 690 | 468 0028 5FFA80F9 uxtb r9, r0 |
||
| 691 | 161:../libNMEA/src/nmea.c **** + decodeHex (linebuff[linePos - 1]); |
||
| 692 | 469 .loc 1 161 28 view .LVU117 |
||
| 693 | 470 002c 013F subs r7, r7, #1 |
||
| 694 | 471 .LVL56: |
||
| 695 | 472 .loc 1 161 9 view .LVU118 |
||
| 696 | 473 002e F05D ldrb r0, [r6, r7] @ zero_extendqisi2 |
||
| 697 | 474 0030 FFF7FEFF bl decodeHex |
||
| 698 | 475 .LVL57: |
||
| 699 | 160:../libNMEA/src/nmea.c **** uint8_t givenSum = (decodeHex (linebuff[linePos - 2]) << 4) |
||
| 700 | 476 .loc 1 160 11 view .LVU119 |
||
| 701 | 477 0034 4844 add r0, r0, r9 |
||
| 702 | 478 0036 C0B2 uxtb r0, r0 |
||
| 703 | 479 .LVL58: |
||
| 704 | 162:../libNMEA/src/nmea.c **** if (givenSum != checksum) |
||
| 705 | 480 .loc 1 162 3 is_stmt 1 view .LVU120 |
||
| 706 | 481 .loc 1 162 6 is_stmt 0 view .LVU121 |
||
| 707 | 482 0038 8542 cmp r5, r0 |
||
| 708 | 483 003a 40F08980 bne .L39 |
||
| 709 | 484 .LBB11: |
||
| 710 | 163:../libNMEA/src/nmea.c **** return false; |
||
| 711 | 164:../libNMEA/src/nmea.c **** |
||
| 712 | 165:../libNMEA/src/nmea.c **** char *fieldPos[20]; |
||
| 713 | 166:../libNMEA/src/nmea.c **** int fieldCnt = 0; |
||
| 714 | 167:../libNMEA/src/nmea.c **** // split fields |
||
| 715 | 168:../libNMEA/src/nmea.c **** for (int i = 5; i < linePos - 3; i++) |
||
| 716 | 485 .loc 1 168 12 view .LVU122 |
||
| 717 | 486 003e 0523 movs r3, #5 |
||
| 718 | 487 .LBE11: |
||
| 719 | 166:../libNMEA/src/nmea.c **** // split fields |
||
| 720 | 488 .loc 1 166 7 view .LVU123 |
||
| 21 | mjames | 721 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 13 |
| 16 | mjames | 722 | |
| 723 | |||
| 724 | 489 0040 0021 movs r1, #0 |
||
| 725 | 490 0042 00E0 b .L36 |
||
| 726 | 491 .LVL59: |
||
| 727 | 492 .L37: |
||
| 728 | 493 .LBB12: |
||
| 729 | 494 .loc 1 168 37 discriminator 2 view .LVU124 |
||
| 730 | 495 0044 0133 adds r3, r3, #1 |
||
| 731 | 496 .LVL60: |
||
| 732 | 497 .L36: |
||
| 733 | 498 .loc 1 168 3 discriminator 1 view .LVU125 |
||
| 734 | 499 0046 9C42 cmp r4, r3 |
||
| 735 | 500 0048 0BDD ble .L46 |
||
| 736 | 169:../libNMEA/src/nmea.c **** { |
||
| 737 | 170:../libNMEA/src/nmea.c **** if (linebuff[i] == ',') |
||
| 738 | 501 .loc 1 170 7 is_stmt 1 view .LVU126 |
||
| 739 | 502 .loc 1 170 19 is_stmt 0 view .LVU127 |
||
| 740 | 503 004a F25C ldrb r2, [r6, r3] @ zero_extendqisi2 |
||
| 741 | 504 .loc 1 170 10 view .LVU128 |
||
| 742 | 505 004c 2C2A cmp r2, #44 |
||
| 743 | 506 004e F9D1 bne .L37 |
||
| 744 | 171:../libNMEA/src/nmea.c **** { |
||
| 745 | 172:../libNMEA/src/nmea.c **** fieldPos[fieldCnt++] = linebuff + i + 1; |
||
| 746 | 507 .loc 1 172 4 is_stmt 1 view .LVU129 |
||
| 747 | 508 .LVL61: |
||
| 748 | 509 .loc 1 172 40 is_stmt 0 view .LVU130 |
||
| 749 | 510 0050 5A1C adds r2, r3, #1 |
||
| 750 | 511 0052 3244 add r2, r2, r6 |
||
| 751 | 512 .loc 1 172 25 view .LVU131 |
||
| 752 | 513 0054 14A8 add r0, sp, #80 |
||
| 753 | 514 0056 00EB8100 add r0, r0, r1, lsl #2 |
||
| 754 | 515 005a 40F8502C str r2, [r0, #-80] |
||
| 755 | 516 .loc 1 172 21 view .LVU132 |
||
| 756 | 517 005e 0131 adds r1, r1, #1 |
||
| 757 | 518 .LVL62: |
||
| 758 | 519 .loc 1 172 21 view .LVU133 |
||
| 759 | 520 0060 F0E7 b .L37 |
||
| 760 | 521 .L46: |
||
| 761 | 522 .loc 1 172 21 view .LVU134 |
||
| 762 | 523 .LBE12: |
||
| 763 | 173:../libNMEA/src/nmea.c **** } |
||
| 764 | 174:../libNMEA/src/nmea.c **** |
||
| 765 | 175:../libNMEA/src/nmea.c **** } |
||
| 766 | 176:../libNMEA/src/nmea.c **** |
||
| 767 | 177:../libNMEA/src/nmea.c **** // decode RMC |
||
| 768 | 178:../libNMEA/src/nmea.c **** if (linebuff[2] == 'R' && linebuff[3] == 'M' && linebuff[4] == 'C') |
||
| 769 | 524 .loc 1 178 3 is_stmt 1 view .LVU135 |
||
| 770 | 525 .loc 1 178 15 is_stmt 0 view .LVU136 |
||
| 771 | 526 0062 B378 ldrb r3, [r6, #2] @ zero_extendqisi2 |
||
| 772 | 527 .LVL63: |
||
| 773 | 528 .loc 1 178 6 view .LVU137 |
||
| 774 | 529 0064 522B cmp r3, #82 |
||
| 775 | 530 0066 01D0 beq .L47 |
||
| 776 | 179:../libNMEA/src/nmea.c **** |
||
| 777 | 180:../libNMEA/src/nmea.c **** { |
||
| 778 | 181:../libNMEA/src/nmea.c **** // decode the fields |
||
| 779 | 182:../libNMEA/src/nmea.c **** loc->valid = *fieldPos[1]; |
||
| 780 | 183:../libNMEA/src/nmea.c **** if(loc->valid == 'A') |
||
| 21 | mjames | 781 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 14 |
| 16 | mjames | 782 | |
| 783 | |||
| 784 | 184:../libNMEA/src/nmea.c **** { |
||
| 785 | 185:../libNMEA/src/nmea.c **** memcpy (loc->time, fieldPos[0], 6); |
||
| 786 | 186:../libNMEA/src/nmea.c **** loc->lat = decodeLL (fieldPos[2], 10); |
||
| 787 | 187:../libNMEA/src/nmea.c **** loc->ns = *fieldPos[3]; |
||
| 788 | 188:../libNMEA/src/nmea.c **** loc->lon = decodeLL (fieldPos[4], 100); |
||
| 789 | 189:../libNMEA/src/nmea.c **** loc->ew = *fieldPos[5]; |
||
| 790 | 190:../libNMEA/src/nmea.c **** loc->speed = decodeFP (fieldPos[6]); |
||
| 791 | 191:../libNMEA/src/nmea.c **** loc->heading = decodeFP (fieldPos[7]); |
||
| 792 | 192:../libNMEA/src/nmea.c **** memcpy (loc->date, fieldPos[1], 6); |
||
| 793 | 193:../libNMEA/src/nmea.c **** |
||
| 794 | 194:../libNMEA/src/nmea.c **** loc->tv.tm_sec = decodeDecimal(&loc->time[4]); |
||
| 795 | 195:../libNMEA/src/nmea.c **** loc->tv.tm_min = decodeDecimal(&loc->time[2]); |
||
| 796 | 196:../libNMEA/src/nmea.c **** loc->tv.tm_hour= decodeDecimal(&loc->time[0]); |
||
| 797 | 197:../libNMEA/src/nmea.c **** |
||
| 798 | 198:../libNMEA/src/nmea.c **** loc->tv.tm_mday= decodeDecimal(&loc->date[0]); |
||
| 799 | 199:../libNMEA/src/nmea.c **** loc->tv.tm_mon = decodeDecimal(&loc->date[2])-1; |
||
| 800 | 200:../libNMEA/src/nmea.c **** loc->tv.tm_year= decodeDecimal(&loc->date[4])+100; // |
||
| 801 | 201:../libNMEA/src/nmea.c **** |
||
| 802 | 202:../libNMEA/src/nmea.c **** loc->tv.tm_isdst = 0; |
||
| 803 | 203:../libNMEA/src/nmea.c **** loc->utc = mktime(&loc->tv); |
||
| 804 | 204:../libNMEA/src/nmea.c **** |
||
| 805 | 205:../libNMEA/src/nmea.c **** loc->good = true; |
||
| 806 | 206:../libNMEA/src/nmea.c **** } |
||
| 807 | 207:../libNMEA/src/nmea.c **** } |
||
| 808 | 208:../libNMEA/src/nmea.c **** return true; |
||
| 809 | 531 .loc 1 208 10 view .LVU138 |
||
| 810 | 532 0068 0120 movs r0, #1 |
||
| 811 | 533 006a 72E0 b .L35 |
||
| 812 | 534 .L47: |
||
| 813 | 178:../libNMEA/src/nmea.c **** |
||
| 814 | 535 .loc 1 178 37 discriminator 1 view .LVU139 |
||
| 815 | 536 006c F378 ldrb r3, [r6, #3] @ zero_extendqisi2 |
||
| 816 | 178:../libNMEA/src/nmea.c **** |
||
| 817 | 537 .loc 1 178 26 discriminator 1 view .LVU140 |
||
| 818 | 538 006e 4D2B cmp r3, #77 |
||
| 819 | 539 0070 01D0 beq .L48 |
||
| 820 | 540 .loc 1 208 10 view .LVU141 |
||
| 821 | 541 0072 0120 movs r0, #1 |
||
| 822 | 542 0074 6DE0 b .L35 |
||
| 823 | 543 .L48: |
||
| 824 | 178:../libNMEA/src/nmea.c **** |
||
| 825 | 544 .loc 1 178 59 discriminator 2 view .LVU142 |
||
| 826 | 545 0076 3379 ldrb r3, [r6, #4] @ zero_extendqisi2 |
||
| 827 | 178:../libNMEA/src/nmea.c **** |
||
| 828 | 546 .loc 1 178 48 discriminator 2 view .LVU143 |
||
| 829 | 547 0078 432B cmp r3, #67 |
||
| 830 | 548 007a 01D0 beq .L49 |
||
| 831 | 549 .loc 1 208 10 view .LVU144 |
||
| 832 | 550 007c 0120 movs r0, #1 |
||
| 833 | 551 007e 68E0 b .L35 |
||
| 834 | 552 .L49: |
||
| 835 | 182:../libNMEA/src/nmea.c **** if(loc->valid == 'A') |
||
| 836 | 553 .loc 1 182 7 is_stmt 1 view .LVU145 |
||
| 837 | 182:../libNMEA/src/nmea.c **** if(loc->valid == 'A') |
||
| 838 | 554 .loc 1 182 29 is_stmt 0 view .LVU146 |
||
| 839 | 555 0080 019C ldr r4, [sp, #4] |
||
| 840 | 556 .LVL64: |
||
| 21 | mjames | 841 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 15 |
| 16 | mjames | 842 | |
| 843 | |||
| 844 | 182:../libNMEA/src/nmea.c **** if(loc->valid == 'A') |
||
| 845 | 557 .loc 1 182 20 view .LVU147 |
||
| 846 | 558 0082 2378 ldrb r3, [r4] @ zero_extendqisi2 |
||
| 847 | 182:../libNMEA/src/nmea.c **** if(loc->valid == 'A') |
||
| 848 | 559 .loc 1 182 18 view .LVU148 |
||
| 849 | 560 0084 88F80030 strb r3, [r8] |
||
| 850 | 183:../libNMEA/src/nmea.c **** { |
||
| 851 | 561 .loc 1 183 7 is_stmt 1 view .LVU149 |
||
| 852 | 183:../libNMEA/src/nmea.c **** { |
||
| 853 | 562 .loc 1 183 9 is_stmt 0 view .LVU150 |
||
| 854 | 563 0088 412B cmp r3, #65 |
||
| 855 | 564 008a 01D0 beq .L50 |
||
| 856 | 565 .loc 1 208 10 view .LVU151 |
||
| 857 | 566 008c 0120 movs r0, #1 |
||
| 858 | 567 008e 60E0 b .L35 |
||
| 859 | 568 .L50: |
||
| 860 | 185:../libNMEA/src/nmea.c **** loc->lat = decodeLL (fieldPos[2], 10); |
||
| 861 | 569 .loc 1 185 7 is_stmt 1 view .LVU152 |
||
| 862 | 185:../libNMEA/src/nmea.c **** loc->lat = decodeLL (fieldPos[2], 10); |
||
| 863 | 570 .loc 1 185 18 is_stmt 0 view .LVU153 |
||
| 864 | 571 0090 08F10106 add r6, r8, #1 |
||
| 865 | 572 .LVL65: |
||
| 866 | 185:../libNMEA/src/nmea.c **** loc->lat = decodeLL (fieldPos[2], 10); |
||
| 867 | 573 .loc 1 185 34 view .LVU154 |
||
| 868 | 574 0094 009B ldr r3, [sp] |
||
| 869 | 185:../libNMEA/src/nmea.c **** loc->lat = decodeLL (fieldPos[2], 10); |
||
| 870 | 575 .loc 1 185 7 view .LVU155 |
||
| 871 | 576 0096 1A68 ldr r2, [r3] @ unaligned |
||
| 872 | 577 0098 C8F80120 str r2, [r8, #1] @ unaligned |
||
| 873 | 578 009c 9B88 ldrh r3, [r3, #4] @ unaligned |
||
| 874 | 579 009e A8F80530 strh r3, [r8, #5] @ unaligned |
||
| 875 | 186:../libNMEA/src/nmea.c **** loc->ns = *fieldPos[3]; |
||
| 876 | 580 .loc 1 186 7 is_stmt 1 view .LVU156 |
||
| 877 | 186:../libNMEA/src/nmea.c **** loc->ns = *fieldPos[3]; |
||
| 878 | 581 .loc 1 186 18 is_stmt 0 view .LVU157 |
||
| 879 | 582 00a2 0A21 movs r1, #10 |
||
| 880 | 583 .LVL66: |
||
| 881 | 186:../libNMEA/src/nmea.c **** loc->ns = *fieldPos[3]; |
||
| 882 | 584 .loc 1 186 18 view .LVU158 |
||
| 883 | 585 00a4 0298 ldr r0, [sp, #8] |
||
| 884 | 586 00a6 FFF7FEFF bl decodeLL |
||
| 885 | 587 .LVL67: |
||
| 886 | 186:../libNMEA/src/nmea.c **** loc->ns = *fieldPos[3]; |
||
| 887 | 588 .loc 1 186 16 view .LVU159 |
||
| 888 | 589 00aa C8F81400 str r0, [r8, #20] @ float |
||
| 889 | 187:../libNMEA/src/nmea.c **** loc->lon = decodeLL (fieldPos[4], 100); |
||
| 890 | 590 .loc 1 187 7 is_stmt 1 view .LVU160 |
||
| 891 | 187:../libNMEA/src/nmea.c **** loc->lon = decodeLL (fieldPos[4], 100); |
||
| 892 | 591 .loc 1 187 26 is_stmt 0 view .LVU161 |
||
| 893 | 592 00ae 039B ldr r3, [sp, #12] |
||
| 894 | 187:../libNMEA/src/nmea.c **** loc->lon = decodeLL (fieldPos[4], 100); |
||
| 895 | 593 .loc 1 187 17 view .LVU162 |
||
| 896 | 594 00b0 1B78 ldrb r3, [r3] @ zero_extendqisi2 |
||
| 897 | 187:../libNMEA/src/nmea.c **** loc->lon = decodeLL (fieldPos[4], 100); |
||
| 898 | 595 .loc 1 187 15 view .LVU163 |
||
| 899 | 596 00b2 88F81130 strb r3, [r8, #17] |
||
| 900 | 188:../libNMEA/src/nmea.c **** loc->ew = *fieldPos[5]; |
||
| 21 | mjames | 901 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 16 |
| 16 | mjames | 902 | |
| 903 | |||
| 904 | 597 .loc 1 188 7 is_stmt 1 view .LVU164 |
||
| 905 | 188:../libNMEA/src/nmea.c **** loc->ew = *fieldPos[5]; |
||
| 906 | 598 .loc 1 188 18 is_stmt 0 view .LVU165 |
||
| 907 | 599 00b6 6421 movs r1, #100 |
||
| 908 | 600 00b8 0498 ldr r0, [sp, #16] |
||
| 909 | 601 00ba FFF7FEFF bl decodeLL |
||
| 910 | 602 .LVL68: |
||
| 911 | 188:../libNMEA/src/nmea.c **** loc->ew = *fieldPos[5]; |
||
| 912 | 603 .loc 1 188 16 view .LVU166 |
||
| 913 | 604 00be C8F81800 str r0, [r8, #24] @ float |
||
| 914 | 189:../libNMEA/src/nmea.c **** loc->speed = decodeFP (fieldPos[6]); |
||
| 915 | 605 .loc 1 189 7 is_stmt 1 view .LVU167 |
||
| 916 | 189:../libNMEA/src/nmea.c **** loc->speed = decodeFP (fieldPos[6]); |
||
| 917 | 606 .loc 1 189 26 is_stmt 0 view .LVU168 |
||
| 918 | 607 00c2 059B ldr r3, [sp, #20] |
||
| 919 | 189:../libNMEA/src/nmea.c **** loc->speed = decodeFP (fieldPos[6]); |
||
| 920 | 608 .loc 1 189 17 view .LVU169 |
||
| 921 | 609 00c4 1B78 ldrb r3, [r3] @ zero_extendqisi2 |
||
| 922 | 189:../libNMEA/src/nmea.c **** loc->speed = decodeFP (fieldPos[6]); |
||
| 923 | 610 .loc 1 189 15 view .LVU170 |
||
| 924 | 611 00c6 88F81030 strb r3, [r8, #16] |
||
| 925 | 190:../libNMEA/src/nmea.c **** loc->heading = decodeFP (fieldPos[7]); |
||
| 926 | 612 .loc 1 190 7 is_stmt 1 view .LVU171 |
||
| 927 | 190:../libNMEA/src/nmea.c **** loc->heading = decodeFP (fieldPos[7]); |
||
| 928 | 613 .loc 1 190 20 is_stmt 0 view .LVU172 |
||
| 929 | 614 00ca 0698 ldr r0, [sp, #24] |
||
| 930 | 615 00cc FFF7FEFF bl decodeFP |
||
| 931 | 616 .LVL69: |
||
| 932 | 190:../libNMEA/src/nmea.c **** loc->heading = decodeFP (fieldPos[7]); |
||
| 933 | 617 .loc 1 190 18 view .LVU173 |
||
| 934 | 618 00d0 C8F82000 str r0, [r8, #32] @ float |
||
| 935 | 191:../libNMEA/src/nmea.c **** memcpy (loc->date, fieldPos[1], 6); |
||
| 936 | 619 .loc 1 191 7 is_stmt 1 view .LVU174 |
||
| 937 | 191:../libNMEA/src/nmea.c **** memcpy (loc->date, fieldPos[1], 6); |
||
| 938 | 620 .loc 1 191 22 is_stmt 0 view .LVU175 |
||
| 939 | 621 00d4 0798 ldr r0, [sp, #28] |
||
| 940 | 622 00d6 FFF7FEFF bl decodeFP |
||
| 941 | 623 .LVL70: |
||
| 942 | 191:../libNMEA/src/nmea.c **** memcpy (loc->date, fieldPos[1], 6); |
||
| 943 | 624 .loc 1 191 20 view .LVU176 |
||
| 944 | 625 00da C8F81C00 str r0, [r8, #28] @ float |
||
| 945 | 192:../libNMEA/src/nmea.c **** |
||
| 946 | 626 .loc 1 192 7 is_stmt 1 view .LVU177 |
||
| 947 | 192:../libNMEA/src/nmea.c **** |
||
| 948 | 627 .loc 1 192 18 is_stmt 0 view .LVU178 |
||
| 949 | 628 00de 08F10705 add r5, r8, #7 |
||
| 950 | 629 .LVL71: |
||
| 951 | 192:../libNMEA/src/nmea.c **** |
||
| 952 | 630 .loc 1 192 7 view .LVU179 |
||
| 953 | 631 00e2 2368 ldr r3, [r4] @ unaligned |
||
| 954 | 632 00e4 C8F80730 str r3, [r8, #7] @ unaligned |
||
| 955 | 633 00e8 A388 ldrh r3, [r4, #4] @ unaligned |
||
| 956 | 634 00ea A8F80B30 strh r3, [r8, #11] @ unaligned |
||
| 957 | 194:../libNMEA/src/nmea.c **** loc->tv.tm_min = decodeDecimal(&loc->time[2]); |
||
| 958 | 635 .loc 1 194 7 is_stmt 1 view .LVU180 |
||
| 959 | 194:../libNMEA/src/nmea.c **** loc->tv.tm_min = decodeDecimal(&loc->time[2]); |
||
| 960 | 636 .loc 1 194 24 is_stmt 0 view .LVU181 |
||
| 21 | mjames | 961 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 17 |
| 16 | mjames | 962 | |
| 963 | |||
| 964 | 637 00ee 08F10500 add r0, r8, #5 |
||
| 965 | 638 00f2 FFF7FEFF bl decodeDecimal |
||
| 966 | 639 .LVL72: |
||
| 967 | 194:../libNMEA/src/nmea.c **** loc->tv.tm_min = decodeDecimal(&loc->time[2]); |
||
| 968 | 640 .loc 1 194 22 view .LVU182 |
||
| 969 | 641 00f6 C8F82400 str r0, [r8, #36] |
||
| 970 | 195:../libNMEA/src/nmea.c **** loc->tv.tm_hour= decodeDecimal(&loc->time[0]); |
||
| 971 | 642 .loc 1 195 7 is_stmt 1 view .LVU183 |
||
| 972 | 195:../libNMEA/src/nmea.c **** loc->tv.tm_hour= decodeDecimal(&loc->time[0]); |
||
| 973 | 643 .loc 1 195 24 is_stmt 0 view .LVU184 |
||
| 974 | 644 00fa 08F10300 add r0, r8, #3 |
||
| 975 | 645 00fe FFF7FEFF bl decodeDecimal |
||
| 976 | 646 .LVL73: |
||
| 977 | 195:../libNMEA/src/nmea.c **** loc->tv.tm_hour= decodeDecimal(&loc->time[0]); |
||
| 978 | 647 .loc 1 195 22 view .LVU185 |
||
| 979 | 648 0102 C8F82800 str r0, [r8, #40] |
||
| 980 | 196:../libNMEA/src/nmea.c **** |
||
| 981 | 649 .loc 1 196 7 is_stmt 1 view .LVU186 |
||
| 982 | 196:../libNMEA/src/nmea.c **** |
||
| 983 | 650 .loc 1 196 24 is_stmt 0 view .LVU187 |
||
| 984 | 651 0106 3046 mov r0, r6 |
||
| 985 | 652 0108 FFF7FEFF bl decodeDecimal |
||
| 986 | 653 .LVL74: |
||
| 987 | 196:../libNMEA/src/nmea.c **** |
||
| 988 | 654 .loc 1 196 22 view .LVU188 |
||
| 989 | 655 010c C8F82C00 str r0, [r8, #44] |
||
| 990 | 198:../libNMEA/src/nmea.c **** loc->tv.tm_mon = decodeDecimal(&loc->date[2])-1; |
||
| 991 | 656 .loc 1 198 7 is_stmt 1 view .LVU189 |
||
| 992 | 198:../libNMEA/src/nmea.c **** loc->tv.tm_mon = decodeDecimal(&loc->date[2])-1; |
||
| 993 | 657 .loc 1 198 24 is_stmt 0 view .LVU190 |
||
| 994 | 658 0110 2846 mov r0, r5 |
||
| 995 | 659 0112 FFF7FEFF bl decodeDecimal |
||
| 996 | 660 .LVL75: |
||
| 997 | 198:../libNMEA/src/nmea.c **** loc->tv.tm_mon = decodeDecimal(&loc->date[2])-1; |
||
| 998 | 661 .loc 1 198 22 view .LVU191 |
||
| 999 | 662 0116 C8F83000 str r0, [r8, #48] |
||
| 1000 | 199:../libNMEA/src/nmea.c **** loc->tv.tm_year= decodeDecimal(&loc->date[4])+100; // |
||
| 1001 | 663 .loc 1 199 7 is_stmt 1 view .LVU192 |
||
| 1002 | 199:../libNMEA/src/nmea.c **** loc->tv.tm_year= decodeDecimal(&loc->date[4])+100; // |
||
| 1003 | 664 .loc 1 199 24 is_stmt 0 view .LVU193 |
||
| 1004 | 665 011a 08F10900 add r0, r8, #9 |
||
| 1005 | 666 011e FFF7FEFF bl decodeDecimal |
||
| 1006 | 667 .LVL76: |
||
| 1007 | 199:../libNMEA/src/nmea.c **** loc->tv.tm_year= decodeDecimal(&loc->date[4])+100; // |
||
| 1008 | 668 .loc 1 199 52 view .LVU194 |
||
| 1009 | 669 0122 0138 subs r0, r0, #1 |
||
| 1010 | 199:../libNMEA/src/nmea.c **** loc->tv.tm_year= decodeDecimal(&loc->date[4])+100; // |
||
| 1011 | 670 .loc 1 199 22 view .LVU195 |
||
| 1012 | 671 0124 C8F83400 str r0, [r8, #52] |
||
| 1013 | 200:../libNMEA/src/nmea.c **** |
||
| 1014 | 672 .loc 1 200 7 is_stmt 1 view .LVU196 |
||
| 1015 | 200:../libNMEA/src/nmea.c **** |
||
| 1016 | 673 .loc 1 200 24 is_stmt 0 view .LVU197 |
||
| 1017 | 674 0128 08F10B00 add r0, r8, #11 |
||
| 1018 | 675 012c FFF7FEFF bl decodeDecimal |
||
| 1019 | 676 .LVL77: |
||
| 1020 | 200:../libNMEA/src/nmea.c **** |
||
| 21 | mjames | 1021 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 18 |
| 16 | mjames | 1022 | |
| 1023 | |||
| 1024 | 677 .loc 1 200 52 view .LVU198 |
||
| 1025 | 678 0130 6430 adds r0, r0, #100 |
||
| 1026 | 200:../libNMEA/src/nmea.c **** |
||
| 1027 | 679 .loc 1 200 22 view .LVU199 |
||
| 1028 | 680 0132 C8F83800 str r0, [r8, #56] |
||
| 1029 | 202:../libNMEA/src/nmea.c **** loc->utc = mktime(&loc->tv); |
||
| 1030 | 681 .loc 1 202 7 is_stmt 1 view .LVU200 |
||
| 1031 | 202:../libNMEA/src/nmea.c **** loc->utc = mktime(&loc->tv); |
||
| 1032 | 682 .loc 1 202 24 is_stmt 0 view .LVU201 |
||
| 1033 | 683 0136 0023 movs r3, #0 |
||
| 1034 | 684 0138 C8F84430 str r3, [r8, #68] |
||
| 1035 | 203:../libNMEA/src/nmea.c **** |
||
| 1036 | 685 .loc 1 203 7 is_stmt 1 view .LVU202 |
||
| 1037 | 203:../libNMEA/src/nmea.c **** |
||
| 1038 | 686 .loc 1 203 18 is_stmt 0 view .LVU203 |
||
| 1039 | 687 013c 08F12400 add r0, r8, #36 |
||
| 1040 | 688 0140 FFF7FEFF bl mktime |
||
| 1041 | 689 .LVL78: |
||
| 1042 | 203:../libNMEA/src/nmea.c **** |
||
| 1043 | 690 .loc 1 203 16 view .LVU204 |
||
| 1044 | 691 0144 C8E91201 strd r0, [r8, #72] |
||
| 1045 | 205:../libNMEA/src/nmea.c **** } |
||
| 1046 | 692 .loc 1 205 8 is_stmt 1 view .LVU205 |
||
| 1047 | 205:../libNMEA/src/nmea.c **** } |
||
| 1048 | 693 .loc 1 205 18 is_stmt 0 view .LVU206 |
||
| 1049 | 694 0148 0120 movs r0, #1 |
||
| 1050 | 695 014a 88F80F00 strb r0, [r8, #15] |
||
| 1051 | 696 014e 00E0 b .L35 |
||
| 1052 | 697 .LVL79: |
||
| 1053 | 698 .L39: |
||
| 1054 | 163:../libNMEA/src/nmea.c **** |
||
| 1055 | 699 .loc 1 163 12 view .LVU207 |
||
| 1056 | 700 0150 0020 movs r0, #0 |
||
| 1057 | 701 .LVL80: |
||
| 1058 | 702 .L35: |
||
| 1059 | 209:../libNMEA/src/nmea.c **** } |
||
| 1060 | 703 .loc 1 209 1 view .LVU208 |
||
| 1061 | 704 0152 15B0 add sp, sp, #84 |
||
| 1062 | 705 .LCFI6: |
||
| 1063 | 706 .cfi_def_cfa_offset 28 |
||
| 1064 | 707 @ sp needed |
||
| 1065 | 708 0154 BDE8F083 pop {r4, r5, r6, r7, r8, r9, pc} |
||
| 1066 | 709 .loc 1 209 1 view .LVU209 |
||
| 1067 | 710 .cfi_endproc |
||
| 1068 | 711 .LFE71: |
||
| 1069 | 713 .section .text.updateLocation,"ax",%progbits |
||
| 1070 | 714 .align 1 |
||
| 1071 | 715 .global updateLocation |
||
| 1072 | 716 .syntax unified |
||
| 1073 | 717 .thumb |
||
| 1074 | 718 .thumb_func |
||
| 1075 | 719 .fpu softvfp |
||
| 1076 | 721 updateLocation: |
||
| 1077 | 722 .LVL81: |
||
| 1078 | 723 .LFB65: |
||
| 1079 | 32:../libNMEA/src/nmea.c **** while (1) |
||
| 1080 | 724 .loc 1 32 1 is_stmt 1 view -0 |
||
| 21 | mjames | 1081 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 19 |
| 16 | mjames | 1082 | |
| 1083 | |||
| 1084 | 725 .cfi_startproc |
||
| 1085 | 726 @ args = 0, pretend = 0, frame = 0 |
||
| 1086 | 727 @ frame_needed = 0, uses_anonymous_args = 0 |
||
| 1087 | 32:../libNMEA/src/nmea.c **** while (1) |
||
| 1088 | 728 .loc 1 32 1 is_stmt 0 view .LVU211 |
||
| 1089 | 729 0000 2DE9F843 push {r3, r4, r5, r6, r7, r8, r9, lr} |
||
| 1090 | 730 .LCFI7: |
||
| 1091 | 731 .cfi_def_cfa_offset 32 |
||
| 1092 | 732 .cfi_offset 3, -32 |
||
| 1093 | 733 .cfi_offset 4, -28 |
||
| 1094 | 734 .cfi_offset 5, -24 |
||
| 1095 | 735 .cfi_offset 6, -20 |
||
| 1096 | 736 .cfi_offset 7, -16 |
||
| 1097 | 737 .cfi_offset 8, -12 |
||
| 1098 | 738 .cfi_offset 9, -8 |
||
| 1099 | 739 .cfi_offset 14, -4 |
||
| 1100 | 740 0004 8046 mov r8, r0 |
||
| 1101 | 741 0006 0E46 mov r6, r1 |
||
| 1102 | 742 0008 04E0 b .L56 |
||
| 1103 | 743 .LVL82: |
||
| 1104 | 744 .L54: |
||
| 1105 | 745 .LBB13: |
||
| 1106 | 42:../libNMEA/src/nmea.c **** lineState = READING; |
||
| 1107 | 746 .loc 1 42 4 is_stmt 1 view .LVU212 |
||
| 1108 | 42:../libNMEA/src/nmea.c **** lineState = READING; |
||
| 1109 | 747 .loc 1 42 7 is_stmt 0 view .LVU213 |
||
| 1110 | 748 000a 2428 cmp r0, #36 |
||
| 1111 | 749 000c 1DD0 beq .L66 |
||
| 1112 | 750 .L57: |
||
| 1113 | 44:../libNMEA/src/nmea.c **** break; |
||
| 1114 | 751 .loc 1 44 4 is_stmt 1 view .LVU214 |
||
| 1115 | 44:../libNMEA/src/nmea.c **** break; |
||
| 1116 | 752 .loc 1 44 12 is_stmt 0 view .LVU215 |
||
| 1117 | 753 000e 2C4B ldr r3, .L69 |
||
| 1118 | 754 0010 0022 movs r2, #0 |
||
| 1119 | 755 0012 1A60 str r2, [r3] |
||
| 1120 | 45:../libNMEA/src/nmea.c **** case READING: |
||
| 1121 | 756 .loc 1 45 4 is_stmt 1 view .LVU216 |
||
| 1122 | 757 .LVL83: |
||
| 1123 | 758 .L56: |
||
| 1124 | 45:../libNMEA/src/nmea.c **** case READING: |
||
| 1125 | 759 .loc 1 45 4 is_stmt 0 view .LVU217 |
||
| 1126 | 760 .LBE13: |
||
| 1127 | 33:../libNMEA/src/nmea.c **** { |
||
| 1128 | 761 .loc 1 33 3 is_stmt 1 view .LVU218 |
||
| 1129 | 762 .LBB17: |
||
| 1130 | 35:../libNMEA/src/nmea.c **** return false; // nothing to read, return immediately |
||
| 1131 | 763 .loc 1 35 7 view .LVU219 |
||
| 1132 | 35:../libNMEA/src/nmea.c **** return false; // nothing to read, return immediately |
||
| 1133 | 764 .loc 1 35 12 is_stmt 0 view .LVU220 |
||
| 1134 | 765 0014 3046 mov r0, r6 |
||
| 1135 | 766 0016 FFF7FEFF bl SerialCharsReceived |
||
| 1136 | 767 .LVL84: |
||
| 1137 | 35:../libNMEA/src/nmea.c **** return false; // nothing to read, return immediately |
||
| 1138 | 768 .loc 1 35 10 view .LVU221 |
||
| 1139 | 769 001a 0028 cmp r0, #0 |
||
| 1140 | 770 001c 4CD0 beq .L64 |
||
| 21 | mjames | 1141 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 20 |
| 16 | mjames | 1142 | |
| 1143 | |||
| 1144 | 38:../libNMEA/src/nmea.c **** switch (lineState) |
||
| 1145 | 771 .loc 1 38 7 is_stmt 1 view .LVU222 |
||
| 1146 | 38:../libNMEA/src/nmea.c **** switch (lineState) |
||
| 1147 | 772 .loc 1 38 16 is_stmt 0 view .LVU223 |
||
| 1148 | 773 001e 3046 mov r0, r6 |
||
| 1149 | 774 0020 FFF7FEFF bl GetCharSerial |
||
| 1150 | 775 .LVL85: |
||
| 1151 | 776 0024 0746 mov r7, r0 |
||
| 1152 | 777 .LVL86: |
||
| 1153 | 39:../libNMEA/src/nmea.c **** { |
||
| 1154 | 778 .loc 1 39 7 is_stmt 1 view .LVU224 |
||
| 1155 | 779 0026 274B ldr r3, .L69+4 |
||
| 1156 | 780 0028 1B78 ldrb r3, [r3] @ zero_extendqisi2 |
||
| 1157 | 781 002a 002B cmp r3, #0 |
||
| 1158 | 782 002c EDD0 beq .L54 |
||
| 1159 | 783 002e 012B cmp r3, #1 |
||
| 1160 | 784 0030 F0D1 bne .L56 |
||
| 1161 | 47:../libNMEA/src/nmea.c **** { |
||
| 1162 | 785 .loc 1 47 4 view .LVU225 |
||
| 1163 | 47:../libNMEA/src/nmea.c **** { |
||
| 1164 | 786 .loc 1 47 7 is_stmt 0 view .LVU226 |
||
| 1165 | 787 0032 0D28 cmp r0, #13 |
||
| 1166 | 788 0034 0DD0 beq .L67 |
||
| 1167 | 56:../libNMEA/src/nmea.c **** linebuff[linePos++] = c; |
||
| 1168 | 789 .loc 1 56 4 is_stmt 1 view .LVU227 |
||
| 1169 | 56:../libNMEA/src/nmea.c **** linebuff[linePos++] = c; |
||
| 1170 | 790 .loc 1 56 16 is_stmt 0 view .LVU228 |
||
| 1171 | 791 0036 224B ldr r3, .L69 |
||
| 1172 | 792 0038 1B68 ldr r3, [r3] |
||
| 1173 | 56:../libNMEA/src/nmea.c **** linebuff[linePos++] = c; |
||
| 1174 | 793 .loc 1 56 7 view .LVU229 |
||
| 1175 | 794 003a 4F2B cmp r3, #79 |
||
| 1176 | 795 003c 14D8 bhi .L60 |
||
| 1177 | 57:../libNMEA/src/nmea.c **** else |
||
| 1178 | 796 .loc 1 57 6 is_stmt 1 view .LVU230 |
||
| 1179 | 57:../libNMEA/src/nmea.c **** else |
||
| 1180 | 797 .loc 1 57 22 is_stmt 0 view .LVU231 |
||
| 1181 | 798 003e 591C adds r1, r3, #1 |
||
| 1182 | 799 0040 1F4A ldr r2, .L69 |
||
| 1183 | 800 0042 1160 str r1, [r2] |
||
| 1184 | 57:../libNMEA/src/nmea.c **** else |
||
| 1185 | 801 .loc 1 57 26 view .LVU232 |
||
| 1186 | 802 0044 204A ldr r2, .L69+8 |
||
| 1187 | 803 0046 D054 strb r0, [r2, r3] |
||
| 1188 | 804 0048 E4E7 b .L56 |
||
| 1189 | 805 .L66: |
||
| 1190 | 43:../libNMEA/src/nmea.c **** linePos = 0; |
||
| 1191 | 806 .loc 1 43 6 is_stmt 1 view .LVU233 |
||
| 1192 | 43:../libNMEA/src/nmea.c **** linePos = 0; |
||
| 1193 | 807 .loc 1 43 16 is_stmt 0 view .LVU234 |
||
| 1194 | 808 004a 1E4B ldr r3, .L69+4 |
||
| 1195 | 809 004c 0122 movs r2, #1 |
||
| 1196 | 810 004e 1A70 strb r2, [r3] |
||
| 1197 | 811 0050 DDE7 b .L57 |
||
| 1198 | 812 .L67: |
||
| 1199 | 813 .LBB14: |
||
| 1200 | 50:../libNMEA/src/nmea.c **** lineState = SEARCH; |
||
| 21 | mjames | 1201 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 21 |
| 16 | mjames | 1202 | |
| 1203 | |||
| 1204 | 814 .loc 1 50 8 is_stmt 1 view .LVU235 |
||
| 1205 | 50:../libNMEA/src/nmea.c **** lineState = SEARCH; |
||
| 1206 | 815 .loc 1 50 23 is_stmt 0 view .LVU236 |
||
| 1207 | 816 0052 1B4C ldr r4, .L69 |
||
| 1208 | 817 0054 4246 mov r2, r8 |
||
| 1209 | 818 0056 2168 ldr r1, [r4] |
||
| 1210 | 819 0058 1B48 ldr r0, .L69+8 |
||
| 1211 | 820 .LVL87: |
||
| 1212 | 50:../libNMEA/src/nmea.c **** lineState = SEARCH; |
||
| 1213 | 821 .loc 1 50 23 view .LVU237 |
||
| 1214 | 822 005a FFF7FEFF bl decodePacket |
||
| 1215 | 823 .LVL88: |
||
| 1216 | 51:../libNMEA/src/nmea.c **** |
||
| 1217 | 824 .loc 1 51 8 is_stmt 1 view .LVU238 |
||
| 1218 | 51:../libNMEA/src/nmea.c **** |
||
| 1219 | 825 .loc 1 51 18 is_stmt 0 view .LVU239 |
||
| 1220 | 826 005e 0023 movs r3, #0 |
||
| 1221 | 827 0060 184A ldr r2, .L69+4 |
||
| 1222 | 828 0062 1370 strb r3, [r2] |
||
| 1223 | 53:../libNMEA/src/nmea.c **** return success; |
||
| 1224 | 829 .loc 1 53 8 is_stmt 1 view .LVU240 |
||
| 1225 | 53:../libNMEA/src/nmea.c **** return success; |
||
| 1226 | 830 .loc 1 53 16 is_stmt 0 view .LVU241 |
||
| 1227 | 831 0064 2360 str r3, [r4] |
||
| 1228 | 54:../libNMEA/src/nmea.c **** } |
||
| 1229 | 832 .loc 1 54 8 is_stmt 1 view .LVU242 |
||
| 1230 | 54:../libNMEA/src/nmea.c **** } |
||
| 1231 | 833 .loc 1 54 15 is_stmt 0 view .LVU243 |
||
| 1232 | 834 0066 28E0 b .L53 |
||
| 1233 | 835 .LVL89: |
||
| 1234 | 836 .L60: |
||
| 1235 | 54:../libNMEA/src/nmea.c **** } |
||
| 1236 | 837 .loc 1 54 15 view .LVU244 |
||
| 1237 | 838 .LBE14: |
||
| 1238 | 839 .LBB15: |
||
| 1239 | 60:../libNMEA/src/nmea.c **** // search for the $ in any unread string |
||
| 1240 | 840 .loc 1 60 8 is_stmt 1 view .LVU245 |
||
| 1241 | 60:../libNMEA/src/nmea.c **** // search for the $ in any unread string |
||
| 1242 | 841 .loc 1 60 18 is_stmt 0 view .LVU246 |
||
| 1243 | 842 0068 0024 movs r4, #0 |
||
| 1244 | 843 006a 164B ldr r3, .L69+4 |
||
| 1245 | 844 006c 1C70 strb r4, [r3] |
||
| 1246 | 62:../libNMEA/src/nmea.c **** |
||
| 1247 | 845 .loc 1 62 8 is_stmt 1 view .LVU247 |
||
| 1248 | 64:../libNMEA/src/nmea.c **** if (linebuff[i] == '$') |
||
| 1249 | 846 .loc 1 64 8 view .LVU248 |
||
| 1250 | 847 .LVL90: |
||
| 1251 | 64:../libNMEA/src/nmea.c **** if (linebuff[i] == '$') |
||
| 1252 | 848 .loc 1 64 8 is_stmt 0 view .LVU249 |
||
| 1253 | 849 006e 00E0 b .L61 |
||
| 1254 | 850 .LVL91: |
||
| 1255 | 851 .L62: |
||
| 1256 | 64:../libNMEA/src/nmea.c **** if (linebuff[i] == '$') |
||
| 1257 | 852 .loc 1 64 34 discriminator 2 view .LVU250 |
||
| 1258 | 853 0070 0134 adds r4, r4, #1 |
||
| 1259 | 854 .LVL92: |
||
| 1260 | 855 .L61: |
||
| 21 | mjames | 1261 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 22 |
| 16 | mjames | 1262 | |
| 1263 | |||
| 1264 | 64:../libNMEA/src/nmea.c **** if (linebuff[i] == '$') |
||
| 1265 | 856 .loc 1 64 22 discriminator 1 view .LVU251 |
||
| 1266 | 857 0072 2546 mov r5, r4 |
||
| 1267 | 858 0074 124A ldr r2, .L69 |
||
| 1268 | 859 0076 1368 ldr r3, [r2] |
||
| 1269 | 64:../libNMEA/src/nmea.c **** if (linebuff[i] == '$') |
||
| 1270 | 860 .loc 1 64 8 discriminator 1 view .LVU252 |
||
| 1271 | 861 0078 9C42 cmp r4, r3 |
||
| 1272 | 862 007a 15D2 bcs .L68 |
||
| 1273 | 65:../libNMEA/src/nmea.c **** { |
||
| 1274 | 863 .loc 1 65 3 is_stmt 1 view .LVU253 |
||
| 1275 | 65:../libNMEA/src/nmea.c **** { |
||
| 1276 | 864 .loc 1 65 15 is_stmt 0 view .LVU254 |
||
| 1277 | 865 007c 124A ldr r2, .L69+8 |
||
| 1278 | 866 007e 125D ldrb r2, [r2, r4] @ zero_extendqisi2 |
||
| 1279 | 65:../libNMEA/src/nmea.c **** { |
||
| 1280 | 867 .loc 1 65 6 view .LVU255 |
||
| 1281 | 868 0080 242A cmp r2, #36 |
||
| 1282 | 869 0082 F5D1 bne .L62 |
||
| 1283 | 870 .LBB16: |
||
| 1284 | 67:../libNMEA/src/nmea.c **** memcpy (linebuff, linebuff + n, linePos - i); |
||
| 1285 | 871 .loc 1 67 7 is_stmt 1 view .LVU256 |
||
| 1286 | 67:../libNMEA/src/nmea.c **** memcpy (linebuff, linebuff + n, linePos - i); |
||
| 1287 | 872 .loc 1 67 11 is_stmt 0 view .LVU257 |
||
| 1288 | 873 0084 611C adds r1, r4, #1 |
||
| 1289 | 68:../libNMEA/src/nmea.c **** linePos = linePos - i; |
||
| 1290 | 874 .loc 1 68 7 is_stmt 1 view .LVU258 |
||
| 1291 | 875 0086 5D1B subs r5, r3, r5 |
||
| 1292 | 876 0088 DFF83C90 ldr r9, .L69+8 |
||
| 1293 | 877 008c 2A46 mov r2, r5 |
||
| 1294 | 878 008e 4944 add r1, r1, r9 |
||
| 1295 | 879 0090 4846 mov r0, r9 |
||
| 1296 | 880 0092 FFF7FEFF bl memcpy |
||
| 1297 | 881 .LVL93: |
||
| 1298 | 69:../libNMEA/src/nmea.c **** linebuff[linePos++] = c; |
||
| 1299 | 882 .loc 1 69 7 view .LVU259 |
||
| 1300 | 70:../libNMEA/src/nmea.c **** lineState = READING; |
||
| 1301 | 883 .loc 1 70 7 view .LVU260 |
||
| 1302 | 70:../libNMEA/src/nmea.c **** lineState = READING; |
||
| 1303 | 884 .loc 1 70 23 is_stmt 0 view .LVU261 |
||
| 1304 | 885 0096 6A1C adds r2, r5, #1 |
||
| 1305 | 886 0098 094B ldr r3, .L69 |
||
| 1306 | 887 009a 1A60 str r2, [r3] |
||
| 1307 | 70:../libNMEA/src/nmea.c **** lineState = READING; |
||
| 1308 | 888 .loc 1 70 27 view .LVU262 |
||
| 1309 | 889 009c 09F80570 strb r7, [r9, r5] |
||
| 1310 | 71:../libNMEA/src/nmea.c **** } |
||
| 1311 | 890 .loc 1 71 7 is_stmt 1 view .LVU263 |
||
| 1312 | 71:../libNMEA/src/nmea.c **** } |
||
| 1313 | 891 .loc 1 71 17 is_stmt 0 view .LVU264 |
||
| 1314 | 892 00a0 084B ldr r3, .L69+4 |
||
| 1315 | 893 00a2 0122 movs r2, #1 |
||
| 1316 | 894 00a4 1A70 strb r2, [r3] |
||
| 1317 | 895 00a6 E3E7 b .L62 |
||
| 1318 | 896 .L68: |
||
| 1319 | 71:../libNMEA/src/nmea.c **** } |
||
| 1320 | 897 .loc 1 71 17 view .LVU265 |
||
| 21 | mjames | 1321 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 23 |
| 16 | mjames | 1322 | |
| 1323 | |||
| 1324 | 898 .LBE16: |
||
| 1325 | 74:../libNMEA/src/nmea.c **** linePos = 0; |
||
| 1326 | 899 .loc 1 74 8 is_stmt 1 view .LVU266 |
||
| 1327 | 74:../libNMEA/src/nmea.c **** linePos = 0; |
||
| 1328 | 900 .loc 1 74 22 is_stmt 0 view .LVU267 |
||
| 1329 | 901 00a8 064B ldr r3, .L69+4 |
||
| 1330 | 902 00aa 1B78 ldrb r3, [r3] @ zero_extendqisi2 |
||
| 1331 | 74:../libNMEA/src/nmea.c **** linePos = 0; |
||
| 1332 | 903 .loc 1 74 11 view .LVU268 |
||
| 1333 | 904 00ac 002B cmp r3, #0 |
||
| 1334 | 905 00ae B1D1 bne .L56 |
||
| 1335 | 75:../libNMEA/src/nmea.c **** } |
||
| 1336 | 906 .loc 1 75 3 is_stmt 1 view .LVU269 |
||
| 1337 | 75:../libNMEA/src/nmea.c **** } |
||
| 1338 | 907 .loc 1 75 11 is_stmt 0 view .LVU270 |
||
| 1339 | 908 00b0 1346 mov r3, r2 |
||
| 1340 | 909 00b2 0022 movs r2, #0 |
||
| 1341 | 910 00b4 1A60 str r2, [r3] |
||
| 1342 | 911 00b6 ADE7 b .L56 |
||
| 1343 | 912 .LVL94: |
||
| 1344 | 913 .L64: |
||
| 1345 | 75:../libNMEA/src/nmea.c **** } |
||
| 1346 | 914 .loc 1 75 11 view .LVU271 |
||
| 1347 | 915 .LBE15: |
||
| 1348 | 36:../libNMEA/src/nmea.c **** |
||
| 1349 | 916 .loc 1 36 9 view .LVU272 |
||
| 1350 | 917 00b8 0020 movs r0, #0 |
||
| 1351 | 918 .L53: |
||
| 1352 | 919 .LBE17: |
||
| 1353 | 81:../libNMEA/src/nmea.c **** |
||
| 1354 | 920 .loc 1 81 1 view .LVU273 |
||
| 1355 | 921 00ba BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc} |
||
| 1356 | 922 .LVL95: |
||
| 1357 | 923 .L70: |
||
| 1358 | 81:../libNMEA/src/nmea.c **** |
||
| 1359 | 924 .loc 1 81 1 view .LVU274 |
||
| 1360 | 925 00be 00BF .align 2 |
||
| 1361 | 926 .L69: |
||
| 1362 | 927 00c0 00000000 .word .LANCHOR1 |
||
| 1363 | 928 00c4 00000000 .word .LANCHOR0 |
||
| 1364 | 929 00c8 00000000 .word linebuff |
||
| 1365 | 930 .cfi_endproc |
||
| 1366 | 931 .LFE65: |
||
| 1367 | 933 .global lineState |
||
| 1368 | 934 .global linePos |
||
| 1369 | 935 .comm linebuff,80,4 |
||
| 1370 | 936 .section .bss.linePos,"aw",%nobits |
||
| 1371 | 937 .align 2 |
||
| 1372 | 938 .set .LANCHOR1,. + 0 |
||
| 1373 | 941 linePos: |
||
| 1374 | 942 0000 00000000 .space 4 |
||
| 1375 | 943 .section .bss.lineState,"aw",%nobits |
||
| 1376 | 944 .set .LANCHOR0,. + 0 |
||
| 1377 | 947 lineState: |
||
| 1378 | 948 0000 00 .space 1 |
||
| 1379 | 949 .text |
||
| 1380 | 950 .Letext0: |
||
| 21 | mjames | 1381 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 24 |
| 16 | mjames | 1382 | |
| 1383 | |||
| 1384 | 951 .file 2 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7 |
||
| 1385 | 952 .file 3 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7 |
||
| 1386 | 953 .file 4 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7 |
||
| 1387 | 954 .file 5 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7 |
||
| 1388 | 955 .file 6 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7 |
||
| 1389 | 956 .file 7 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7 |
||
| 1390 | 957 .file 8 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7 |
||
| 1391 | 958 .file 9 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1.7 |
||
| 1392 | 959 .file 10 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1. |
||
| 1393 | 960 .file 11 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1. |
||
| 1394 | 961 .file 12 "c:\\users\\mike\\appdata\\roaming\\xpacks\\@gnu-mcu-eclipse\\arm-none-eabi-gcc\\8.2.1-1. |
||
| 1395 | 962 .file 13 "Drivers/CMSIS/Include/core_cm3.h" |
||
| 1396 | 963 .file 14 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h" |
||
| 1397 | 964 .file 15 "Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h" |
||
| 1398 | 965 .file 16 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h" |
||
| 1399 | 966 .file 17 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h" |
||
| 1400 | 967 .file 18 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_spi.h" |
||
| 19 | mjames | 1401 | 968 .file 19 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h" |
| 1402 | 969 .file 20 "Core/Inc/main.h" |
||
| 1403 | 970 .file 21 "../libSerial/inc/libSerial/serial.h" |
||
| 1404 | 971 .file 22 "../libNMEA/inc/libNMEA/nmea.h" |
||
| 1405 | 972 .file 23 "<built-in>" |
||
| 21 | mjames | 1406 | ARM GAS C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s page 25 |
| 16 | mjames | 1407 | |
| 1408 | |||
| 1409 | DEFINED SYMBOLS |
||
| 1410 | *ABS*:0000000000000000 nmea.c |
||
| 21 | mjames | 1411 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:16 .text.decodeDec:0000000000000000 $t |
| 1412 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:23 .text.decodeDec:0000000000000000 decodeDec |
||
| 1413 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:44 .text.decodeHex:0000000000000000 $t |
||
| 1414 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:50 .text.decodeHex:0000000000000000 decodeHex |
||
| 1415 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:132 .text.decodeHex:0000000000000038 $d |
||
| 1416 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:144 .text.decodeLL:0000000000000000 $t |
||
| 1417 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:150 .text.decodeLL:0000000000000000 decodeLL |
||
| 1418 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:273 .text.decodeLL:0000000000000068 $d |
||
| 1419 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:282 .text.decodeDecimal:0000000000000000 $t |
||
| 1420 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:288 .text.decodeDecimal:0000000000000000 decodeDecimal |
||
| 1421 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:364 .text.decodeFP:0000000000000000 $t |
||
| 1422 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:370 .text.decodeFP:0000000000000000 decodeFP |
||
| 1423 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:394 .text.decodePacket:0000000000000000 $t |
||
| 1424 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:400 .text.decodePacket:0000000000000000 decodePacket |
||
| 1425 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:714 .text.updateLocation:0000000000000000 $t |
||
| 1426 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:721 .text.updateLocation:0000000000000000 updateLocation |
||
| 1427 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:927 .text.updateLocation:00000000000000c0 $d |
||
| 16 | mjames | 1428 | *COM*:0000000000000050 linebuff |
| 21 | mjames | 1429 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:947 .bss.lineState:0000000000000000 lineState |
| 1430 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:941 .bss.linePos:0000000000000000 linePos |
||
| 1431 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:937 .bss.linePos:0000000000000000 $d |
||
| 1432 | C:\Users\mike\AppData\Local\Temp\ccdOQpCZ.s:948 .bss.lineState:0000000000000000 $d |
||
| 16 | mjames | 1433 | |
| 1434 | UNDEFINED SYMBOLS |
||
| 1435 | _ctype_ |
||
| 1436 | __aeabi_i2f |
||
| 1437 | __aeabi_fmul |
||
| 1438 | __aeabi_fadd |
||
| 1439 | __aeabi_fsub |
||
| 1440 | __aeabi_f2d |
||
| 1441 | __aeabi_dcmplt |
||
| 1442 | __aeabi_fdiv |
||
| 1443 | strtof |
||
| 1444 | mktime |
||
| 1445 | SerialCharsReceived |
||
| 1446 | GetCharSerial |
||
| 1447 | memcpy |