ARM GAS /tmp/ccYGHSZd.s page 1 1 .cpu cortex-m4 2 .eabi_attribute 27, 1 3 .eabi_attribute 28, 1 4 .eabi_attribute 20, 1 5 .eabi_attribute 21, 1 6 .eabi_attribute 23, 3 7 .eabi_attribute 24, 1 8 .eabi_attribute 25, 1 9 .eabi_attribute 26, 1 10 .eabi_attribute 30, 2 11 .eabi_attribute 34, 1 12 .eabi_attribute 18, 4 13 .file "interface.c" 14 .text 15 .section .rodata.print_integer.str1.4,"aMS",%progbits,1 16 .align 2 17 .LC0: 18 0000 252A6C64 .ascii "%*ld\000" 18 00 19 .section .text.print_integer,"ax",%progbits 20 .align 1 21 .p2align 2,,3 22 .global print_integer 23 .arch armv7e-m 24 .syntax unified 25 .thumb 26 .thumb_func 27 .fpu fpv4-sp-d16 29 print_integer: 30 @ args = 0, pretend = 0, frame = 0 31 @ frame_needed = 0, uses_anonymous_args = 0 32 0000 094A ldr r2, .L4 33 0002 10B5 push {r4, lr} 34 0004 C0EBC000 rsb r0, r0, r0, lsl #3 35 0008 084C ldr r4, .L4+4 36 000a 02EBC002 add r2, r2, r0, lsl #3 37 000e 2188 ldrh r1, [r4] 38 0010 D36A ldr r3, [r2, #44] 39 0012 0748 ldr r0, .L4+8 40 0014 1B68 ldr r3, [r3] 41 0016 127C ldrb r2, [r2, #16] @ zero_extendqisi2 42 0018 0844 add r0, r0, r1 43 001a 0649 ldr r1, .L4+12 44 001c FFF7FEFF bl sprintf 45 0020 2388 ldrh r3, [r4] 46 0022 1844 add r0, r0, r3 47 0024 2080 strh r0, [r4] @ movhi 48 0026 10BD pop {r4, pc} 49 .L5: 50 .align 2 51 .L4: 52 0028 00000000 .word .LANCHOR0 53 002c 00000000 .word uart_tx_buf_in_idx 54 0030 00000000 .word uart_tx_buf 55 0034 00000000 .word .LC0 57 .section .rodata.print_string.str1.4,"aMS",%progbits,1 58 .align 2 ARM GAS /tmp/ccYGHSZd.s page 2 59 .LC1: 60 0000 252A7300 .ascii "%*s\000" 61 .section .text.print_string,"ax",%progbits 62 .align 1 63 .p2align 2,,3 64 .global print_string 65 .syntax unified 66 .thumb 67 .thumb_func 68 .fpu fpv4-sp-d16 70 print_string: 71 @ args = 0, pretend = 0, frame = 0 72 @ frame_needed = 0, uses_anonymous_args = 0 73 0000 10B5 push {r4, lr} 74 0002 094A ldr r2, .L8 75 0004 094C ldr r4, .L8+4 76 0006 0A49 ldr r1, .L8+8 77 0008 2388 ldrh r3, [r4] 78 000a C0EBC000 rsb r0, r0, r0, lsl #3 79 000e 02EBC002 add r2, r2, r0, lsl #3 80 0012 0848 ldr r0, .L8+12 81 0014 1844 add r0, r0, r3 82 0016 D36A ldr r3, [r2, #44] 83 0018 127C ldrb r2, [r2, #16] @ zero_extendqisi2 84 001a FFF7FEFF bl sprintf 85 001e 2388 ldrh r3, [r4] 86 0020 1844 add r0, r0, r3 87 0022 2080 strh r0, [r4] @ movhi 88 0024 10BD pop {r4, pc} 89 .L9: 90 0026 00BF .align 2 91 .L8: 92 0028 00000000 .word .LANCHOR0 93 002c 00000000 .word uart_tx_buf_in_idx 94 0030 00000000 .word .LC1 95 0034 00000000 .word uart_tx_buf 97 .section .text.print_modulation,"ax",%progbits 98 .align 1 99 .p2align 2,,3 100 .global print_modulation 101 .syntax unified 102 .thumb 103 .thumb_func 104 .fpu fpv4-sp-d16 106 print_modulation: 107 @ args = 0, pretend = 0, frame = 0 108 @ frame_needed = 0, uses_anonymous_args = 0 109 0000 0B4A ldr r2, .L12 110 0002 C0EBC000 rsb r0, r0, r0, lsl #3 111 0006 02EBC002 add r2, r2, r0, lsl #3 112 000a 38B5 push {r3, r4, r5, lr} 113 000c D36A ldr r3, [r2, #44] 114 000e 094C ldr r4, .L12+4 115 0010 1968 ldr r1, [r3] 116 0012 2088 ldrh r0, [r4] 117 0014 084B ldr r3, .L12+8 118 0016 094D ldr r5, .L12+12 ARM GAS /tmp/ccYGHSZd.s page 3 119 0018 127C ldrb r2, [r2, #16] @ zero_extendqisi2 120 001a 03EB8103 add r3, r3, r1, lsl #2 121 001e 2844 add r0, r0, r5 122 0020 0749 ldr r1, .L12+16 123 0022 FFF7FEFF bl sprintf 124 0026 2388 ldrh r3, [r4] 125 0028 1844 add r0, r0, r3 126 002a 2080 strh r0, [r4] @ movhi 127 002c 38BD pop {r3, r4, r5, pc} 128 .L13: 129 002e 00BF .align 2 130 .L12: 131 0030 00000000 .word .LANCHOR0 132 0034 00000000 .word uart_tx_buf_in_idx 133 0038 00000000 .word .LANCHOR1 134 003c 00000000 .word uart_tx_buf 135 0040 00000000 .word .LC1 137 .section .text.print_bar,"ax",%progbits 138 .align 1 139 .p2align 2,,3 140 .global print_bar 141 .syntax unified 142 .thumb 143 .thumb_func 144 .fpu fpv4-sp-d16 146 print_bar: 147 @ args = 0, pretend = 0, frame = 0 148 @ frame_needed = 1, uses_anonymous_args = 0 149 0000 98B5 push {r3, r4, r7, lr} 150 0002 1D4B ldr r3, .L26 151 0004 C0EBC000 rsb r0, r0, r0, lsl #3 152 0008 03EBC000 add r0, r3, r0, lsl #3 153 000c 00AF add r7, sp, #0 154 000e 027C ldrb r2, [r0, #16] @ zero_extendqisi2 155 0010 C16A ldr r1, [r0, #44] 156 0012 D31D adds r3, r2, #7 157 0014 03F4FC73 and r3, r3, #504 158 0018 ADEB030D sub sp, sp, r3 159 001c 0B78 ldrb r3, [r1] @ zero_extendqisi2 160 001e 6946 mov r1, sp 161 0020 F2B1 cbz r2, .L15 162 0022 6846 mov r0, sp 163 0024 0DEB020C add ip, sp, r2 164 0028 2024 movs r4, #32 165 002a 4FF0850E mov lr, #133 166 002e 0EE0 b .L19 167 .L25: 168 0030 80F800E0 strb lr, [r0] 169 .L17: 170 0034 9A1F subs r2, r3, #6 171 0036 D2B2 uxtb r2, r2 172 0038 9A42 cmp r2, r3 173 003a 00F10100 add r0, r0, #1 174 003e 4FF0FF33 mov r3, #-1 175 0042 88BF it hi 176 0044 0023 movhi r3, #0 177 0046 8445 cmp ip, r0 ARM GAS /tmp/ccYGHSZd.s page 4 178 0048 03EA0203 and r3, r3, r2 179 004c 08D0 beq .L15 180 .L19: 181 004e 052B cmp r3, #5 182 0050 EED8 bhi .L25 183 0052 A3F18002 sub r2, r3, #128 184 0056 0BB1 cbz r3, .L18 185 0058 0270 strb r2, [r0] 186 005a EBE7 b .L17 187 .L18: 188 005c 0470 strb r4, [r0] 189 005e E9E7 b .L17 190 .L15: 191 0060 064C ldr r4, .L26+4 192 0062 0748 ldr r0, .L26+8 193 0064 2388 ldrh r3, [r4] 194 0066 1844 add r0, r0, r3 195 0068 FFF7FEFF bl sprintf 196 006c 2388 ldrh r3, [r4] 197 006e 1844 add r0, r0, r3 198 0070 2080 strh r0, [r4] @ movhi 199 0072 BD46 mov sp, r7 200 @ sp needed 201 0074 98BD pop {r3, r4, r7, pc} 202 .L27: 203 0076 00BF .align 2 204 .L26: 205 0078 00000000 .word .LANCHOR0 206 007c 00000000 .word uart_tx_buf_in_idx 207 0080 00000000 .word uart_tx_buf 209 .section .rodata.print_frequency.str1.4,"aMS",%progbits,1 210 .align 2 211 .LC2: 212 0000 25386C64 .ascii "%8ld\000" 212 00 213 0005 000000 .align 2 214 .LC3: 215 0008 257300 .ascii "%s\000" 216 .section .text.print_frequency,"ax",%progbits 217 .align 1 218 .p2align 2,,3 219 .global print_frequency 220 .syntax unified 221 .thumb 222 .thumb_func 223 .fpu fpv4-sp-d16 225 print_frequency: 226 @ args = 0, pretend = 0, frame = 32 227 @ frame_needed = 0, uses_anonymous_args = 0 228 0000 2DE9F043 push {r4, r5, r6, r7, r8, r9, lr} 229 0004 304B ldr r3, .L40 230 0006 3149 ldr r1, .L40+4 231 0008 C0EBC000 rsb r0, r0, r0, lsl #3 232 000c 03EBC000 add r0, r3, r0, lsl #3 233 0010 89B0 sub sp, sp, #36 234 0012 C36A ldr r3, [r0, #44] 235 0014 6846 mov r0, sp ARM GAS /tmp/ccYGHSZd.s page 5 236 0016 1A68 ldr r2, [r3] 237 0018 FFF7FEFF bl sprintf 238 001c 9DF80090 ldrb r9, [sp] @ zero_extendqisi2 239 0020 B9F1000F cmp r9, #0 240 0024 4DD0 beq .L34 241 0026 0025 movs r5, #0 242 0028 294F ldr r7, .L40+8 243 002a 2C46 mov r4, r5 244 002c 2E46 mov r6, r5 245 002e 4FF02E08 mov r8, #46 246 .L33: 247 0032 6846 mov r0, sp 248 0034 FFF7FEFF bl strlen 249 0038 001B subs r0, r0, r4 250 003a 07FB00F0 mul r0, r7, r0 251 003e B0F1553F cmp r0, #1431655765 252 0042 16D8 bhi .L30 253 0044 06F12003 add r3, r6, #32 254 0048 0DEB0306 add r6, sp, r3 255 004c 8CB1 cbz r4, .L30 256 004e 16F8213C ldrb r3, [r6, #-33] @ zero_extendqisi2 257 0052 05F12002 add r2, r5, #32 258 0056 202B cmp r3, #32 259 0058 6A44 add r2, sp, r2 260 005a 04BF itt eq 261 005c 05F12002 addeq r2, r5, #32 262 0060 6A44 addeq r2, sp, r2 263 0062 05F10105 add r5, r5, #1 264 0066 0CBF ite eq 265 0068 02F8103C strbeq r3, [r2, #-16] 266 006c 02F8108C strbne r8, [r2, #-16] 267 0070 EDB2 uxtb r5, r5 268 .L30: 269 0072 0134 adds r4, r4, #1 270 0074 E4B2 uxtb r4, r4 271 0076 05F12002 add r2, r5, #32 272 007a 6B1C adds r3, r5, #1 273 007c 0DEB0205 add r5, sp, r2 274 0080 04F12002 add r2, r4, #32 275 0084 6A44 add r2, sp, r2 276 0086 05F8109C strb r9, [r5, #-16] 277 008a 12F8209C ldrb r9, [r2, #-32] @ zero_extendqisi2 278 008e DDB2 uxtb r5, r3 279 0090 2646 mov r6, r4 280 0092 B9F1000F cmp r9, #0 281 0096 CCD1 bne .L33 282 .L29: 283 0098 0E4C ldr r4, .L40+12 284 009a 0F48 ldr r0, .L40+16 285 009c 2388 ldrh r3, [r4] 286 009e 0F49 ldr r1, .L40+20 287 00a0 1844 add r0, r0, r3 288 00a2 05F12003 add r3, r5, #32 289 00a6 0DEB0305 add r5, sp, r3 290 00aa 0023 movs r3, #0 291 00ac 05F8103C strb r3, [r5, #-16] 292 00b0 04AA add r2, sp, #16 ARM GAS /tmp/ccYGHSZd.s page 6 293 00b2 FFF7FEFF bl sprintf 294 00b6 2388 ldrh r3, [r4] 295 00b8 1844 add r0, r0, r3 296 00ba 2080 strh r0, [r4] @ movhi 297 00bc 09B0 add sp, sp, #36 298 @ sp needed 299 00be BDE8F083 pop {r4, r5, r6, r7, r8, r9, pc} 300 .L34: 301 00c2 4D46 mov r5, r9 302 00c4 E8E7 b .L29 303 .L41: 304 00c6 00BF .align 2 305 .L40: 306 00c8 00000000 .word .LANCHOR0 307 00cc 00000000 .word .LC2 308 00d0 ABAAAAAA .word -1431655765 309 00d4 00000000 .word uart_tx_buf_in_idx 310 00d8 00000000 .word uart_tx_buf 311 00dc 08000000 .word .LC3 313 .section .text.encoder_increment,"ax",%progbits 314 .align 1 315 .p2align 2,,3 316 .global encoder_increment 317 .syntax unified 318 .thumb 319 .thumb_func 320 .fpu fpv4-sp-d16 322 encoder_increment: 323 @ args = 0, pretend = 0, frame = 0 324 @ frame_needed = 0, uses_anonymous_args = 0 325 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} 326 0004 154D ldr r5, .L49 327 0006 164C ldr r4, .L49+4 328 0008 2878 ldrb r0, [r5] @ zero_extendqisi2 329 000a C0EBC002 rsb r2, r0, r0, lsl #3 330 000e 04EBC202 add r2, r4, r2, lsl #3 331 0012 C300 lsls r3, r0, #3 332 0014 D17B ldrb r1, [r2, #15] @ zero_extendqisi2 333 0016 31B1 cbz r1, .L48 334 .L43: 335 0018 181A subs r0, r3, r0 336 001a 04EBC000 add r0, r4, r0, lsl #3 337 001e BDE8F041 pop {r4, r5, r6, r7, r8, lr} 338 0022 036B ldr r3, [r0, #48] 339 0024 1847 bx r3 @ indirect register sibling call 340 .L48: 341 0026 D66A ldr r6, [r2, #44] 342 0028 5769 ldr r7, [r2, #20] 343 002a 3168 ldr r1, [r6] 344 002c 3944 add r1, r1, r7 345 002e 3160 str r1, [r6] 346 0030 9769 ldr r7, [r2, #24] 347 0032 B942 cmp r1, r7 348 0034 07D3 bcc .L44 349 0036 D269 ldr r2, [r2, #28] 350 0038 9142 cmp r1, r2 351 003a 04D8 bhi .L44 ARM GAS /tmp/ccYGHSZd.s page 7 352 .L45: 353 003c FFF7FEFF bl set_changed 354 0040 2878 ldrb r0, [r5] @ zero_extendqisi2 355 0042 C300 lsls r3, r0, #3 356 0044 E8E7 b .L43 357 .L44: 358 0046 1B1A subs r3, r3, r0 359 0048 04EBC303 add r3, r4, r3, lsl #3 360 004c 93F82020 ldrb r2, [r3, #32] @ zero_extendqisi2 361 0050 0AB1 cbz r2, .L46 362 0052 3760 str r7, [r6] 363 0054 F2E7 b .L45 364 .L46: 365 0056 DB69 ldr r3, [r3, #28] 366 0058 3360 str r3, [r6] 367 005a EFE7 b .L45 368 .L50: 369 .align 2 370 .L49: 371 005c 00000000 .word .LANCHOR2 372 0060 00000000 .word .LANCHOR0 374 .section .text.encoder_decrement,"ax",%progbits 375 .align 1 376 .p2align 2,,3 377 .global encoder_decrement 378 .syntax unified 379 .thumb 380 .thumb_func 381 .fpu fpv4-sp-d16 383 encoder_decrement: 384 @ args = 0, pretend = 0, frame = 0 385 @ frame_needed = 0, uses_anonymous_args = 0 386 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} 387 0004 154D ldr r5, .L58 388 0006 164C ldr r4, .L58+4 389 0008 2878 ldrb r0, [r5] @ zero_extendqisi2 390 000a C0EBC002 rsb r2, r0, r0, lsl #3 391 000e 04EBC202 add r2, r4, r2, lsl #3 392 0012 C300 lsls r3, r0, #3 393 0014 D17B ldrb r1, [r2, #15] @ zero_extendqisi2 394 0016 31B1 cbz r1, .L57 395 .L52: 396 0018 181A subs r0, r3, r0 397 001a 04EBC000 add r0, r4, r0, lsl #3 398 001e BDE8F041 pop {r4, r5, r6, r7, r8, lr} 399 0022 036B ldr r3, [r0, #48] 400 0024 1847 bx r3 @ indirect register sibling call 401 .L57: 402 0026 D66A ldr r6, [r2, #44] 403 0028 5769 ldr r7, [r2, #20] 404 002a 3168 ldr r1, [r6] 405 002c C91B subs r1, r1, r7 406 002e 3160 str r1, [r6] 407 0030 9769 ldr r7, [r2, #24] 408 0032 B942 cmp r1, r7 409 0034 07D3 bcc .L53 410 0036 D269 ldr r2, [r2, #28] ARM GAS /tmp/ccYGHSZd.s page 8 411 0038 9142 cmp r1, r2 412 003a 04D8 bhi .L53 413 .L54: 414 003c FFF7FEFF bl set_changed 415 0040 2878 ldrb r0, [r5] @ zero_extendqisi2 416 0042 C300 lsls r3, r0, #3 417 0044 E8E7 b .L52 418 .L53: 419 0046 1B1A subs r3, r3, r0 420 0048 04EBC303 add r3, r4, r3, lsl #3 421 004c 93F82020 ldrb r2, [r3, #32] @ zero_extendqisi2 422 0050 12B1 cbz r2, .L55 423 0052 DB69 ldr r3, [r3, #28] 424 0054 3360 str r3, [r6] 425 0056 F1E7 b .L54 426 .L55: 427 0058 3760 str r7, [r6] 428 005a EFE7 b .L54 429 .L59: 430 .align 2 431 .L58: 432 005c 00000000 .word .LANCHOR2 433 0060 00000000 .word .LANCHOR0 435 .section .text.joystick_dx,"ax",%progbits 436 .align 1 437 .p2align 2,,3 438 .global joystick_dx 439 .syntax unified 440 .thumb 441 .thumb_func 442 .fpu fpv4-sp-d16 444 joystick_dx: 445 @ args = 0, pretend = 0, frame = 0 446 @ frame_needed = 0, uses_anonymous_args = 0 447 @ link register save eliminated. 448 0000 074B ldr r3, .L62 449 0002 084A ldr r2, .L62+4 450 0004 1B78 ldrb r3, [r3] @ zero_extendqisi2 451 0006 C3EBC303 rsb r3, r3, r3, lsl #3 452 000a 02EBC303 add r3, r2, r3, lsl #3 453 000e 5A69 ldr r2, [r3, #20] 454 0010 092A cmp r2, #9 455 0012 04D9 bls .L60 456 0014 0449 ldr r1, .L62+8 457 0016 A1FB0212 umull r1, r2, r1, r2 458 001a D208 lsrs r2, r2, #3 459 001c 5A61 str r2, [r3, #20] 460 .L60: 461 001e 7047 bx lr 462 .L63: 463 .align 2 464 .L62: 465 0020 00000000 .word .LANCHOR2 466 0024 00000000 .word .LANCHOR0 467 0028 CDCCCCCC .word -858993459 469 .section .text.joystick_sx,"ax",%progbits 470 .align 1 ARM GAS /tmp/ccYGHSZd.s page 9 471 .p2align 2,,3 472 .global joystick_sx 473 .syntax unified 474 .thumb 475 .thumb_func 476 .fpu fpv4-sp-d16 478 joystick_sx: 479 @ args = 0, pretend = 0, frame = 0 480 @ frame_needed = 0, uses_anonymous_args = 0 481 @ link register save eliminated. 482 0000 084B ldr r3, .L66 483 0002 094A ldr r2, .L66+4 484 0004 1B78 ldrb r3, [r3] @ zero_extendqisi2 485 0006 C3EBC303 rsb r3, r3, r3, lsl #3 486 000a 02EBC302 add r2, r2, r3, lsl #3 487 000e 5369 ldr r3, [r2, #20] 488 0010 D169 ldr r1, [r2, #28] 489 0012 03EB8303 add r3, r3, r3, lsl #2 490 0016 5800 lsls r0, r3, #1 491 0018 B1EB430F cmp r1, r3, lsl #1 492 001c 88BF it hi 493 001e 5061 strhi r0, [r2, #20] 494 0020 7047 bx lr 495 .L67: 496 0022 00BF .align 2 497 .L66: 498 0024 00000000 .word .LANCHOR2 499 0028 00000000 .word .LANCHOR0 501 .section .rodata.joystick_down.str1.4,"aMS",%progbits,1 502 .align 2 503 .LC4: 504 0000 1B5B2564 .ascii "\033[%d,%dz\000" 504 2C25647A 504 00 505 0009 000000 .align 2 506 .LC5: 507 000c 25642025 .ascii "%d %-12s\000" 507 2D313273 507 00 508 .section .text.joystick_down,"ax",%progbits 509 .align 1 510 .p2align 2,,3 511 .global joystick_down 512 .syntax unified 513 .thumb 514 .thumb_func 515 .fpu fpv4-sp-d16 517 joystick_down: 518 @ args = 0, pretend = 0, frame = 0 519 @ frame_needed = 0, uses_anonymous_args = 0 520 0000 F8B5 push {r3, r4, r5, r6, r7, lr} 521 0002 234D ldr r5, .L81 522 0004 234C ldr r4, .L81+4 523 0006 2878 ldrb r0, [r5] @ zero_extendqisi2 524 0008 FFF7FEFF bl set_changed 525 000c 2978 ldrb r1, [r5] @ zero_extendqisi2 526 000e 224B ldr r3, .L81+8 ARM GAS /tmp/ccYGHSZd.s page 10 527 0010 224A ldr r2, .L81+12 528 0012 93F800E0 ldrb lr, [r3] @ zero_extendqisi2 529 0016 1778 ldrb r7, [r2] @ zero_extendqisi2 530 0018 0131 adds r1, r1, #1 531 001a C9B2 uxtb r1, r1 532 001c 2970 strb r1, [r5] 533 001e 0022 movs r2, #0 534 .L69: 535 0020 0846 mov r0, r1 536 0022 1646 mov r6, r2 537 0024 04E0 b .L70 538 .L71: 539 0026 5FFA8CF0 uxtb r0, ip 540 002a 8645 cmp lr, r0 541 002c 1646 mov r6, r2 542 002e F7D9 bls .L69 543 .L70: 544 0030 C0EBC003 rsb r3, r0, r0, lsl #3 545 0034 04EBC302 add r2, r4, r3, lsl #3 546 0038 00F1010C add ip, r0, #1 547 003c D17B ldrb r1, [r2, #15] @ zero_extendqisi2 548 003e 0429 cmp r1, #4 549 0040 4FF00102 mov r2, #1 550 0044 4FF00001 mov r1, #0 551 0048 EDD0 beq .L71 552 004a 14F83330 ldrb r3, [r4, r3, lsl #3] @ zero_extendqisi2 553 004e BB42 cmp r3, r7 554 0050 E9D1 bne .L71 555 0052 06B1 cbz r6, .L72 556 0054 2870 strb r0, [r5] 557 .L72: 558 0056 124E ldr r6, .L81+16 559 0058 124F ldr r7, .L81+20 560 005a FFF7FEFF bl set_changed 561 005e 3088 ldrh r0, [r6] 562 0060 1149 ldr r1, .L81+24 563 0062 0023 movs r3, #0 564 0064 1A46 mov r2, r3 565 0066 3844 add r0, r0, r7 566 0068 FFF7FEFF bl sprintf 567 006c 3388 ldrh r3, [r6] 568 006e 2A78 ldrb r2, [r5] @ zero_extendqisi2 569 0070 0E49 ldr r1, .L81+28 570 0072 0633 adds r3, r3, #6 571 0074 9BB2 uxth r3, r3 572 0076 F818 adds r0, r7, r3 573 0078 3380 strh r3, [r6] @ movhi 574 007a 3823 movs r3, #56 575 007c 03FB0243 mla r3, r3, r2, r4 576 0080 0133 adds r3, r3, #1 577 0082 FFF7FEFF bl sprintf 578 0086 3388 ldrh r3, [r6] 579 0088 1844 add r0, r0, r3 580 008a 3080 strh r0, [r6] @ movhi 581 008c F8BD pop {r3, r4, r5, r6, r7, pc} 582 .L82: 583 008e 00BF .align 2 ARM GAS /tmp/ccYGHSZd.s page 11 584 .L81: 585 0090 00000000 .word .LANCHOR2 586 0094 00000000 .word .LANCHOR0 587 0098 00000000 .word .LANCHOR4 588 009c 00000000 .word .LANCHOR3 589 00a0 00000000 .word uart_tx_buf_in_idx 590 00a4 00000000 .word uart_tx_buf 591 00a8 00000000 .word .LC4 592 00ac 0C000000 .word .LC5 594 .section .text.joystick_button,"ax",%progbits 595 .align 1 596 .p2align 2,,3 597 .global joystick_button 598 .syntax unified 599 .thumb 600 .thumb_func 601 .fpu fpv4-sp-d16 603 joystick_button: 604 @ args = 0, pretend = 0, frame = 0 605 @ frame_needed = 0, uses_anonymous_args = 0 606 @ link register save eliminated. 607 0000 7047 bx lr 609 0002 00BF .section .text.menu_item_up,"ax",%progbits 610 .align 1 611 .p2align 2,,3 612 .global menu_item_up 613 .syntax unified 614 .thumb 615 .thumb_func 616 .fpu fpv4-sp-d16 618 menu_item_up: 619 @ args = 0, pretend = 0, frame = 0 620 @ frame_needed = 0, uses_anonymous_args = 0 621 0000 F8B5 push {r3, r4, r5, r6, r7, lr} 622 0002 234D ldr r5, .L97 623 0004 234C ldr r4, .L97+4 624 0006 2878 ldrb r0, [r5] @ zero_extendqisi2 625 0008 FFF7FEFF bl set_changed 626 000c 2978 ldrb r1, [r5] @ zero_extendqisi2 627 000e 224B ldr r3, .L97+8 628 0010 224A ldr r2, .L97+12 629 0012 93F800E0 ldrb lr, [r3] @ zero_extendqisi2 630 0016 1778 ldrb r7, [r2] @ zero_extendqisi2 631 0018 0131 adds r1, r1, #1 632 001a C9B2 uxtb r1, r1 633 001c 2970 strb r1, [r5] 634 001e 0022 movs r2, #0 635 .L85: 636 0020 0846 mov r0, r1 637 0022 1646 mov r6, r2 638 0024 04E0 b .L86 639 .L87: 640 0026 5FFA8CF0 uxtb r0, ip 641 002a 8645 cmp lr, r0 642 002c 1646 mov r6, r2 643 002e F7D9 bls .L85 644 .L86: ARM GAS /tmp/ccYGHSZd.s page 12 645 0030 C0EBC003 rsb r3, r0, r0, lsl #3 646 0034 04EBC302 add r2, r4, r3, lsl #3 647 0038 00F1010C add ip, r0, #1 648 003c D17B ldrb r1, [r2, #15] @ zero_extendqisi2 649 003e 0429 cmp r1, #4 650 0040 4FF00102 mov r2, #1 651 0044 4FF00001 mov r1, #0 652 0048 EDD0 beq .L87 653 004a 14F83330 ldrb r3, [r4, r3, lsl #3] @ zero_extendqisi2 654 004e BB42 cmp r3, r7 655 0050 E9D1 bne .L87 656 0052 06B1 cbz r6, .L88 657 0054 2870 strb r0, [r5] 658 .L88: 659 0056 124E ldr r6, .L97+16 660 0058 124F ldr r7, .L97+20 661 005a FFF7FEFF bl set_changed 662 005e 3088 ldrh r0, [r6] 663 0060 1149 ldr r1, .L97+24 664 0062 0023 movs r3, #0 665 0064 1A46 mov r2, r3 666 0066 3844 add r0, r0, r7 667 0068 FFF7FEFF bl sprintf 668 006c 3388 ldrh r3, [r6] 669 006e 2A78 ldrb r2, [r5] @ zero_extendqisi2 670 0070 0E49 ldr r1, .L97+28 671 0072 0633 adds r3, r3, #6 672 0074 9BB2 uxth r3, r3 673 0076 F818 adds r0, r7, r3 674 0078 3380 strh r3, [r6] @ movhi 675 007a 3823 movs r3, #56 676 007c 03FB0243 mla r3, r3, r2, r4 677 0080 0133 adds r3, r3, #1 678 0082 FFF7FEFF bl sprintf 679 0086 3388 ldrh r3, [r6] 680 0088 1844 add r0, r0, r3 681 008a 3080 strh r0, [r6] @ movhi 682 008c F8BD pop {r3, r4, r5, r6, r7, pc} 683 .L98: 684 008e 00BF .align 2 685 .L97: 686 0090 00000000 .word .LANCHOR2 687 0094 00000000 .word .LANCHOR0 688 0098 00000000 .word .LANCHOR4 689 009c 00000000 .word .LANCHOR3 690 00a0 00000000 .word uart_tx_buf_in_idx 691 00a4 00000000 .word uart_tx_buf 692 00a8 00000000 .word .LC4 693 00ac 0C000000 .word .LC5 695 .section .text.menu_item_down,"ax",%progbits 696 .align 1 697 .p2align 2,,3 698 .global menu_item_down 699 .syntax unified 700 .thumb 701 .thumb_func 702 .fpu fpv4-sp-d16 ARM GAS /tmp/ccYGHSZd.s page 13 704 menu_item_down: 705 @ args = 0, pretend = 0, frame = 0 706 @ frame_needed = 0, uses_anonymous_args = 0 707 0000 F8B5 push {r3, r4, r5, r6, r7, lr} 708 0002 244D ldr r5, .L113 709 0004 2878 ldrb r0, [r5] @ zero_extendqisi2 710 0006 FFF7FEFF bl set_changed 711 000a 2878 ldrb r0, [r5] @ zero_extendqisi2 712 000c 224B ldr r3, .L113+4 713 000e 0138 subs r0, r0, #1 714 0010 1F78 ldrb r7, [r3] @ zero_extendqisi2 715 0012 C0B2 uxtb r0, r0 716 0014 B842 cmp r0, r7 717 0016 2870 strb r0, [r5] 718 0018 02D3 bcc .L100 719 001a 781E subs r0, r7, #1 720 001c C0B2 uxtb r0, r0 721 001e 2870 strb r0, [r5] 722 .L100: 723 0020 1E4B ldr r3, .L113+8 724 0022 1F4C ldr r4, .L113+12 725 0024 93F800E0 ldrb lr, [r3] @ zero_extendqisi2 726 0028 07F1FF3C add ip, r7, #-1 727 002c 0026 movs r6, #0 728 002e 5FFA8CFC uxtb ip, ip 729 0032 05E0 b .L102 730 .L103: 731 0034 C8B2 uxtb r0, r1 732 0036 8742 cmp r7, r0 733 0038 4FF00106 mov r6, #1 734 003c 98BF it ls 735 003e 6046 movls r0, ip 736 .L102: 737 0040 C0EBC003 rsb r3, r0, r0, lsl #3 738 0044 04EBC302 add r2, r4, r3, lsl #3 739 0048 411E subs r1, r0, #1 740 004a D27B ldrb r2, [r2, #15] @ zero_extendqisi2 741 004c 042A cmp r2, #4 742 004e F1D0 beq .L103 743 0050 14F83330 ldrb r3, [r4, r3, lsl #3] @ zero_extendqisi2 744 0054 7345 cmp r3, lr 745 0056 EDD1 bne .L103 746 0058 06B1 cbz r6, .L104 747 005a 2870 strb r0, [r5] 748 .L104: 749 005c 114E ldr r6, .L113+16 750 005e 124F ldr r7, .L113+20 751 0060 FFF7FEFF bl set_changed 752 0064 3088 ldrh r0, [r6] 753 0066 1149 ldr r1, .L113+24 754 0068 0023 movs r3, #0 755 006a 1A46 mov r2, r3 756 006c 3844 add r0, r0, r7 757 006e FFF7FEFF bl sprintf 758 0072 3388 ldrh r3, [r6] 759 0074 2A78 ldrb r2, [r5] @ zero_extendqisi2 760 0076 0E49 ldr r1, .L113+28 ARM GAS /tmp/ccYGHSZd.s page 14 761 0078 0633 adds r3, r3, #6 762 007a 9BB2 uxth r3, r3 763 007c F818 adds r0, r7, r3 764 007e 3380 strh r3, [r6] @ movhi 765 0080 3823 movs r3, #56 766 0082 03FB0243 mla r3, r3, r2, r4 767 0086 0133 adds r3, r3, #1 768 0088 FFF7FEFF bl sprintf 769 008c 3388 ldrh r3, [r6] 770 008e 1844 add r0, r0, r3 771 0090 3080 strh r0, [r6] @ movhi 772 0092 F8BD pop {r3, r4, r5, r6, r7, pc} 773 .L114: 774 .align 2 775 .L113: 776 0094 00000000 .word .LANCHOR2 777 0098 00000000 .word .LANCHOR4 778 009c 00000000 .word .LANCHOR3 779 00a0 00000000 .word .LANCHOR0 780 00a4 00000000 .word uart_tx_buf_in_idx 781 00a8 00000000 .word uart_tx_buf 782 00ac 00000000 .word .LC4 783 00b0 0C000000 .word .LC5 785 .section .text.joystick_up,"ax",%progbits 786 .align 1 787 .p2align 2,,3 788 .global joystick_up 789 .syntax unified 790 .thumb 791 .thumb_func 792 .fpu fpv4-sp-d16 794 joystick_up: 795 @ args = 0, pretend = 0, frame = 0 796 @ frame_needed = 0, uses_anonymous_args = 0 797 @ link register save eliminated. 798 0000 FFF7FEBF b menu_item_down 800 .section .text.step_up,"ax",%progbits 801 .align 1 802 .p2align 2,,3 803 .global step_up 804 .syntax unified 805 .thumb 806 .thumb_func 807 .fpu fpv4-sp-d16 809 step_up: 810 @ args = 0, pretend = 0, frame = 0 811 @ frame_needed = 0, uses_anonymous_args = 0 812 @ link register save eliminated. 813 0000 074B ldr r3, .L118 814 0002 C0EBC000 rsb r0, r0, r0, lsl #3 815 0006 03EBC000 add r0, r3, r0, lsl #3 816 000a 4369 ldr r3, [r0, #20] 817 000c C269 ldr r2, [r0, #28] 818 000e 03EB8303 add r3, r3, r3, lsl #2 819 0012 5900 lsls r1, r3, #1 820 0014 B2EB430F cmp r2, r3, lsl #1 821 0018 88BF it hi ARM GAS /tmp/ccYGHSZd.s page 15 822 001a 4161 strhi r1, [r0, #20] 823 001c 7047 bx lr 824 .L119: 825 001e 00BF .align 2 826 .L118: 827 0020 00000000 .word .LANCHOR0 829 .section .text.step_down,"ax",%progbits 830 .align 1 831 .p2align 2,,3 832 .global step_down 833 .syntax unified 834 .thumb 835 .thumb_func 836 .fpu fpv4-sp-d16 838 step_down: 839 @ args = 0, pretend = 0, frame = 0 840 @ frame_needed = 0, uses_anonymous_args = 0 841 @ link register save eliminated. 842 0000 064B ldr r3, .L122 843 0002 C0EBC000 rsb r0, r0, r0, lsl #3 844 0006 03EBC000 add r0, r3, r0, lsl #3 845 000a 4369 ldr r3, [r0, #20] 846 000c 092B cmp r3, #9 847 000e 04D9 bls .L120 848 0010 034A ldr r2, .L122+4 849 0012 A2FB0323 umull r2, r3, r2, r3 850 0016 DB08 lsrs r3, r3, #3 851 0018 4361 str r3, [r0, #20] 852 .L120: 853 001a 7047 bx lr 854 .L123: 855 .align 2 856 .L122: 857 001c 00000000 .word .LANCHOR0 858 0020 CDCCCCCC .word -858993459 860 .section .rodata.interface_set_default.str1.4,"aMS",%progbits,1 861 .align 2 862 .LC6: 863 0000 54582053 .ascii "TX SET MEM NO\000" 863 4554204D 863 454D204E 863 4F00 864 .section .text.interface_set_default,"ax",%progbits 865 .align 1 866 .p2align 2,,3 867 .global interface_set_default 868 .syntax unified 869 .thumb 870 .thumb_func 871 .fpu fpv4-sp-d16 873 interface_set_default: 874 @ args = 0, pretend = 0, frame = 0 875 @ frame_needed = 0, uses_anonymous_args = 0 876 @ link register save eliminated. 877 0000 094B ldr r3, .L126 878 0002 07CB ldmia r3!, {r0, r1, r2} 879 0004 30B4 push {r4, r5} ARM GAS /tmp/ccYGHSZd.s page 16 880 0006 094C ldr r4, .L126+4 881 0008 1B88 ldrh r3, [r3] @ unaligned 882 000a A381 strh r3, [r4, #12] @ unaligned 883 000c 084B ldr r3, .L126+8 884 000e 6160 str r1, [r4, #4] @ unaligned 885 0010 A260 str r2, [r4, #8] @ unaligned 886 0012 4FF48061 mov r1, #1024 887 0016 074A ldr r2, .L126+12 888 0018 074D ldr r5, .L126+16 889 001a 1980 strh r1, [r3] @ movhi 890 001c 0023 movs r3, #0 891 001e 1370 strb r3, [r2] 892 0020 2060 str r0, [r4] @ unaligned 893 0022 2B70 strb r3, [r5] 894 0024 30BC pop {r4, r5} 895 0026 7047 bx lr 896 .L127: 897 .align 2 898 .L126: 899 0028 00000000 .word .LC6 900 002c 00000000 .word tabstring 901 0030 00000000 .word .LANCHOR5 902 0034 00000000 .word .LANCHOR3 903 0038 00000000 .word .LANCHOR2 905 .section .text.display_set_position,"ax",%progbits 906 .align 1 907 .p2align 2,,3 908 .global display_set_position 909 .syntax unified 910 .thumb 911 .thumb_func 912 .fpu fpv4-sp-d16 914 display_set_position: 915 @ args = 0, pretend = 0, frame = 0 916 @ frame_needed = 0, uses_anonymous_args = 0 917 0000 38B5 push {r3, r4, r5, lr} 918 0002 064C ldr r4, .L130 919 0004 064D ldr r5, .L130+4 920 0006 2288 ldrh r2, [r4] 921 0008 0346 mov r3, r0 922 000a A818 adds r0, r5, r2 923 000c 0A46 mov r2, r1 924 000e 0549 ldr r1, .L130+8 925 0010 FFF7FEFF bl sprintf 926 0014 2388 ldrh r3, [r4] 927 0016 1844 add r0, r0, r3 928 0018 2080 strh r0, [r4] @ movhi 929 001a 38BD pop {r3, r4, r5, pc} 930 .L131: 931 .align 2 932 .L130: 933 001c 00000000 .word uart_tx_buf_in_idx 934 0020 00000000 .word uart_tx_buf 935 0024 00000000 .word .LC4 937 .section .text.display_update_item,"ax",%progbits 938 .align 1 939 .p2align 2,,3 ARM GAS /tmp/ccYGHSZd.s page 17 940 .global display_update_item 941 .syntax unified 942 .thumb 943 .thumb_func 944 .fpu fpv4-sp-d16 946 display_update_item: 947 @ args = 0, pretend = 0, frame = 0 948 @ frame_needed = 0, uses_anonymous_args = 0 949 0000 38B5 push {r3, r4, r5, lr} 950 0002 0E4C ldr r4, .L134 951 0004 0E4D ldr r5, .L134+4 952 0006 2088 ldrh r0, [r4] 953 0008 0E49 ldr r1, .L134+8 954 000a 0023 movs r3, #0 955 000c 1A46 mov r2, r3 956 000e 2844 add r0, r0, r5 957 0010 FFF7FEFF bl sprintf 958 0014 2188 ldrh r1, [r4] 959 0016 0C4B ldr r3, .L134+12 960 0018 0631 adds r1, r1, #6 961 001a 1A78 ldrb r2, [r3] @ zero_extendqisi2 962 001c 0B4B ldr r3, .L134+16 963 001e 89B2 uxth r1, r1 964 0020 6818 adds r0, r5, r1 965 0022 2180 strh r1, [r4] @ movhi 966 0024 3821 movs r1, #56 967 0026 01FB0233 mla r3, r1, r2, r3 968 002a 0133 adds r3, r3, #1 969 002c 0849 ldr r1, .L134+20 970 002e FFF7FEFF bl sprintf 971 0032 2388 ldrh r3, [r4] 972 0034 1844 add r0, r0, r3 973 0036 2080 strh r0, [r4] @ movhi 974 0038 38BD pop {r3, r4, r5, pc} 975 .L135: 976 003a 00BF .align 2 977 .L134: 978 003c 00000000 .word uart_tx_buf_in_idx 979 0040 00000000 .word uart_tx_buf 980 0044 00000000 .word .LC4 981 0048 00000000 .word .LANCHOR2 982 004c 00000000 .word .LANCHOR0 983 0050 0C000000 .word .LC5 985 .section .rodata.display_update_state.str1.4,"aMS",%progbits,1 986 .align 2 987 .LC7: 988 0000 3E00 .ascii ">\000" 989 0002 0000 .align 2 990 .LC8: 991 0004 2000 .ascii " \000" 992 .section .text.display_update_state,"ax",%progbits 993 .align 1 994 .p2align 2,,3 995 .global display_update_state 996 .syntax unified 997 .thumb 998 .thumb_func ARM GAS /tmp/ccYGHSZd.s page 18 999 .fpu fpv4-sp-d16 1001 display_update_state: 1002 @ args = 0, pretend = 0, frame = 8 1003 @ frame_needed = 0, uses_anonymous_args = 0 1004 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr} 1005 0004 DFF80091 ldr r9, .L157+24 1006 0008 99F80030 ldrb r3, [r9] @ zero_extendqisi2 1007 000c 83B0 sub sp, sp, #12 1008 000e 002B cmp r3, #0 1009 0010 6BD0 beq .L136 1010 0012 0025 movs r5, #0 1011 0014 364F ldr r7, .L157 1012 0016 DFF8F480 ldr r8, .L157+28 1013 001a 2C46 mov r4, r5 1014 001c 0AE0 b .L137 1015 .L156: 1016 001e FF2B cmp r3, #255 1017 0020 17D0 beq .L139 1018 .L140: 1019 0022 2046 mov r0, r4 1020 0024 FFF7FEFF bl reset_changed 1021 .L138: 1022 0028 99F80030 ldrb r3, [r9] @ zero_extendqisi2 1023 002c 0135 adds r5, r5, #1 1024 002e ECB2 uxtb r4, r5 1025 0030 A342 cmp r3, r4 1026 0032 5AD9 bls .L136 1027 .L137: 1028 0034 2046 mov r0, r4 1029 0036 FFF7FEFF bl get_changed 1030 003a 0028 cmp r0, #0 1031 003c F4D0 beq .L138 1032 003e 2D4A ldr r2, .L157+4 1033 0040 C4EBC403 rsb r3, r4, r4, lsl #3 1034 0044 1278 ldrb r2, [r2] @ zero_extendqisi2 1035 0046 17F83330 ldrb r3, [r7, r3, lsl #3] @ zero_extendqisi2 1036 004a 9A42 cmp r2, r3 1037 004c 4FEAC406 lsl r6, r4, #3 1038 0050 E5D1 bne .L156 1039 .L139: 1040 0052 311B subs r1, r6, r4 1041 0054 07EBC10A add r10, r7, r1, lsl #3 1042 0058 CB00 lsls r3, r1, #3 1043 005a 0193 str r3, [sp, #4] 1044 005c 9AF80F30 ldrb r3, [r10, #15] @ zero_extendqisi2 1045 0060 052B cmp r3, #5 1046 0062 DED0 beq .L140 1047 0064 B8F80000 ldrh r0, [r8] 1048 0068 DFF8A4B0 ldr fp, .L157+32 1049 006c 9AF81220 ldrb r2, [r10, #18] @ zero_extendqisi2 1050 0070 9AF81130 ldrb r3, [r10, #17] @ zero_extendqisi2 1051 0074 2049 ldr r1, .L157+8 1052 0076 5844 add r0, r0, fp 1053 0078 FFF7FEFF bl sprintf 1054 007c B8F80030 ldrh r3, [r8] 1055 0080 1844 add r0, r0, r3 1056 0082 019B ldr r3, [sp, #4] ARM GAS /tmp/ccYGHSZd.s page 19 1057 0084 80B2 uxth r0, r0 1058 0086 03F12101 add r1, r3, #33 1059 008a A8F80000 strh r0, [r8] @ movhi 1060 008e 3944 add r1, r1, r7 1061 0090 5844 add r0, r0, fp 1062 0092 FFF7FEFF bl sprintf 1063 0096 B8F80020 ldrh r2, [r8] 1064 009a 9AF80F30 ldrb r3, [r10, #15] @ zero_extendqisi2 1065 009e 1044 add r0, r0, r2 1066 00a0 80B2 uxth r0, r0 1067 00a2 042B cmp r3, #4 1068 00a4 A8F80000 strh r0, [r8] @ movhi 1069 00a8 0BD0 beq .L141 1070 00aa 144B ldr r3, .L157+12 1071 00ac 1B78 ldrb r3, [r3] @ zero_extendqisi2 1072 00ae A342 cmp r3, r4 1073 00b0 0CBF ite eq 1074 00b2 134B ldreq r3, .L157+16 1075 00b4 134B ldrne r3, .L157+20 1076 00b6 1B88 ldrh r3, [r3] @ unaligned 1077 00b8 2BF80030 strh r3, [fp, r0] @ unaligned 1078 00bc 0130 adds r0, r0, #1 1079 00be A8F80000 strh r0, [r8] @ movhi 1080 .L141: 1081 00c2 361B subs r6, r6, r4 1082 00c4 07EBC606 add r6, r7, r6, lsl #3 1083 00c8 2046 mov r0, r4 1084 00ca 736B ldr r3, [r6, #52] 1085 00cc 9847 blx r3 1086 00ce 0199 ldr r1, [sp, #4] 1087 00d0 B8F80000 ldrh r0, [r8] 1088 00d4 2531 adds r1, r1, #37 1089 00d6 3944 add r1, r1, r7 1090 00d8 5844 add r0, r0, fp 1091 00da FFF7FEFF bl sprintf 1092 00de B8F80030 ldrh r3, [r8] 1093 00e2 1844 add r0, r0, r3 1094 00e4 A8F80000 strh r0, [r8] @ movhi 1095 00e8 9BE7 b .L140 1096 .L136: 1097 00ea 03B0 add sp, sp, #12 1098 @ sp needed 1099 00ec BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc} 1100 .L158: 1101 .align 2 1102 .L157: 1103 00f0 00000000 .word .LANCHOR0 1104 00f4 00000000 .word .LANCHOR3 1105 00f8 00000000 .word .LC4 1106 00fc 00000000 .word .LANCHOR2 1107 0100 00000000 .word .LC7 1108 0104 04000000 .word .LC8 1109 0108 00000000 .word .LANCHOR4 1110 010c 00000000 .word uart_tx_buf_in_idx 1111 0110 00000000 .word uart_tx_buf 1113 .section .text.integer_editor_up,"ax",%progbits 1114 .align 1 ARM GAS /tmp/ccYGHSZd.s page 20 1115 .p2align 2,,3 1116 .global integer_editor_up 1117 .syntax unified 1118 .thumb 1119 .thumb_func 1120 .fpu fpv4-sp-d16 1122 integer_editor_up: 1123 @ args = 0, pretend = 0, frame = 0 1124 @ frame_needed = 0, uses_anonymous_args = 0 1125 @ link register save eliminated. 1126 0000 1149 ldr r1, .L164 1127 0002 C0EBC003 rsb r3, r0, r0, lsl #3 1128 0006 01EBC303 add r3, r1, r3, lsl #3 1129 000a 30B4 push {r4, r5} 1130 000c DC6A ldr r4, [r3, #44] 1131 000e 5D69 ldr r5, [r3, #20] 1132 0010 2268 ldr r2, [r4] 1133 0012 2A44 add r2, r2, r5 1134 0014 2260 str r2, [r4] 1135 0016 9D69 ldr r5, [r3, #24] 1136 0018 AA42 cmp r2, r5 1137 001a 4FEAC00C lsl ip, r0, #3 1138 001e 02D3 bcc .L160 1139 0020 DB69 ldr r3, [r3, #28] 1140 0022 9A42 cmp r2, r3 1141 0024 07D9 bls .L161 1142 .L160: 1143 0026 ACEB000C sub ip, ip, r0 1144 002a 01EBCC01 add r1, r1, ip, lsl #3 1145 002e 91F82030 ldrb r3, [r1, #32] @ zero_extendqisi2 1146 0032 1BB1 cbz r3, .L162 1147 0034 2560 str r5, [r4] 1148 .L161: 1149 0036 30BC pop {r4, r5} 1150 0038 FFF7FEBF b set_changed 1151 .L162: 1152 003c CB69 ldr r3, [r1, #28] 1153 003e 2360 str r3, [r4] 1154 0040 30BC pop {r4, r5} 1155 0042 FFF7FEBF b set_changed 1156 .L165: 1157 0046 00BF .align 2 1158 .L164: 1159 0048 00000000 .word .LANCHOR0 1161 .section .text.integer_editor_down,"ax",%progbits 1162 .align 1 1163 .p2align 2,,3 1164 .global integer_editor_down 1165 .syntax unified 1166 .thumb 1167 .thumb_func 1168 .fpu fpv4-sp-d16 1170 integer_editor_down: 1171 @ args = 0, pretend = 0, frame = 0 1172 @ frame_needed = 0, uses_anonymous_args = 0 1173 @ link register save eliminated. 1174 0000 1149 ldr r1, .L171 ARM GAS /tmp/ccYGHSZd.s page 21 1175 0002 C0EBC003 rsb r3, r0, r0, lsl #3 1176 0006 01EBC303 add r3, r1, r3, lsl #3 1177 000a 30B4 push {r4, r5} 1178 000c DC6A ldr r4, [r3, #44] 1179 000e 5D69 ldr r5, [r3, #20] 1180 0010 2268 ldr r2, [r4] 1181 0012 521B subs r2, r2, r5 1182 0014 2260 str r2, [r4] 1183 0016 9D69 ldr r5, [r3, #24] 1184 0018 AA42 cmp r2, r5 1185 001a 4FEAC00C lsl ip, r0, #3 1186 001e 02D3 bcc .L167 1187 0020 DB69 ldr r3, [r3, #28] 1188 0022 9A42 cmp r2, r3 1189 0024 08D9 bls .L168 1190 .L167: 1191 0026 ACEB000C sub ip, ip, r0 1192 002a 01EBCC01 add r1, r1, ip, lsl #3 1193 002e 91F82030 ldrb r3, [r1, #32] @ zero_extendqisi2 1194 0032 23B1 cbz r3, .L169 1195 0034 CB69 ldr r3, [r1, #28] 1196 0036 2360 str r3, [r4] 1197 .L168: 1198 0038 30BC pop {r4, r5} 1199 003a FFF7FEBF b set_changed 1200 .L169: 1201 003e 2560 str r5, [r4] 1202 0040 30BC pop {r4, r5} 1203 0042 FFF7FEBF b set_changed 1204 .L172: 1205 0046 00BF .align 2 1206 .L171: 1207 0048 00000000 .word .LANCHOR0 1209 .section .text.list_editor_down,"ax",%progbits 1210 .align 1 1211 .p2align 2,,3 1212 .global list_editor_down 1213 .syntax unified 1214 .thumb 1215 .thumb_func 1216 .fpu fpv4-sp-d16 1218 list_editor_down: 1219 @ args = 0, pretend = 0, frame = 0 1220 @ frame_needed = 0, uses_anonymous_args = 0 1221 @ link register save eliminated. 1222 0000 7047 bx lr 1224 0002 00BF .section .rodata.tabs_update.str1.4,"aMS",%progbits,1 1225 .align 2 1226 .LC9: 1227 0000 0700 .ascii "\007\000" 1228 .section .text.tabs_update,"ax",%progbits 1229 .align 1 1230 .p2align 2,,3 1231 .global tabs_update 1232 .syntax unified 1233 .thumb 1234 .thumb_func ARM GAS /tmp/ccYGHSZd.s page 22 1235 .fpu fpv4-sp-d16 1237 tabs_update: 1238 @ args = 0, pretend = 0, frame = 0 1239 @ frame_needed = 0, uses_anonymous_args = 0 1240 @ link register save eliminated. 1241 0000 054B ldr r3, .L175 1242 0002 0649 ldr r1, .L175+4 1243 0004 1A88 ldrh r2, [r3] 1244 0006 0648 ldr r0, .L175+8 1245 0008 B1F800C0 ldrh ip, [r1] @ unaligned 1246 000c 22F800C0 strh ip, [r2, r0] @ unaligned 1247 0010 511C adds r1, r2, #1 1248 0012 1980 strh r1, [r3] @ movhi 1249 0014 7047 bx lr 1250 .L176: 1251 0016 00BF .align 2 1252 .L175: 1253 0018 00000000 .word uart_tx_buf_in_idx 1254 001c 00000000 .word .LC9 1255 0020 00000000 .word uart_tx_buf 1257 .section .rodata.tab_up.str1.4,"aMS",%progbits,1 1258 .align 2 1259 .LC10: 1260 0000 0C00 .ascii "\014\000" 1261 0002 0000 .align 2 1262 .LC11: 1263 0004 1B5B2564 .ascii "\033[%db\000" 1263 6200 1264 000a 0000 .align 2 1265 .LC12: 1266 000c 1B5B3630 .ascii "\033[600,5q\000" 1266 302C3571 1266 00 1267 .section .text.tab_up,"ax",%progbits 1268 .align 1 1269 .p2align 2,,3 1270 .global tab_up 1271 .syntax unified 1272 .thumb 1273 .thumb_func 1274 .fpu fpv4-sp-d16 1276 tab_up: 1277 @ args = 0, pretend = 0, frame = 0 1278 @ frame_needed = 0, uses_anonymous_args = 0 1279 0000 70B5 push {r4, r5, r6, lr} 1280 0002 0328 cmp r0, #3 1281 0004 12D8 bhi .L177 1282 0006 DFE800F0 tbb [pc, r0] 1283 .L180: 1284 000a 54 .byte (.L183-.L180)/2 1285 000b 1E .byte (.L182-.L180)/2 1286 000c 12 .byte (.L181-.L180)/2 1287 000d 02 .byte (.L179-.L180)/2 1288 .p2align 1 1289 .L179: 1290 000e FFF7FEFF bl encoder_decrement 1291 0012 2B49 ldr r1, .L188 ARM GAS /tmp/ccYGHSZd.s page 23 1292 0014 2B4B ldr r3, .L188+4 1293 0016 0A88 ldrh r2, [r1] 1294 0018 2B4D ldr r5, .L188+8 1295 001a 02F10800 add r0, r2, #8 1296 001e 0880 strh r0, [r1] @ movhi 1297 0020 03CB ldmia r3!, {r0, r1} 1298 0022 5419 adds r4, r2, r5 1299 0024 1B78 ldrb r3, [r3] @ zero_extendqisi2 1300 0026 5051 str r0, [r2, r5] @ unaligned 1301 0028 6160 str r1, [r4, #4] @ unaligned 1302 002a 2372 strb r3, [r4, #8] 1303 .L177: 1304 002c 70BD pop {r4, r5, r6, pc} 1305 .L181: 1306 002e 244C ldr r4, .L188 1307 0030 2548 ldr r0, .L188+8 1308 0032 2388 ldrh r3, [r4] 1309 0034 2549 ldr r1, .L188+12 1310 0036 1844 add r0, r0, r3 1311 0038 3222 movs r2, #50 1312 003a FFF7FEFF bl sprintf 1313 003e 2388 ldrh r3, [r4] 1314 0040 0533 adds r3, r3, #5 1315 0042 2380 strh r3, [r4] @ movhi 1316 0044 70BD pop {r4, r5, r6, pc} 1317 .L182: 1318 0046 2249 ldr r1, .L188+16 1319 0048 224D ldr r5, .L188+20 1320 004a 0B78 ldrb r3, [r1] @ zero_extendqisi2 1321 004c 224A ldr r2, .L188+24 1322 004e 2878 ldrb r0, [r5] @ zero_extendqisi2 1323 0050 D054 strb r0, [r2, r3] 1324 0052 0133 adds r3, r3, #1 1325 0054 DBB2 uxtb r3, r3 1326 0056 012B cmp r3, #1 1327 0058 88BF it hi 1328 005a 0023 movhi r3, #0 1329 005c 184C ldr r4, .L188 1330 005e D25C ldrb r2, [r2, r3] @ zero_extendqisi2 1331 0060 0B70 strb r3, [r1] 1332 0062 2A70 strb r2, [r5] 1333 0064 2388 ldrh r3, [r4] 1334 0066 1D49 ldr r1, .L188+28 1335 0068 1D4A ldr r2, .L188+32 1336 006a 174E ldr r6, .L188+8 1337 006c 1288 ldrh r2, [r2] @ unaligned 1338 006e 9A53 strh r2, [r3, r6] @ unaligned 1339 0070 4FF6FF70 movw r0, #65535 1340 0074 0880 strh r0, [r1] @ movhi 1341 0076 581C adds r0, r3, #1 1342 0078 80B2 uxth r0, r0 1343 007a 0023 movs r3, #0 1344 007c 2080 strh r0, [r4] @ movhi 1345 007e 1A46 mov r2, r3 1346 0080 1849 ldr r1, .L188+36 1347 0082 3044 add r0, r0, r6 1348 0084 FFF7FEFF bl sprintf ARM GAS /tmp/ccYGHSZd.s page 24 1349 0088 2388 ldrh r3, [r4] 1350 008a 2A78 ldrb r2, [r5] @ zero_extendqisi2 1351 008c 1649 ldr r1, .L188+40 1352 008e 0633 adds r3, r3, #6 1353 0090 9BB2 uxth r3, r3 1354 0092 F018 adds r0, r6, r3 1355 0094 2380 strh r3, [r4] @ movhi 1356 0096 3823 movs r3, #56 1357 0098 03FB0213 mla r3, r3, r2, r1 1358 009c 0133 adds r3, r3, #1 1359 009e 1349 ldr r1, .L188+44 1360 00a0 FFF7FEFF bl sprintf 1361 00a4 2388 ldrh r3, [r4] 1362 00a6 1844 add r0, r0, r3 1363 00a8 2080 strh r0, [r4] @ movhi 1364 00aa BDE87040 pop {r4, r5, r6, lr} 1365 00ae FFF7FEBF b display_update_state 1366 .L183: 1367 00b2 FFF7FEFF bl stop_receive 1368 00b6 BDE87040 pop {r4, r5, r6, lr} 1369 00ba FFF7FEBF b start_transmit 1370 .L189: 1371 00be 00BF .align 2 1372 .L188: 1373 00c0 00000000 .word uart_tx_buf_in_idx 1374 00c4 0C000000 .word .LC12 1375 00c8 00000000 .word uart_tx_buf 1376 00cc 04000000 .word .LC11 1377 00d0 00000000 .word .LANCHOR3 1378 00d4 00000000 .word .LANCHOR2 1379 00d8 00000000 .word .LANCHOR5 1380 00dc 00000000 .word state_changed 1381 00e0 00000000 .word .LC10 1382 00e4 00000000 .word .LC4 1383 00e8 00000000 .word .LANCHOR0 1384 00ec 0C000000 .word .LC5 1386 .section .text.decode_cmd,"ax",%progbits 1387 .align 1 1388 .p2align 2,,3 1389 .global decode_cmd 1390 .syntax unified 1391 .thumb 1392 .thumb_func 1393 .fpu fpv4-sp-d16 1395 decode_cmd: 1396 @ args = 0, pretend = 0, frame = 0 1397 @ frame_needed = 0, uses_anonymous_args = 0 1398 0000 2B38 subs r0, r0, #43 1399 0002 38B5 push {r3, r4, r5, lr} 1400 0004 3828 cmp r0, #56 1401 0006 2DD8 bhi .L190 1402 0008 DFE800F0 tbb [pc, r0] 1403 .L193: 1404 000c 39 .byte (.L205-.L193)/2 1405 000d 2C .byte (.L190-.L193)/2 1406 000e 3C .byte (.L204-.L193)/2 1407 000f 2C .byte (.L190-.L193)/2 ARM GAS /tmp/ccYGHSZd.s page 25 1408 0010 2C .byte (.L190-.L193)/2 1409 0011 2C .byte (.L190-.L193)/2 1410 0012 2C .byte (.L190-.L193)/2 1411 0013 2C .byte (.L190-.L193)/2 1412 0014 2C .byte (.L190-.L193)/2 1413 0015 2C .byte (.L190-.L193)/2 1414 0016 2C .byte (.L190-.L193)/2 1415 0017 2C .byte (.L190-.L193)/2 1416 0018 2C .byte (.L190-.L193)/2 1417 0019 2C .byte (.L190-.L193)/2 1418 001a 2C .byte (.L190-.L193)/2 1419 001b 2C .byte (.L190-.L193)/2 1420 001c 2C .byte (.L190-.L193)/2 1421 001d 2C .byte (.L190-.L193)/2 1422 001e 2C .byte (.L190-.L193)/2 1423 001f 2C .byte (.L190-.L193)/2 1424 0020 2C .byte (.L190-.L193)/2 1425 0021 2C .byte (.L190-.L193)/2 1426 0022 3F .byte (.L203-.L193)/2 1427 0023 44 .byte (.L202-.L193)/2 1428 0024 49 .byte (.L201-.L193)/2 1429 0025 4E .byte (.L200-.L193)/2 1430 0026 1F .byte (.L199-.L193)/2 1431 0027 53 .byte (.L198-.L193)/2 1432 0028 65 .byte (.L197-.L193)/2 1433 0029 75 .byte (.L196-.L193)/2 1434 002a 1D .byte (.L195-.L193)/2 1435 002b 2C .byte (.L190-.L193)/2 1436 002c 2C .byte (.L190-.L193)/2 1437 002d 2C .byte (.L190-.L193)/2 1438 002e 2C .byte (.L190-.L193)/2 1439 002f 2C .byte (.L190-.L193)/2 1440 0030 2C .byte (.L190-.L193)/2 1441 0031 2C .byte (.L190-.L193)/2 1442 0032 2C .byte (.L190-.L193)/2 1443 0033 2C .byte (.L190-.L193)/2 1444 0034 2C .byte (.L190-.L193)/2 1445 0035 2C .byte (.L190-.L193)/2 1446 0036 2C .byte (.L190-.L193)/2 1447 0037 2C .byte (.L190-.L193)/2 1448 0038 2C .byte (.L190-.L193)/2 1449 0039 2C .byte (.L190-.L193)/2 1450 003a 2C .byte (.L190-.L193)/2 1451 003b 2C .byte (.L190-.L193)/2 1452 003c 2C .byte (.L190-.L193)/2 1453 003d 2C .byte (.L190-.L193)/2 1454 003e 2C .byte (.L190-.L193)/2 1455 003f 2C .byte (.L190-.L193)/2 1456 0040 2C .byte (.L190-.L193)/2 1457 0041 2C .byte (.L190-.L193)/2 1458 0042 78 .byte (.L194-.L193)/2 1459 0043 2C .byte (.L190-.L193)/2 1460 0044 2D .byte (.L192-.L193)/2 1461 0045 00 .p2align 1 1462 .L195: 1463 0046 FFF7FEFF bl menu_item_up 1464 .L199: ARM GAS /tmp/ccYGHSZd.s page 26 1465 004a 2F49 ldr r1, .L209 1466 004c 2F4B ldr r3, .L209+4 1467 004e 0A88 ldrh r2, [r1] 1468 0050 2F4D ldr r5, .L209+8 1469 0052 02F10800 add r0, r2, #8 1470 0056 0880 strh r0, [r1] @ movhi 1471 0058 03CB ldmia r3!, {r0, r1} 1472 005a 5419 adds r4, r2, r5 1473 005c 1B78 ldrb r3, [r3] @ zero_extendqisi2 1474 005e 5051 str r0, [r2, r5] @ unaligned 1475 0060 6160 str r1, [r4, #4] @ unaligned 1476 0062 2372 strb r3, [r4, #8] 1477 .L190: 1478 0064 38BD pop {r3, r4, r5, pc} 1479 .L192: 1480 0066 284C ldr r4, .L209 1481 0068 2948 ldr r0, .L209+8 1482 006a 2388 ldrh r3, [r4] 1483 006c 2949 ldr r1, .L209+12 1484 006e 1844 add r0, r0, r3 1485 0070 0022 movs r2, #0 1486 0072 FFF7FEFF bl sprintf 1487 0076 2388 ldrh r3, [r4] 1488 0078 0433 adds r3, r3, #4 1489 007a 2380 strh r3, [r4] @ movhi 1490 007c 38BD pop {r3, r4, r5, pc} 1491 .L205: 1492 007e FFF7FEFF bl encoder_increment 1493 0082 E2E7 b .L199 1494 .L204: 1495 0084 FFF7FEFF bl encoder_decrement 1496 0088 DFE7 b .L199 1497 .L203: 1498 008a BDE83840 pop {r3, r4, r5, lr} 1499 008e 0020 movs r0, #0 1500 0090 FFF7FEBF b tab_up 1501 .L202: 1502 0094 BDE83840 pop {r3, r4, r5, lr} 1503 0098 0120 movs r0, #1 1504 009a FFF7FEBF b tab_up 1505 .L201: 1506 009e BDE83840 pop {r3, r4, r5, lr} 1507 00a2 0220 movs r0, #2 1508 00a4 FFF7FEBF b tab_up 1509 .L200: 1510 00a8 BDE83840 pop {r3, r4, r5, lr} 1511 00ac 0320 movs r0, #3 1512 00ae FFF7FEBF b tab_up 1513 .L198: 1514 00b2 194B ldr r3, .L209+16 1515 00b4 194A ldr r2, .L209+20 1516 00b6 1B78 ldrb r3, [r3] @ zero_extendqisi2 1517 00b8 C3EBC303 rsb r3, r3, r3, lsl #3 1518 00bc 02EBC302 add r2, r2, r3, lsl #3 1519 00c0 5369 ldr r3, [r2, #20] 1520 00c2 D169 ldr r1, [r2, #28] 1521 00c4 03EB8303 add r3, r3, r3, lsl #2 ARM GAS /tmp/ccYGHSZd.s page 27 1522 00c8 B1EB430F cmp r1, r3, lsl #1 1523 00cc 4FEA4300 lsl r0, r3, #1 1524 00d0 BBD9 bls .L199 1525 00d2 5061 str r0, [r2, #20] 1526 00d4 B9E7 b .L199 1527 .L197: 1528 00d6 104B ldr r3, .L209+16 1529 00d8 104A ldr r2, .L209+20 1530 00da 1B78 ldrb r3, [r3] @ zero_extendqisi2 1531 00dc C3EBC303 rsb r3, r3, r3, lsl #3 1532 00e0 02EBC303 add r3, r2, r3, lsl #3 1533 00e4 5A69 ldr r2, [r3, #20] 1534 00e6 092A cmp r2, #9 1535 00e8 AFD9 bls .L199 1536 00ea 0D49 ldr r1, .L209+24 1537 00ec A1FB0212 umull r1, r2, r1, r2 1538 00f0 D208 lsrs r2, r2, #3 1539 00f2 5A61 str r2, [r3, #20] 1540 00f4 A9E7 b .L199 1541 .L196: 1542 00f6 FFF7FEFF bl menu_item_down 1543 00fa A6E7 b .L199 1544 .L194: 1545 00fc FFF7FEFF bl stop_transmit 1546 0100 BDE83840 pop {r3, r4, r5, lr} 1547 0104 FFF7FEBF b start_receive 1548 .L210: 1549 .align 2 1550 .L209: 1551 0108 00000000 .word uart_tx_buf_in_idx 1552 010c 0C000000 .word .LC12 1553 0110 00000000 .word uart_tx_buf 1554 0114 04000000 .word .LC11 1555 0118 00000000 .word .LANCHOR2 1556 011c 00000000 .word .LANCHOR0 1557 0120 CDCCCCCC .word -858993459 1559 .section .text.tab_down,"ax",%progbits 1560 .align 1 1561 .p2align 2,,3 1562 .global tab_down 1563 .syntax unified 1564 .thumb 1565 .thumb_func 1566 .fpu fpv4-sp-d16 1568 tab_down: 1569 @ args = 0, pretend = 0, frame = 0 1570 @ frame_needed = 0, uses_anonymous_args = 0 1571 0000 10B5 push {r4, lr} 1572 0002 68B1 cbz r0, .L212 1573 0004 0228 cmp r0, #2 1574 0006 0AD1 bne .L211 1575 0008 084C ldr r4, .L216 1576 000a 0948 ldr r0, .L216+4 1577 000c 2388 ldrh r3, [r4] 1578 000e 0949 ldr r1, .L216+8 1579 0010 1844 add r0, r0, r3 1580 0012 0022 movs r2, #0 ARM GAS /tmp/ccYGHSZd.s page 28 1581 0014 FFF7FEFF bl sprintf 1582 0018 2388 ldrh r3, [r4] 1583 001a 0433 adds r3, r3, #4 1584 001c 2380 strh r3, [r4] @ movhi 1585 .L211: 1586 001e 10BD pop {r4, pc} 1587 .L212: 1588 0020 FFF7FEFF bl stop_transmit 1589 0024 BDE81040 pop {r4, lr} 1590 0028 FFF7FEBF b start_receive 1591 .L217: 1592 .align 2 1593 .L216: 1594 002c 00000000 .word uart_tx_buf_in_idx 1595 0030 00000000 .word uart_tx_buf 1596 0034 04000000 .word .LC11 1598 .section .rodata.display_init.str1.4,"aMS",%progbits,1 1599 .align 2 1600 .LC13: 1601 0000 1B5B3132 .ascii "\033[128,127,0,0,0,0,0c\000" 1601 382C3132 1601 372C302C 1601 302C302C 1601 302C3063 1602 0015 000000 .align 2 1603 .LC14: 1604 0018 1B5B3132 .ascii "\033[129,127,127,0,0,0,0c\000" 1604 392C3132 1604 372C3132 1604 372C302C 1604 302C302C 1605 002f 00 .align 2 1606 .LC15: 1607 0030 1B5B3133 .ascii "\033[130,127,127,127,0,0,0c\000" 1607 302C3132 1607 372C3132 1607 372C3132 1607 372C302C 1608 0049 000000 .align 2 1609 .LC16: 1610 004c 1B5B3133 .ascii "\033[131,127,127,127,127,0,0c\000" 1610 312C3132 1610 372C3132 1610 372C3132 1610 372C3132 1611 0067 00 .align 2 1612 .LC17: 1613 0068 1B5B3133 .ascii "\033[132,127,127,127,127,127,0c\000" 1613 322C3132 1613 372C3132 1613 372C3132 1613 372C3132 1614 0085 000000 .align 2 1615 .LC18: 1616 0088 1B5B3133 .ascii "\033[133,127,127,127,127,127,127c\000" 1616 332C3132 1616 372C3132 ARM GAS /tmp/ccYGHSZd.s page 29 1616 372C3132 1616 372C3132 1617 00a7 00 .align 2 1618 .LC19: 1619 00a8 1B5B2564 .ascii "\033[%ds\000" 1619 7300 1620 00ae 0000 .align 2 1621 .LC20: 1622 00b0 1B5B3135 .ascii "\033[150,100q\000" 1622 302C3130 1622 307100 1623 .section .text.display_init,"ax",%progbits 1624 .align 1 1625 .p2align 2,,3 1626 .global display_init 1627 .syntax unified 1628 .thumb 1629 .thumb_func 1630 .fpu fpv4-sp-d16 1632 display_init: 1633 @ args = 0, pretend = 0, frame = 40 1634 @ frame_needed = 0, uses_anonymous_args = 0 1635 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr} 1636 0004 6B4E ldr r6, .L220 1637 0006 6C4C ldr r4, .L220+4 1638 0008 3388 ldrh r3, [r6] 1639 000a 6C48 ldr r0, .L220+8 1640 000c DFF8CC91 ldr r9, .L220+40 1641 0010 DFF8CCC1 ldr ip, .L220+44 1642 0014 6A4E ldr r6, .L220+12 1643 0016 8BB0 sub sp, sp, #44 1644 0018 1919 adds r1, r3, r4 1645 001a 0693 str r3, [sp, #24] 1646 001c 1433 adds r3, r3, #20 1647 001e 9FB2 uxth r7, r3 1648 0020 07F11603 add r3, r7, #22 1649 0024 1FFA83FE uxth lr, r3 1650 0028 0EF11803 add r3, lr, #24 1651 002c 0EEB040B add fp, lr, r4 1652 0030 CDF804E0 str lr, [sp, #4] 1653 0034 1FFA83FE uxth lr, r3 1654 0038 7346 mov r3, lr 1655 003a 1A33 adds r3, r3, #26 1656 003c 0EEB0408 add r8, lr, r4 1657 0040 CDF808E0 str lr, [sp, #8] 1658 0044 1FFA83FE uxth lr, r3 1659 0048 0EF11C03 add r3, lr, #28 1660 004c 0EEB040A add r10, lr, r4 1661 0050 3A19 adds r2, r7, r4 1662 0052 CDF80CE0 str lr, [sp, #12] 1663 0056 1FFA83FE uxth lr, r3 1664 005a 0992 str r2, [sp, #36] 1665 005c 7246 mov r2, lr 1666 005e 02F11E03 add r3, r2, #30 1667 0062 9BB2 uxth r3, r3 1668 0064 0546 mov r5, r0 1669 0066 0791 str r1, [sp, #28] ARM GAS /tmp/ccYGHSZd.s page 30 1670 0068 0492 str r2, [sp, #16] 1671 006a 0593 str r3, [sp, #20] 1672 006c 0FCD ldmia r5!, {r0, r1, r2, r3} 1673 006e 0895 str r5, [sp, #32] 1674 0070 069D ldr r5, [sp, #24] 1675 0072 0097 str r7, [sp] 1676 0074 2851 str r0, [r5, r4] @ unaligned 1677 0076 0798 ldr r0, [sp, #28] 1678 0078 009D ldr r5, [sp] 1679 007a C360 str r3, [r0, #12] @ unaligned 1680 007c 089B ldr r3, [sp, #32] 1681 007e 4160 str r1, [r0, #4] @ unaligned 1682 0080 0146 mov r1, r0 1683 0082 8260 str r2, [r0, #8] @ unaligned 1684 0084 1868 ldr r0, [r3] 1685 0086 1B79 ldrb r3, [r3, #4] @ zero_extendqisi2 1686 0088 0861 str r0, [r1, #16] @ unaligned 1687 008a 0B75 strb r3, [r1, #20] 1688 008c B9E80F00 ldmia r9!, {r0, r1, r2, r3} 1689 0090 2851 str r0, [r5, r4] @ unaligned 1690 0092 0998 ldr r0, [sp, #36] 1691 0094 019D ldr r5, [sp, #4] 1692 0096 8260 str r2, [r0, #8] @ unaligned 1693 0098 0246 mov r2, r0 1694 009a C360 str r3, [r0, #12] @ unaligned 1695 009c B9F80430 ldrh r3, [r9, #4] @ unaligned 1696 00a0 4160 str r1, [r0, #4] @ unaligned 1697 00a2 9382 strh r3, [r2, #20] @ unaligned 1698 00a4 D9F80000 ldr r0, [r9] 1699 00a8 99F80630 ldrb r3, [r9, #6] @ zero_extendqisi2 1700 00ac 1061 str r0, [r2, #16] @ unaligned 1701 00ae 9375 strb r3, [r2, #22] 1702 00b0 BCE80F00 ldmia ip!, {r0, r1, r2, r3} 1703 00b4 2851 str r0, [r5, r4] @ unaligned 1704 00b6 CBF80410 str r1, [fp, #4] @ unaligned 1705 00ba BCE80300 ldmia ip!, {r0, r1} 1706 00be 414F ldr r7, .L220+16 1707 00c0 CBF80C30 str r3, [fp, #12] @ unaligned 1708 00c4 9CF80030 ldrb r3, [ip] @ zero_extendqisi2 1709 00c8 CBF80820 str r2, [fp, #8] @ unaligned 1710 00cc CBF81000 str r0, [fp, #16] @ unaligned 1711 00d0 CBF81410 str r1, [fp, #20] @ unaligned 1712 00d4 8BF81830 strb r3, [fp, #24] 1713 00d8 0FCF ldmia r7!, {r0, r1, r2, r3} 1714 00da 029D ldr r5, [sp, #8] 1715 00dc 2851 str r0, [r5, r4] @ unaligned 1716 00de C8F80410 str r1, [r8, #4] @ unaligned 1717 00e2 C8F80820 str r2, [r8, #8] @ unaligned 1718 00e6 03CF ldmia r7!, {r0, r1} 1719 00e8 C8F80C30 str r3, [r8, #12] @ unaligned 1720 00ec 3B88 ldrh r3, [r7] @ unaligned 1721 00ee A8F81830 strh r3, [r8, #24] @ unaligned 1722 00f2 BB78 ldrb r3, [r7, #2] @ zero_extendqisi2 1723 00f4 C8F81000 str r0, [r8, #16] @ unaligned 1724 00f8 C8F81410 str r1, [r8, #20] @ unaligned 1725 00fc 88F81A30 strb r3, [r8, #26] 1726 0100 0FCE ldmia r6!, {r0, r1, r2, r3} ARM GAS /tmp/ccYGHSZd.s page 31 1727 0102 039D ldr r5, [sp, #12] 1728 0104 059F ldr r7, [sp, #20] 1729 0106 2851 str r0, [r5, r4] @ unaligned 1730 0108 CAF80410 str r1, [r10, #4] @ unaligned 1731 010c CAF80820 str r2, [r10, #8] @ unaligned 1732 0110 07CE ldmia r6!, {r0, r1, r2} 1733 0112 2D4D ldr r5, .L220+20 1734 0114 CAF80C30 str r3, [r10, #12] @ unaligned 1735 0118 3378 ldrb r3, [r6] @ zero_extendqisi2 1736 011a CAF81000 str r0, [r10, #16] @ unaligned 1737 011e CAF81410 str r1, [r10, #20] @ unaligned 1738 0122 CAF81820 str r2, [r10, #24] @ unaligned 1739 0126 8AF81C30 strb r3, [r10, #28] 1740 012a 0FCD ldmia r5!, {r0, r1, r2, r3} 1741 012c 214E ldr r6, .L220 1742 012e A644 add lr, lr, r4 1743 0130 3780 strh r7, [r6] @ movhi 1744 0132 0095 str r5, [sp] 1745 0134 049D ldr r5, [sp, #16] 1746 0136 2851 str r0, [r5, r4] @ unaligned 1747 0138 CEF80C30 str r3, [lr, #12] @ unaligned 1748 013c 009B ldr r3, [sp] 1749 013e CEF80410 str r1, [lr, #4] @ unaligned 1750 0142 CEF80820 str r2, [lr, #8] @ unaligned 1751 0146 07CB ldmia r3!, {r0, r1, r2} 1752 0148 CEF81820 str r2, [lr, #24] @ unaligned 1753 014c 1A46 mov r2, r3 1754 014e 1B88 ldrh r3, [r3] @ unaligned 1755 0150 AEF81C30 strh r3, [lr, #28] @ unaligned 1756 0154 9378 ldrb r3, [r2, #2] @ zero_extendqisi2 1757 0156 CEF81000 str r0, [lr, #16] @ unaligned 1758 015a CEF81410 str r1, [lr, #20] @ unaligned 1759 015e 8EF81E30 strb r3, [lr, #30] 1760 0162 E019 adds r0, r4, r7 1761 0164 1949 ldr r1, .L220+24 1762 0166 1A4D ldr r5, .L220+28 1763 0168 47F23052 movw r2, #30000 1764 016c FFF7FEFF bl sprintf 1765 0170 3388 ldrh r3, [r6] 1766 0172 03CD ldmia r5!, {r0, r1} 1767 0174 0833 adds r3, r3, #8 1768 0176 9BB2 uxth r3, r3 1769 0178 1F19 adds r7, r3, r4 1770 017a 3246 mov r2, r6 1771 017c 03F10A06 add r6, r3, #10 1772 0180 1851 str r0, [r3, r4] @ unaligned 1773 0182 B6B2 uxth r6, r6 1774 0184 2B88 ldrh r3, [r5] @ unaligned 1775 0186 1680 strh r6, [r2] @ movhi 1776 0188 A019 adds r0, r4, r6 1777 018a 3B81 strh r3, [r7, #8] @ unaligned 1778 018c 094E ldr r6, .L220 1779 018e AB78 ldrb r3, [r5, #2] @ zero_extendqisi2 1780 0190 7960 str r1, [r7, #4] @ unaligned 1781 0192 BB72 strb r3, [r7, #10] 1782 0194 0F49 ldr r1, .L220+32 1783 0196 0022 movs r2, #0 ARM GAS /tmp/ccYGHSZd.s page 32 1784 0198 FFF7FEFF bl sprintf 1785 019c 3388 ldrh r3, [r6] 1786 019e 0E4A ldr r2, .L220+36 1787 01a0 0433 adds r3, r3, #4 1788 01a2 1188 ldrh r1, [r2] @ unaligned 1789 01a4 9BB2 uxth r3, r3 1790 01a6 5A1C adds r2, r3, #1 1791 01a8 1953 strh r1, [r3, r4] @ unaligned 1792 01aa 3280 strh r2, [r6] @ movhi 1793 01ac 0BB0 add sp, sp, #44 1794 @ sp needed 1795 01ae BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc} 1796 .L221: 1797 01b2 00BF .align 2 1798 .L220: 1799 01b4 00000000 .word uart_tx_buf_in_idx 1800 01b8 00000000 .word uart_tx_buf 1801 01bc 00000000 .word .LC13 1802 01c0 68000000 .word .LC17 1803 01c4 4C000000 .word .LC16 1804 01c8 88000000 .word .LC18 1805 01cc A8000000 .word .LC19 1806 01d0 B0000000 .word .LC20 1807 01d4 04000000 .word .LC11 1808 01d8 00000000 .word .LC10 1809 01dc 18000000 .word .LC14 1810 01e0 30000000 .word .LC15 1812 .section .text.print_dummy,"ax",%progbits 1813 .align 1 1814 .p2align 2,,3 1815 .global print_dummy 1816 .syntax unified 1817 .thumb 1818 .thumb_func 1819 .fpu fpv4-sp-d16 1821 print_dummy: 1822 @ args = 0, pretend = 0, frame = 0 1823 @ frame_needed = 0, uses_anonymous_args = 0 1824 @ link register save eliminated. 1825 0000 7047 bx lr 1827 0002 00BF .section .text.scan_do,"ax",%progbits 1828 .align 1 1829 .p2align 2,,3 1830 .global scan_do 1831 .syntax unified 1832 .thumb 1833 .thumb_func 1834 .fpu fpv4-sp-d16 1836 scan_do: 1837 @ args = 0, pretend = 0, frame = 0 1838 @ frame_needed = 0, uses_anonymous_args = 0 1839 0000 08B5 push {r3, lr} 1840 0002 074A ldr r2, .L225 1841 0004 0749 ldr r1, .L225+4 1842 0006 1368 ldr r3, [r2] 1843 0008 4969 ldr r1, [r1, #20] 1844 000a 01FB0030 mla r0, r1, r0, r3 ARM GAS /tmp/ccYGHSZd.s page 33 1845 000e 1060 str r0, [r2] 1846 0010 FFF7FEFF bl set_frequency 1847 0014 BDE80840 pop {r3, lr} 1848 0018 0020 movs r0, #0 1849 001a FFF7FEBF b set_changed 1850 .L226: 1851 001e 00BF .align 2 1852 .L225: 1853 0020 00000000 .word frequency 1854 0024 00000000 .word .LANCHOR0 1856 .section .text.sat_subu8b,"ax",%progbits 1857 .align 1 1858 .p2align 2,,3 1859 .global sat_subu8b 1860 .syntax unified 1861 .thumb 1862 .thumb_func 1863 .fpu fpv4-sp-d16 1865 sat_subu8b: 1866 @ args = 0, pretend = 0, frame = 0 1867 @ frame_needed = 0, uses_anonymous_args = 0 1868 @ link register save eliminated. 1869 0000 411A subs r1, r0, r1 1870 0002 C9B2 uxtb r1, r1 1871 0004 8842 cmp r0, r1 1872 0006 4FF0FF30 mov r0, #-1 1873 000a 38BF it cc 1874 000c 0020 movcc r0, #0 1875 000e 0840 ands r0, r0, r1 1876 0010 7047 bx lr 1878 0012 00BF .section .text.click,"ax",%progbits 1879 .align 1 1880 .p2align 2,,3 1881 .global click 1882 .syntax unified 1883 .thumb 1884 .thumb_func 1885 .fpu fpv4-sp-d16 1887 click: 1888 @ args = 0, pretend = 0, frame = 0 1889 @ frame_needed = 0, uses_anonymous_args = 0 1890 @ link register save eliminated. 1891 0000 0949 ldr r1, .L230 1892 0002 0A4B ldr r3, .L230+4 1893 0004 0A88 ldrh r2, [r1] 1894 0006 02F10800 add r0, r2, #8 1895 000a 10B4 push {r4} 1896 000c 084C ldr r4, .L230+8 1897 000e 0880 strh r0, [r1] @ movhi 1898 0010 03CB ldmia r3!, {r0, r1} 1899 0012 02EB040C add ip, r2, r4 1900 0016 1B78 ldrb r3, [r3] @ zero_extendqisi2 1901 0018 1051 str r0, [r2, r4] @ unaligned 1902 001a CCF80410 str r1, [ip, #4] @ unaligned 1903 001e 8CF80830 strb r3, [ip, #8] 1904 0022 5DF8044B ldr r4, [sp], #4 1905 0026 7047 bx lr ARM GAS /tmp/ccYGHSZd.s page 34 1906 .L231: 1907 .align 2 1908 .L230: 1909 0028 00000000 .word uart_tx_buf_in_idx 1910 002c 0C000000 .word .LC12 1911 0030 00000000 .word uart_tx_buf 1913 .section .text.clear_display,"ax",%progbits 1914 .align 1 1915 .p2align 2,,3 1916 .global clear_display 1917 .syntax unified 1918 .thumb 1919 .thumb_func 1920 .fpu fpv4-sp-d16 1922 clear_display: 1923 @ args = 0, pretend = 0, frame = 0 1924 @ frame_needed = 0, uses_anonymous_args = 0 1925 @ link register save eliminated. 1926 0000 054B ldr r3, .L233 1927 0002 0649 ldr r1, .L233+4 1928 0004 1A88 ldrh r2, [r3] 1929 0006 0648 ldr r0, .L233+8 1930 0008 B1F800C0 ldrh ip, [r1] @ unaligned 1931 000c 22F800C0 strh ip, [r2, r0] @ unaligned 1932 0010 511C adds r1, r2, #1 1933 0012 1980 strh r1, [r3] @ movhi 1934 0014 7047 bx lr 1935 .L234: 1936 0016 00BF .align 2 1937 .L233: 1938 0018 00000000 .word uart_tx_buf_in_idx 1939 001c 00000000 .word .LC10 1940 0020 00000000 .word uart_tx_buf 1942 .section .text.display_backlight_on,"ax",%progbits 1943 .align 1 1944 .p2align 2,,3 1945 .global display_backlight_on 1946 .syntax unified 1947 .thumb 1948 .thumb_func 1949 .fpu fpv4-sp-d16 1951 display_backlight_on: 1952 @ args = 0, pretend = 0, frame = 0 1953 @ frame_needed = 0, uses_anonymous_args = 0 1954 0000 10B5 push {r4, lr} 1955 0002 064C ldr r4, .L237 1956 0004 0648 ldr r0, .L237+4 1957 0006 2388 ldrh r3, [r4] 1958 0008 0649 ldr r1, .L237+8 1959 000a 1844 add r0, r0, r3 1960 000c 3222 movs r2, #50 1961 000e FFF7FEFF bl sprintf 1962 0012 2388 ldrh r3, [r4] 1963 0014 0533 adds r3, r3, #5 1964 0016 2380 strh r3, [r4] @ movhi 1965 0018 10BD pop {r4, pc} 1966 .L238: ARM GAS /tmp/ccYGHSZd.s page 35 1967 001a 00BF .align 2 1968 .L237: 1969 001c 00000000 .word uart_tx_buf_in_idx 1970 0020 00000000 .word uart_tx_buf 1971 0024 04000000 .word .LC11 1973 .section .text.display_backlight_off,"ax",%progbits 1974 .align 1 1975 .p2align 2,,3 1976 .global display_backlight_off 1977 .syntax unified 1978 .thumb 1979 .thumb_func 1980 .fpu fpv4-sp-d16 1982 display_backlight_off: 1983 @ args = 0, pretend = 0, frame = 0 1984 @ frame_needed = 0, uses_anonymous_args = 0 1985 0000 10B5 push {r4, lr} 1986 0002 064C ldr r4, .L241 1987 0004 0648 ldr r0, .L241+4 1988 0006 2388 ldrh r3, [r4] 1989 0008 0649 ldr r1, .L241+8 1990 000a 1844 add r0, r0, r3 1991 000c 0022 movs r2, #0 1992 000e FFF7FEFF bl sprintf 1993 0012 2388 ldrh r3, [r4] 1994 0014 0433 adds r3, r3, #4 1995 0016 2380 strh r3, [r4] @ movhi 1996 0018 10BD pop {r4, pc} 1997 .L242: 1998 001a 00BF .align 2 1999 .L241: 2000 001c 00000000 .word uart_tx_buf_in_idx 2001 0020 00000000 .word uart_tx_buf 2002 0024 04000000 .word .LC11 2004 .global status_list_count 2005 .global status_list 2006 .global modulation_list_count 2007 .global modulation_list 2008 .global menu_item_count 2009 .global items 2010 .section .rodata.str1.4,"aMS",%progbits,1 2011 .align 2 2012 .LC21: 2013 0000 50545400 .ascii "PTT\000" 2014 .align 2 2015 .LC22: 2016 0004 53455400 .ascii "SET\000" 2017 .align 2 2018 .LC23: 2019 0008 424C00 .ascii "BL\000" 2020 000b 00 .align 2 2021 .LC24: 2022 000c 2B00 .ascii "+\000" 2023 .global menu_last_item 2024 .global menu_page 2025 .global menu_item 2026 .section .bss.menu_item,"aw",%nobits ARM GAS /tmp/ccYGHSZd.s page 36 2027 .set .LANCHOR2,. + 0 2030 menu_item: 2031 0000 00 .space 1 2032 .section .bss.menu_last_item,"aw",%nobits 2033 .align 2 2034 .set .LANCHOR5,. + 0 2037 menu_last_item: 2038 0000 0000 .space 2 2039 .section .bss.menu_page,"aw",%nobits 2040 .set .LANCHOR3,. + 0 2043 menu_page: 2044 0000 00 .space 1 2045 .section .data.items,"aw" 2046 .align 2 2047 .set .LANCHOR0,. + 0 2050 items: 2051 0000 00 .byte 0 2052 0001 20204672 .ascii " Frequency\000" 2052 65717565 2052 6E637900 2053 000d 0000 .space 2 2054 000f 00 .byte 0 2055 0010 09 .byte 9 2056 0011 01 .byte 1 2057 0012 00 .byte 0 2058 0013 00 .space 1 2059 0014 64000000 .word 100 2060 0018 E8030000 .word 1000 2061 001c F0B31A00 .word 1750000 2062 0020 01 .byte 1 2063 0021 00 .ascii "\000" 2064 0022 000000 .space 3 2065 0025 20487A00 .ascii " Hz\000" 2066 0029 000000 .space 3 2067 002c 00000000 .word frequency 2068 0030 00000000 .word set_frequency 2069 0034 00000000 .word print_frequency 2070 0038 00 .byte 0 2071 0039 20202056 .ascii " Volume \000" 2071 6F6C756D 2071 65202000 2072 0045 0000 .space 2 2073 0047 00 .byte 0 2074 0048 05 .byte 5 2075 0049 02 .byte 2 2076 004a 00 .byte 0 2077 004b 00 .space 1 2078 004c 01000000 .word 1 2079 0050 00000000 .word 0 2080 0054 20000000 .word 32 2081 0058 00 .byte 0 2082 0059 00 .ascii "\000" 2083 005a 000000 .space 3 2084 005d 7C00 .ascii "|\000" 2085 005f 0000 .space 2 2086 0061 000000 .space 3 2087 0064 00000000 .word volume ARM GAS /tmp/ccYGHSZd.s page 37 2088 0068 00000000 .word set_dummy 2089 006c 00000000 .word print_bar 2090 0070 00 .byte 0 2091 0071 20202020 .ascii " Gain \000" 2091 4761696E 2091 20202000 2092 007d 0000 .space 2 2093 007f 00 .byte 0 2094 0080 01 .byte 1 2095 0081 02 .byte 2 2096 0082 07 .byte 7 2097 0083 00 .space 1 2098 0084 01000000 .word 1 2099 0088 01000000 .word 1 2100 008c 06000000 .word 6 2101 0090 00 .byte 0 2102 0091 00 .ascii "\000" 2103 0092 000000 .space 3 2104 0095 7800 .ascii "x\000" 2105 0097 0000 .space 2 2106 0099 000000 .space 3 2107 009c 00000000 .word rx_gain 2108 00a0 00000000 .word set_rx_gain 2109 00a4 00000000 .word print_integer 2110 00a8 00 .byte 0 2111 00a9 204D6F64 .ascii " Modulation\000" 2111 756C6174 2111 696F6E00 2112 00b5 0000 .space 2 2113 00b7 00 .byte 0 2114 00b8 03 .byte 3 2115 00b9 02 .byte 2 2116 00ba 0A .byte 10 2117 00bb 00 .space 1 2118 00bc 01000000 .word 1 2119 00c0 00000000 .word 0 2120 00c4 06000000 .word 6 2121 00c8 01 .byte 1 2122 00c9 00 .ascii "\000" 2123 00ca 000000 .space 3 2124 00cd 00 .ascii "\000" 2125 00ce 000000 .space 3 2126 00d1 000000 .space 3 2127 00d4 00000000 .word modulation 2128 00d8 00000000 .word set_modulation 2129 00dc 00000000 .word print_modulation 2130 00e0 01 .byte 1 2131 00e1 2046696C .ascii " Filter CF \000" 2131 74657220 2131 43462000 2132 00ed 0000 .space 2 2133 00ef 00 .byte 0 2134 00f0 04 .byte 4 2135 00f1 01 .byte 1 2136 00f2 00 .byte 0 2137 00f3 00 .space 1 2138 00f4 32000000 .word 50 ARM GAS /tmp/ccYGHSZd.s page 38 2139 00f8 32000000 .word 50 2140 00fc AC0D0000 .word 3500 2141 0100 00 .byte 0 2142 0101 00 .ascii "\000" 2143 0102 000000 .space 3 2144 0105 20487A00 .ascii " Hz\000" 2145 0109 000000 .space 3 2146 010c 00000000 .word audio_filter_freq 2147 0110 00000000 .word set_rx_audio_filter 2148 0114 00000000 .word print_integer 2149 0118 01 .byte 1 2150 0119 2046696C .ascii " Filter BW \000" 2150 74657220 2150 42572000 2151 0125 0000 .space 2 2152 0127 00 .byte 0 2153 0128 04 .byte 4 2154 0129 02 .byte 2 2155 012a 00 .byte 0 2156 012b 00 .space 1 2157 012c 32000000 .word 50 2158 0130 32000000 .word 50 2159 0134 C4090000 .word 2500 2160 0138 00 .byte 0 2161 0139 00 .ascii "\000" 2162 013a 000000 .space 3 2163 013d 20487A00 .ascii " Hz\000" 2164 0141 000000 .space 3 2165 0144 00000000 .word audio_filter_bw 2166 0148 00000000 .word set_rx_audio_filter 2167 014c 00000000 .word print_integer 2168 0150 01 .byte 1 2169 0151 2046696C .ascii " Filter Q \000" 2169 74657220 2169 51202000 2170 015d 0000 .space 2 2171 015f 00 .byte 0 2172 0160 02 .byte 2 2173 0161 03 .byte 3 2174 0162 00 .byte 0 2175 0163 00 .space 1 2176 0164 01000000 .word 1 2177 0168 01000000 .word 1 2178 016c 20000000 .word 32 2179 0170 00 .byte 0 2180 0171 00 .ascii "\000" 2181 0172 000000 .space 3 2182 0175 205100 .ascii " Q\000" 2183 0178 00 .space 1 2184 0179 000000 .space 3 2185 017c 00000000 .word audio_filter_beta 2186 0180 00000000 .word set_rx_audio_filter 2187 0184 00000000 .word print_integer 2188 0188 FF .byte -1 2189 0189 20202053 .ascii " Signal \000" 2189 69676E61 2189 6C202000 ARM GAS /tmp/ccYGHSZd.s page 39 2190 0195 0000 .space 2 2191 0197 04 .byte 4 2192 0198 0D .byte 13 2193 0199 04 .byte 4 2194 019a 00 .byte 0 2195 019b 00 .space 1 2196 019c 00000000 .word 0 2197 01a0 00000000 .word 0 2198 01a4 00000000 .word 0 2199 01a8 00 .byte 0 2200 01a9 5300 .ascii "S\000" 2201 01ab 0000 .space 2 2202 01ad 00 .ascii "\000" 2203 01ae 000000 .space 3 2204 01b1 000000 .space 3 2205 01b4 00000000 .word s_meter 2206 01b8 00000000 .word set_dummy 2207 01bc 00000000 .word print_bar 2208 01c0 FF .byte -1 2209 01c1 20202054 .ascii " TX tab \000" 2209 58207461 2209 62202000 2210 01cd 0000 .space 2 2211 01cf 04 .byte 4 2212 01d0 03 .byte 3 2213 01d1 05 .byte 5 2214 01d2 00 .byte 0 2215 01d3 00 .space 1 2216 01d4 00000000 .word 0 2217 01d8 00000000 .word 0 2218 01dc 00000000 .word 0 2219 01e0 00 .byte 0 2220 01e1 00 .ascii "\000" 2221 01e2 000000 .space 3 2222 01e5 00 .ascii "\000" 2223 01e6 000000 .space 3 2224 01e9 000000 .space 3 2225 01ec 00000000 .word .LC21 2226 01f0 00000000 .word set_dummy 2227 01f4 00000000 .word print_string 2228 01f8 FF .byte -1 2229 01f9 20202054 .ascii " Tabs \000" 2229 61627320 2229 20202000 2230 0205 0000 .space 2 2231 0207 04 .byte 4 2232 0208 03 .byte 3 2233 0209 05 .byte 5 2234 020a 04 .byte 4 2235 020b 00 .space 1 2236 020c 00000000 .word 0 2237 0210 00000000 .word 0 2238 0214 00000000 .word 0 2239 0218 00 .byte 0 2240 0219 00 .ascii "\000" 2241 021a 000000 .space 3 2242 021d 00 .ascii "\000" ARM GAS /tmp/ccYGHSZd.s page 40 2243 021e 000000 .space 3 2244 0221 000000 .space 3 2245 0224 04000000 .word .LC22 2246 0228 00000000 .word set_dummy 2247 022c 00000000 .word print_string 2248 0230 FF .byte -1 2249 0231 20202054 .ascii " Tabs \000" 2249 61627320 2249 20202000 2250 023d 0000 .space 2 2251 023f 04 .byte 4 2252 0240 02 .byte 2 2253 0241 05 .byte 5 2254 0242 09 .byte 9 2255 0243 00 .space 1 2256 0244 00000000 .word 0 2257 0248 00000000 .word 0 2258 024c 00000000 .word 0 2259 0250 00 .byte 0 2260 0251 00 .ascii "\000" 2261 0252 000000 .space 3 2262 0255 00 .ascii "\000" 2263 0256 000000 .space 3 2264 0259 000000 .space 3 2265 025c 08000000 .word .LC23 2266 0260 00000000 .word set_dummy 2267 0264 00000000 .word print_string 2268 0268 FF .byte -1 2269 0269 20202054 .ascii " Tabs \000" 2269 61627320 2269 20202000 2270 0275 0000 .space 2 2271 0277 04 .byte 4 2272 0278 01 .byte 1 2273 0279 05 .byte 5 2274 027a 0C .byte 12 2275 027b 00 .space 1 2276 027c 00000000 .word 0 2277 0280 00000000 .word 0 2278 0284 00000000 .word 0 2279 0288 00 .byte 0 2280 0289 00 .ascii "\000" 2281 028a 000000 .space 3 2282 028d 00 .ascii "\000" 2283 028e 000000 .space 3 2284 0291 000000 .space 3 2285 0294 0C000000 .word .LC24 2286 0298 00000000 .word set_dummy 2287 029c 00000000 .word print_string 2288 .section .data.menu_item_count,"aw" 2289 .set .LANCHOR4,. + 0 2292 menu_item_count: 2293 0000 0C .byte 12 2294 .section .data.modulation_list,"aw" 2295 .align 2 2296 .set .LANCHOR1,. + 0 2299 modulation_list: ARM GAS /tmp/ccYGHSZd.s page 41 2300 0000 444300 .ascii "DC\000" 2301 0003 00 .space 1 2302 0004 4C534200 .ascii "LSB\000" 2303 0008 55534200 .ascii "USB\000" 2304 000c 43574C00 .ascii "CWL\000" 2305 0010 43575500 .ascii "CWU\000" 2306 0014 414D00 .ascii "AM\000" 2307 0017 00 .space 1 2308 0018 464D00 .ascii "FM\000" 2309 001b 00 .space 1 2310 .section .data.modulation_list_count,"aw" 2313 modulation_list_count: 2314 0000 07 .byte 7 2315 .section .data.status_list,"aw" 2316 .align 2 2319 status_list: 2320 0000 527800 .ascii "Rx\000" 2321 0003 547800 .ascii "Tx\000" 2322 0006 537100 .ascii "Sq\000" 2323 .section .data.status_list_count,"aw" 2326 status_list_count: 2327 0000 03 .byte 3 2328 .ident "GCC: (15:10.3-2021.07-4) 10.3.1 20210621 (release)" ARM GAS /tmp/ccYGHSZd.s page 42 DEFINED SYMBOLS *ABS*:0000000000000000 interface.c /tmp/ccYGHSZd.s:16 .rodata.print_integer.str1.4:0000000000000000 $d /tmp/ccYGHSZd.s:20 .text.print_integer:0000000000000000 $t /tmp/ccYGHSZd.s:29 .text.print_integer:0000000000000000 print_integer /tmp/ccYGHSZd.s:52 .text.print_integer:0000000000000028 $d /tmp/ccYGHSZd.s:58 .rodata.print_string.str1.4:0000000000000000 $d /tmp/ccYGHSZd.s:62 .text.print_string:0000000000000000 $t /tmp/ccYGHSZd.s:70 .text.print_string:0000000000000000 print_string /tmp/ccYGHSZd.s:92 .text.print_string:0000000000000028 $d /tmp/ccYGHSZd.s:98 .text.print_modulation:0000000000000000 $t /tmp/ccYGHSZd.s:106 .text.print_modulation:0000000000000000 print_modulation /tmp/ccYGHSZd.s:131 .text.print_modulation:0000000000000030 $d /tmp/ccYGHSZd.s:138 .text.print_bar:0000000000000000 $t /tmp/ccYGHSZd.s:146 .text.print_bar:0000000000000000 print_bar /tmp/ccYGHSZd.s:205 .text.print_bar:0000000000000078 $d /tmp/ccYGHSZd.s:210 .rodata.print_frequency.str1.4:0000000000000000 $d /tmp/ccYGHSZd.s:217 .text.print_frequency:0000000000000000 $t /tmp/ccYGHSZd.s:225 .text.print_frequency:0000000000000000 print_frequency /tmp/ccYGHSZd.s:306 .text.print_frequency:00000000000000c8 $d /tmp/ccYGHSZd.s:314 .text.encoder_increment:0000000000000000 $t /tmp/ccYGHSZd.s:322 .text.encoder_increment:0000000000000000 encoder_increment /tmp/ccYGHSZd.s:371 .text.encoder_increment:000000000000005c $d /tmp/ccYGHSZd.s:375 .text.encoder_decrement:0000000000000000 $t /tmp/ccYGHSZd.s:383 .text.encoder_decrement:0000000000000000 encoder_decrement /tmp/ccYGHSZd.s:432 .text.encoder_decrement:000000000000005c $d /tmp/ccYGHSZd.s:436 .text.joystick_dx:0000000000000000 $t /tmp/ccYGHSZd.s:444 .text.joystick_dx:0000000000000000 joystick_dx /tmp/ccYGHSZd.s:465 .text.joystick_dx:0000000000000020 $d /tmp/ccYGHSZd.s:470 .text.joystick_sx:0000000000000000 $t /tmp/ccYGHSZd.s:478 .text.joystick_sx:0000000000000000 joystick_sx /tmp/ccYGHSZd.s:498 .text.joystick_sx:0000000000000024 $d /tmp/ccYGHSZd.s:502 .rodata.joystick_down.str1.4:0000000000000000 $d /tmp/ccYGHSZd.s:509 .text.joystick_down:0000000000000000 $t /tmp/ccYGHSZd.s:517 .text.joystick_down:0000000000000000 joystick_down /tmp/ccYGHSZd.s:585 .text.joystick_down:0000000000000090 $d /tmp/ccYGHSZd.s:595 .text.joystick_button:0000000000000000 $t /tmp/ccYGHSZd.s:603 .text.joystick_button:0000000000000000 joystick_button /tmp/ccYGHSZd.s:610 .text.menu_item_up:0000000000000000 $t /tmp/ccYGHSZd.s:618 .text.menu_item_up:0000000000000000 menu_item_up /tmp/ccYGHSZd.s:686 .text.menu_item_up:0000000000000090 $d /tmp/ccYGHSZd.s:696 .text.menu_item_down:0000000000000000 $t /tmp/ccYGHSZd.s:704 .text.menu_item_down:0000000000000000 menu_item_down /tmp/ccYGHSZd.s:776 .text.menu_item_down:0000000000000094 $d /tmp/ccYGHSZd.s:786 .text.joystick_up:0000000000000000 $t /tmp/ccYGHSZd.s:794 .text.joystick_up:0000000000000000 joystick_up /tmp/ccYGHSZd.s:801 .text.step_up:0000000000000000 $t /tmp/ccYGHSZd.s:809 .text.step_up:0000000000000000 step_up /tmp/ccYGHSZd.s:827 .text.step_up:0000000000000020 $d /tmp/ccYGHSZd.s:830 .text.step_down:0000000000000000 $t /tmp/ccYGHSZd.s:838 .text.step_down:0000000000000000 step_down /tmp/ccYGHSZd.s:857 .text.step_down:000000000000001c $d /tmp/ccYGHSZd.s:861 .rodata.interface_set_default.str1.4:0000000000000000 $d /tmp/ccYGHSZd.s:865 .text.interface_set_default:0000000000000000 $t /tmp/ccYGHSZd.s:873 .text.interface_set_default:0000000000000000 interface_set_default /tmp/ccYGHSZd.s:899 .text.interface_set_default:0000000000000028 $d /tmp/ccYGHSZd.s:906 .text.display_set_position:0000000000000000 $t ARM GAS /tmp/ccYGHSZd.s page 43 /tmp/ccYGHSZd.s:914 .text.display_set_position:0000000000000000 display_set_position /tmp/ccYGHSZd.s:933 .text.display_set_position:000000000000001c $d /tmp/ccYGHSZd.s:938 .text.display_update_item:0000000000000000 $t /tmp/ccYGHSZd.s:946 .text.display_update_item:0000000000000000 display_update_item /tmp/ccYGHSZd.s:978 .text.display_update_item:000000000000003c $d /tmp/ccYGHSZd.s:986 .rodata.display_update_state.str1.4:0000000000000000 $d /tmp/ccYGHSZd.s:993 .text.display_update_state:0000000000000000 $t /tmp/ccYGHSZd.s:1001 .text.display_update_state:0000000000000000 display_update_state /tmp/ccYGHSZd.s:1103 .text.display_update_state:00000000000000f0 $d /tmp/ccYGHSZd.s:1114 .text.integer_editor_up:0000000000000000 $t /tmp/ccYGHSZd.s:1122 .text.integer_editor_up:0000000000000000 integer_editor_up /tmp/ccYGHSZd.s:1159 .text.integer_editor_up:0000000000000048 $d /tmp/ccYGHSZd.s:1162 .text.integer_editor_down:0000000000000000 $t /tmp/ccYGHSZd.s:1170 .text.integer_editor_down:0000000000000000 integer_editor_down /tmp/ccYGHSZd.s:1207 .text.integer_editor_down:0000000000000048 $d /tmp/ccYGHSZd.s:1210 .text.list_editor_down:0000000000000000 $t /tmp/ccYGHSZd.s:1218 .text.list_editor_down:0000000000000000 list_editor_down /tmp/ccYGHSZd.s:1225 .rodata.tabs_update.str1.4:0000000000000000 $d /tmp/ccYGHSZd.s:1229 .text.tabs_update:0000000000000000 $t /tmp/ccYGHSZd.s:1237 .text.tabs_update:0000000000000000 tabs_update /tmp/ccYGHSZd.s:1253 .text.tabs_update:0000000000000018 $d /tmp/ccYGHSZd.s:1258 .rodata.tab_up.str1.4:0000000000000000 $d /tmp/ccYGHSZd.s:1268 .text.tab_up:0000000000000000 $t /tmp/ccYGHSZd.s:1276 .text.tab_up:0000000000000000 tab_up /tmp/ccYGHSZd.s:1284 .text.tab_up:000000000000000a $d /tmp/ccYGHSZd.s:1288 .text.tab_up:000000000000000e $t /tmp/ccYGHSZd.s:1373 .text.tab_up:00000000000000c0 $d /tmp/ccYGHSZd.s:1387 .text.decode_cmd:0000000000000000 $t /tmp/ccYGHSZd.s:1395 .text.decode_cmd:0000000000000000 decode_cmd /tmp/ccYGHSZd.s:1404 .text.decode_cmd:000000000000000c $d /tmp/ccYGHSZd.s:1551 .text.decode_cmd:0000000000000108 $d /tmp/ccYGHSZd.s:1560 .text.tab_down:0000000000000000 $t /tmp/ccYGHSZd.s:1568 .text.tab_down:0000000000000000 tab_down /tmp/ccYGHSZd.s:1594 .text.tab_down:000000000000002c $d /tmp/ccYGHSZd.s:1599 .rodata.display_init.str1.4:0000000000000000 $d /tmp/ccYGHSZd.s:1624 .text.display_init:0000000000000000 $t /tmp/ccYGHSZd.s:1632 .text.display_init:0000000000000000 display_init /tmp/ccYGHSZd.s:1799 .text.display_init:00000000000001b4 $d /tmp/ccYGHSZd.s:1813 .text.print_dummy:0000000000000000 $t /tmp/ccYGHSZd.s:1821 .text.print_dummy:0000000000000000 print_dummy /tmp/ccYGHSZd.s:1828 .text.scan_do:0000000000000000 $t /tmp/ccYGHSZd.s:1836 .text.scan_do:0000000000000000 scan_do /tmp/ccYGHSZd.s:1853 .text.scan_do:0000000000000020 $d /tmp/ccYGHSZd.s:1857 .text.sat_subu8b:0000000000000000 $t /tmp/ccYGHSZd.s:1865 .text.sat_subu8b:0000000000000000 sat_subu8b /tmp/ccYGHSZd.s:1879 .text.click:0000000000000000 $t /tmp/ccYGHSZd.s:1887 .text.click:0000000000000000 click /tmp/ccYGHSZd.s:1909 .text.click:0000000000000028 $d /tmp/ccYGHSZd.s:1914 .text.clear_display:0000000000000000 $t /tmp/ccYGHSZd.s:1922 .text.clear_display:0000000000000000 clear_display /tmp/ccYGHSZd.s:1938 .text.clear_display:0000000000000018 $d /tmp/ccYGHSZd.s:1943 .text.display_backlight_on:0000000000000000 $t /tmp/ccYGHSZd.s:1951 .text.display_backlight_on:0000000000000000 display_backlight_on /tmp/ccYGHSZd.s:1969 .text.display_backlight_on:000000000000001c $d /tmp/ccYGHSZd.s:1974 .text.display_backlight_off:0000000000000000 $t /tmp/ccYGHSZd.s:1982 .text.display_backlight_off:0000000000000000 display_backlight_off /tmp/ccYGHSZd.s:2000 .text.display_backlight_off:000000000000001c $d ARM GAS /tmp/ccYGHSZd.s page 44 /tmp/ccYGHSZd.s:2326 .data.status_list_count:0000000000000000 status_list_count /tmp/ccYGHSZd.s:2319 .data.status_list:0000000000000000 status_list /tmp/ccYGHSZd.s:2313 .data.modulation_list_count:0000000000000000 modulation_list_count /tmp/ccYGHSZd.s:2299 .data.modulation_list:0000000000000000 modulation_list /tmp/ccYGHSZd.s:2292 .data.menu_item_count:0000000000000000 menu_item_count /tmp/ccYGHSZd.s:2050 .data.items:0000000000000000 items /tmp/ccYGHSZd.s:2011 .rodata.str1.4:0000000000000000 $d /tmp/ccYGHSZd.s:2037 .bss.menu_last_item:0000000000000000 menu_last_item /tmp/ccYGHSZd.s:2043 .bss.menu_page:0000000000000000 menu_page /tmp/ccYGHSZd.s:2030 .bss.menu_item:0000000000000000 menu_item /tmp/ccYGHSZd.s:2031 .bss.menu_item:0000000000000000 $d /tmp/ccYGHSZd.s:2033 .bss.menu_last_item:0000000000000000 $d /tmp/ccYGHSZd.s:2044 .bss.menu_page:0000000000000000 $d /tmp/ccYGHSZd.s:2046 .data.items:0000000000000000 $d /tmp/ccYGHSZd.s:2295 .data.modulation_list:0000000000000000 $d /tmp/ccYGHSZd.s:2316 .data.status_list:0000000000000000 $d /tmp/ccYGHSZd.s:1461 .text.decode_cmd:0000000000000045 $d /tmp/ccYGHSZd.s:1461 .text.decode_cmd:0000000000000046 $t UNDEFINED SYMBOLS sprintf uart_tx_buf_in_idx uart_tx_buf strlen set_changed tabstring reset_changed get_changed stop_receive start_transmit state_changed stop_transmit start_receive set_frequency frequency volume set_dummy rx_gain set_rx_gain modulation set_modulation audio_filter_freq set_rx_audio_filter audio_filter_bw audio_filter_beta s_meter