diff --git a/Debug/SW_APPs/APP_IDcard.su b/Debug/SW_APPs/APP_IDcard.su index 2a89f93..c038d9b 100644 --- a/Debug/SW_APPs/APP_IDcard.su +++ b/Debug/SW_APPs/APP_IDcard.su @@ -1,2 +1,2 @@ -APP_IDcard.c:11:6:APP_IDcard_init 16 static -APP_IDcard.c:17:6:APP_IDcard_loop 4 static +APP_IDcard.c:12:6:APP_IDcard_init 16 static +APP_IDcard.c:25:6:APP_IDcard_loop 112 static diff --git a/Debug/m3s.bin b/Debug/m3s.bin index 70ab173..4d51be9 100755 Binary files a/Debug/m3s.bin and b/Debug/m3s.bin differ diff --git a/Debug/m3s.list b/Debug/m3s.list index 9c00d38..6070ff2 100644 --- a/Debug/m3s.list +++ b/Debug/m3s.list @@ -5,45 +5,45 @@ Sections: Idx Name Size VMA LMA File off Algn 0 .isr_vector 000001e4 08000000 08000000 00010000 2**0 CONTENTS, ALLOC, LOAD, READONLY, DATA - 1 .text 00009b40 080001e8 080001e8 000101e8 2**3 + 1 .text 0000a1d8 080001e8 080001e8 000101e8 2**3 CONTENTS, ALLOC, LOAD, READONLY, CODE - 2 .rodata 00000f2c 08009d28 08009d28 00019d28 2**3 + 2 .rodata 00000f64 0800a3c0 0800a3c0 0001a3c0 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA - 3 .ARM.extab 00000000 0800ac54 0800ac54 000201dc 2**0 + 3 .ARM.extab 00000000 0800b324 0800b324 000201e4 2**0 CONTENTS - 4 .ARM 00000000 0800ac54 0800ac54 000201dc 2**0 + 4 .ARM 00000000 0800b324 0800b324 000201e4 2**0 CONTENTS - 5 .preinit_array 00000000 0800ac54 0800ac54 000201dc 2**0 + 5 .preinit_array 00000000 0800b324 0800b324 000201e4 2**0 CONTENTS, ALLOC, LOAD, DATA - 6 .init_array 00000004 0800ac54 0800ac54 0001ac54 2**2 + 6 .init_array 00000004 0800b324 0800b324 0001b324 2**2 CONTENTS, ALLOC, LOAD, DATA - 7 .fini_array 00000004 0800ac58 0800ac58 0001ac58 2**2 + 7 .fini_array 00000004 0800b328 0800b328 0001b328 2**2 CONTENTS, ALLOC, LOAD, DATA - 8 .data 000001dc 20000000 0800ac5c 00020000 2**2 + 8 .data 000001e4 20000000 0800b32c 00020000 2**2 CONTENTS, ALLOC, LOAD, DATA - 9 .bss 00002320 200001dc 0800ae38 000201dc 2**2 + 9 .bss 00002360 200001e4 0800b510 000201e4 2**2 ALLOC - 10 ._user_heap_stack 00000c04 200024fc 0800ae38 000224fc 2**0 + 10 ._user_heap_stack 00000c04 20002544 0800b510 00022544 2**0 ALLOC - 11 .ARM.attributes 00000029 00000000 00000000 000201dc 2**0 + 11 .ARM.attributes 00000029 00000000 00000000 000201e4 2**0 CONTENTS, READONLY - 12 .debug_info 000159cd 00000000 00000000 00020205 2**0 + 12 .debug_info 00015b0b 00000000 00000000 0002020d 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 13 .debug_abbrev 0000368c 00000000 00000000 00035bd2 2**0 + 13 .debug_abbrev 000036d4 00000000 00000000 00035d18 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 14 .debug_aranges 00001398 00000000 00000000 00039260 2**3 + 14 .debug_aranges 00001398 00000000 00000000 000393f0 2**3 CONTENTS, READONLY, DEBUGGING, OCTETS - 15 .debug_ranges 00001240 00000000 00000000 0003a5f8 2**3 + 15 .debug_ranges 00001240 00000000 00000000 0003a788 2**3 CONTENTS, READONLY, DEBUGGING, OCTETS - 16 .debug_macro 0001d58c 00000000 00000000 0003b838 2**0 + 16 .debug_macro 0001d58c 00000000 00000000 0003b9c8 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 17 .debug_line 00017dd7 00000000 00000000 00058dc4 2**0 + 17 .debug_line 00017ecb 00000000 00000000 00058f54 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 18 .debug_str 000a0fa1 00000000 00000000 00070b9b 2**0 + 18 .debug_str 000a0fbf 00000000 00000000 00070e1f 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 19 .comment 00000053 00000000 00000000 00111b3c 2**0 + 19 .comment 00000053 00000000 00000000 00111dde 2**0 CONTENTS, READONLY - 20 .debug_frame 000063c8 00000000 00000000 00111b90 2**2 + 20 .debug_frame 000063d4 00000000 00000000 00111e34 2**2 CONTENTS, READONLY, DEBUGGING, OCTETS Disassembly of section .text: @@ -60,9 +60,9 @@ Disassembly of section .text: 80001fa: 2301 movs r3, #1 80001fc: 7023 strb r3, [r4, #0] 80001fe: bd10 pop {r4, pc} - 8000200: 200001dc .word 0x200001dc + 8000200: 200001e4 .word 0x200001e4 8000204: 00000000 .word 0x00000000 - 8000208: 08009d10 .word 0x08009d10 + 8000208: 0800a3a8 .word 0x0800a3a8 0800020c : 800020c: b508 push {r3, lr} @@ -73,8 +73,8 @@ Disassembly of section .text: 8000216: f3af 8000 nop.w 800021a: bd08 pop {r3, pc} 800021c: 00000000 .word 0x00000000 - 8000220: 200001e0 .word 0x200001e0 - 8000224: 08009d10 .word 0x08009d10 + 8000220: 200001e8 .word 0x200001e8 + 8000224: 0800a3a8 .word 0x0800a3a8 08000228 : 8000228: 4603 mov r3, r0 @@ -1405,7 +1405,7 @@ int main(void) 8001124: f000 f876 bl 8001214 /* USER CODE BEGIN 2 */ main_app(); - 8001128: f005 fbe0 bl 80068ec + 8001128: f005 ff2e bl 8006f88 /* USER CODE END 2 */ /* Infinite loop */ @@ -1428,7 +1428,7 @@ void SystemClock_Config(void) 8001138: 2228 movs r2, #40 ; 0x28 800113a: 2100 movs r1, #0 800113c: 4618 mov r0, r3 - 800113e: f005 ff4d bl 8006fdc + 800113e: f006 fa9b bl 8007678 RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; 8001142: 1d3b adds r3, r7, #4 8001144: 2200 movs r2, #0 @@ -1577,7 +1577,7 @@ static void MX_I2C2_Init(void) } 8001204: bf00 nop 8001206: bd80 pop {r7, pc} - 8001208: 2000020c .word 0x2000020c + 8001208: 20000218 .word 0x20000218 800120c: 40005800 .word 0x40005800 8001210: 000186a0 .word 0x000186a0 @@ -1660,7 +1660,7 @@ static void MX_SPI1_Init(void) } 8001274: bf00 nop 8001276: bd80 pop {r7, pc} - 8001278: 200002f0 .word 0x200002f0 + 8001278: 200002fc .word 0x200002fc 800127c: 40013000 .word 0x40013000 08001280 : @@ -1745,7 +1745,7 @@ static void MX_TIM6_Init(void) 80012de: 46bd mov sp, r7 80012e0: bd80 pop {r7, pc} 80012e2: bf00 nop - 80012e4: 200002a8 .word 0x200002a8 + 80012e4: 200002b4 .word 0x200002b4 80012e8: 40001000 .word 0x40001000 080012ec : @@ -2194,7 +2194,7 @@ static void MX_FSMC_Init(void) 800159e: 3720 adds r7, #32 80015a0: 46bd mov sp, r7 80015a2: bd80 pop {r7, pc} - 80015a4: 20000260 .word 0x20000260 + 80015a4: 2000026c .word 0x2000026c 80015a8: a0000104 .word 0xa0000104 80015ac: 40010000 .word 0x40010000 @@ -2641,7 +2641,7 @@ static void HAL_FSMC_MspInit(void){ 800180e: 46bd mov sp, r7 8001810: bd80 pop {r7, pc} 8001812: bf00 nop - 8001814: 200001f8 .word 0x200001f8 + 8001814: 20000200 .word 0x20000200 8001818: 40021000 .word 0x40021000 800181c: 40012000 .word 0x40012000 8001820: 40011800 .word 0x40011800 @@ -2848,7 +2848,7 @@ void TIM6_IRQHandler(void) 8001896: bf00 nop 8001898: bd80 pop {r7, pc} 800189a: bf00 nop - 800189c: 200002a8 .word 0x200002a8 + 800189c: 200002b4 .word 0x200002b4 080018a0 <_getpid>: void initialise_monitor_handles() @@ -2877,7 +2877,7 @@ int _kill(int pid, int sig) 80018b4: 6078 str r0, [r7, #4] 80018b6: 6039 str r1, [r7, #0] errno = EINVAL; - 80018b8: f005 fb56 bl 8006f68 <__errno> + 80018b8: f005 fea4 bl 8007604 <__errno> 80018bc: 4603 mov r3, r0 80018be: 2216 movs r2, #22 80018c0: 601a str r2, [r3, #0] @@ -3113,7 +3113,7 @@ void *_sbrk(ptrdiff_t incr) 80019e2: d207 bcs.n 80019f4 <_sbrk+0x40> { errno = ENOMEM; - 80019e4: f005 fac0 bl 8006f68 <__errno> + 80019e4: f005 fe0e bl 8007604 <__errno> 80019e8: 4603 mov r3, r0 80019ea: 220c movs r2, #12 80019ec: 601a str r2, [r3, #0] @@ -3143,8 +3143,8 @@ void *_sbrk(ptrdiff_t incr) 8001a0e: bd80 pop {r7, pc} 8001a10: 20010000 .word 0x20010000 8001a14: 00000800 .word 0x00000800 - 8001a18: 200001fc .word 0x200001fc - 8001a1c: 20002500 .word 0x20002500 + 8001a18: 20000204 .word 0x20000204 + 8001a1c: 20002548 .word 0x20002548 08001a20 : * @note This function should be used only after reset. @@ -3234,7 +3234,7 @@ LoopFillZerobss: 8001a52: f7ff ffe5 bl 8001a20 /* Call static constructors */ bl __libc_init_array - 8001a56: f005 fa8d bl 8006f74 <__libc_init_array> + 8001a56: f005 fddb bl 8007610 <__libc_init_array> /* Call the application's entry point.*/ bl main 8001a5a: f7ff fb55 bl 8001108
@@ -3243,13 +3243,13 @@ LoopFillZerobss: ldr r0, =_sdata 8001a60: 20000000 .word 0x20000000 ldr r1, =_edata - 8001a64: 200001dc .word 0x200001dc + 8001a64: 200001e4 .word 0x200001e4 ldr r2, =_sidata - 8001a68: 0800ac5c .word 0x0800ac5c + 8001a68: 0800b32c .word 0x0800b32c ldr r2, =_sbss - 8001a6c: 200001dc .word 0x200001dc + 8001a6c: 200001e4 .word 0x200001e4 ldr r4, =_ebss - 8001a70: 200024fc .word 0x200024fc + 8001a70: 20002544 .word 0x20002544 08001a74 : * @retval : None @@ -3397,7 +3397,7 @@ __weak void HAL_IncTick(void) 8001b1c: bc80 pop {r7} 8001b1e: 4770 bx lr 8001b20: 20000008 .word 0x20000008 - 8001b24: 20000348 .word 0x20000348 + 8001b24: 20000354 .word 0x20000354 08001b28 : * @note This function is declared as __weak to be overwritten in case of other @@ -3416,7 +3416,7 @@ __weak uint32_t HAL_GetTick(void) 8001b32: 46bd mov sp, r7 8001b34: bc80 pop {r7} 8001b36: 4770 bx lr - 8001b38: 20000348 .word 0x20000348 + 8001b38: 20000354 .word 0x20000354 08001b3c : * implementations in user file. @@ -8429,7 +8429,7 @@ if (((RCC_ClkInitStruct->ClockType) & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK 80037e6: bf00 nop 80037e8: 40022000 .word 0x40022000 80037ec: 40021000 .word 0x40021000 - 80037f0: 08009df8 .word 0x08009df8 + 80037f0: 0800a4c8 .word 0x0800a4c8 80037f4: 20000000 .word 0x20000000 80037f8: 20000004 .word 0x20000004 @@ -8577,7 +8577,7 @@ uint32_t HAL_RCC_GetSysClockFreq(void) 80038a6: bc90 pop {r4, r7} 80038a8: 4770 bx lr 80038aa: bf00 nop - 80038ac: 08009d28 .word 0x08009d28 + 80038ac: 0800a3c0 .word 0x0800a3c0 80038b0: 40021000 .word 0x40021000 80038b4: 007a1200 .word 0x007a1200 80038b8: 003d0900 .word 0x003d0900 @@ -8625,7 +8625,7 @@ uint32_t HAL_RCC_GetPCLK1Freq(void) 80038ec: 4618 mov r0, r3 80038ee: bd80 pop {r7, pc} 80038f0: 40021000 .word 0x40021000 - 80038f4: 08009e08 .word 0x08009e08 + 80038f4: 0800a4d8 .word 0x0800a4d8 080038f8 : * @brief This function provides delay (in milliseconds) based on CPU cycles method. @@ -11158,7 +11158,7 @@ void HAL_TIM_IRQHandler(TIM_HandleTypeDef *htim) #else HAL_TIM_PeriodElapsedCallback(htim); 800471e: 6878 ldr r0, [r7, #4] - 8004720: f002 f88e bl 8006840 + 8004720: f002 fbdc bl 8006edc #endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ } } @@ -12515,7 +12515,7 @@ void LCD_Scan_Dir(uint8_t dir) 8004ed0: f043 0340 orr.w r3, r3, #64 ; 0x40 8004ed4: 81fb strh r3, [r7, #14] 8004ed6: e007 b.n 8004ee8 - 8004ed8: 2000034c .word 0x2000034c + 8004ed8: 20000358 .word 0x20000358 }else//其他驱动IC { dirreg=0X03; @@ -12784,7 +12784,7 @@ void LCD_Display_Dir(uint8_t dir) 8005082: 46bd mov sp, r7 8005084: bd80 pop {r7, pc} 8005086: bf00 nop - 8005088: 2000034c .word 0x2000034c + 8005088: 20000358 .word 0x20000358 0800508c : @@ -13039,7 +13039,7 @@ void LCDx_Init(void) } 800526c: bf00 nop 800526e: bd80 pop {r7, pc} - 8005270: 2000034c .word 0x2000034c + 8005270: 20000358 .word 0x20000358 8005274: 40010c00 .word 0x40010c00 08005278 : @@ -13201,7 +13201,7 @@ void LCD_SetCursor(uint16_t Xpos, uint16_t Ypos) 800538e: 3708 adds r7, #8 8005390: 46bd mov sp, r7 8005392: bd80 pop {r7, pc} - 8005394: 2000034c .word 0x2000034c + 8005394: 20000358 .word 0x20000358 08005398 : } @@ -13240,7 +13240,7 @@ void LCD_set_dot(uint16_t x,uint16_t y,uint16_t color) 80053ca: 3708 adds r7, #8 80053cc: 46bd mov sp, r7 80053ce: bd80 pop {r7, pc} - 80053d0: 2000034c .word 0x2000034c + 80053d0: 20000358 .word 0x20000358 80053d4: 6c000800 .word 0x6c000800 080053d8 : @@ -13342,7 +13342,7 @@ void LCD_Clear(uint16_t color) 800546e: 3710 adds r7, #16 8005470: 46bd mov sp, r7 8005472: bd80 pop {r7, pc} - 8005474: 2000034c .word 0x2000034c + 8005474: 20000358 .word 0x20000358 8005478: 6c000800 .word 0x6c000800 0800547c : @@ -13862,9 +13862,9 @@ void LCD_ShowChar(uint16_t x,uint16_t y,uint8_t num,uint8_t size,uint16_t bg,uin 80057c2: 3714 adds r7, #20 80057c4: 46bd mov sp, r7 80057c6: bd90 pop {r4, r7, pc} - 80057c8: 08009e10 .word 0x08009e10 - 80057cc: 0800a284 .word 0x0800a284 - 80057d0: 2000034c .word 0x2000034c + 80057c8: 0800a4e0 .word 0x0800a4e0 + 80057cc: 0800a954 .word 0x0800a954 + 80057d0: 20000358 .word 0x20000358 080057d4 : //width,height:区域大小 @@ -13949,7 +13949,7 @@ void LCD_ShowString(uint16_t x,uint16_t y,uint8_t *p,uint8_t size,uint16_t bg,ui 8005846: 3714 adds r7, #20 8005848: 46bd mov sp, r7 800584a: bd90 pop {r4, r7, pc} - 800584c: 2000034c .word 0x2000034c + 800584c: 20000358 .word 0x20000358 08005850 : //因为eeprom芯片的写入速度有限,每写入一个字符都需要等待一段时间才能完成写入 @@ -13987,7 +13987,7 @@ void EPPROM_SLOWWRITE_INIT() // 800587a: bc80 pop {r7} 800587c: 4770 bx lr 800587e: bf00 nop - 8005880: 20000358 .word 0x20000358 + 8005880: 20000364 .word 0x20000364 08005884 : @@ -14067,7 +14067,7 @@ void EEPROM_SLOWWRITE_SERVER() 80058f4: 4b05 ldr r3, [pc, #20] ; (800590c ) 80058f6: 685b ldr r3, [r3, #4] 80058f8: 4618 mov r0, r3 - 80058fa: f001 fb67 bl 8006fcc + 80058fa: f001 feb5 bl 8007668 eeprom_write_buffer.head=buff; 80058fe: 4a03 ldr r2, [pc, #12] ; (800590c ) 8005900: 687b ldr r3, [r7, #4] @@ -14077,7 +14077,7 @@ void EEPROM_SLOWWRITE_SERVER() 8005906: 3708 adds r7, #8 8005908: 46bd mov sp, r7 800590a: bd80 pop {r7, pc} - 800590c: 20000358 .word 0x20000358 + 800590c: 20000364 .word 0x20000364 08005910 : @@ -14129,7 +14129,7 @@ void EEPROM_WRITE_BATY(uint16_t IN_DEVICE_ADD,char *DATAS,uint16_t LONG) { buff =(eeprom_write_buff*)malloc(sizeof(eeprom_write_buff)); 800594a: 2008 movs r0, #8 - 800594c: f001 fb36 bl 8006fbc + 800594c: f001 fe84 bl 8007658 8005950: 4603 mov r3, r0 8005952: 613b str r3, [r7, #16] if(buff!=NULL) @@ -14206,7 +14206,7 @@ void EEPROM_WRITE_BATY(uint16_t IN_DEVICE_ADD,char *DATAS,uint16_t LONG) 80059b6: 46bd mov sp, r7 80059b8: bd80 pop {r7, pc} 80059ba: bf00 nop - 80059bc: 20000358 .word 0x20000358 + 80059bc: 20000364 .word 0x20000364 080059c0 : @@ -14244,7 +14244,7 @@ void IIC_SAND_DATE(uint16_t DEVICE_ADD,uint16_t IN_DEVICE_ADD,char *DATAS,uint16 80059f2: 46bd mov sp, r7 80059f4: bd80 pop {r7, pc} 80059f6: bf00 nop - 80059f8: 2000020c .word 0x2000020c + 80059f8: 20000218 .word 0x20000218 080059fc : @@ -14279,7 +14279,7 @@ void IIC_READ_DATE(uint16_t DEVICE_ADD,uint16_t IN_DEVICE_ADD,char *DATAS,uint16 8005a2e: 46bd mov sp, r7 8005a30: bd80 pop {r7, pc} 8005a32: bf00 nop - 8005a34: 2000020c .word 0x2000020c + 8005a34: 20000218 .word 0x20000218 08005a38 : * 输入 :ucAddress,寄存器地址 @@ -14335,7 +14335,7 @@ uint8_t ReadRawRC ( uint8_t ucAddress ) 8005a90: bd80 pop {r7, pc} 8005a92: bf00 nop 8005a94: 40010800 .word 0x40010800 - 8005a98: 200002f0 .word 0x200002f0 + 8005a98: 200002fc .word 0x200002fc 08005a9c : * ucValue,写入寄存器的值 @@ -14388,7 +14388,7 @@ void WriteRawRC ( uint8_t ucAddress, uint8_t ucValue ) 8005aec: 46bd mov sp, r7 8005aee: bd80 pop {r7, pc} 8005af0: 40010800 .word 0x40010800 - 8005af4: 200002f0 .word 0x200002f0 + 8005af4: 200002fc .word 0x200002fc 08005af8 : * ucMask,置位值 @@ -14619,7681 +14619,8686 @@ void M500PcdConfigISOType ( uint8_t ucType ) 8005c54: 46bd mov sp, r7 8005c56: bd80 pop {r7, pc} -08005c58 : +08005c58 : + * 返回 : 状态值 + * = MI_OK,成功 + * 调用 :内部调用 + */ +char PcdComMF522 ( uint8_t ucCommand, uint8_t * pInData, uint8_t ucInLenByte, uint8_t * pOutData, uint32_t * pOutLenBit ) +{ + 8005c58: b590 push {r4, r7, lr} + 8005c5a: b089 sub sp, #36 ; 0x24 + 8005c5c: af00 add r7, sp, #0 + 8005c5e: 60b9 str r1, [r7, #8] + 8005c60: 607b str r3, [r7, #4] + 8005c62: 4603 mov r3, r0 + 8005c64: 73fb strb r3, [r7, #15] + 8005c66: 4613 mov r3, r2 + 8005c68: 73bb strb r3, [r7, #14] + char cStatus = MI_ERR; + 8005c6a: 2302 movs r3, #2 + 8005c6c: 77fb strb r3, [r7, #31] + uint8_t ucIrqEn = 0x00; + 8005c6e: 2300 movs r3, #0 + 8005c70: 77bb strb r3, [r7, #30] + uint8_t ucWaitFor = 0x00; + 8005c72: 2300 movs r3, #0 + 8005c74: 777b strb r3, [r7, #29] + uint8_t ucLastBits; + uint8_t ucN; + uint32_t ul; + + switch ( ucCommand ) + 8005c76: 7bfb ldrb r3, [r7, #15] + 8005c78: 2b0c cmp r3, #12 + 8005c7a: d006 beq.n 8005c8a + 8005c7c: 2b0e cmp r3, #14 + 8005c7e: d109 bne.n 8005c94 + { + case PCD_AUTHENT: //Mifare认证 + ucIrqEn = 0x12; //允许错误中断请求ErrIEn 允许空闲中断IdleIEn + 8005c80: 2312 movs r3, #18 + 8005c82: 77bb strb r3, [r7, #30] + ucWaitFor = 0x10; //认证寻卡等待时候 查询空闲中断标志位 + 8005c84: 2310 movs r3, #16 + 8005c86: 777b strb r3, [r7, #29] + break; + 8005c88: e005 b.n 8005c96 + + case PCD_TRANSCEIVE: //接收发送 发送接收 + ucIrqEn = 0x77; //允许TxIEn RxIEn IdleIEn LoAlertIEn ErrIEn TimerIEn + 8005c8a: 2377 movs r3, #119 ; 0x77 + 8005c8c: 77bb strb r3, [r7, #30] + ucWaitFor = 0x30; //寻卡等待时候 查询接收中断标志位与 空闲中断标志位 + 8005c8e: 2330 movs r3, #48 ; 0x30 + 8005c90: 777b strb r3, [r7, #29] + break; + 8005c92: e000 b.n 8005c96 + + default: + break; + 8005c94: bf00 nop + + } + WriteRawRC ( ComIEnReg, ucIrqEn | 0x80 ); //IRqInv置位管脚IRQ与Status1Reg的IRq位的值相反 + 8005c96: 7fbb ldrb r3, [r7, #30] + 8005c98: f063 037f orn r3, r3, #127 ; 0x7f + 8005c9c: b2db uxtb r3, r3 + 8005c9e: 4619 mov r1, r3 + 8005ca0: 2002 movs r0, #2 + 8005ca2: f7ff fefb bl 8005a9c + ClearBitMask ( ComIrqReg, 0x80 ); //Set1该位清零时,CommIRqReg的屏蔽位清零 + 8005ca6: 2180 movs r1, #128 ; 0x80 + 8005ca8: 2004 movs r0, #4 + 8005caa: f7ff ff40 bl 8005b2e + WriteRawRC ( CommandReg, PCD_IDLE ); //写空闲命令 + 8005cae: 2100 movs r1, #0 + 8005cb0: 2001 movs r0, #1 + 8005cb2: f7ff fef3 bl 8005a9c + SetBitMask ( FIFOLevelReg, 0x80 ); //置位FlushBuffer清除内部FIFO的读和写指针以及ErrReg的BufferOvfl标志位被清除 + 8005cb6: 2180 movs r1, #128 ; 0x80 + 8005cb8: 200a movs r0, #10 + 8005cba: f7ff ff1d bl 8005af8 + for ( ul = 0; ul < ucInLenByte; ul ++ ) + 8005cbe: 2300 movs r3, #0 + 8005cc0: 61bb str r3, [r7, #24] + 8005cc2: e00a b.n 8005cda + { + WriteRawRC ( FIFODataReg, pInData [ ul ] ); //写数据进FIFOdata + 8005cc4: 68ba ldr r2, [r7, #8] + 8005cc6: 69bb ldr r3, [r7, #24] + 8005cc8: 4413 add r3, r2 + 8005cca: 781b ldrb r3, [r3, #0] + 8005ccc: 4619 mov r1, r3 + 8005cce: 2009 movs r0, #9 + 8005cd0: f7ff fee4 bl 8005a9c + for ( ul = 0; ul < ucInLenByte; ul ++ ) + 8005cd4: 69bb ldr r3, [r7, #24] + 8005cd6: 3301 adds r3, #1 + 8005cd8: 61bb str r3, [r7, #24] + 8005cda: 7bbb ldrb r3, [r7, #14] + 8005cdc: 69ba ldr r2, [r7, #24] + 8005cde: 429a cmp r2, r3 + 8005ce0: d3f0 bcc.n 8005cc4 + } + WriteRawRC ( CommandReg, ucCommand ); //写命令 + 8005ce2: 7bfb ldrb r3, [r7, #15] + 8005ce4: 4619 mov r1, r3 + 8005ce6: 2001 movs r0, #1 + 8005ce8: f7ff fed8 bl 8005a9c + if ( ucCommand == PCD_TRANSCEIVE ) + 8005cec: 7bfb ldrb r3, [r7, #15] + 8005cee: 2b0c cmp r3, #12 + 8005cf0: d103 bne.n 8005cfa + { + SetBitMask(BitFramingReg,0x80); //StartSend置位启动数据发送 该位与收发命令使用时才有效 + 8005cf2: 2180 movs r1, #128 ; 0x80 + 8005cf4: 200d movs r0, #13 + 8005cf6: f7ff feff bl 8005af8 + } + ul = 1000;//根据时钟频率调整,操作M1卡最大等待时间25ms + 8005cfa: f44f 737a mov.w r3, #1000 ; 0x3e8 + 8005cfe: 61bb str r3, [r7, #24] + do //认证 与寻卡等待时间 + { + ucN = ReadRawRC ( ComIrqReg ); //查询事件中断 + 8005d00: 2004 movs r0, #4 + 8005d02: f7ff fe99 bl 8005a38 + 8005d06: 4603 mov r3, r0 + 8005d08: 773b strb r3, [r7, #28] + ul --; + 8005d0a: 69bb ldr r3, [r7, #24] + 8005d0c: 3b01 subs r3, #1 + 8005d0e: 61bb str r3, [r7, #24] + } while ( ( ul != 0 ) && ( ! ( ucN & 0x01 ) ) && ( ! ( ucN & ucWaitFor ) ) ); //退出条件i=0,定时器中断,与写空闲命令 + 8005d10: 69bb ldr r3, [r7, #24] + 8005d12: 2b00 cmp r3, #0 + 8005d14: d00a beq.n 8005d2c + 8005d16: 7f3b ldrb r3, [r7, #28] + 8005d18: f003 0301 and.w r3, r3, #1 + 8005d1c: 2b00 cmp r3, #0 + 8005d1e: d105 bne.n 8005d2c + 8005d20: 7f3a ldrb r2, [r7, #28] + 8005d22: 7f7b ldrb r3, [r7, #29] + 8005d24: 4013 ands r3, r2 + 8005d26: b2db uxtb r3, r3 + 8005d28: 2b00 cmp r3, #0 + 8005d2a: d0e9 beq.n 8005d00 + ClearBitMask ( BitFramingReg, 0x80 ); //清理允许StartSend位 + 8005d2c: 2180 movs r1, #128 ; 0x80 + 8005d2e: 200d movs r0, #13 + 8005d30: f7ff fefd bl 8005b2e + if ( ul != 0 ) + 8005d34: 69bb ldr r3, [r7, #24] + 8005d36: 2b00 cmp r3, #0 + 8005d38: d052 beq.n 8005de0 + { + if ( ! (( ReadRawRC ( ErrorReg ) & 0x1B )) ) //读错误标志寄存器BufferOfI CollErr ParityErr ProtocolErr + 8005d3a: 2006 movs r0, #6 + 8005d3c: f7ff fe7c bl 8005a38 + 8005d40: 4603 mov r3, r0 + 8005d42: f003 031b and.w r3, r3, #27 + 8005d46: 2b00 cmp r3, #0 + 8005d48: d148 bne.n 8005ddc + { + cStatus = MI_OK; + 8005d4a: 2300 movs r3, #0 + 8005d4c: 77fb strb r3, [r7, #31] + if ( ucN & ucIrqEn & 0x01 ) //是否发生定时器中断 + 8005d4e: 7f3a ldrb r2, [r7, #28] + 8005d50: 7fbb ldrb r3, [r7, #30] + 8005d52: 4013 ands r3, r2 + 8005d54: b2db uxtb r3, r3 + 8005d56: f003 0301 and.w r3, r3, #1 + 8005d5a: 2b00 cmp r3, #0 + 8005d5c: d001 beq.n 8005d62 + { + cStatus = MI_NOTAGERR; + 8005d5e: 2301 movs r3, #1 + 8005d60: 77fb strb r3, [r7, #31] + } + if ( ucCommand == PCD_TRANSCEIVE ) + 8005d62: 7bfb ldrb r3, [r7, #15] + 8005d64: 2b0c cmp r3, #12 + 8005d66: d13b bne.n 8005de0 + { + ucN = ReadRawRC ( FIFOLevelReg ); //读FIFO中保存的字节数 + 8005d68: 200a movs r0, #10 + 8005d6a: f7ff fe65 bl 8005a38 + 8005d6e: 4603 mov r3, r0 + 8005d70: 773b strb r3, [r7, #28] + ucLastBits = ReadRawRC ( ControlReg ) & 0x07; //最后接收到得字节的有效位数 + 8005d72: 200c movs r0, #12 + 8005d74: f7ff fe60 bl 8005a38 + 8005d78: 4603 mov r3, r0 + 8005d7a: f003 0307 and.w r3, r3, #7 + 8005d7e: 75fb strb r3, [r7, #23] + if ( ucLastBits ) + 8005d80: 7dfb ldrb r3, [r7, #23] + 8005d82: 2b00 cmp r3, #0 + 8005d84: d008 beq.n 8005d98 + { + * pOutLenBit = ( ucN - 1 ) * 8 + ucLastBits; //N个字节数减去1(最后一个字节)+最后一位的位数 读取到的数据总位数 + 8005d86: 7f3b ldrb r3, [r7, #28] + 8005d88: 3b01 subs r3, #1 + 8005d8a: 00da lsls r2, r3, #3 + 8005d8c: 7dfb ldrb r3, [r7, #23] + 8005d8e: 4413 add r3, r2 + 8005d90: 461a mov r2, r3 + 8005d92: 6b3b ldr r3, [r7, #48] ; 0x30 + 8005d94: 601a str r2, [r3, #0] + 8005d96: e004 b.n 8005da2 + } + else + { + * pOutLenBit = ucN * 8; //最后接收到的字节整个字节有效 + 8005d98: 7f3b ldrb r3, [r7, #28] + 8005d9a: 00db lsls r3, r3, #3 + 8005d9c: 461a mov r2, r3 + 8005d9e: 6b3b ldr r3, [r7, #48] ; 0x30 + 8005da0: 601a str r2, [r3, #0] + } + if ( ucN == 0 ) + 8005da2: 7f3b ldrb r3, [r7, #28] + 8005da4: 2b00 cmp r3, #0 + 8005da6: d101 bne.n 8005dac + { + ucN = 1; + 8005da8: 2301 movs r3, #1 + 8005daa: 773b strb r3, [r7, #28] + } + if ( ucN > MAXRLEN ) + 8005dac: 7f3b ldrb r3, [r7, #28] + 8005dae: 2b12 cmp r3, #18 + 8005db0: d901 bls.n 8005db6 + { + ucN = MAXRLEN; + 8005db2: 2312 movs r3, #18 + 8005db4: 773b strb r3, [r7, #28] + } + for ( ul = 0; ul < ucN; ul ++ ) + 8005db6: 2300 movs r3, #0 + 8005db8: 61bb str r3, [r7, #24] + 8005dba: e00a b.n 8005dd2 + { + pOutData [ ul ] = ReadRawRC ( FIFODataReg ); + 8005dbc: 687a ldr r2, [r7, #4] + 8005dbe: 69bb ldr r3, [r7, #24] + 8005dc0: 18d4 adds r4, r2, r3 + 8005dc2: 2009 movs r0, #9 + 8005dc4: f7ff fe38 bl 8005a38 + 8005dc8: 4603 mov r3, r0 + 8005dca: 7023 strb r3, [r4, #0] + for ( ul = 0; ul < ucN; ul ++ ) + 8005dcc: 69bb ldr r3, [r7, #24] + 8005dce: 3301 adds r3, #1 + 8005dd0: 61bb str r3, [r7, #24] + 8005dd2: 7f3b ldrb r3, [r7, #28] + 8005dd4: 69ba ldr r2, [r7, #24] + 8005dd6: 429a cmp r2, r3 + 8005dd8: d3f0 bcc.n 8005dbc + 8005dda: e001 b.n 8005de0 + + } + } + else + { + cStatus = MI_ERR; + 8005ddc: 2302 movs r3, #2 + 8005dde: 77fb strb r3, [r7, #31] + } + + } + + SetBitMask ( ControlReg, 0x80 ); // stop timer now + 8005de0: 2180 movs r1, #128 ; 0x80 + 8005de2: 200c movs r0, #12 + 8005de4: f7ff fe88 bl 8005af8 + WriteRawRC ( CommandReg, PCD_IDLE ); + 8005de8: 2100 movs r1, #0 + 8005dea: 2001 movs r0, #1 + 8005dec: f7ff fe56 bl 8005a9c + + return cStatus; + 8005df0: 7ffb ldrb r3, [r7, #31] + +} + 8005df2: 4618 mov r0, r3 + 8005df4: 3724 adds r7, #36 ; 0x24 + 8005df6: 46bd mov sp, r7 + 8005df8: bd90 pop {r4, r7, pc} + +08005dfa : + * 返回 : 状态值 + * = MI_OK,成功 + * 调用 :外部调用 + */ +char PcdRequest ( uint8_t ucReq_code, uint8_t * pTagType ) +{ + 8005dfa: b580 push {r7, lr} + 8005dfc: b08a sub sp, #40 ; 0x28 + 8005dfe: af02 add r7, sp, #8 + 8005e00: 4603 mov r3, r0 + 8005e02: 6039 str r1, [r7, #0] + 8005e04: 71fb strb r3, [r7, #7] + char cStatus; + uint8_t ucComMF522Buf [ MAXRLEN ]; + uint32_t ulLen; + ClearBitMask ( Status2Reg, 0x08 ); //清理指示MIFARECyptol单元接通以及所有卡的数据通信被加密的情况 + 8005e06: 2108 movs r1, #8 + 8005e08: 2008 movs r0, #8 + 8005e0a: f7ff fe90 bl 8005b2e + WriteRawRC ( BitFramingReg, 0x07 ); // 发送的最后一个字节的 七位 + 8005e0e: 2107 movs r1, #7 + 8005e10: 200d movs r0, #13 + 8005e12: f7ff fe43 bl 8005a9c + SetBitMask ( TxControlReg, 0x03 ); //TX1,TX2管脚的输出信号传递经发送调制的13.56的能量载波信号 + 8005e16: 2103 movs r1, #3 + 8005e18: 2014 movs r0, #20 + 8005e1a: f7ff fe6d bl 8005af8 + ucComMF522Buf [ 0 ] = ucReq_code; //存入 卡片命令字 + 8005e1e: 79fb ldrb r3, [r7, #7] + 8005e20: 733b strb r3, [r7, #12] + cStatus = PcdComMF522 ( PCD_TRANSCEIVE, ucComMF522Buf, 1, ucComMF522Buf, & ulLen ); //寻卡 + 8005e22: f107 020c add.w r2, r7, #12 + 8005e26: f107 010c add.w r1, r7, #12 + 8005e2a: f107 0308 add.w r3, r7, #8 + 8005e2e: 9300 str r3, [sp, #0] + 8005e30: 4613 mov r3, r2 + 8005e32: 2201 movs r2, #1 + 8005e34: 200c movs r0, #12 + 8005e36: f7ff ff0f bl 8005c58 + 8005e3a: 4603 mov r3, r0 + 8005e3c: 77fb strb r3, [r7, #31] + if ( ( cStatus == MI_OK ) && ( ulLen == 0x10 ) ) //寻卡成功返回卡类型 + 8005e3e: 7ffb ldrb r3, [r7, #31] + 8005e40: 2b00 cmp r3, #0 + 8005e42: d10a bne.n 8005e5a + 8005e44: 68bb ldr r3, [r7, #8] + 8005e46: 2b10 cmp r3, #16 + 8005e48: d107 bne.n 8005e5a + { + * pTagType = ucComMF522Buf [ 0 ]; + 8005e4a: 7b3a ldrb r2, [r7, #12] + 8005e4c: 683b ldr r3, [r7, #0] + 8005e4e: 701a strb r2, [r3, #0] + * ( pTagType + 1 ) = ucComMF522Buf [ 1 ]; + 8005e50: 683b ldr r3, [r7, #0] + 8005e52: 3301 adds r3, #1 + 8005e54: 7b7a ldrb r2, [r7, #13] + 8005e56: 701a strb r2, [r3, #0] + 8005e58: e001 b.n 8005e5e + } + else + { + cStatus = MI_ERR; + 8005e5a: 2302 movs r3, #2 + 8005e5c: 77fb strb r3, [r7, #31] + } + return cStatus; + 8005e5e: 7ffb ldrb r3, [r7, #31] + +} + 8005e60: 4618 mov r0, r3 + 8005e62: 3720 adds r7, #32 + 8005e64: 46bd mov sp, r7 + 8005e66: bd80 pop {r7, pc} + +08005e68 : + * 返回 : 状态值 + * = MI_OK,成功 + * 调用 :外部调用 + */ +char PcdAnticoll ( uint8_t * pSnr ) +{ + 8005e68: b580 push {r7, lr} + 8005e6a: b08c sub sp, #48 ; 0x30 + 8005e6c: af02 add r7, sp, #8 + 8005e6e: 6078 str r0, [r7, #4] + char cStatus; + uint8_t uc, ucSnr_check = 0; + 8005e70: 2300 movs r3, #0 + 8005e72: f887 3025 strb.w r3, [r7, #37] ; 0x25 + uint8_t ucComMF522Buf [ MAXRLEN ]; + uint32_t ulLen; + ClearBitMask ( Status2Reg, 0x08 ); //清MFCryptol On位 只有成功执行MFAuthent命令后,该位才能置位 + 8005e76: 2108 movs r1, #8 + 8005e78: 2008 movs r0, #8 + 8005e7a: f7ff fe58 bl 8005b2e + WriteRawRC ( BitFramingReg, 0x00); //清理寄存器 停止收发 + 8005e7e: 2100 movs r1, #0 + 8005e80: 200d movs r0, #13 + 8005e82: f7ff fe0b bl 8005a9c + ClearBitMask ( CollReg, 0x80 ); //清ValuesAfterColl所有接收的位在冲突后被清除 + 8005e86: 2180 movs r1, #128 ; 0x80 + 8005e88: 200e movs r0, #14 + 8005e8a: f7ff fe50 bl 8005b2e + ucComMF522Buf [ 0 ] = 0x93; //卡片防冲突命令 + 8005e8e: 2393 movs r3, #147 ; 0x93 + 8005e90: 743b strb r3, [r7, #16] + ucComMF522Buf [ 1 ] = 0x20; + 8005e92: 2320 movs r3, #32 + 8005e94: 747b strb r3, [r7, #17] + cStatus = PcdComMF522 ( PCD_TRANSCEIVE, ucComMF522Buf, 2, ucComMF522Buf, & ulLen);//与卡片通信 + 8005e96: f107 0210 add.w r2, r7, #16 + 8005e9a: f107 0110 add.w r1, r7, #16 + 8005e9e: f107 030c add.w r3, r7, #12 + 8005ea2: 9300 str r3, [sp, #0] + 8005ea4: 4613 mov r3, r2 + 8005ea6: 2202 movs r2, #2 + 8005ea8: 200c movs r0, #12 + 8005eaa: f7ff fed5 bl 8005c58 + 8005eae: 4603 mov r3, r0 + 8005eb0: f887 3027 strb.w r3, [r7, #39] ; 0x27 + if ( cStatus == MI_OK) //通信成功 + 8005eb4: f897 3027 ldrb.w r3, [r7, #39] ; 0x27 + 8005eb8: 2b00 cmp r3, #0 + 8005eba: d132 bne.n 8005f22 + { + for ( uc = 0; uc < 4; uc ++ ) + 8005ebc: 2300 movs r3, #0 + 8005ebe: f887 3026 strb.w r3, [r7, #38] ; 0x26 + 8005ec2: e01c b.n 8005efe + { + * ( pSnr + uc ) = ucComMF522Buf [ uc ]; //读出UID + 8005ec4: f897 2026 ldrb.w r2, [r7, #38] ; 0x26 + 8005ec8: f897 3026 ldrb.w r3, [r7, #38] ; 0x26 + 8005ecc: 6879 ldr r1, [r7, #4] + 8005ece: 440b add r3, r1 + 8005ed0: f107 0128 add.w r1, r7, #40 ; 0x28 + 8005ed4: 440a add r2, r1 + 8005ed6: f812 2c18 ldrb.w r2, [r2, #-24] + 8005eda: 701a strb r2, [r3, #0] + ucSnr_check ^= ucComMF522Buf [ uc ]; + 8005edc: f897 3026 ldrb.w r3, [r7, #38] ; 0x26 + 8005ee0: f107 0228 add.w r2, r7, #40 ; 0x28 + 8005ee4: 4413 add r3, r2 + 8005ee6: f813 2c18 ldrb.w r2, [r3, #-24] + 8005eea: f897 3025 ldrb.w r3, [r7, #37] ; 0x25 + 8005eee: 4053 eors r3, r2 + 8005ef0: f887 3025 strb.w r3, [r7, #37] ; 0x25 + for ( uc = 0; uc < 4; uc ++ ) + 8005ef4: f897 3026 ldrb.w r3, [r7, #38] ; 0x26 + 8005ef8: 3301 adds r3, #1 + 8005efa: f887 3026 strb.w r3, [r7, #38] ; 0x26 + 8005efe: f897 3026 ldrb.w r3, [r7, #38] ; 0x26 + 8005f02: 2b03 cmp r3, #3 + 8005f04: d9de bls.n 8005ec4 + } + + if ( ucSnr_check != ucComMF522Buf [ uc ] ) + 8005f06: f897 3026 ldrb.w r3, [r7, #38] ; 0x26 + 8005f0a: f107 0228 add.w r2, r7, #40 ; 0x28 + 8005f0e: 4413 add r3, r2 + 8005f10: f813 3c18 ldrb.w r3, [r3, #-24] + 8005f14: f897 2025 ldrb.w r2, [r7, #37] ; 0x25 + 8005f18: 429a cmp r2, r3 + 8005f1a: d002 beq.n 8005f22 + { + cStatus = MI_ERR; + 8005f1c: 2302 movs r3, #2 + 8005f1e: f887 3027 strb.w r3, [r7, #39] ; 0x27 + } + } + SetBitMask ( CollReg, 0x80 ); + 8005f22: 2180 movs r1, #128 ; 0x80 + 8005f24: 200e movs r0, #14 + 8005f26: f7ff fde7 bl 8005af8 + return cStatus; + 8005f2a: f897 3027 ldrb.w r3, [r7, #39] ; 0x27 +} + 8005f2e: 4618 mov r0, r3 + 8005f30: 3728 adds r7, #40 ; 0x28 + 8005f32: 46bd mov sp, r7 + 8005f34: bd80 pop {r7, pc} + +08005f36 : + * pOutData,存放计算结果存放的首地址 + * 返回 : 无 + * 调用 :内部调用 + */ +void CalulateCRC ( uint8_t * pIndata, uint8_t ucLen, uint8_t * pOutData ) +{ + 8005f36: b590 push {r4, r7, lr} + 8005f38: b087 sub sp, #28 + 8005f3a: af00 add r7, sp, #0 + 8005f3c: 60f8 str r0, [r7, #12] + 8005f3e: 460b mov r3, r1 + 8005f40: 607a str r2, [r7, #4] + 8005f42: 72fb strb r3, [r7, #11] + uint8_t uc, ucN; + ClearBitMask(DivIrqReg,0x04); + 8005f44: 2104 movs r1, #4 + 8005f46: 2005 movs r0, #5 + 8005f48: f7ff fdf1 bl 8005b2e + WriteRawRC(CommandReg,PCD_IDLE); + 8005f4c: 2100 movs r1, #0 + 8005f4e: 2001 movs r0, #1 + 8005f50: f7ff fda4 bl 8005a9c + SetBitMask(FIFOLevelReg,0x80); + 8005f54: 2180 movs r1, #128 ; 0x80 + 8005f56: 200a movs r0, #10 + 8005f58: f7ff fdce bl 8005af8 + for ( uc = 0; uc < ucLen; uc ++) + 8005f5c: 2300 movs r3, #0 + 8005f5e: 75fb strb r3, [r7, #23] + 8005f60: e00a b.n 8005f78 + { + WriteRawRC ( FIFODataReg, * ( pIndata + uc ) ); + 8005f62: 7dfb ldrb r3, [r7, #23] + 8005f64: 68fa ldr r2, [r7, #12] + 8005f66: 4413 add r3, r2 + 8005f68: 781b ldrb r3, [r3, #0] + 8005f6a: 4619 mov r1, r3 + 8005f6c: 2009 movs r0, #9 + 8005f6e: f7ff fd95 bl 8005a9c + for ( uc = 0; uc < ucLen; uc ++) + 8005f72: 7dfb ldrb r3, [r7, #23] + 8005f74: 3301 adds r3, #1 + 8005f76: 75fb strb r3, [r7, #23] + 8005f78: 7dfa ldrb r2, [r7, #23] + 8005f7a: 7afb ldrb r3, [r7, #11] + 8005f7c: 429a cmp r2, r3 + 8005f7e: d3f0 bcc.n 8005f62 + } + WriteRawRC ( CommandReg, PCD_CALCCRC ); + 8005f80: 2103 movs r1, #3 + 8005f82: 2001 movs r0, #1 + 8005f84: f7ff fd8a bl 8005a9c + uc = 0xFF; + 8005f88: 23ff movs r3, #255 ; 0xff + 8005f8a: 75fb strb r3, [r7, #23] + do + { + ucN = ReadRawRC ( DivIrqReg ); + 8005f8c: 2005 movs r0, #5 + 8005f8e: f7ff fd53 bl 8005a38 + 8005f92: 4603 mov r3, r0 + 8005f94: 75bb strb r3, [r7, #22] + uc --; + 8005f96: 7dfb ldrb r3, [r7, #23] + 8005f98: 3b01 subs r3, #1 + 8005f9a: 75fb strb r3, [r7, #23] + } while ( ( uc != 0 ) && ! ( ucN & 0x04 ) ); + 8005f9c: 7dfb ldrb r3, [r7, #23] + 8005f9e: 2b00 cmp r3, #0 + 8005fa0: d004 beq.n 8005fac + 8005fa2: 7dbb ldrb r3, [r7, #22] + 8005fa4: f003 0304 and.w r3, r3, #4 + 8005fa8: 2b00 cmp r3, #0 + 8005faa: d0ef beq.n 8005f8c + pOutData [ 0 ] = ReadRawRC ( CRCResultRegL ); + 8005fac: 2022 movs r0, #34 ; 0x22 + 8005fae: f7ff fd43 bl 8005a38 + 8005fb2: 4603 mov r3, r0 + 8005fb4: 461a mov r2, r3 + 8005fb6: 687b ldr r3, [r7, #4] + 8005fb8: 701a strb r2, [r3, #0] + pOutData [ 1 ] = ReadRawRC ( CRCResultRegM ); + 8005fba: 687b ldr r3, [r7, #4] + 8005fbc: 1c5c adds r4, r3, #1 + 8005fbe: 2021 movs r0, #33 ; 0x21 + 8005fc0: f7ff fd3a bl 8005a38 + 8005fc4: 4603 mov r3, r0 + 8005fc6: 7023 strb r3, [r4, #0] +} + 8005fc8: bf00 nop + 8005fca: 371c adds r7, #28 + 8005fcc: 46bd mov sp, r7 + 8005fce: bd90 pop {r4, r7, pc} + +08005fd0 : + * 返回 : 状态值 + * = MI_OK,成功 + * 调用 :外部调用 + */ +char PcdAuthState ( uint8_t ucAuth_mode, uint8_t ucAddr, char * pKey, uint8_t * pSnr ) +{ + 8005fd0: b580 push {r7, lr} + 8005fd2: b08c sub sp, #48 ; 0x30 + 8005fd4: af02 add r7, sp, #8 + 8005fd6: 60ba str r2, [r7, #8] + 8005fd8: 607b str r3, [r7, #4] + 8005fda: 4603 mov r3, r0 + 8005fdc: 73fb strb r3, [r7, #15] + 8005fde: 460b mov r3, r1 + 8005fe0: 73bb strb r3, [r7, #14] + char cStatus; + uint8_t uc, ucComMF522Buf [ MAXRLEN ]; + uint32_t ulLen; + ucComMF522Buf [ 0 ] = ucAuth_mode; + 8005fe2: 7bfb ldrb r3, [r7, #15] + 8005fe4: 753b strb r3, [r7, #20] + ucComMF522Buf [ 1 ] = ucAddr; + 8005fe6: 7bbb ldrb r3, [r7, #14] + 8005fe8: 757b strb r3, [r7, #21] + for ( uc = 0; uc < 6; uc ++ ) + 8005fea: 2300 movs r3, #0 + 8005fec: f887 3026 strb.w r3, [r7, #38] ; 0x26 + 8005ff0: e011 b.n 8006016 + { + ucComMF522Buf [ uc + 2 ] = * ( pKey + uc ); + 8005ff2: f897 3026 ldrb.w r3, [r7, #38] ; 0x26 + 8005ff6: 68ba ldr r2, [r7, #8] + 8005ff8: 441a add r2, r3 + 8005ffa: f897 3026 ldrb.w r3, [r7, #38] ; 0x26 + 8005ffe: 3302 adds r3, #2 + 8006000: 7812 ldrb r2, [r2, #0] + 8006002: f107 0128 add.w r1, r7, #40 ; 0x28 + 8006006: 440b add r3, r1 + 8006008: f803 2c14 strb.w r2, [r3, #-20] + for ( uc = 0; uc < 6; uc ++ ) + 800600c: f897 3026 ldrb.w r3, [r7, #38] ; 0x26 + 8006010: 3301 adds r3, #1 + 8006012: f887 3026 strb.w r3, [r7, #38] ; 0x26 + 8006016: f897 3026 ldrb.w r3, [r7, #38] ; 0x26 + 800601a: 2b05 cmp r3, #5 + 800601c: d9e9 bls.n 8005ff2 + } + for ( uc = 0; uc < 6; uc ++ ) + 800601e: 2300 movs r3, #0 + 8006020: f887 3026 strb.w r3, [r7, #38] ; 0x26 + 8006024: e011 b.n 800604a + { + ucComMF522Buf [ uc + 8 ] = * ( pSnr + uc ); + 8006026: f897 3026 ldrb.w r3, [r7, #38] ; 0x26 + 800602a: 687a ldr r2, [r7, #4] + 800602c: 441a add r2, r3 + 800602e: f897 3026 ldrb.w r3, [r7, #38] ; 0x26 + 8006032: 3308 adds r3, #8 + 8006034: 7812 ldrb r2, [r2, #0] + 8006036: f107 0128 add.w r1, r7, #40 ; 0x28 + 800603a: 440b add r3, r1 + 800603c: f803 2c14 strb.w r2, [r3, #-20] + for ( uc = 0; uc < 6; uc ++ ) + 8006040: f897 3026 ldrb.w r3, [r7, #38] ; 0x26 + 8006044: 3301 adds r3, #1 + 8006046: f887 3026 strb.w r3, [r7, #38] ; 0x26 + 800604a: f897 3026 ldrb.w r3, [r7, #38] ; 0x26 + 800604e: 2b05 cmp r3, #5 + 8006050: d9e9 bls.n 8006026 + } + cStatus = PcdComMF522 ( PCD_AUTHENT, ucComMF522Buf, 12, ucComMF522Buf, & ulLen ); + 8006052: f107 0214 add.w r2, r7, #20 + 8006056: f107 0114 add.w r1, r7, #20 + 800605a: f107 0310 add.w r3, r7, #16 + 800605e: 9300 str r3, [sp, #0] + 8006060: 4613 mov r3, r2 + 8006062: 220c movs r2, #12 + 8006064: 200e movs r0, #14 + 8006066: f7ff fdf7 bl 8005c58 + 800606a: 4603 mov r3, r0 + 800606c: f887 3027 strb.w r3, [r7, #39] ; 0x27 + if ( ( cStatus != MI_OK ) || ( ! ( ReadRawRC ( Status2Reg ) & 0x08 ) ) ) + 8006070: f897 3027 ldrb.w r3, [r7, #39] ; 0x27 + 8006074: 2b00 cmp r3, #0 + 8006076: d107 bne.n 8006088 + 8006078: 2008 movs r0, #8 + 800607a: f7ff fcdd bl 8005a38 + 800607e: 4603 mov r3, r0 + 8006080: f003 0308 and.w r3, r3, #8 + 8006084: 2b00 cmp r3, #0 + 8006086: d102 bne.n 800608e + { +// if(cStatus != MI_OK) +// printf("666") ; +// else +// printf("888"); + cStatus = MI_ERR; + 8006088: 2302 movs r3, #2 + 800608a: f887 3027 strb.w r3, [r7, #39] ; 0x27 + } + + return cStatus; + 800608e: f897 3027 ldrb.w r3, [r7, #39] ; 0x27 + +} + 8006092: 4618 mov r0, r3 + 8006094: 3728 adds r7, #40 ; 0x28 + 8006096: 46bd mov sp, r7 + 8006098: bd80 pop {r7, pc} + +0800609a : + * 返回 : 状态值 + * = MI_OK,成功 + * 调用 :外部调用 + */ +char PcdRead ( uint8_t ucAddr, uint8_t * pData ) +{ + 800609a: b580 push {r7, lr} + 800609c: b08a sub sp, #40 ; 0x28 + 800609e: af02 add r7, sp, #8 + 80060a0: 4603 mov r3, r0 + 80060a2: 6039 str r1, [r7, #0] + 80060a4: 71fb strb r3, [r7, #7] + char cStatus; + uint8_t uc, ucComMF522Buf [ MAXRLEN ]; + uint32_t ulLen; + ucComMF522Buf [ 0 ] = PICC_READ; + 80060a6: 2330 movs r3, #48 ; 0x30 + 80060a8: 733b strb r3, [r7, #12] + ucComMF522Buf [ 1 ] = ucAddr; + 80060aa: 79fb ldrb r3, [r7, #7] + 80060ac: 737b strb r3, [r7, #13] + CalulateCRC ( ucComMF522Buf, 2, & ucComMF522Buf [ 2 ] ); + 80060ae: f107 030c add.w r3, r7, #12 + 80060b2: 1c9a adds r2, r3, #2 + 80060b4: f107 030c add.w r3, r7, #12 + 80060b8: 2102 movs r1, #2 + 80060ba: 4618 mov r0, r3 + 80060bc: f7ff ff3b bl 8005f36 + cStatus = PcdComMF522 ( PCD_TRANSCEIVE, ucComMF522Buf, 4, ucComMF522Buf, & ulLen ); + 80060c0: f107 020c add.w r2, r7, #12 + 80060c4: f107 010c add.w r1, r7, #12 + 80060c8: f107 0308 add.w r3, r7, #8 + 80060cc: 9300 str r3, [sp, #0] + 80060ce: 4613 mov r3, r2 + 80060d0: 2204 movs r2, #4 + 80060d2: 200c movs r0, #12 + 80060d4: f7ff fdc0 bl 8005c58 + 80060d8: 4603 mov r3, r0 + 80060da: 77fb strb r3, [r7, #31] + if ( ( cStatus == MI_OK ) && ( ulLen == 0x90 ) ) + 80060dc: 7ffb ldrb r3, [r7, #31] + 80060de: 2b00 cmp r3, #0 + 80060e0: d116 bne.n 8006110 + 80060e2: 68bb ldr r3, [r7, #8] + 80060e4: 2b90 cmp r3, #144 ; 0x90 + 80060e6: d113 bne.n 8006110 + { + for ( uc = 0; uc < 16; uc ++ ) + 80060e8: 2300 movs r3, #0 + 80060ea: 77bb strb r3, [r7, #30] + 80060ec: e00c b.n 8006108 + { + * ( pData + uc ) = ucComMF522Buf [ uc ]; + 80060ee: 7fba ldrb r2, [r7, #30] + 80060f0: 7fbb ldrb r3, [r7, #30] + 80060f2: 6839 ldr r1, [r7, #0] + 80060f4: 440b add r3, r1 + 80060f6: f107 0120 add.w r1, r7, #32 + 80060fa: 440a add r2, r1 + 80060fc: f812 2c14 ldrb.w r2, [r2, #-20] + 8006100: 701a strb r2, [r3, #0] + for ( uc = 0; uc < 16; uc ++ ) + 8006102: 7fbb ldrb r3, [r7, #30] + 8006104: 3301 adds r3, #1 + 8006106: 77bb strb r3, [r7, #30] + 8006108: 7fbb ldrb r3, [r7, #30] + 800610a: 2b0f cmp r3, #15 + 800610c: d9ef bls.n 80060ee + if ( ( cStatus == MI_OK ) && ( ulLen == 0x90 ) ) + 800610e: e001 b.n 8006114 + } + } + else + { + cStatus = MI_ERR; + 8006110: 2302 movs r3, #2 + 8006112: 77fb strb r3, [r7, #31] + } + return cStatus; + 8006114: 7ffb ldrb r3, [r7, #31] + +} + 8006116: 4618 mov r0, r3 + 8006118: 3720 adds r7, #32 + 800611a: 46bd mov sp, r7 + 800611c: bd80 pop {r7, pc} + +0800611e : PcdHalt (); } void RC522_Init ( void ) { - 8005c58: b580 push {r7, lr} - 8005c5a: af00 add r7, sp, #0 + 800611e: b580 push {r7, lr} + 8006120: af00 add r7, sp, #0 PcdReset (); - 8005c5c: f7ff ff9c bl 8005b98 + 8006122: f7ff fd39 bl 8005b98 M500PcdConfigISOType ( 'A' );//设置工作方式 - 8005c60: 2041 movs r0, #65 ; 0x41 - 8005c62: f7ff ffc8 bl 8005bf6 + 8006126: 2041 movs r0, #65 ; 0x41 + 8006128: f7ff fd65 bl 8005bf6 } - 8005c66: bf00 nop - 8005c68: bd80 pop {r7, pc} - ... + 800612c: bf00 nop + 800612e: bd80 pop {r7, pc} -08005c6c : +08006130 : //SPI写数据 //向触摸屏IC写入1byte数据 //num:要写入的数据 void TP_Write_Byte(char num) { - 8005c6c: b580 push {r7, lr} - 8005c6e: b084 sub sp, #16 - 8005c70: af00 add r7, sp, #0 - 8005c72: 4603 mov r3, r0 - 8005c74: 71fb strb r3, [r7, #7] + 8006130: b580 push {r7, lr} + 8006132: b084 sub sp, #16 + 8006134: af00 add r7, sp, #0 + 8006136: 4603 mov r3, r0 + 8006138: 71fb strb r3, [r7, #7] for(uint8_t count=0;count<8;count++) - 8005c76: 2300 movs r3, #0 - 8005c78: 73fb strb r3, [r7, #15] - 8005c7a: e020 b.n 8005cbe + 800613a: 2300 movs r3, #0 + 800613c: 73fb strb r3, [r7, #15] + 800613e: e020 b.n 8006182 { if(num&0x80){TDIN(1);} - 8005c7c: f997 3007 ldrsb.w r3, [r7, #7] - 8005c80: 2b00 cmp r3, #0 - 8005c82: da06 bge.n 8005c92 - 8005c84: 2201 movs r2, #1 - 8005c86: f44f 7100 mov.w r1, #512 ; 0x200 - 8005c8a: 4811 ldr r0, [pc, #68] ; (8005cd0 ) - 8005c8c: f7fc fa33 bl 80020f6 - 8005c90: e005 b.n 8005c9e + 8006140: f997 3007 ldrsb.w r3, [r7, #7] + 8006144: 2b00 cmp r3, #0 + 8006146: da06 bge.n 8006156 + 8006148: 2201 movs r2, #1 + 800614a: f44f 7100 mov.w r1, #512 ; 0x200 + 800614e: 4811 ldr r0, [pc, #68] ; (8006194 ) + 8006150: f7fb ffd1 bl 80020f6 + 8006154: e005 b.n 8006162 else {TDIN(0);} - 8005c92: 2200 movs r2, #0 - 8005c94: f44f 7100 mov.w r1, #512 ; 0x200 - 8005c98: 480d ldr r0, [pc, #52] ; (8005cd0 ) - 8005c9a: f7fc fa2c bl 80020f6 + 8006156: 2200 movs r2, #0 + 8006158: f44f 7100 mov.w r1, #512 ; 0x200 + 800615c: 480d ldr r0, [pc, #52] ; (8006194 ) + 800615e: f7fb ffca bl 80020f6 num<<=1; - 8005c9e: 79fb ldrb r3, [r7, #7] - 8005ca0: 005b lsls r3, r3, #1 - 8005ca2: 71fb strb r3, [r7, #7] + 8006162: 79fb ldrb r3, [r7, #7] + 8006164: 005b lsls r3, r3, #1 + 8006166: 71fb strb r3, [r7, #7] TCLK(0); - 8005ca4: 2200 movs r2, #0 - 8005ca6: 2102 movs r1, #2 - 8005ca8: 480a ldr r0, [pc, #40] ; (8005cd4 ) - 8005caa: f7fc fa24 bl 80020f6 + 8006168: 2200 movs r2, #0 + 800616a: 2102 movs r1, #2 + 800616c: 480a ldr r0, [pc, #40] ; (8006198 ) + 800616e: f7fb ffc2 bl 80020f6 TCLK(1); //上升沿有效 - 8005cae: 2201 movs r2, #1 - 8005cb0: 2102 movs r1, #2 - 8005cb2: 4808 ldr r0, [pc, #32] ; (8005cd4 ) - 8005cb4: f7fc fa1f bl 80020f6 + 8006172: 2201 movs r2, #1 + 8006174: 2102 movs r1, #2 + 8006176: 4808 ldr r0, [pc, #32] ; (8006198 ) + 8006178: f7fb ffbd bl 80020f6 for(uint8_t count=0;count<8;count++) - 8005cb8: 7bfb ldrb r3, [r7, #15] - 8005cba: 3301 adds r3, #1 - 8005cbc: 73fb strb r3, [r7, #15] - 8005cbe: 7bfb ldrb r3, [r7, #15] - 8005cc0: 2b07 cmp r3, #7 - 8005cc2: d9db bls.n 8005c7c + 800617c: 7bfb ldrb r3, [r7, #15] + 800617e: 3301 adds r3, #1 + 8006180: 73fb strb r3, [r7, #15] + 8006182: 7bfb ldrb r3, [r7, #15] + 8006184: 2b07 cmp r3, #7 + 8006186: d9db bls.n 8006140 } } - 8005cc4: bf00 nop - 8005cc6: bf00 nop - 8005cc8: 3710 adds r7, #16 - 8005cca: 46bd mov sp, r7 - 8005ccc: bd80 pop {r7, pc} - 8005cce: bf00 nop - 8005cd0: 40011c00 .word 0x40011c00 - 8005cd4: 40010c00 .word 0x40010c00 + 8006188: bf00 nop + 800618a: bf00 nop + 800618c: 3710 adds r7, #16 + 800618e: 46bd mov sp, r7 + 8006190: bd80 pop {r7, pc} + 8006192: bf00 nop + 8006194: 40011c00 .word 0x40011c00 + 8006198: 40010c00 .word 0x40010c00 -08005cd8 : +0800619c : //SPI读数据 //从触摸屏IC读取adc值 //CMD:指令 //返回值:读到的数据 uint16_t TP_Read_AD(char CMD) { - 8005cd8: b580 push {r7, lr} - 8005cda: b084 sub sp, #16 - 8005cdc: af00 add r7, sp, #0 - 8005cde: 4603 mov r3, r0 - 8005ce0: 71fb strb r3, [r7, #7] + 800619c: b580 push {r7, lr} + 800619e: b084 sub sp, #16 + 80061a0: af00 add r7, sp, #0 + 80061a2: 4603 mov r3, r0 + 80061a4: 71fb strb r3, [r7, #7] uint16_t Num=0; - 8005ce2: 2300 movs r3, #0 - 8005ce4: 81fb strh r3, [r7, #14] + 80061a6: 2300 movs r3, #0 + 80061a8: 81fb strh r3, [r7, #14] TCLK(0); //先拉低时钟 - 8005ce6: 2200 movs r2, #0 - 8005ce8: 2102 movs r1, #2 - 8005cea: 482b ldr r0, [pc, #172] ; (8005d98 ) - 8005cec: f7fc fa03 bl 80020f6 + 80061aa: 2200 movs r2, #0 + 80061ac: 2102 movs r1, #2 + 80061ae: 482b ldr r0, [pc, #172] ; (800625c ) + 80061b0: f7fb ffa1 bl 80020f6 TDIN(0); //拉低数据线 - 8005cf0: 2200 movs r2, #0 - 8005cf2: f44f 7100 mov.w r1, #512 ; 0x200 - 8005cf6: 4829 ldr r0, [pc, #164] ; (8005d9c ) - 8005cf8: f7fc f9fd bl 80020f6 + 80061b4: 2200 movs r2, #0 + 80061b6: f44f 7100 mov.w r1, #512 ; 0x200 + 80061ba: 4829 ldr r0, [pc, #164] ; (8006260 ) + 80061bc: f7fb ff9b bl 80020f6 TCS(0); //选中触摸屏IC - 8005cfc: 2200 movs r2, #0 - 8005cfe: 2104 movs r1, #4 - 8005d00: 4825 ldr r0, [pc, #148] ; (8005d98 ) - 8005d02: f7fc f9f8 bl 80020f6 + 80061c0: 2200 movs r2, #0 + 80061c2: 2104 movs r1, #4 + 80061c4: 4825 ldr r0, [pc, #148] ; (800625c ) + 80061c6: f7fb ff96 bl 80020f6 TP_Write_Byte(CMD);//发送命令字 - 8005d06: 79fb ldrb r3, [r7, #7] - 8005d08: 4618 mov r0, r3 - 8005d0a: f7ff ffaf bl 8005c6c + 80061ca: 79fb ldrb r3, [r7, #7] + 80061cc: 4618 mov r0, r3 + 80061ce: f7ff ffaf bl 8006130 HAL_GetTick(); //稍微延时,ad转换需要时间 - 8005d0e: f7fb ff0b bl 8001b28 + 80061d2: f7fb fca9 bl 8001b28 HAL_GetTick(); - 8005d12: f7fb ff09 bl 8001b28 + 80061d6: f7fb fca7 bl 8001b28 HAL_GetTick(); - 8005d16: f7fb ff07 bl 8001b28 + 80061da: f7fb fca5 bl 8001b28 HAL_GetTick(); - 8005d1a: f7fb ff05 bl 8001b28 + 80061de: f7fb fca3 bl 8001b28 HAL_GetTick(); - 8005d1e: f7fb ff03 bl 8001b28 + 80061e2: f7fb fca1 bl 8001b28 HAL_GetTick(); - 8005d22: f7fb ff01 bl 8001b28 + 80061e6: f7fb fc9f bl 8001b28 TCLK(1); //给1个时钟,清除BUSY - 8005d26: 2201 movs r2, #1 - 8005d28: 2102 movs r1, #2 - 8005d2a: 481b ldr r0, [pc, #108] ; (8005d98 ) - 8005d2c: f7fc f9e3 bl 80020f6 + 80061ea: 2201 movs r2, #1 + 80061ec: 2102 movs r1, #2 + 80061ee: 481b ldr r0, [pc, #108] ; (800625c ) + 80061f0: f7fb ff81 bl 80020f6 TCLK(0); - 8005d30: 2200 movs r2, #0 - 8005d32: 2102 movs r1, #2 - 8005d34: 4818 ldr r0, [pc, #96] ; (8005d98 ) - 8005d36: f7fc f9de bl 80020f6 + 80061f4: 2200 movs r2, #0 + 80061f6: 2102 movs r1, #2 + 80061f8: 4818 ldr r0, [pc, #96] ; (800625c ) + 80061fa: f7fb ff7c bl 80020f6 for(uint8_t count=0;count<16;count++)//读出16位数据,只有高12位有效 - 8005d3a: 2300 movs r3, #0 - 8005d3c: 737b strb r3, [r7, #13] - 8005d3e: e01a b.n 8005d76 + 80061fe: 2300 movs r3, #0 + 8006200: 737b strb r3, [r7, #13] + 8006202: e01a b.n 800623a { Num<<=1; - 8005d40: 89fb ldrh r3, [r7, #14] - 8005d42: 005b lsls r3, r3, #1 - 8005d44: 81fb strh r3, [r7, #14] + 8006204: 89fb ldrh r3, [r7, #14] + 8006206: 005b lsls r3, r3, #1 + 8006208: 81fb strh r3, [r7, #14] TCLK(0); //下降沿有效 - 8005d46: 2200 movs r2, #0 - 8005d48: 2102 movs r1, #2 - 8005d4a: 4813 ldr r0, [pc, #76] ; (8005d98 ) - 8005d4c: f7fc f9d3 bl 80020f6 + 800620a: 2200 movs r2, #0 + 800620c: 2102 movs r1, #2 + 800620e: 4813 ldr r0, [pc, #76] ; (800625c ) + 8006210: f7fb ff71 bl 80020f6 TCLK(1);; - 8005d50: 2201 movs r2, #1 - 8005d52: 2102 movs r1, #2 - 8005d54: 4810 ldr r0, [pc, #64] ; (8005d98 ) - 8005d56: f7fc f9ce bl 80020f6 + 8006214: 2201 movs r2, #1 + 8006216: 2102 movs r1, #2 + 8006218: 4810 ldr r0, [pc, #64] ; (800625c ) + 800621a: f7fb ff6c bl 80020f6 if(TDOUT){Num++;} - 8005d5a: f44f 7180 mov.w r1, #256 ; 0x100 - 8005d5e: 480f ldr r0, [pc, #60] ; (8005d9c ) - 8005d60: f7fc f9b2 bl 80020c8 - 8005d64: 4603 mov r3, r0 - 8005d66: 2b00 cmp r3, #0 - 8005d68: d002 beq.n 8005d70 - 8005d6a: 89fb ldrh r3, [r7, #14] - 8005d6c: 3301 adds r3, #1 - 8005d6e: 81fb strh r3, [r7, #14] + 800621e: f44f 7180 mov.w r1, #256 ; 0x100 + 8006222: 480f ldr r0, [pc, #60] ; (8006260 ) + 8006224: f7fb ff50 bl 80020c8 + 8006228: 4603 mov r3, r0 + 800622a: 2b00 cmp r3, #0 + 800622c: d002 beq.n 8006234 + 800622e: 89fb ldrh r3, [r7, #14] + 8006230: 3301 adds r3, #1 + 8006232: 81fb strh r3, [r7, #14] for(uint8_t count=0;count<16;count++)//读出16位数据,只有高12位有效 - 8005d70: 7b7b ldrb r3, [r7, #13] - 8005d72: 3301 adds r3, #1 - 8005d74: 737b strb r3, [r7, #13] - 8005d76: 7b7b ldrb r3, [r7, #13] - 8005d78: 2b0f cmp r3, #15 - 8005d7a: d9e1 bls.n 8005d40 + 8006234: 7b7b ldrb r3, [r7, #13] + 8006236: 3301 adds r3, #1 + 8006238: 737b strb r3, [r7, #13] + 800623a: 7b7b ldrb r3, [r7, #13] + 800623c: 2b0f cmp r3, #15 + 800623e: d9e1 bls.n 8006204 } Num>>=4; //只有高12位有效. - 8005d7c: 89fb ldrh r3, [r7, #14] - 8005d7e: 091b lsrs r3, r3, #4 - 8005d80: 81fb strh r3, [r7, #14] + 8006240: 89fb ldrh r3, [r7, #14] + 8006242: 091b lsrs r3, r3, #4 + 8006244: 81fb strh r3, [r7, #14] TCS(1); //释放片选 - 8005d82: 2201 movs r2, #1 - 8005d84: 2104 movs r1, #4 - 8005d86: 4804 ldr r0, [pc, #16] ; (8005d98 ) - 8005d88: f7fc f9b5 bl 80020f6 + 8006246: 2201 movs r2, #1 + 8006248: 2104 movs r1, #4 + 800624a: 4804 ldr r0, [pc, #16] ; (800625c ) + 800624c: f7fb ff53 bl 80020f6 return(Num); - 8005d8c: 89fb ldrh r3, [r7, #14] + 8006250: 89fb ldrh r3, [r7, #14] } - 8005d8e: 4618 mov r0, r3 - 8005d90: 3710 adds r7, #16 - 8005d92: 46bd mov sp, r7 - 8005d94: bd80 pop {r7, pc} - 8005d96: bf00 nop - 8005d98: 40010c00 .word 0x40010c00 - 8005d9c: 40011c00 .word 0x40011c00 + 8006252: 4618 mov r0, r3 + 8006254: 3710 adds r7, #16 + 8006256: 46bd mov sp, r7 + 8006258: bd80 pop {r7, pc} + 800625a: bf00 nop + 800625c: 40010c00 .word 0x40010c00 + 8006260: 40011c00 .word 0x40011c00 -08005da0 : +08006264 : //xy:指令(CMD_RDX/CMD_RDY) //返回值:读到的数据 #define READ_TIMES 5 //读取次数 #define LOST_VAL 1 //丢弃值 uint16_t TP_Read_XOY(uint8_t xy) { - 8005da0: b590 push {r4, r7, lr} - 8005da2: b089 sub sp, #36 ; 0x24 - 8005da4: af00 add r7, sp, #0 - 8005da6: 4603 mov r3, r0 - 8005da8: 71fb strb r3, [r7, #7] + 8006264: b590 push {r4, r7, lr} + 8006266: b089 sub sp, #36 ; 0x24 + 8006268: af00 add r7, sp, #0 + 800626a: 4603 mov r3, r0 + 800626c: 71fb strb r3, [r7, #7] uint16_t i, j; uint16_t buf[READ_TIMES]; uint16_t sum=0; - 8005daa: 2300 movs r3, #0 - 8005dac: 837b strh r3, [r7, #26] + 800626e: 2300 movs r3, #0 + 8006270: 837b strh r3, [r7, #26] uint16_t temp; for(i=0;i - 8005db4: 8bfc ldrh r4, [r7, #30] - 8005db6: 79fb ldrb r3, [r7, #7] - 8005db8: 4618 mov r0, r3 - 8005dba: f7ff ff8d bl 8005cd8 - 8005dbe: 4603 mov r3, r0 - 8005dc0: 461a mov r2, r3 - 8005dc2: 0063 lsls r3, r4, #1 - 8005dc4: f107 0120 add.w r1, r7, #32 - 8005dc8: 440b add r3, r1 - 8005dca: f823 2c14 strh.w r2, [r3, #-20] - 8005dce: 8bfb ldrh r3, [r7, #30] - 8005dd0: 3301 adds r3, #1 - 8005dd2: 83fb strh r3, [r7, #30] - 8005dd4: 8bfb ldrh r3, [r7, #30] - 8005dd6: 2b04 cmp r3, #4 - 8005dd8: d9ec bls.n 8005db4 + 8006272: 2300 movs r3, #0 + 8006274: 83fb strh r3, [r7, #30] + 8006276: e00f b.n 8006298 + 8006278: 8bfc ldrh r4, [r7, #30] + 800627a: 79fb ldrb r3, [r7, #7] + 800627c: 4618 mov r0, r3 + 800627e: f7ff ff8d bl 800619c + 8006282: 4603 mov r3, r0 + 8006284: 461a mov r2, r3 + 8006286: 0063 lsls r3, r4, #1 + 8006288: f107 0120 add.w r1, r7, #32 + 800628c: 440b add r3, r1 + 800628e: f823 2c14 strh.w r2, [r3, #-20] + 8006292: 8bfb ldrh r3, [r7, #30] + 8006294: 3301 adds r3, #1 + 8006296: 83fb strh r3, [r7, #30] + 8006298: 8bfb ldrh r3, [r7, #30] + 800629a: 2b04 cmp r3, #4 + 800629c: d9ec bls.n 8006278 for(i=0;i + 800629e: 2300 movs r3, #0 + 80062a0: 83fb strh r3, [r7, #30] + 80062a2: e03b b.n 800631c { for(j=i+1;j + 80062a4: 8bfb ldrh r3, [r7, #30] + 80062a6: 3301 adds r3, #1 + 80062a8: 83bb strh r3, [r7, #28] + 80062aa: e031 b.n 8006310 { if(buf[i]>buf[j])//升序排列 - 8005de8: 8bfb ldrh r3, [r7, #30] - 8005dea: 005b lsls r3, r3, #1 - 8005dec: f107 0220 add.w r2, r7, #32 - 8005df0: 4413 add r3, r2 - 8005df2: f833 2c14 ldrh.w r2, [r3, #-20] - 8005df6: 8bbb ldrh r3, [r7, #28] - 8005df8: 005b lsls r3, r3, #1 - 8005dfa: f107 0120 add.w r1, r7, #32 - 8005dfe: 440b add r3, r1 - 8005e00: f833 3c14 ldrh.w r3, [r3, #-20] - 8005e04: 429a cmp r2, r3 - 8005e06: d91e bls.n 8005e46 + 80062ac: 8bfb ldrh r3, [r7, #30] + 80062ae: 005b lsls r3, r3, #1 + 80062b0: f107 0220 add.w r2, r7, #32 + 80062b4: 4413 add r3, r2 + 80062b6: f833 2c14 ldrh.w r2, [r3, #-20] + 80062ba: 8bbb ldrh r3, [r7, #28] + 80062bc: 005b lsls r3, r3, #1 + 80062be: f107 0120 add.w r1, r7, #32 + 80062c2: 440b add r3, r1 + 80062c4: f833 3c14 ldrh.w r3, [r3, #-20] + 80062c8: 429a cmp r2, r3 + 80062ca: d91e bls.n 800630a { temp=buf[i]; - 8005e08: 8bfb ldrh r3, [r7, #30] - 8005e0a: 005b lsls r3, r3, #1 - 8005e0c: f107 0220 add.w r2, r7, #32 - 8005e10: 4413 add r3, r2 - 8005e12: f833 3c14 ldrh.w r3, [r3, #-20] - 8005e16: 833b strh r3, [r7, #24] + 80062cc: 8bfb ldrh r3, [r7, #30] + 80062ce: 005b lsls r3, r3, #1 + 80062d0: f107 0220 add.w r2, r7, #32 + 80062d4: 4413 add r3, r2 + 80062d6: f833 3c14 ldrh.w r3, [r3, #-20] + 80062da: 833b strh r3, [r7, #24] buf[i]=buf[j]; - 8005e18: 8bbb ldrh r3, [r7, #28] - 8005e1a: 8bfa ldrh r2, [r7, #30] - 8005e1c: 005b lsls r3, r3, #1 - 8005e1e: f107 0120 add.w r1, r7, #32 - 8005e22: 440b add r3, r1 - 8005e24: f833 1c14 ldrh.w r1, [r3, #-20] - 8005e28: 0053 lsls r3, r2, #1 - 8005e2a: f107 0220 add.w r2, r7, #32 - 8005e2e: 4413 add r3, r2 - 8005e30: 460a mov r2, r1 - 8005e32: f823 2c14 strh.w r2, [r3, #-20] + 80062dc: 8bbb ldrh r3, [r7, #28] + 80062de: 8bfa ldrh r2, [r7, #30] + 80062e0: 005b lsls r3, r3, #1 + 80062e2: f107 0120 add.w r1, r7, #32 + 80062e6: 440b add r3, r1 + 80062e8: f833 1c14 ldrh.w r1, [r3, #-20] + 80062ec: 0053 lsls r3, r2, #1 + 80062ee: f107 0220 add.w r2, r7, #32 + 80062f2: 4413 add r3, r2 + 80062f4: 460a mov r2, r1 + 80062f6: f823 2c14 strh.w r2, [r3, #-20] buf[j]=temp; - 8005e36: 8bbb ldrh r3, [r7, #28] - 8005e38: 005b lsls r3, r3, #1 - 8005e3a: f107 0220 add.w r2, r7, #32 - 8005e3e: 4413 add r3, r2 - 8005e40: 8b3a ldrh r2, [r7, #24] - 8005e42: f823 2c14 strh.w r2, [r3, #-20] + 80062fa: 8bbb ldrh r3, [r7, #28] + 80062fc: 005b lsls r3, r3, #1 + 80062fe: f107 0220 add.w r2, r7, #32 + 8006302: 4413 add r3, r2 + 8006304: 8b3a ldrh r2, [r7, #24] + 8006306: f823 2c14 strh.w r2, [r3, #-20] for(j=i+1;j + 800630a: 8bbb ldrh r3, [r7, #28] + 800630c: 3301 adds r3, #1 + 800630e: 83bb strh r3, [r7, #28] + 8006310: 8bbb ldrh r3, [r7, #28] + 8006312: 2b04 cmp r3, #4 + 8006314: d9ca bls.n 80062ac for(i=0;i + 8006316: 8bfb ldrh r3, [r7, #30] + 8006318: 3301 adds r3, #1 + 800631a: 83fb strh r3, [r7, #30] + 800631c: 8bfb ldrh r3, [r7, #30] + 800631e: 2b03 cmp r3, #3 + 8006320: d9c0 bls.n 80062a4 } } } sum=0; - 8005e5e: 2300 movs r3, #0 - 8005e60: 837b strh r3, [r7, #26] + 8006322: 2300 movs r3, #0 + 8006324: 837b strh r3, [r7, #26] for(i=LOST_VAL;i - 8005e68: 8bfb ldrh r3, [r7, #30] - 8005e6a: 005b lsls r3, r3, #1 - 8005e6c: f107 0220 add.w r2, r7, #32 - 8005e70: 4413 add r3, r2 - 8005e72: f833 2c14 ldrh.w r2, [r3, #-20] - 8005e76: 8b7b ldrh r3, [r7, #26] - 8005e78: 4413 add r3, r2 - 8005e7a: 837b strh r3, [r7, #26] - 8005e7c: 8bfb ldrh r3, [r7, #30] - 8005e7e: 3301 adds r3, #1 - 8005e80: 83fb strh r3, [r7, #30] - 8005e82: 8bfb ldrh r3, [r7, #30] - 8005e84: 2b03 cmp r3, #3 - 8005e86: d9ef bls.n 8005e68 + 8006326: 2301 movs r3, #1 + 8006328: 83fb strh r3, [r7, #30] + 800632a: e00c b.n 8006346 + 800632c: 8bfb ldrh r3, [r7, #30] + 800632e: 005b lsls r3, r3, #1 + 8006330: f107 0220 add.w r2, r7, #32 + 8006334: 4413 add r3, r2 + 8006336: f833 2c14 ldrh.w r2, [r3, #-20] + 800633a: 8b7b ldrh r3, [r7, #26] + 800633c: 4413 add r3, r2 + 800633e: 837b strh r3, [r7, #26] + 8006340: 8bfb ldrh r3, [r7, #30] + 8006342: 3301 adds r3, #1 + 8006344: 83fb strh r3, [r7, #30] + 8006346: 8bfb ldrh r3, [r7, #30] + 8006348: 2b03 cmp r3, #3 + 800634a: d9ef bls.n 800632c temp=sum/(READ_TIMES-2*LOST_VAL); - 8005e88: 8b7b ldrh r3, [r7, #26] - 8005e8a: 4a05 ldr r2, [pc, #20] ; (8005ea0 ) - 8005e8c: fba2 2303 umull r2, r3, r2, r3 - 8005e90: 085b lsrs r3, r3, #1 - 8005e92: 833b strh r3, [r7, #24] + 800634c: 8b7b ldrh r3, [r7, #26] + 800634e: 4a05 ldr r2, [pc, #20] ; (8006364 ) + 8006350: fba2 2303 umull r2, r3, r2, r3 + 8006354: 085b lsrs r3, r3, #1 + 8006356: 833b strh r3, [r7, #24] return temp; - 8005e94: 8b3b ldrh r3, [r7, #24] + 8006358: 8b3b ldrh r3, [r7, #24] } - 8005e96: 4618 mov r0, r3 - 8005e98: 3724 adds r7, #36 ; 0x24 - 8005e9a: 46bd mov sp, r7 - 8005e9c: bd90 pop {r4, r7, pc} - 8005e9e: bf00 nop - 8005ea0: aaaaaaab .word 0xaaaaaaab + 800635a: 4618 mov r0, r3 + 800635c: 3724 adds r7, #36 ; 0x24 + 800635e: 46bd mov sp, r7 + 8006360: bd90 pop {r4, r7, pc} + 8006362: bf00 nop + 8006364: aaaaaaab .word 0xaaaaaaab -08005ea4 : +08006368 : //读取x,y坐标 //x,y:读取到的坐标ADC值 void TP_Read_XY_ADC(int16_t *x,int16_t *y) { - 8005ea4: b580 push {r7, lr} - 8005ea6: b084 sub sp, #16 - 8005ea8: af00 add r7, sp, #0 - 8005eaa: 6078 str r0, [r7, #4] - 8005eac: 6039 str r1, [r7, #0] + 8006368: b580 push {r7, lr} + 800636a: b084 sub sp, #16 + 800636c: af00 add r7, sp, #0 + 800636e: 6078 str r0, [r7, #4] + 8006370: 6039 str r1, [r7, #0] int16_t xtemp,ytemp; xtemp=TP_Read_XOY(CMD_RDX); - 8005eae: 2090 movs r0, #144 ; 0x90 - 8005eb0: f7ff ff76 bl 8005da0 - 8005eb4: 4603 mov r3, r0 - 8005eb6: 81fb strh r3, [r7, #14] + 8006372: 2090 movs r0, #144 ; 0x90 + 8006374: f7ff ff76 bl 8006264 + 8006378: 4603 mov r3, r0 + 800637a: 81fb strh r3, [r7, #14] ytemp=TP_Read_XOY(CMD_RDY); - 8005eb8: 20d0 movs r0, #208 ; 0xd0 - 8005eba: f7ff ff71 bl 8005da0 - 8005ebe: 4603 mov r3, r0 - 8005ec0: 81bb strh r3, [r7, #12] + 800637c: 20d0 movs r0, #208 ; 0xd0 + 800637e: f7ff ff71 bl 8006264 + 8006382: 4603 mov r3, r0 + 8006384: 81bb strh r3, [r7, #12] *x=xtemp; - 8005ec2: 687b ldr r3, [r7, #4] - 8005ec4: 89fa ldrh r2, [r7, #14] - 8005ec6: 801a strh r2, [r3, #0] + 8006386: 687b ldr r3, [r7, #4] + 8006388: 89fa ldrh r2, [r7, #14] + 800638a: 801a strh r2, [r3, #0] *y=ytemp; - 8005ec8: 683b ldr r3, [r7, #0] - 8005eca: 89ba ldrh r2, [r7, #12] - 8005ecc: 801a strh r2, [r3, #0] + 800638c: 683b ldr r3, [r7, #0] + 800638e: 89ba ldrh r2, [r7, #12] + 8006390: 801a strh r2, [r3, #0] } - 8005ece: bf00 nop - 8005ed0: 3710 adds r7, #16 - 8005ed2: 46bd mov sp, r7 - 8005ed4: bd80 pop {r7, pc} + 8006392: bf00 nop + 8006394: 3710 adds r7, #16 + 8006396: 46bd mov sp, r7 + 8006398: bd80 pop {r7, pc} -08005ed6 : +0800639a : //该函数能大大提高准确度 //x,y:读取到的坐标值 //返回值:0,失败;1,成功。 #define ERR_RANGE 10 //误差范围 uint8_t TP_Read_XY2(int16_t *x,int16_t *y) { - 8005ed6: b580 push {r7, lr} - 8005ed8: b084 sub sp, #16 - 8005eda: af00 add r7, sp, #0 - 8005edc: 6078 str r0, [r7, #4] - 8005ede: 6039 str r1, [r7, #0] + 800639a: b580 push {r7, lr} + 800639c: b084 sub sp, #16 + 800639e: af00 add r7, sp, #0 + 80063a0: 6078 str r0, [r7, #4] + 80063a2: 6039 str r1, [r7, #0] int16_t x1,y1; int16_t x2,y2; TP_Read_XY_ADC(&x1,&y1); - 8005ee0: f107 020c add.w r2, r7, #12 - 8005ee4: f107 030e add.w r3, r7, #14 - 8005ee8: 4611 mov r1, r2 - 8005eea: 4618 mov r0, r3 - 8005eec: f7ff ffda bl 8005ea4 + 80063a4: f107 020c add.w r2, r7, #12 + 80063a8: f107 030e add.w r3, r7, #14 + 80063ac: 4611 mov r1, r2 + 80063ae: 4618 mov r0, r3 + 80063b0: f7ff ffda bl 8006368 TP_Read_XY_ADC(&x2,&y2); - 8005ef0: f107 0208 add.w r2, r7, #8 - 8005ef4: f107 030a add.w r3, r7, #10 - 8005ef8: 4611 mov r1, r2 - 8005efa: 4618 mov r0, r3 - 8005efc: f7ff ffd2 bl 8005ea4 + 80063b4: f107 0208 add.w r2, r7, #8 + 80063b8: f107 030a add.w r3, r7, #10 + 80063bc: 4611 mov r1, r2 + 80063be: 4618 mov r0, r3 + 80063c0: f7ff ffd2 bl 8006368 if(((x2<=x1&&x1 - 8005f0c: f9b7 300a ldrsh.w r3, [r7, #10] - 8005f10: 3309 adds r3, #9 - 8005f12: f9b7 200e ldrsh.w r2, [r7, #14] - 8005f16: 4293 cmp r3, r2 - 8005f18: da0c bge.n 8005f34 - 8005f1a: f9b7 200e ldrsh.w r2, [r7, #14] - 8005f1e: f9b7 300a ldrsh.w r3, [r7, #10] - 8005f22: 429a cmp r2, r3 - 8005f24: dc3a bgt.n 8005f9c - 8005f26: f9b7 300e ldrsh.w r3, [r7, #14] - 8005f2a: 3309 adds r3, #9 - 8005f2c: f9b7 200a ldrsh.w r2, [r7, #10] - 8005f30: 4293 cmp r3, r2 - 8005f32: db33 blt.n 8005f9c + 80063c4: f9b7 200a ldrsh.w r2, [r7, #10] + 80063c8: f9b7 300e ldrsh.w r3, [r7, #14] + 80063cc: 429a cmp r2, r3 + 80063ce: dc06 bgt.n 80063de + 80063d0: f9b7 300a ldrsh.w r3, [r7, #10] + 80063d4: 3309 adds r3, #9 + 80063d6: f9b7 200e ldrsh.w r2, [r7, #14] + 80063da: 4293 cmp r3, r2 + 80063dc: da0c bge.n 80063f8 + 80063de: f9b7 200e ldrsh.w r2, [r7, #14] + 80063e2: f9b7 300a ldrsh.w r3, [r7, #10] + 80063e6: 429a cmp r2, r3 + 80063e8: dc3a bgt.n 8006460 + 80063ea: f9b7 300e ldrsh.w r3, [r7, #14] + 80063ee: 3309 adds r3, #9 + 80063f0: f9b7 200a ldrsh.w r2, [r7, #10] + 80063f4: 4293 cmp r3, r2 + 80063f6: db33 blt.n 8006460 &&((y2<=y1&&y1 - 8005f40: f9b7 3008 ldrsh.w r3, [r7, #8] - 8005f44: 3309 adds r3, #9 - 8005f46: f9b7 200c ldrsh.w r2, [r7, #12] - 8005f4a: 4293 cmp r3, r2 - 8005f4c: da0c bge.n 8005f68 - 8005f4e: f9b7 200c ldrsh.w r2, [r7, #12] - 8005f52: f9b7 3008 ldrsh.w r3, [r7, #8] - 8005f56: 429a cmp r2, r3 - 8005f58: dc20 bgt.n 8005f9c - 8005f5a: f9b7 300c ldrsh.w r3, [r7, #12] - 8005f5e: 3309 adds r3, #9 - 8005f60: f9b7 2008 ldrsh.w r2, [r7, #8] - 8005f64: 4293 cmp r3, r2 - 8005f66: db19 blt.n 8005f9c + 80063f8: f9b7 2008 ldrsh.w r2, [r7, #8] + 80063fc: f9b7 300c ldrsh.w r3, [r7, #12] + 8006400: 429a cmp r2, r3 + 8006402: dc06 bgt.n 8006412 + 8006404: f9b7 3008 ldrsh.w r3, [r7, #8] + 8006408: 3309 adds r3, #9 + 800640a: f9b7 200c ldrsh.w r2, [r7, #12] + 800640e: 4293 cmp r3, r2 + 8006410: da0c bge.n 800642c + 8006412: f9b7 200c ldrsh.w r2, [r7, #12] + 8006416: f9b7 3008 ldrsh.w r3, [r7, #8] + 800641a: 429a cmp r2, r3 + 800641c: dc20 bgt.n 8006460 + 800641e: f9b7 300c ldrsh.w r3, [r7, #12] + 8006422: 3309 adds r3, #9 + 8006424: f9b7 2008 ldrsh.w r2, [r7, #8] + 8006428: 4293 cmp r3, r2 + 800642a: db19 blt.n 8006460 { *x=(x1+x2)/2; - 8005f68: f9b7 300e ldrsh.w r3, [r7, #14] - 8005f6c: 461a mov r2, r3 - 8005f6e: f9b7 300a ldrsh.w r3, [r7, #10] - 8005f72: 4413 add r3, r2 - 8005f74: 0fda lsrs r2, r3, #31 - 8005f76: 4413 add r3, r2 - 8005f78: 105b asrs r3, r3, #1 - 8005f7a: b21a sxth r2, r3 - 8005f7c: 687b ldr r3, [r7, #4] - 8005f7e: 801a strh r2, [r3, #0] + 800642c: f9b7 300e ldrsh.w r3, [r7, #14] + 8006430: 461a mov r2, r3 + 8006432: f9b7 300a ldrsh.w r3, [r7, #10] + 8006436: 4413 add r3, r2 + 8006438: 0fda lsrs r2, r3, #31 + 800643a: 4413 add r3, r2 + 800643c: 105b asrs r3, r3, #1 + 800643e: b21a sxth r2, r3 + 8006440: 687b ldr r3, [r7, #4] + 8006442: 801a strh r2, [r3, #0] *y=(y1+y2)/2; - 8005f80: f9b7 300c ldrsh.w r3, [r7, #12] - 8005f84: 461a mov r2, r3 - 8005f86: f9b7 3008 ldrsh.w r3, [r7, #8] - 8005f8a: 4413 add r3, r2 - 8005f8c: 0fda lsrs r2, r3, #31 - 8005f8e: 4413 add r3, r2 - 8005f90: 105b asrs r3, r3, #1 - 8005f92: b21a sxth r2, r3 - 8005f94: 683b ldr r3, [r7, #0] - 8005f96: 801a strh r2, [r3, #0] + 8006444: f9b7 300c ldrsh.w r3, [r7, #12] + 8006448: 461a mov r2, r3 + 800644a: f9b7 3008 ldrsh.w r3, [r7, #8] + 800644e: 4413 add r3, r2 + 8006450: 0fda lsrs r2, r3, #31 + 8006452: 4413 add r3, r2 + 8006454: 105b asrs r3, r3, #1 + 8006456: b21a sxth r2, r3 + 8006458: 683b ldr r3, [r7, #0] + 800645a: 801a strh r2, [r3, #0] return 1; - 8005f98: 2301 movs r3, #1 - 8005f9a: e000 b.n 8005f9e + 800645c: 2301 movs r3, #1 + 800645e: e000 b.n 8006462 }else return 0; - 8005f9c: 2300 movs r3, #0 + 8006460: 2300 movs r3, #0 } - 8005f9e: 4618 mov r0, r3 - 8005fa0: 3710 adds r7, #16 - 8005fa2: 46bd mov sp, r7 - 8005fa4: bd80 pop {r7, pc} + 8006462: 4618 mov r0, r3 + 8006464: 3710 adds r7, #16 + 8006466: 46bd mov sp, r7 + 8006468: bd80 pop {r7, pc} ... -08005fa8 : +0800646c : touch_device t0;// t0 yyds~ touch_config tconfig; //触摸更新服务,状态机写法,循环获取坐标 void TP_Server() { - 8005fa8: b598 push {r3, r4, r7, lr} - 8005faa: af00 add r7, sp, #0 + 800646c: b598 push {r3, r4, r7, lr} + 800646e: af00 add r7, sp, #0 if(TPEN==0) //如果有触摸 - 8005fac: f44f 6180 mov.w r1, #1024 ; 0x400 - 8005fb0: 4835 ldr r0, [pc, #212] ; (8006088 ) - 8005fb2: f7fc f889 bl 80020c8 - 8005fb6: 4603 mov r3, r0 - 8005fb8: 2b00 cmp r3, #0 - 8005fba: d155 bne.n 8006068 + 8006470: f44f 6180 mov.w r1, #1024 ; 0x400 + 8006474: 4835 ldr r0, [pc, #212] ; (800654c ) + 8006476: f7fb fe27 bl 80020c8 + 800647a: 4603 mov r3, r0 + 800647c: 2b00 cmp r3, #0 + 800647e: d155 bne.n 800652c { if(TP_Read_XY2(&t0.adc_x,&t0.adc_y)) - 8005fbc: 4933 ldr r1, [pc, #204] ; (800608c ) - 8005fbe: 4834 ldr r0, [pc, #208] ; (8006090 ) - 8005fc0: f7ff ff89 bl 8005ed6 - 8005fc4: 4603 mov r3, r0 - 8005fc6: 2b00 cmp r3, #0 - 8005fc8: d043 beq.n 8006052 + 8006480: 4933 ldr r1, [pc, #204] ; (8006550 ) + 8006482: 4834 ldr r0, [pc, #208] ; (8006554 ) + 8006484: f7ff ff89 bl 800639a + 8006488: 4603 mov r3, r0 + 800648a: 2b00 cmp r3, #0 + 800648c: d043 beq.n 8006516 {//先读取ad值 t0.pix_x=(t0.adc_x/tconfig.x_acc)-tconfig.x_offset;//转换为像素坐标 - 8005fca: 4b31 ldr r3, [pc, #196] ; (8006090 ) - 8005fcc: 881b ldrh r3, [r3, #0] - 8005fce: 4618 mov r0, r3 - 8005fd0: f7fa fed0 bl 8000d74 <__aeabi_i2f> - 8005fd4: 4602 mov r2, r0 - 8005fd6: 4b2f ldr r3, [pc, #188] ; (8006094 ) - 8005fd8: 685b ldr r3, [r3, #4] - 8005fda: 4619 mov r1, r3 - 8005fdc: 4610 mov r0, r2 - 8005fde: f7fa ffd1 bl 8000f84 <__aeabi_fdiv> - 8005fe2: 4603 mov r3, r0 - 8005fe4: 461c mov r4, r3 - 8005fe6: 4b2b ldr r3, [pc, #172] ; (8006094 ) - 8005fe8: 68db ldr r3, [r3, #12] - 8005fea: 4618 mov r0, r3 - 8005fec: f7fa fec2 bl 8000d74 <__aeabi_i2f> - 8005ff0: 4603 mov r3, r0 - 8005ff2: 4619 mov r1, r3 - 8005ff4: 4620 mov r0, r4 - 8005ff6: f7fa fe07 bl 8000c08 <__aeabi_fsub> - 8005ffa: 4603 mov r3, r0 - 8005ffc: 4618 mov r0, r3 - 8005ffe: f7fb f85d bl 80010bc <__aeabi_f2iz> - 8006002: 4603 mov r3, r0 - 8006004: 4a22 ldr r2, [pc, #136] ; (8006090 ) - 8006006: 6053 str r3, [r2, #4] + 800648e: 4b31 ldr r3, [pc, #196] ; (8006554 ) + 8006490: 881b ldrh r3, [r3, #0] + 8006492: 4618 mov r0, r3 + 8006494: f7fa fc6e bl 8000d74 <__aeabi_i2f> + 8006498: 4602 mov r2, r0 + 800649a: 4b2f ldr r3, [pc, #188] ; (8006558 ) + 800649c: 685b ldr r3, [r3, #4] + 800649e: 4619 mov r1, r3 + 80064a0: 4610 mov r0, r2 + 80064a2: f7fa fd6f bl 8000f84 <__aeabi_fdiv> + 80064a6: 4603 mov r3, r0 + 80064a8: 461c mov r4, r3 + 80064aa: 4b2b ldr r3, [pc, #172] ; (8006558 ) + 80064ac: 68db ldr r3, [r3, #12] + 80064ae: 4618 mov r0, r3 + 80064b0: f7fa fc60 bl 8000d74 <__aeabi_i2f> + 80064b4: 4603 mov r3, r0 + 80064b6: 4619 mov r1, r3 + 80064b8: 4620 mov r0, r4 + 80064ba: f7fa fba5 bl 8000c08 <__aeabi_fsub> + 80064be: 4603 mov r3, r0 + 80064c0: 4618 mov r0, r3 + 80064c2: f7fa fdfb bl 80010bc <__aeabi_f2iz> + 80064c6: 4603 mov r3, r0 + 80064c8: 4a22 ldr r2, [pc, #136] ; (8006554 ) + 80064ca: 6053 str r3, [r2, #4] t0.pix_y=(t0.adc_y/tconfig.y_acc)-tconfig.y_offset; - 8006008: 4b21 ldr r3, [pc, #132] ; (8006090 ) - 800600a: 885b ldrh r3, [r3, #2] - 800600c: 4618 mov r0, r3 - 800600e: f7fa feb1 bl 8000d74 <__aeabi_i2f> - 8006012: 4602 mov r2, r0 - 8006014: 4b1f ldr r3, [pc, #124] ; (8006094 ) - 8006016: 689b ldr r3, [r3, #8] - 8006018: 4619 mov r1, r3 - 800601a: 4610 mov r0, r2 - 800601c: f7fa ffb2 bl 8000f84 <__aeabi_fdiv> - 8006020: 4603 mov r3, r0 - 8006022: 461c mov r4, r3 - 8006024: 4b1b ldr r3, [pc, #108] ; (8006094 ) - 8006026: 691b ldr r3, [r3, #16] - 8006028: 4618 mov r0, r3 - 800602a: f7fa fea3 bl 8000d74 <__aeabi_i2f> - 800602e: 4603 mov r3, r0 - 8006030: 4619 mov r1, r3 - 8006032: 4620 mov r0, r4 - 8006034: f7fa fde8 bl 8000c08 <__aeabi_fsub> - 8006038: 4603 mov r3, r0 - 800603a: 4618 mov r0, r3 - 800603c: f7fb f83e bl 80010bc <__aeabi_f2iz> - 8006040: 4603 mov r3, r0 - 8006042: 4a13 ldr r2, [pc, #76] ; (8006090 ) - 8006044: 6093 str r3, [r2, #8] + 80064cc: 4b21 ldr r3, [pc, #132] ; (8006554 ) + 80064ce: 885b ldrh r3, [r3, #2] + 80064d0: 4618 mov r0, r3 + 80064d2: f7fa fc4f bl 8000d74 <__aeabi_i2f> + 80064d6: 4602 mov r2, r0 + 80064d8: 4b1f ldr r3, [pc, #124] ; (8006558 ) + 80064da: 689b ldr r3, [r3, #8] + 80064dc: 4619 mov r1, r3 + 80064de: 4610 mov r0, r2 + 80064e0: f7fa fd50 bl 8000f84 <__aeabi_fdiv> + 80064e4: 4603 mov r3, r0 + 80064e6: 461c mov r4, r3 + 80064e8: 4b1b ldr r3, [pc, #108] ; (8006558 ) + 80064ea: 691b ldr r3, [r3, #16] + 80064ec: 4618 mov r0, r3 + 80064ee: f7fa fc41 bl 8000d74 <__aeabi_i2f> + 80064f2: 4603 mov r3, r0 + 80064f4: 4619 mov r1, r3 + 80064f6: 4620 mov r0, r4 + 80064f8: f7fa fb86 bl 8000c08 <__aeabi_fsub> + 80064fc: 4603 mov r3, r0 + 80064fe: 4618 mov r0, r3 + 8006500: f7fa fddc bl 80010bc <__aeabi_f2iz> + 8006504: 4603 mov r3, r0 + 8006506: 4a13 ldr r2, [pc, #76] ; (8006554 ) + 8006508: 6093 str r3, [r2, #8] t0.d=1; - 8006046: 4a12 ldr r2, [pc, #72] ; (8006090 ) - 8006048: 7b13 ldrb r3, [r2, #12] - 800604a: f043 0304 orr.w r3, r3, #4 - 800604e: 7313 strb r3, [r2, #12] - 8006050: e004 b.n 800605c + 800650a: 4a12 ldr r2, [pc, #72] ; (8006554 ) + 800650c: 7b13 ldrb r3, [r2, #12] + 800650e: f043 0304 orr.w r3, r3, #4 + 8006512: 7313 strb r3, [r2, #12] + 8006514: e004 b.n 8006520 }else { t0.d=0; - 8006052: 4a0f ldr r2, [pc, #60] ; (8006090 ) - 8006054: 7b13 ldrb r3, [r2, #12] - 8006056: f36f 0382 bfc r3, #2, #1 - 800605a: 7313 strb r3, [r2, #12] + 8006516: 4a0f ldr r2, [pc, #60] ; (8006554 ) + 8006518: 7b13 ldrb r3, [r2, #12] + 800651a: f36f 0382 bfc r3, #2, #1 + 800651e: 7313 strb r3, [r2, #12] } t0.c=1; - 800605c: 4a0c ldr r2, [pc, #48] ; (8006090 ) - 800605e: 7b13 ldrb r3, [r2, #12] - 8006060: f043 0302 orr.w r3, r3, #2 - 8006064: 7313 strb r3, [r2, #12] + 8006520: 4a0c ldr r2, [pc, #48] ; (8006554 ) + 8006522: 7b13 ldrb r3, [r2, #12] + 8006524: f043 0302 orr.w r3, r3, #2 + 8006528: 7313 strb r3, [r2, #12] { t0.c=0; t0.pix_x=-1; t0.pix_y=-1; } } - 8006066: e00c b.n 8006082 + 800652a: e00c b.n 8006546 t0.c=0; - 8006068: 4a09 ldr r2, [pc, #36] ; (8006090 ) - 800606a: 7b13 ldrb r3, [r2, #12] - 800606c: f36f 0341 bfc r3, #1, #1 - 8006070: 7313 strb r3, [r2, #12] + 800652c: 4a09 ldr r2, [pc, #36] ; (8006554 ) + 800652e: 7b13 ldrb r3, [r2, #12] + 8006530: f36f 0341 bfc r3, #1, #1 + 8006534: 7313 strb r3, [r2, #12] t0.pix_x=-1; - 8006072: 4b07 ldr r3, [pc, #28] ; (8006090 ) - 8006074: f04f 32ff mov.w r2, #4294967295 ; 0xffffffff - 8006078: 605a str r2, [r3, #4] + 8006536: 4b07 ldr r3, [pc, #28] ; (8006554 ) + 8006538: f04f 32ff mov.w r2, #4294967295 ; 0xffffffff + 800653c: 605a str r2, [r3, #4] t0.pix_y=-1; - 800607a: 4b05 ldr r3, [pc, #20] ; (8006090 ) - 800607c: f04f 32ff mov.w r2, #4294967295 ; 0xffffffff - 8006080: 609a str r2, [r3, #8] + 800653e: 4b05 ldr r3, [pc, #20] ; (8006554 ) + 8006540: f04f 32ff mov.w r2, #4294967295 ; 0xffffffff + 8006544: 609a str r2, [r3, #8] } - 8006082: bf00 nop - 8006084: bd98 pop {r3, r4, r7, pc} - 8006086: bf00 nop - 8006088: 40011c00 .word 0x40011c00 - 800608c: 20000386 .word 0x20000386 - 8006090: 20000384 .word 0x20000384 - 8006094: 2000036c .word 0x2000036c + 8006546: bf00 nop + 8006548: bd98 pop {r3, r4, r7, pc} + 800654a: bf00 nop + 800654c: 40011c00 .word 0x40011c00 + 8006550: 20000392 .word 0x20000392 + 8006554: 20000390 .word 0x20000390 + 8006558: 20000378 .word 0x20000378 -08006098 : +0800655c : return 0; } //校准用,画一个目标坐标 //r=坐标半径,显示特效用 void TP_DrwaTrage(int x,int y,int r) { - 8006098: b590 push {r4, r7, lr} - 800609a: b087 sub sp, #28 - 800609c: af02 add r7, sp, #8 - 800609e: 60f8 str r0, [r7, #12] - 80060a0: 60b9 str r1, [r7, #8] - 80060a2: 607a str r2, [r7, #4] + 800655c: b590 push {r4, r7, lr} + 800655e: b087 sub sp, #28 + 8006560: af02 add r7, sp, #8 + 8006562: 60f8 str r0, [r7, #12] + 8006564: 60b9 str r1, [r7, #8] + 8006566: 607a str r2, [r7, #4] Draw_Circle(x,y,r+1,GRAY); - 80060a4: 68fb ldr r3, [r7, #12] - 80060a6: b298 uxth r0, r3 - 80060a8: 68bb ldr r3, [r7, #8] - 80060aa: b299 uxth r1, r3 - 80060ac: 687b ldr r3, [r7, #4] - 80060ae: b29b uxth r3, r3 - 80060b0: 3301 adds r3, #1 - 80060b2: b29a uxth r2, r3 - 80060b4: f248 4330 movw r3, #33840 ; 0x8430 - 80060b8: f7ff fa65 bl 8005586 + 8006568: 68fb ldr r3, [r7, #12] + 800656a: b298 uxth r0, r3 + 800656c: 68bb ldr r3, [r7, #8] + 800656e: b299 uxth r1, r3 + 8006570: 687b ldr r3, [r7, #4] + 8006572: b29b uxth r3, r3 + 8006574: 3301 adds r3, #1 + 8006576: b29a uxth r2, r3 + 8006578: f248 4330 movw r3, #33840 ; 0x8430 + 800657c: f7ff f803 bl 8005586 Draw_Circle(x,y,r,RED); - 80060bc: 68fb ldr r3, [r7, #12] - 80060be: b298 uxth r0, r3 - 80060c0: 68bb ldr r3, [r7, #8] - 80060c2: b299 uxth r1, r3 - 80060c4: 687b ldr r3, [r7, #4] - 80060c6: b29a uxth r2, r3 - 80060c8: f44f 4378 mov.w r3, #63488 ; 0xf800 - 80060cc: f7ff fa5b bl 8005586 + 8006580: 68fb ldr r3, [r7, #12] + 8006582: b298 uxth r0, r3 + 8006584: 68bb ldr r3, [r7, #8] + 8006586: b299 uxth r1, r3 + 8006588: 687b ldr r3, [r7, #4] + 800658a: b29a uxth r2, r3 + 800658c: f44f 4378 mov.w r3, #63488 ; 0xf800 + 8006590: f7fe fff9 bl 8005586 LCD_DrawLine(x,y,x+10,y,RED); - 80060d0: 68fb ldr r3, [r7, #12] - 80060d2: b298 uxth r0, r3 - 80060d4: 68bb ldr r3, [r7, #8] - 80060d6: b299 uxth r1, r3 - 80060d8: 68fb ldr r3, [r7, #12] - 80060da: b29b uxth r3, r3 - 80060dc: 330a adds r3, #10 - 80060de: b29a uxth r2, r3 - 80060e0: 68bb ldr r3, [r7, #8] - 80060e2: b29b uxth r3, r3 - 80060e4: f44f 4478 mov.w r4, #63488 ; 0xf800 - 80060e8: 9400 str r4, [sp, #0] - 80060ea: f7ff f9c7 bl 800547c + 8006594: 68fb ldr r3, [r7, #12] + 8006596: b298 uxth r0, r3 + 8006598: 68bb ldr r3, [r7, #8] + 800659a: b299 uxth r1, r3 + 800659c: 68fb ldr r3, [r7, #12] + 800659e: b29b uxth r3, r3 + 80065a0: 330a adds r3, #10 + 80065a2: b29a uxth r2, r3 + 80065a4: 68bb ldr r3, [r7, #8] + 80065a6: b29b uxth r3, r3 + 80065a8: f44f 4478 mov.w r4, #63488 ; 0xf800 + 80065ac: 9400 str r4, [sp, #0] + 80065ae: f7fe ff65 bl 800547c LCD_DrawLine(x,y,x,y+10,RED); - 80060ee: 68fb ldr r3, [r7, #12] - 80060f0: b298 uxth r0, r3 - 80060f2: 68bb ldr r3, [r7, #8] - 80060f4: b299 uxth r1, r3 - 80060f6: 68fb ldr r3, [r7, #12] - 80060f8: b29a uxth r2, r3 - 80060fa: 68bb ldr r3, [r7, #8] - 80060fc: b29b uxth r3, r3 - 80060fe: 330a adds r3, #10 - 8006100: b29b uxth r3, r3 - 8006102: f44f 4478 mov.w r4, #63488 ; 0xf800 - 8006106: 9400 str r4, [sp, #0] - 8006108: f7ff f9b8 bl 800547c + 80065b2: 68fb ldr r3, [r7, #12] + 80065b4: b298 uxth r0, r3 + 80065b6: 68bb ldr r3, [r7, #8] + 80065b8: b299 uxth r1, r3 + 80065ba: 68fb ldr r3, [r7, #12] + 80065bc: b29a uxth r2, r3 + 80065be: 68bb ldr r3, [r7, #8] + 80065c0: b29b uxth r3, r3 + 80065c2: 330a adds r3, #10 + 80065c4: b29b uxth r3, r3 + 80065c6: f44f 4478 mov.w r4, #63488 ; 0xf800 + 80065ca: 9400 str r4, [sp, #0] + 80065cc: f7fe ff56 bl 800547c LCD_DrawLine(x,y,x-10,y,RED); - 800610c: 68fb ldr r3, [r7, #12] - 800610e: b298 uxth r0, r3 - 8006110: 68bb ldr r3, [r7, #8] - 8006112: b299 uxth r1, r3 - 8006114: 68fb ldr r3, [r7, #12] - 8006116: b29b uxth r3, r3 - 8006118: 3b0a subs r3, #10 - 800611a: b29a uxth r2, r3 - 800611c: 68bb ldr r3, [r7, #8] - 800611e: b29b uxth r3, r3 - 8006120: f44f 4478 mov.w r4, #63488 ; 0xf800 - 8006124: 9400 str r4, [sp, #0] - 8006126: f7ff f9a9 bl 800547c + 80065d0: 68fb ldr r3, [r7, #12] + 80065d2: b298 uxth r0, r3 + 80065d4: 68bb ldr r3, [r7, #8] + 80065d6: b299 uxth r1, r3 + 80065d8: 68fb ldr r3, [r7, #12] + 80065da: b29b uxth r3, r3 + 80065dc: 3b0a subs r3, #10 + 80065de: b29a uxth r2, r3 + 80065e0: 68bb ldr r3, [r7, #8] + 80065e2: b29b uxth r3, r3 + 80065e4: f44f 4478 mov.w r4, #63488 ; 0xf800 + 80065e8: 9400 str r4, [sp, #0] + 80065ea: f7fe ff47 bl 800547c LCD_DrawLine(x,y,x,y-10,RED); - 800612a: 68fb ldr r3, [r7, #12] - 800612c: b298 uxth r0, r3 - 800612e: 68bb ldr r3, [r7, #8] - 8006130: b299 uxth r1, r3 - 8006132: 68fb ldr r3, [r7, #12] - 8006134: b29a uxth r2, r3 - 8006136: 68bb ldr r3, [r7, #8] - 8006138: b29b uxth r3, r3 - 800613a: 3b0a subs r3, #10 - 800613c: b29b uxth r3, r3 - 800613e: f44f 4478 mov.w r4, #63488 ; 0xf800 - 8006142: 9400 str r4, [sp, #0] - 8006144: f7ff f99a bl 800547c + 80065ee: 68fb ldr r3, [r7, #12] + 80065f0: b298 uxth r0, r3 + 80065f2: 68bb ldr r3, [r7, #8] + 80065f4: b299 uxth r1, r3 + 80065f6: 68fb ldr r3, [r7, #12] + 80065f8: b29a uxth r2, r3 + 80065fa: 68bb ldr r3, [r7, #8] + 80065fc: b29b uxth r3, r3 + 80065fe: 3b0a subs r3, #10 + 8006600: b29b uxth r3, r3 + 8006602: f44f 4478 mov.w r4, #63488 ; 0xf800 + 8006606: 9400 str r4, [sp, #0] + 8006608: f7fe ff38 bl 800547c } - 8006148: bf00 nop - 800614a: 3714 adds r7, #20 - 800614c: 46bd mov sp, r7 - 800614e: bd90 pop {r4, r7, pc} + 800660c: bf00 nop + 800660e: 3714 adds r7, #20 + 8006610: 46bd mov sp, r7 + 8006612: bd90 pop {r4, r7, pc} -08006150 : +08006614 : //触摸屏校准 //mode 校准模式,0 被动校准 ,1 主动校准 void TP_adjustment(char mode) { - 8006150: b5b0 push {r4, r5, r7, lr} - 8006152: b0a6 sub sp, #152 ; 0x98 - 8006154: af02 add r7, sp, #8 - 8006156: 4603 mov r3, r0 - 8006158: 71fb strb r3, [r7, #7] + 8006614: b5b0 push {r4, r5, r7, lr} + 8006616: b0a6 sub sp, #152 ; 0x98 + 8006618: af02 add r7, sp, #8 + 800661a: 4603 mov r3, r0 + 800661c: 71fb strb r3, [r7, #7] //判断是否需要校准,从eeprom获取数据 EEPROM_READ_BATY(16,(char *)&tconfig,sizeof(touch_config)); - 800615a: 2218 movs r2, #24 - 800615c: 4917 ldr r1, [pc, #92] ; (80061bc ) - 800615e: 2010 movs r0, #16 - 8006160: f7ff fbd6 bl 8005910 + 800661e: 2218 movs r2, #24 + 8006620: 4917 ldr r1, [pc, #92] ; (8006680 ) + 8006622: 2010 movs r0, #16 + 8006624: f7ff f974 bl 8005910 if(tconfig.begin==0xab&&tconfig.end==0xcd&&mode==0) //判断校准标记 - 8006164: 4b15 ldr r3, [pc, #84] ; (80061bc ) - 8006166: 781b ldrb r3, [r3, #0] - 8006168: 2bab cmp r3, #171 ; 0xab - 800616a: d107 bne.n 800617c - 800616c: 4b13 ldr r3, [pc, #76] ; (80061bc ) - 800616e: 7d1b ldrb r3, [r3, #20] - 8006170: 2bcd cmp r3, #205 ; 0xcd - 8006172: d103 bne.n 800617c - 8006174: 79fb ldrb r3, [r7, #7] - 8006176: 2b00 cmp r3, #0 - 8006178: f000 82b8 beq.w 80066ec + 8006628: 4b15 ldr r3, [pc, #84] ; (8006680 ) + 800662a: 781b ldrb r3, [r3, #0] + 800662c: 2bab cmp r3, #171 ; 0xab + 800662e: d107 bne.n 8006640 + 8006630: 4b13 ldr r3, [pc, #76] ; (8006680 ) + 8006632: 7d1b ldrb r3, [r3, #20] + 8006634: 2bcd cmp r3, #205 ; 0xcd + 8006636: d103 bne.n 8006640 + 8006638: 79fb ldrb r3, [r7, #7] + 800663a: 2b00 cmp r3, #0 + 800663c: f000 82b8 beq.w 8006bb0 { return; //已经校准过了 } //校准方法比较简单,读取4个坐标计算ad值与像素的关系 char str[64]; //用于字符串提示 uint16_t y_adc,x_adc,step=0,r=10; //adc缓存,校准步骤,坐标的半径 - 800617c: 2300 movs r3, #0 - 800617e: f8a7 308e strh.w r3, [r7, #142] ; 0x8e - 8006182: 230a movs r3, #10 - 8006184: f8a7 308c strh.w r3, [r7, #140] ; 0x8c + 8006640: 2300 movs r3, #0 + 8006642: f8a7 308e strh.w r3, [r7, #142] ; 0x8e + 8006646: 230a movs r3, #10 + 8006648: f8a7 308c strh.w r3, [r7, #140] ; 0x8c uint16_t y1,y2,y3,y4,x1,x2,x3,x4; //4个点缓存 int y5,x5,xd,xl,yd,yl; //通过4个点算出xy的长边和短边 float acc_x,acc_y; //算出的关系倍率 int offset_x,offset_y; //算出的偏差 uint32_t wait=HAL_GetTick()+50000,ms100=0; //校准时间,50秒没操作就自动退出 - 8006188: f7fb fcce bl 8001b28 - 800618c: 4603 mov r3, r0 - 800618e: f503 4343 add.w r3, r3, #49920 ; 0xc300 - 8006192: 3350 adds r3, #80 ; 0x50 - 8006194: 67bb str r3, [r7, #120] ; 0x78 - 8006196: 2300 movs r3, #0 - 8006198: 677b str r3, [r7, #116] ; 0x74 + 800664c: f7fb fa6c bl 8001b28 + 8006650: 4603 mov r3, r0 + 8006652: f503 4343 add.w r3, r3, #49920 ; 0xc300 + 8006656: 3350 adds r3, #80 ; 0x50 + 8006658: 67bb str r3, [r7, #120] ; 0x78 + 800665a: 2300 movs r3, #0 + 800665c: 677b str r3, [r7, #116] ; 0x74 //显示字符串提示 LCD_Clear(GRAY); - 800619a: f248 4030 movw r0, #33840 ; 0x8430 - 800619e: f7ff f91b bl 80053d8 + 800665e: f248 4030 movw r0, #33840 ; 0x8430 + 8006662: f7fe feb9 bl 80053d8 LCD_ShowString(0,50,"Calibrate the touch screen",16,RED,RED); - 80061a2: f44f 4378 mov.w r3, #63488 ; 0xf800 - 80061a6: 9301 str r3, [sp, #4] - 80061a8: f44f 4378 mov.w r3, #63488 ; 0xf800 - 80061ac: 9300 str r3, [sp, #0] - 80061ae: 2310 movs r3, #16 - 80061b0: 4a03 ldr r2, [pc, #12] ; (80061c0 ) - 80061b2: 2132 movs r1, #50 ; 0x32 - 80061b4: 2000 movs r0, #0 - 80061b6: f7ff fb0d bl 80057d4 + 8006666: f44f 4378 mov.w r3, #63488 ; 0xf800 + 800666a: 9301 str r3, [sp, #4] + 800666c: f44f 4378 mov.w r3, #63488 ; 0xf800 + 8006670: 9300 str r3, [sp, #0] + 8006672: 2310 movs r3, #16 + 8006674: 4a03 ldr r2, [pc, #12] ; (8006684 ) + 8006676: 2132 movs r1, #50 ; 0x32 + 8006678: 2000 movs r0, #0 + 800667a: f7ff f8ab bl 80057d4 //TP_DrwaTrage(30,30,10); //开始校准 while(HAL_GetTick() - 80061bc: 2000036c .word 0x2000036c - 80061c0: 08009d38 .word 0x08009d38 + 800667e: e28f b.n 8006ba0 + 8006680: 20000378 .word 0x20000378 + 8006684: 0800a3d0 .word 0x0800a3d0 { if(TPEN==0) //如果屏幕被按下 - 80061c4: f44f 6180 mov.w r1, #1024 ; 0x400 - 80061c8: 48d7 ldr r0, [pc, #860] ; (8006528 ) - 80061ca: f7fb ff7d bl 80020c8 - 80061ce: 4603 mov r3, r0 - 80061d0: 2b00 cmp r3, #0 - 80061d2: d14c bne.n 800626e + 8006688: f44f 6180 mov.w r1, #1024 ; 0x400 + 800668c: 48d7 ldr r0, [pc, #860] ; (80069ec ) + 800668e: f7fb fd1b bl 80020c8 + 8006692: 4603 mov r3, r0 + 8006694: 2b00 cmp r3, #0 + 8006696: d14c bne.n 8006732 { wait=HAL_GetTick()+50000; //重置50秒 - 80061d4: f7fb fca8 bl 8001b28 - 80061d8: 4603 mov r3, r0 - 80061da: f503 4343 add.w r3, r3, #49920 ; 0xc300 - 80061de: 3350 adds r3, #80 ; 0x50 - 80061e0: 67bb str r3, [r7, #120] ; 0x78 + 8006698: f7fb fa46 bl 8001b28 + 800669c: 4603 mov r3, r0 + 800669e: f503 4343 add.w r3, r3, #49920 ; 0xc300 + 80066a2: 3350 adds r3, #80 ; 0x50 + 80066a4: 67bb str r3, [r7, #120] ; 0x78 TP_Read_XY2(&x_adc,&y_adc); //读取xy ad值 - 80061e2: f107 020a add.w r2, r7, #10 - 80061e6: f107 0308 add.w r3, r7, #8 - 80061ea: 4611 mov r1, r2 - 80061ec: 4618 mov r0, r3 - 80061ee: f7ff fe72 bl 8005ed6 + 80066a6: f107 020a add.w r2, r7, #10 + 80066aa: f107 0308 add.w r3, r7, #8 + 80066ae: 4611 mov r1, r2 + 80066b0: 4618 mov r0, r3 + 80066b2: f7ff fe72 bl 800639a //将读到的值显示出来 sprintf(str,"ADC_X:%04d",x_adc); - 80061f2: 893b ldrh r3, [r7, #8] - 80061f4: 461a mov r2, r3 - 80061f6: f107 030c add.w r3, r7, #12 - 80061fa: 49cc ldr r1, [pc, #816] ; (800652c ) - 80061fc: 4618 mov r0, r3 - 80061fe: f001 fc0b bl 8007a18 + 80066b6: 893b ldrh r3, [r7, #8] + 80066b8: 461a mov r2, r3 + 80066ba: f107 030c add.w r3, r7, #12 + 80066be: 49cc ldr r1, [pc, #816] ; (80069f0 ) + 80066c0: 4618 mov r0, r3 + 80066c2: f001 fcf7 bl 80080b4 LCD_ShowString(100, 0, str, 16, RED, GRAY); - 8006202: f107 020c add.w r2, r7, #12 - 8006206: f248 4330 movw r3, #33840 ; 0x8430 - 800620a: 9301 str r3, [sp, #4] - 800620c: f44f 4378 mov.w r3, #63488 ; 0xf800 - 8006210: 9300 str r3, [sp, #0] - 8006212: 2310 movs r3, #16 - 8006214: 2100 movs r1, #0 - 8006216: 2064 movs r0, #100 ; 0x64 - 8006218: f7ff fadc bl 80057d4 + 80066c6: f107 020c add.w r2, r7, #12 + 80066ca: f248 4330 movw r3, #33840 ; 0x8430 + 80066ce: 9301 str r3, [sp, #4] + 80066d0: f44f 4378 mov.w r3, #63488 ; 0xf800 + 80066d4: 9300 str r3, [sp, #0] + 80066d6: 2310 movs r3, #16 + 80066d8: 2100 movs r1, #0 + 80066da: 2064 movs r0, #100 ; 0x64 + 80066dc: f7ff f87a bl 80057d4 sprintf(str,"ADC_Y:%04d",y_adc); - 800621c: 897b ldrh r3, [r7, #10] - 800621e: 461a mov r2, r3 - 8006220: f107 030c add.w r3, r7, #12 - 8006224: 49c2 ldr r1, [pc, #776] ; (8006530 ) - 8006226: 4618 mov r0, r3 - 8006228: f001 fbf6 bl 8007a18 + 80066e0: 897b ldrh r3, [r7, #10] + 80066e2: 461a mov r2, r3 + 80066e4: f107 030c add.w r3, r7, #12 + 80066e8: 49c2 ldr r1, [pc, #776] ; (80069f4 ) + 80066ea: 4618 mov r0, r3 + 80066ec: f001 fce2 bl 80080b4 LCD_ShowString(100, 16, str, 16, RED, GRAY); - 800622c: f107 020c add.w r2, r7, #12 - 8006230: f248 4330 movw r3, #33840 ; 0x8430 - 8006234: 9301 str r3, [sp, #4] - 8006236: f44f 4378 mov.w r3, #63488 ; 0xf800 - 800623a: 9300 str r3, [sp, #0] - 800623c: 2310 movs r3, #16 - 800623e: 2110 movs r1, #16 - 8006240: 2064 movs r0, #100 ; 0x64 - 8006242: f7ff fac7 bl 80057d4 + 80066f0: f107 020c add.w r2, r7, #12 + 80066f4: f248 4330 movw r3, #33840 ; 0x8430 + 80066f8: 9301 str r3, [sp, #4] + 80066fa: f44f 4378 mov.w r3, #63488 ; 0xf800 + 80066fe: 9300 str r3, [sp, #0] + 8006700: 2310 movs r3, #16 + 8006702: 2110 movs r1, #16 + 8006704: 2064 movs r0, #100 ; 0x64 + 8006706: f7ff f865 bl 80057d4 //特效,半径开始收缩 if(HAL_GetTick()>ms100) - 8006246: f7fb fc6f bl 8001b28 - 800624a: 4602 mov r2, r0 - 800624c: 6f7b ldr r3, [r7, #116] ; 0x74 - 800624e: 4293 cmp r3, r2 - 8006250: d20d bcs.n 800626e + 800670a: f7fb fa0d bl 8001b28 + 800670e: 4602 mov r2, r0 + 8006710: 6f7b ldr r3, [r7, #116] ; 0x74 + 8006712: 4293 cmp r3, r2 + 8006714: d20d bcs.n 8006732 { ms100=HAL_GetTick()+100; - 8006252: f7fb fc69 bl 8001b28 - 8006256: 4603 mov r3, r0 - 8006258: 3364 adds r3, #100 ; 0x64 - 800625a: 677b str r3, [r7, #116] ; 0x74 + 8006716: f7fb fa07 bl 8001b28 + 800671a: 4603 mov r3, r0 + 800671c: 3364 adds r3, #100 ; 0x64 + 800671e: 677b str r3, [r7, #116] ; 0x74 if(r>0){r--;} - 800625c: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c - 8006260: 2b00 cmp r3, #0 - 8006262: d004 beq.n 800626e - 8006264: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c - 8006268: 3b01 subs r3, #1 - 800626a: f8a7 308c strh.w r3, [r7, #140] ; 0x8c + 8006720: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c + 8006724: 2b00 cmp r3, #0 + 8006726: d004 beq.n 8006732 + 8006728: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c + 800672c: 3b01 subs r3, #1 + 800672e: f8a7 308c strh.w r3, [r7, #140] ; 0x8c } } //步骤0,将点画在(30,30)此时半径为10 if(step==0) - 800626e: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 8006272: 2b00 cmp r3, #0 - 8006274: d12b bne.n 80062ce + 8006732: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 8006736: 2b00 cmp r3, #0 + 8006738: d12b bne.n 8006792 { TP_DrwaTrage(30,30,r); - 8006276: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c - 800627a: 461a mov r2, r3 - 800627c: 211e movs r1, #30 - 800627e: 201e movs r0, #30 - 8006280: f7ff ff0a bl 8006098 + 800673a: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c + 800673e: 461a mov r2, r3 + 8006740: 211e movs r1, #30 + 8006742: 201e movs r0, #30 + 8006744: f7ff ff0a bl 800655c if(r==0)//当半径收缩为0的时候 - 8006284: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c - 8006288: 2b00 cmp r3, #0 - 800628a: d120 bne.n 80062ce + 8006748: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c + 800674c: 2b00 cmp r3, #0 + 800674e: d120 bne.n 8006792 { //进入下一个步骤,缓存这个点的值,显示出来 step+=1; - 800628c: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 8006290: 3301 adds r3, #1 - 8006292: f8a7 308e strh.w r3, [r7, #142] ; 0x8e + 8006750: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 8006754: 3301 adds r3, #1 + 8006756: f8a7 308e strh.w r3, [r7, #142] ; 0x8e y1=y_adc; - 8006296: 897b ldrh r3, [r7, #10] - 8006298: f8a7 308a strh.w r3, [r7, #138] ; 0x8a + 800675a: 897b ldrh r3, [r7, #10] + 800675c: f8a7 308a strh.w r3, [r7, #138] ; 0x8a x1=x_adc; - 800629c: 893b ldrh r3, [r7, #8] - 800629e: f8a7 3082 strh.w r3, [r7, #130] ; 0x82 + 8006760: 893b ldrh r3, [r7, #8] + 8006762: f8a7 3082 strh.w r3, [r7, #130] ; 0x82 sprintf(str,"point_1 x:%d y:%d",x1,y1); - 80062a2: f8b7 2082 ldrh.w r2, [r7, #130] ; 0x82 - 80062a6: f8b7 308a ldrh.w r3, [r7, #138] ; 0x8a - 80062aa: f107 000c add.w r0, r7, #12 - 80062ae: 49a1 ldr r1, [pc, #644] ; (8006534 ) - 80062b0: f001 fbb2 bl 8007a18 + 8006766: f8b7 2082 ldrh.w r2, [r7, #130] ; 0x82 + 800676a: f8b7 308a ldrh.w r3, [r7, #138] ; 0x8a + 800676e: f107 000c add.w r0, r7, #12 + 8006772: 49a1 ldr r1, [pc, #644] ; (80069f8 ) + 8006774: f001 fc9e bl 80080b4 LCD_ShowString(0,66,str,16,RED,RED); - 80062b4: f107 020c add.w r2, r7, #12 - 80062b8: f44f 4378 mov.w r3, #63488 ; 0xf800 - 80062bc: 9301 str r3, [sp, #4] - 80062be: f44f 4378 mov.w r3, #63488 ; 0xf800 - 80062c2: 9300 str r3, [sp, #0] - 80062c4: 2310 movs r3, #16 - 80062c6: 2142 movs r1, #66 ; 0x42 - 80062c8: 2000 movs r0, #0 - 80062ca: f7ff fa83 bl 80057d4 + 8006778: f107 020c add.w r2, r7, #12 + 800677c: f44f 4378 mov.w r3, #63488 ; 0xf800 + 8006780: 9301 str r3, [sp, #4] + 8006782: f44f 4378 mov.w r3, #63488 ; 0xf800 + 8006786: 9300 str r3, [sp, #0] + 8006788: 2310 movs r3, #16 + 800678a: 2142 movs r1, #66 ; 0x42 + 800678c: 2000 movs r0, #0 + 800678e: f7ff f821 bl 80057d4 } } //步骤1,等待屏幕被松开,进入下一个步骤,重置半径 if(step==1) - 80062ce: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 80062d2: 2b01 cmp r3, #1 - 80062d4: d10f bne.n 80062f6 + 8006792: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 8006796: 2b01 cmp r3, #1 + 8006798: d10f bne.n 80067ba { if(TPEN==1) - 80062d6: f44f 6180 mov.w r1, #1024 ; 0x400 - 80062da: 4893 ldr r0, [pc, #588] ; (8006528 ) - 80062dc: f7fb fef4 bl 80020c8 - 80062e0: 4603 mov r3, r0 - 80062e2: 2b01 cmp r3, #1 - 80062e4: d107 bne.n 80062f6 + 800679a: f44f 6180 mov.w r1, #1024 ; 0x400 + 800679e: 4893 ldr r0, [pc, #588] ; (80069ec ) + 80067a0: f7fb fc92 bl 80020c8 + 80067a4: 4603 mov r3, r0 + 80067a6: 2b01 cmp r3, #1 + 80067a8: d107 bne.n 80067ba { step+=1; - 80062e6: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 80062ea: 3301 adds r3, #1 - 80062ec: f8a7 308e strh.w r3, [r7, #142] ; 0x8e + 80067aa: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 80067ae: 3301 adds r3, #1 + 80067b0: f8a7 308e strh.w r3, [r7, #142] ; 0x8e r=10; - 80062f0: 230a movs r3, #10 - 80062f2: f8a7 308c strh.w r3, [r7, #140] ; 0x8c + 80067b4: 230a movs r3, #10 + 80067b6: f8a7 308c strh.w r3, [r7, #140] ; 0x8c } } //下面几个步骤和上面一样 if(step==2) - 80062f6: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 80062fa: 2b02 cmp r3, #2 - 80062fc: d12c bne.n 8006358 + 80067ba: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 80067be: 2b02 cmp r3, #2 + 80067c0: d12c bne.n 800681c { TP_DrwaTrage(290,30,r); - 80062fe: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c - 8006302: 461a mov r2, r3 - 8006304: 211e movs r1, #30 - 8006306: f44f 7091 mov.w r0, #290 ; 0x122 - 800630a: f7ff fec5 bl 8006098 + 80067c2: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c + 80067c6: 461a mov r2, r3 + 80067c8: 211e movs r1, #30 + 80067ca: f44f 7091 mov.w r0, #290 ; 0x122 + 80067ce: f7ff fec5 bl 800655c if(r==0) - 800630e: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c - 8006312: 2b00 cmp r3, #0 - 8006314: d120 bne.n 8006358 + 80067d2: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c + 80067d6: 2b00 cmp r3, #0 + 80067d8: d120 bne.n 800681c { step+=1; - 8006316: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 800631a: 3301 adds r3, #1 - 800631c: f8a7 308e strh.w r3, [r7, #142] ; 0x8e + 80067da: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 80067de: 3301 adds r3, #1 + 80067e0: f8a7 308e strh.w r3, [r7, #142] ; 0x8e y2=y_adc; - 8006320: 897b ldrh r3, [r7, #10] - 8006322: f8a7 3088 strh.w r3, [r7, #136] ; 0x88 + 80067e4: 897b ldrh r3, [r7, #10] + 80067e6: f8a7 3088 strh.w r3, [r7, #136] ; 0x88 x2=x_adc; - 8006326: 893b ldrh r3, [r7, #8] - 8006328: f8a7 3080 strh.w r3, [r7, #128] ; 0x80 + 80067ea: 893b ldrh r3, [r7, #8] + 80067ec: f8a7 3080 strh.w r3, [r7, #128] ; 0x80 sprintf(str,"point_2 x:%d y:%d",x2,y2); - 800632c: f8b7 2080 ldrh.w r2, [r7, #128] ; 0x80 - 8006330: f8b7 3088 ldrh.w r3, [r7, #136] ; 0x88 - 8006334: f107 000c add.w r0, r7, #12 - 8006338: 497f ldr r1, [pc, #508] ; (8006538 ) - 800633a: f001 fb6d bl 8007a18 + 80067f0: f8b7 2080 ldrh.w r2, [r7, #128] ; 0x80 + 80067f4: f8b7 3088 ldrh.w r3, [r7, #136] ; 0x88 + 80067f8: f107 000c add.w r0, r7, #12 + 80067fc: 497f ldr r1, [pc, #508] ; (80069fc ) + 80067fe: f001 fc59 bl 80080b4 LCD_ShowString(0,66+16,str,16,RED,RED); - 800633e: f107 020c add.w r2, r7, #12 - 8006342: f44f 4378 mov.w r3, #63488 ; 0xf800 - 8006346: 9301 str r3, [sp, #4] - 8006348: f44f 4378 mov.w r3, #63488 ; 0xf800 - 800634c: 9300 str r3, [sp, #0] - 800634e: 2310 movs r3, #16 - 8006350: 2152 movs r1, #82 ; 0x52 - 8006352: 2000 movs r0, #0 - 8006354: f7ff fa3e bl 80057d4 + 8006802: f107 020c add.w r2, r7, #12 + 8006806: f44f 4378 mov.w r3, #63488 ; 0xf800 + 800680a: 9301 str r3, [sp, #4] + 800680c: f44f 4378 mov.w r3, #63488 ; 0xf800 + 8006810: 9300 str r3, [sp, #0] + 8006812: 2310 movs r3, #16 + 8006814: 2152 movs r1, #82 ; 0x52 + 8006816: 2000 movs r0, #0 + 8006818: f7fe ffdc bl 80057d4 } } if(step==3) - 8006358: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 800635c: 2b03 cmp r3, #3 - 800635e: d10f bne.n 8006380 + 800681c: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 8006820: 2b03 cmp r3, #3 + 8006822: d10f bne.n 8006844 { if(TPEN==1) - 8006360: f44f 6180 mov.w r1, #1024 ; 0x400 - 8006364: 4870 ldr r0, [pc, #448] ; (8006528 ) - 8006366: f7fb feaf bl 80020c8 - 800636a: 4603 mov r3, r0 - 800636c: 2b01 cmp r3, #1 - 800636e: d107 bne.n 8006380 + 8006824: f44f 6180 mov.w r1, #1024 ; 0x400 + 8006828: 4870 ldr r0, [pc, #448] ; (80069ec ) + 800682a: f7fb fc4d bl 80020c8 + 800682e: 4603 mov r3, r0 + 8006830: 2b01 cmp r3, #1 + 8006832: d107 bne.n 8006844 { step+=1; - 8006370: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 8006374: 3301 adds r3, #1 - 8006376: f8a7 308e strh.w r3, [r7, #142] ; 0x8e + 8006834: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 8006838: 3301 adds r3, #1 + 800683a: f8a7 308e strh.w r3, [r7, #142] ; 0x8e r=10; - 800637a: 230a movs r3, #10 - 800637c: f8a7 308c strh.w r3, [r7, #140] ; 0x8c + 800683e: 230a movs r3, #10 + 8006840: f8a7 308c strh.w r3, [r7, #140] ; 0x8c } } if(step==4) - 8006380: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 8006384: 2b04 cmp r3, #4 - 8006386: d12b bne.n 80063e0 + 8006844: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 8006848: 2b04 cmp r3, #4 + 800684a: d12b bne.n 80068a4 { TP_DrwaTrage(30,210,r); - 8006388: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c - 800638c: 461a mov r2, r3 - 800638e: 21d2 movs r1, #210 ; 0xd2 - 8006390: 201e movs r0, #30 - 8006392: f7ff fe81 bl 8006098 + 800684c: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c + 8006850: 461a mov r2, r3 + 8006852: 21d2 movs r1, #210 ; 0xd2 + 8006854: 201e movs r0, #30 + 8006856: f7ff fe81 bl 800655c if(r==0) - 8006396: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c - 800639a: 2b00 cmp r3, #0 - 800639c: d120 bne.n 80063e0 + 800685a: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c + 800685e: 2b00 cmp r3, #0 + 8006860: d120 bne.n 80068a4 { step+=1; - 800639e: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 80063a2: 3301 adds r3, #1 - 80063a4: f8a7 308e strh.w r3, [r7, #142] ; 0x8e + 8006862: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 8006866: 3301 adds r3, #1 + 8006868: f8a7 308e strh.w r3, [r7, #142] ; 0x8e y3=y_adc; - 80063a8: 897b ldrh r3, [r7, #10] - 80063aa: f8a7 3086 strh.w r3, [r7, #134] ; 0x86 + 800686c: 897b ldrh r3, [r7, #10] + 800686e: f8a7 3086 strh.w r3, [r7, #134] ; 0x86 x3=x_adc; - 80063ae: 893b ldrh r3, [r7, #8] - 80063b0: f8a7 307e strh.w r3, [r7, #126] ; 0x7e + 8006872: 893b ldrh r3, [r7, #8] + 8006874: f8a7 307e strh.w r3, [r7, #126] ; 0x7e sprintf(str,"point_3 x:%d y:%d",x3,y3); - 80063b4: f8b7 207e ldrh.w r2, [r7, #126] ; 0x7e - 80063b8: f8b7 3086 ldrh.w r3, [r7, #134] ; 0x86 - 80063bc: f107 000c add.w r0, r7, #12 - 80063c0: 495e ldr r1, [pc, #376] ; (800653c ) - 80063c2: f001 fb29 bl 8007a18 + 8006878: f8b7 207e ldrh.w r2, [r7, #126] ; 0x7e + 800687c: f8b7 3086 ldrh.w r3, [r7, #134] ; 0x86 + 8006880: f107 000c add.w r0, r7, #12 + 8006884: 495e ldr r1, [pc, #376] ; (8006a00 ) + 8006886: f001 fc15 bl 80080b4 LCD_ShowString(0,66+16+16,str,16,RED,RED); - 80063c6: f107 020c add.w r2, r7, #12 - 80063ca: f44f 4378 mov.w r3, #63488 ; 0xf800 - 80063ce: 9301 str r3, [sp, #4] - 80063d0: f44f 4378 mov.w r3, #63488 ; 0xf800 - 80063d4: 9300 str r3, [sp, #0] - 80063d6: 2310 movs r3, #16 - 80063d8: 2162 movs r1, #98 ; 0x62 - 80063da: 2000 movs r0, #0 - 80063dc: f7ff f9fa bl 80057d4 + 800688a: f107 020c add.w r2, r7, #12 + 800688e: f44f 4378 mov.w r3, #63488 ; 0xf800 + 8006892: 9301 str r3, [sp, #4] + 8006894: f44f 4378 mov.w r3, #63488 ; 0xf800 + 8006898: 9300 str r3, [sp, #0] + 800689a: 2310 movs r3, #16 + 800689c: 2162 movs r1, #98 ; 0x62 + 800689e: 2000 movs r0, #0 + 80068a0: f7fe ff98 bl 80057d4 } } if(step==5) - 80063e0: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 80063e4: 2b05 cmp r3, #5 - 80063e6: d10f bne.n 8006408 + 80068a4: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 80068a8: 2b05 cmp r3, #5 + 80068aa: d10f bne.n 80068cc { if(TPEN==1) - 80063e8: f44f 6180 mov.w r1, #1024 ; 0x400 - 80063ec: 484e ldr r0, [pc, #312] ; (8006528 ) - 80063ee: f7fb fe6b bl 80020c8 - 80063f2: 4603 mov r3, r0 - 80063f4: 2b01 cmp r3, #1 - 80063f6: d107 bne.n 8006408 + 80068ac: f44f 6180 mov.w r1, #1024 ; 0x400 + 80068b0: 484e ldr r0, [pc, #312] ; (80069ec ) + 80068b2: f7fb fc09 bl 80020c8 + 80068b6: 4603 mov r3, r0 + 80068b8: 2b01 cmp r3, #1 + 80068ba: d107 bne.n 80068cc { step+=1; - 80063f8: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 80063fc: 3301 adds r3, #1 - 80063fe: f8a7 308e strh.w r3, [r7, #142] ; 0x8e + 80068bc: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 80068c0: 3301 adds r3, #1 + 80068c2: f8a7 308e strh.w r3, [r7, #142] ; 0x8e r=10; - 8006402: 230a movs r3, #10 - 8006404: f8a7 308c strh.w r3, [r7, #140] ; 0x8c + 80068c6: 230a movs r3, #10 + 80068c8: f8a7 308c strh.w r3, [r7, #140] ; 0x8c } } if(step==6) - 8006408: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 800640c: 2b06 cmp r3, #6 - 800640e: d12c bne.n 800646a + 80068cc: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 80068d0: 2b06 cmp r3, #6 + 80068d2: d12c bne.n 800692e { TP_DrwaTrage(290,210,r); - 8006410: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c - 8006414: 461a mov r2, r3 - 8006416: 21d2 movs r1, #210 ; 0xd2 - 8006418: f44f 7091 mov.w r0, #290 ; 0x122 - 800641c: f7ff fe3c bl 8006098 + 80068d4: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c + 80068d8: 461a mov r2, r3 + 80068da: 21d2 movs r1, #210 ; 0xd2 + 80068dc: f44f 7091 mov.w r0, #290 ; 0x122 + 80068e0: f7ff fe3c bl 800655c if(r==0) - 8006420: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c - 8006424: 2b00 cmp r3, #0 - 8006426: d120 bne.n 800646a + 80068e4: f8b7 308c ldrh.w r3, [r7, #140] ; 0x8c + 80068e8: 2b00 cmp r3, #0 + 80068ea: d120 bne.n 800692e { step+=1; - 8006428: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 800642c: 3301 adds r3, #1 - 800642e: f8a7 308e strh.w r3, [r7, #142] ; 0x8e + 80068ec: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 80068f0: 3301 adds r3, #1 + 80068f2: f8a7 308e strh.w r3, [r7, #142] ; 0x8e y4=y_adc; - 8006432: 897b ldrh r3, [r7, #10] - 8006434: f8a7 3084 strh.w r3, [r7, #132] ; 0x84 + 80068f6: 897b ldrh r3, [r7, #10] + 80068f8: f8a7 3084 strh.w r3, [r7, #132] ; 0x84 x4=x_adc; - 8006438: 893b ldrh r3, [r7, #8] - 800643a: f8a7 307c strh.w r3, [r7, #124] ; 0x7c + 80068fc: 893b ldrh r3, [r7, #8] + 80068fe: f8a7 307c strh.w r3, [r7, #124] ; 0x7c sprintf(str,"point_4 x:%d y:%d",x4,y4); - 800643e: f8b7 207c ldrh.w r2, [r7, #124] ; 0x7c - 8006442: f8b7 3084 ldrh.w r3, [r7, #132] ; 0x84 - 8006446: f107 000c add.w r0, r7, #12 - 800644a: 493d ldr r1, [pc, #244] ; (8006540 ) - 800644c: f001 fae4 bl 8007a18 + 8006902: f8b7 207c ldrh.w r2, [r7, #124] ; 0x7c + 8006906: f8b7 3084 ldrh.w r3, [r7, #132] ; 0x84 + 800690a: f107 000c add.w r0, r7, #12 + 800690e: 493d ldr r1, [pc, #244] ; (8006a04 ) + 8006910: f001 fbd0 bl 80080b4 LCD_ShowString(0,66+16+16+16,str,16,RED,RED); - 8006450: f107 020c add.w r2, r7, #12 - 8006454: f44f 4378 mov.w r3, #63488 ; 0xf800 - 8006458: 9301 str r3, [sp, #4] - 800645a: f44f 4378 mov.w r3, #63488 ; 0xf800 - 800645e: 9300 str r3, [sp, #0] - 8006460: 2310 movs r3, #16 - 8006462: 2172 movs r1, #114 ; 0x72 - 8006464: 2000 movs r0, #0 - 8006466: f7ff f9b5 bl 80057d4 + 8006914: f107 020c add.w r2, r7, #12 + 8006918: f44f 4378 mov.w r3, #63488 ; 0xf800 + 800691c: 9301 str r3, [sp, #4] + 800691e: f44f 4378 mov.w r3, #63488 ; 0xf800 + 8006922: 9300 str r3, [sp, #0] + 8006924: 2310 movs r3, #16 + 8006926: 2172 movs r1, #114 ; 0x72 + 8006928: 2000 movs r0, #0 + 800692a: f7fe ff53 bl 80057d4 } } if(step==7) - 800646a: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 800646e: 2b07 cmp r3, #7 - 8006470: d10f bne.n 8006492 + 800692e: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 8006932: 2b07 cmp r3, #7 + 8006934: d10f bne.n 8006956 { if(TPEN==1) - 8006472: f44f 6180 mov.w r1, #1024 ; 0x400 - 8006476: 482c ldr r0, [pc, #176] ; (8006528 ) - 8006478: f7fb fe26 bl 80020c8 - 800647c: 4603 mov r3, r0 - 800647e: 2b01 cmp r3, #1 - 8006480: d107 bne.n 8006492 + 8006936: f44f 6180 mov.w r1, #1024 ; 0x400 + 800693a: 482c ldr r0, [pc, #176] ; (80069ec ) + 800693c: f7fb fbc4 bl 80020c8 + 8006940: 4603 mov r3, r0 + 8006942: 2b01 cmp r3, #1 + 8006944: d107 bne.n 8006956 { step+=1; - 8006482: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 8006486: 3301 adds r3, #1 - 8006488: f8a7 308e strh.w r3, [r7, #142] ; 0x8e + 8006946: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 800694a: 3301 adds r3, #1 + 800694c: f8a7 308e strh.w r3, [r7, #142] ; 0x8e r=10; - 800648c: 230a movs r3, #10 - 800648e: f8a7 308c strh.w r3, [r7, #140] ; 0x8c + 8006950: 230a movs r3, #10 + 8006952: f8a7 308c strh.w r3, [r7, #140] ; 0x8c } } //当4个点读取完,开始计算关系 if(step==8) - 8006492: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e - 8006496: 2b08 cmp r3, #8 - 8006498: f040 8120 bne.w 80066dc + 8006956: f8b7 308e ldrh.w r3, [r7, #142] ; 0x8e + 800695a: 2b08 cmp r3, #8 + 800695c: f040 8120 bne.w 8006ba0 { //其实只需要两个点就能校准,通过取平均值获得xy的长边和短边 xd=((x1+x3)/2); - 800649c: f8b7 2082 ldrh.w r2, [r7, #130] ; 0x82 - 80064a0: f8b7 307e ldrh.w r3, [r7, #126] ; 0x7e - 80064a4: 4413 add r3, r2 - 80064a6: 0fda lsrs r2, r3, #31 - 80064a8: 4413 add r3, r2 - 80064aa: 105b asrs r3, r3, #1 - 80064ac: 673b str r3, [r7, #112] ; 0x70 + 8006960: f8b7 2082 ldrh.w r2, [r7, #130] ; 0x82 + 8006964: f8b7 307e ldrh.w r3, [r7, #126] ; 0x7e + 8006968: 4413 add r3, r2 + 800696a: 0fda lsrs r2, r3, #31 + 800696c: 4413 add r3, r2 + 800696e: 105b asrs r3, r3, #1 + 8006970: 673b str r3, [r7, #112] ; 0x70 xl=((x2+x4)/2); - 80064ae: f8b7 2080 ldrh.w r2, [r7, #128] ; 0x80 - 80064b2: f8b7 307c ldrh.w r3, [r7, #124] ; 0x7c - 80064b6: 4413 add r3, r2 - 80064b8: 0fda lsrs r2, r3, #31 - 80064ba: 4413 add r3, r2 - 80064bc: 105b asrs r3, r3, #1 - 80064be: 66fb str r3, [r7, #108] ; 0x6c + 8006972: f8b7 2080 ldrh.w r2, [r7, #128] ; 0x80 + 8006976: f8b7 307c ldrh.w r3, [r7, #124] ; 0x7c + 800697a: 4413 add r3, r2 + 800697c: 0fda lsrs r2, r3, #31 + 800697e: 4413 add r3, r2 + 8006980: 105b asrs r3, r3, #1 + 8006982: 66fb str r3, [r7, #108] ; 0x6c yd=((y1+y2)/2); - 80064c0: f8b7 208a ldrh.w r2, [r7, #138] ; 0x8a - 80064c4: f8b7 3088 ldrh.w r3, [r7, #136] ; 0x88 - 80064c8: 4413 add r3, r2 - 80064ca: 0fda lsrs r2, r3, #31 - 80064cc: 4413 add r3, r2 - 80064ce: 105b asrs r3, r3, #1 - 80064d0: 66bb str r3, [r7, #104] ; 0x68 + 8006984: f8b7 208a ldrh.w r2, [r7, #138] ; 0x8a + 8006988: f8b7 3088 ldrh.w r3, [r7, #136] ; 0x88 + 800698c: 4413 add r3, r2 + 800698e: 0fda lsrs r2, r3, #31 + 8006990: 4413 add r3, r2 + 8006992: 105b asrs r3, r3, #1 + 8006994: 66bb str r3, [r7, #104] ; 0x68 yl=((y3+y4)/2); - 80064d2: f8b7 2086 ldrh.w r2, [r7, #134] ; 0x86 - 80064d6: f8b7 3084 ldrh.w r3, [r7, #132] ; 0x84 - 80064da: 4413 add r3, r2 - 80064dc: 0fda lsrs r2, r3, #31 - 80064de: 4413 add r3, r2 - 80064e0: 105b asrs r3, r3, #1 - 80064e2: 667b str r3, [r7, #100] ; 0x64 + 8006996: f8b7 2086 ldrh.w r2, [r7, #134] ; 0x86 + 800699a: f8b7 3084 ldrh.w r3, [r7, #132] ; 0x84 + 800699e: 4413 add r3, r2 + 80069a0: 0fda lsrs r2, r3, #31 + 80069a2: 4413 add r3, r2 + 80069a4: 105b asrs r3, r3, #1 + 80069a6: 667b str r3, [r7, #100] ; 0x64 //长边减去短边可以再获得一个点 x5=xl-xd; - 80064e4: 6efa ldr r2, [r7, #108] ; 0x6c - 80064e6: 6f3b ldr r3, [r7, #112] ; 0x70 - 80064e8: 1ad3 subs r3, r2, r3 - 80064ea: 663b str r3, [r7, #96] ; 0x60 + 80069a8: 6efa ldr r2, [r7, #108] ; 0x6c + 80069aa: 6f3b ldr r3, [r7, #112] ; 0x70 + 80069ac: 1ad3 subs r3, r2, r3 + 80069ae: 663b str r3, [r7, #96] ; 0x60 y5=yl-yd; - 80064ec: 6e7a ldr r2, [r7, #100] ; 0x64 - 80064ee: 6ebb ldr r3, [r7, #104] ; 0x68 - 80064f0: 1ad3 subs r3, r2, r3 - 80064f2: 65fb str r3, [r7, #92] ; 0x5c + 80069b0: 6e7a ldr r2, [r7, #100] ; 0x64 + 80069b2: 6ebb ldr r3, [r7, #104] ; 0x68 + 80069b4: 1ad3 subs r3, r2, r3 + 80069b6: 65fb str r3, [r7, #92] ; 0x5c //这个点如果是负数,肯定有错,可能是xy搞反了 if(x5<0||y5<0) - 80064f4: 6e3b ldr r3, [r7, #96] ; 0x60 - 80064f6: 2b00 cmp r3, #0 - 80064f8: db02 blt.n 8006500 - 80064fa: 6dfb ldr r3, [r7, #92] ; 0x5c - 80064fc: 2b00 cmp r3, #0 - 80064fe: da23 bge.n 8006548 + 80069b8: 6e3b ldr r3, [r7, #96] ; 0x60 + 80069ba: 2b00 cmp r3, #0 + 80069bc: db02 blt.n 80069c4 + 80069be: 6dfb ldr r3, [r7, #92] ; 0x5c + 80069c0: 2b00 cmp r3, #0 + 80069c2: da23 bge.n 8006a0c { //显示error sprintf(str,"ERROR"); - 8006500: f107 030c add.w r3, r7, #12 - 8006504: 490f ldr r1, [pc, #60] ; (8006544 ) - 8006506: 4618 mov r0, r3 - 8006508: f001 fa86 bl 8007a18 + 80069c4: f107 030c add.w r3, r7, #12 + 80069c8: 490f ldr r1, [pc, #60] ; (8006a08 ) + 80069ca: 4618 mov r0, r3 + 80069cc: f001 fb72 bl 80080b4 LCD_ShowString(0,66+16+16+16+16,str,16,RED, GRAY); - 800650c: f107 020c add.w r2, r7, #12 - 8006510: f248 4330 movw r3, #33840 ; 0x8430 - 8006514: 9301 str r3, [sp, #4] - 8006516: f44f 4378 mov.w r3, #63488 ; 0xf800 - 800651a: 9300 str r3, [sp, #0] - 800651c: 2310 movs r3, #16 - 800651e: 2182 movs r1, #130 ; 0x82 - 8006520: 2000 movs r0, #0 - 8006522: f7ff f957 bl 80057d4 + 80069d0: f107 020c add.w r2, r7, #12 + 80069d4: f248 4330 movw r3, #33840 ; 0x8430 + 80069d8: 9301 str r3, [sp, #4] + 80069da: f44f 4378 mov.w r3, #63488 ; 0xf800 + 80069de: 9300 str r3, [sp, #0] + 80069e0: 2310 movs r3, #16 + 80069e2: 2182 movs r1, #130 ; 0x82 + 80069e4: 2000 movs r0, #0 + 80069e6: f7fe fef5 bl 80057d4 { - 8006526: e0cf b.n 80066c8 - 8006528: 40011c00 .word 0x40011c00 - 800652c: 08009d54 .word 0x08009d54 - 8006530: 08009d60 .word 0x08009d60 - 8006534: 08009d6c .word 0x08009d6c - 8006538: 08009d80 .word 0x08009d80 - 800653c: 08009d94 .word 0x08009d94 - 8006540: 08009da8 .word 0x08009da8 - 8006544: 08009dbc .word 0x08009dbc + 80069ea: e0cf b.n 8006b8c + 80069ec: 40011c00 .word 0x40011c00 + 80069f0: 0800a3ec .word 0x0800a3ec + 80069f4: 0800a3f8 .word 0x0800a3f8 + 80069f8: 0800a404 .word 0x0800a404 + 80069fc: 0800a418 .word 0x0800a418 + 8006a00: 0800a42c .word 0x0800a42c + 8006a04: 0800a440 .word 0x0800a440 + 8006a08: 0800a454 .word 0x0800a454 }else { //计算关系倍率 //ad的长边减去短边再除去实际屏幕像素的长边减短边(260=320-30-30,180=240-30-30) acc_x=x5/260.0; - 8006548: 6e38 ldr r0, [r7, #96] ; 0x60 - 800654a: f7f9 ffc7 bl 80004dc <__aeabi_i2d> - 800654e: f04f 0200 mov.w r2, #0 - 8006552: 4b68 ldr r3, [pc, #416] ; (80066f4 ) - 8006554: f7fa f956 bl 8000804 <__aeabi_ddiv> - 8006558: 4602 mov r2, r0 - 800655a: 460b mov r3, r1 - 800655c: 4610 mov r0, r2 - 800655e: 4619 mov r1, r3 - 8006560: f7fa fafe bl 8000b60 <__aeabi_d2f> - 8006564: 4603 mov r3, r0 - 8006566: 65bb str r3, [r7, #88] ; 0x58 + 8006a0c: 6e38 ldr r0, [r7, #96] ; 0x60 + 8006a0e: f7f9 fd65 bl 80004dc <__aeabi_i2d> + 8006a12: f04f 0200 mov.w r2, #0 + 8006a16: 4b68 ldr r3, [pc, #416] ; (8006bb8 ) + 8006a18: f7f9 fef4 bl 8000804 <__aeabi_ddiv> + 8006a1c: 4602 mov r2, r0 + 8006a1e: 460b mov r3, r1 + 8006a20: 4610 mov r0, r2 + 8006a22: 4619 mov r1, r3 + 8006a24: f7fa f89c bl 8000b60 <__aeabi_d2f> + 8006a28: 4603 mov r3, r0 + 8006a2a: 65bb str r3, [r7, #88] ; 0x58 acc_y=y5/180.0; - 8006568: 6df8 ldr r0, [r7, #92] ; 0x5c - 800656a: f7f9 ffb7 bl 80004dc <__aeabi_i2d> - 800656e: f04f 0200 mov.w r2, #0 - 8006572: 4b61 ldr r3, [pc, #388] ; (80066f8 ) - 8006574: f7fa f946 bl 8000804 <__aeabi_ddiv> - 8006578: 4602 mov r2, r0 - 800657a: 460b mov r3, r1 - 800657c: 4610 mov r0, r2 - 800657e: 4619 mov r1, r3 - 8006580: f7fa faee bl 8000b60 <__aeabi_d2f> - 8006584: 4603 mov r3, r0 - 8006586: 657b str r3, [r7, #84] ; 0x54 + 8006a2c: 6df8 ldr r0, [r7, #92] ; 0x5c + 8006a2e: f7f9 fd55 bl 80004dc <__aeabi_i2d> + 8006a32: f04f 0200 mov.w r2, #0 + 8006a36: 4b61 ldr r3, [pc, #388] ; (8006bbc ) + 8006a38: f7f9 fee4 bl 8000804 <__aeabi_ddiv> + 8006a3c: 4602 mov r2, r0 + 8006a3e: 460b mov r3, r1 + 8006a40: 4610 mov r0, r2 + 8006a42: 4619 mov r1, r3 + 8006a44: f7fa f88c bl 8000b60 <__aeabi_d2f> + 8006a48: 4603 mov r3, r0 + 8006a4a: 657b str r3, [r7, #84] ; 0x54 //验证倍率,将实际值减去验证值就等于误差值,因为有两个点,所以计算了两个误差后求了平均值 offset_x=(((xd/acc_x)-30)+((xl/acc_x)-290))/2; - 8006588: 6f38 ldr r0, [r7, #112] ; 0x70 - 800658a: f7fa fbf3 bl 8000d74 <__aeabi_i2f> - 800658e: 4603 mov r3, r0 - 8006590: 6db9 ldr r1, [r7, #88] ; 0x58 - 8006592: 4618 mov r0, r3 - 8006594: f7fa fcf6 bl 8000f84 <__aeabi_fdiv> - 8006598: 4603 mov r3, r0 - 800659a: 4958 ldr r1, [pc, #352] ; (80066fc ) - 800659c: 4618 mov r0, r3 - 800659e: f7fa fb33 bl 8000c08 <__aeabi_fsub> - 80065a2: 4603 mov r3, r0 - 80065a4: 461c mov r4, r3 - 80065a6: 6ef8 ldr r0, [r7, #108] ; 0x6c - 80065a8: f7fa fbe4 bl 8000d74 <__aeabi_i2f> - 80065ac: 4603 mov r3, r0 - 80065ae: 6db9 ldr r1, [r7, #88] ; 0x58 - 80065b0: 4618 mov r0, r3 - 80065b2: f7fa fce7 bl 8000f84 <__aeabi_fdiv> - 80065b6: 4603 mov r3, r0 - 80065b8: 4951 ldr r1, [pc, #324] ; (8006700 ) - 80065ba: 4618 mov r0, r3 - 80065bc: f7fa fb24 bl 8000c08 <__aeabi_fsub> - 80065c0: 4603 mov r3, r0 - 80065c2: 4619 mov r1, r3 - 80065c4: 4620 mov r0, r4 - 80065c6: f7fa fb21 bl 8000c0c <__addsf3> - 80065ca: 4603 mov r3, r0 - 80065cc: f04f 4180 mov.w r1, #1073741824 ; 0x40000000 - 80065d0: 4618 mov r0, r3 - 80065d2: f7fa fcd7 bl 8000f84 <__aeabi_fdiv> - 80065d6: 4603 mov r3, r0 - 80065d8: 4618 mov r0, r3 - 80065da: f7fa fd6f bl 80010bc <__aeabi_f2iz> - 80065de: 4603 mov r3, r0 - 80065e0: 653b str r3, [r7, #80] ; 0x50 + 8006a4c: 6f38 ldr r0, [r7, #112] ; 0x70 + 8006a4e: f7fa f991 bl 8000d74 <__aeabi_i2f> + 8006a52: 4603 mov r3, r0 + 8006a54: 6db9 ldr r1, [r7, #88] ; 0x58 + 8006a56: 4618 mov r0, r3 + 8006a58: f7fa fa94 bl 8000f84 <__aeabi_fdiv> + 8006a5c: 4603 mov r3, r0 + 8006a5e: 4958 ldr r1, [pc, #352] ; (8006bc0 ) + 8006a60: 4618 mov r0, r3 + 8006a62: f7fa f8d1 bl 8000c08 <__aeabi_fsub> + 8006a66: 4603 mov r3, r0 + 8006a68: 461c mov r4, r3 + 8006a6a: 6ef8 ldr r0, [r7, #108] ; 0x6c + 8006a6c: f7fa f982 bl 8000d74 <__aeabi_i2f> + 8006a70: 4603 mov r3, r0 + 8006a72: 6db9 ldr r1, [r7, #88] ; 0x58 + 8006a74: 4618 mov r0, r3 + 8006a76: f7fa fa85 bl 8000f84 <__aeabi_fdiv> + 8006a7a: 4603 mov r3, r0 + 8006a7c: 4951 ldr r1, [pc, #324] ; (8006bc4 ) + 8006a7e: 4618 mov r0, r3 + 8006a80: f7fa f8c2 bl 8000c08 <__aeabi_fsub> + 8006a84: 4603 mov r3, r0 + 8006a86: 4619 mov r1, r3 + 8006a88: 4620 mov r0, r4 + 8006a8a: f7fa f8bf bl 8000c0c <__addsf3> + 8006a8e: 4603 mov r3, r0 + 8006a90: f04f 4180 mov.w r1, #1073741824 ; 0x40000000 + 8006a94: 4618 mov r0, r3 + 8006a96: f7fa fa75 bl 8000f84 <__aeabi_fdiv> + 8006a9a: 4603 mov r3, r0 + 8006a9c: 4618 mov r0, r3 + 8006a9e: f7fa fb0d bl 80010bc <__aeabi_f2iz> + 8006aa2: 4603 mov r3, r0 + 8006aa4: 653b str r3, [r7, #80] ; 0x50 offset_y=(((yd/acc_y)-30)+((yl/acc_y)-210))/2; - 80065e2: 6eb8 ldr r0, [r7, #104] ; 0x68 - 80065e4: f7fa fbc6 bl 8000d74 <__aeabi_i2f> - 80065e8: 4603 mov r3, r0 - 80065ea: 6d79 ldr r1, [r7, #84] ; 0x54 - 80065ec: 4618 mov r0, r3 - 80065ee: f7fa fcc9 bl 8000f84 <__aeabi_fdiv> - 80065f2: 4603 mov r3, r0 - 80065f4: 4941 ldr r1, [pc, #260] ; (80066fc ) - 80065f6: 4618 mov r0, r3 - 80065f8: f7fa fb06 bl 8000c08 <__aeabi_fsub> - 80065fc: 4603 mov r3, r0 - 80065fe: 461c mov r4, r3 - 8006600: 6e78 ldr r0, [r7, #100] ; 0x64 - 8006602: f7fa fbb7 bl 8000d74 <__aeabi_i2f> - 8006606: 4603 mov r3, r0 - 8006608: 6d79 ldr r1, [r7, #84] ; 0x54 - 800660a: 4618 mov r0, r3 - 800660c: f7fa fcba bl 8000f84 <__aeabi_fdiv> - 8006610: 4603 mov r3, r0 - 8006612: 493c ldr r1, [pc, #240] ; (8006704 ) - 8006614: 4618 mov r0, r3 - 8006616: f7fa faf7 bl 8000c08 <__aeabi_fsub> - 800661a: 4603 mov r3, r0 - 800661c: 4619 mov r1, r3 - 800661e: 4620 mov r0, r4 - 8006620: f7fa faf4 bl 8000c0c <__addsf3> - 8006624: 4603 mov r3, r0 - 8006626: f04f 4180 mov.w r1, #1073741824 ; 0x40000000 - 800662a: 4618 mov r0, r3 - 800662c: f7fa fcaa bl 8000f84 <__aeabi_fdiv> - 8006630: 4603 mov r3, r0 - 8006632: 4618 mov r0, r3 - 8006634: f7fa fd42 bl 80010bc <__aeabi_f2iz> - 8006638: 4603 mov r3, r0 - 800663a: 64fb str r3, [r7, #76] ; 0x4c + 8006aa6: 6eb8 ldr r0, [r7, #104] ; 0x68 + 8006aa8: f7fa f964 bl 8000d74 <__aeabi_i2f> + 8006aac: 4603 mov r3, r0 + 8006aae: 6d79 ldr r1, [r7, #84] ; 0x54 + 8006ab0: 4618 mov r0, r3 + 8006ab2: f7fa fa67 bl 8000f84 <__aeabi_fdiv> + 8006ab6: 4603 mov r3, r0 + 8006ab8: 4941 ldr r1, [pc, #260] ; (8006bc0 ) + 8006aba: 4618 mov r0, r3 + 8006abc: f7fa f8a4 bl 8000c08 <__aeabi_fsub> + 8006ac0: 4603 mov r3, r0 + 8006ac2: 461c mov r4, r3 + 8006ac4: 6e78 ldr r0, [r7, #100] ; 0x64 + 8006ac6: f7fa f955 bl 8000d74 <__aeabi_i2f> + 8006aca: 4603 mov r3, r0 + 8006acc: 6d79 ldr r1, [r7, #84] ; 0x54 + 8006ace: 4618 mov r0, r3 + 8006ad0: f7fa fa58 bl 8000f84 <__aeabi_fdiv> + 8006ad4: 4603 mov r3, r0 + 8006ad6: 493c ldr r1, [pc, #240] ; (8006bc8 ) + 8006ad8: 4618 mov r0, r3 + 8006ada: f7fa f895 bl 8000c08 <__aeabi_fsub> + 8006ade: 4603 mov r3, r0 + 8006ae0: 4619 mov r1, r3 + 8006ae2: 4620 mov r0, r4 + 8006ae4: f7fa f892 bl 8000c0c <__addsf3> + 8006ae8: 4603 mov r3, r0 + 8006aea: f04f 4180 mov.w r1, #1073741824 ; 0x40000000 + 8006aee: 4618 mov r0, r3 + 8006af0: f7fa fa48 bl 8000f84 <__aeabi_fdiv> + 8006af4: 4603 mov r3, r0 + 8006af6: 4618 mov r0, r3 + 8006af8: f7fa fae0 bl 80010bc <__aeabi_f2iz> + 8006afc: 4603 mov r3, r0 + 8006afe: 64fb str r3, [r7, #76] ; 0x4c //保存计算结果 tconfig.x_acc=acc_x; - 800663c: 4a32 ldr r2, [pc, #200] ; (8006708 ) - 800663e: 6dbb ldr r3, [r7, #88] ; 0x58 - 8006640: 6053 str r3, [r2, #4] + 8006b00: 4a32 ldr r2, [pc, #200] ; (8006bcc ) + 8006b02: 6dbb ldr r3, [r7, #88] ; 0x58 + 8006b04: 6053 str r3, [r2, #4] tconfig.x_offset=offset_x; - 8006642: 4a31 ldr r2, [pc, #196] ; (8006708 ) - 8006644: 6d3b ldr r3, [r7, #80] ; 0x50 - 8006646: 60d3 str r3, [r2, #12] + 8006b06: 4a31 ldr r2, [pc, #196] ; (8006bcc ) + 8006b08: 6d3b ldr r3, [r7, #80] ; 0x50 + 8006b0a: 60d3 str r3, [r2, #12] tconfig.y_acc=acc_y; - 8006648: 4a2f ldr r2, [pc, #188] ; (8006708 ) - 800664a: 6d7b ldr r3, [r7, #84] ; 0x54 - 800664c: 6093 str r3, [r2, #8] + 8006b0c: 4a2f ldr r2, [pc, #188] ; (8006bcc ) + 8006b0e: 6d7b ldr r3, [r7, #84] ; 0x54 + 8006b10: 6093 str r3, [r2, #8] tconfig.y_offset=offset_y; - 800664e: 4a2e ldr r2, [pc, #184] ; (8006708 ) - 8006650: 6cfb ldr r3, [r7, #76] ; 0x4c - 8006652: 6113 str r3, [r2, #16] + 8006b12: 4a2e ldr r2, [pc, #184] ; (8006bcc ) + 8006b14: 6cfb ldr r3, [r7, #76] ; 0x4c + 8006b16: 6113 str r3, [r2, #16] //eeprom块标记 tconfig.begin=0xab; - 8006654: 4b2c ldr r3, [pc, #176] ; (8006708 ) - 8006656: 22ab movs r2, #171 ; 0xab - 8006658: 701a strb r2, [r3, #0] + 8006b18: 4b2c ldr r3, [pc, #176] ; (8006bcc ) + 8006b1a: 22ab movs r2, #171 ; 0xab + 8006b1c: 701a strb r2, [r3, #0] tconfig.end=0xcd; - 800665a: 4b2b ldr r3, [pc, #172] ; (8006708 ) - 800665c: 22cd movs r2, #205 ; 0xcd - 800665e: 751a strb r2, [r3, #20] + 8006b1e: 4b2b ldr r3, [pc, #172] ; (8006bcc ) + 8006b20: 22cd movs r2, #205 ; 0xcd + 8006b22: 751a strb r2, [r3, #20] //显示计算结果 sprintf(str,"x_acc=%f y_acc=%f",acc_x,acc_y); - 8006660: 6db8 ldr r0, [r7, #88] ; 0x58 - 8006662: f7f9 ff4d bl 8000500 <__aeabi_f2d> - 8006666: 4604 mov r4, r0 - 8006668: 460d mov r5, r1 - 800666a: 6d78 ldr r0, [r7, #84] ; 0x54 - 800666c: f7f9 ff48 bl 8000500 <__aeabi_f2d> - 8006670: 4602 mov r2, r0 - 8006672: 460b mov r3, r1 - 8006674: f107 000c add.w r0, r7, #12 - 8006678: e9cd 2300 strd r2, r3, [sp] - 800667c: 4622 mov r2, r4 - 800667e: 462b mov r3, r5 - 8006680: 4922 ldr r1, [pc, #136] ; (800670c ) - 8006682: f001 f9c9 bl 8007a18 + 8006b24: 6db8 ldr r0, [r7, #88] ; 0x58 + 8006b26: f7f9 fceb bl 8000500 <__aeabi_f2d> + 8006b2a: 4604 mov r4, r0 + 8006b2c: 460d mov r5, r1 + 8006b2e: 6d78 ldr r0, [r7, #84] ; 0x54 + 8006b30: f7f9 fce6 bl 8000500 <__aeabi_f2d> + 8006b34: 4602 mov r2, r0 + 8006b36: 460b mov r3, r1 + 8006b38: f107 000c add.w r0, r7, #12 + 8006b3c: e9cd 2300 strd r2, r3, [sp] + 8006b40: 4622 mov r2, r4 + 8006b42: 462b mov r3, r5 + 8006b44: 4922 ldr r1, [pc, #136] ; (8006bd0 ) + 8006b46: f001 fab5 bl 80080b4 LCD_ShowString(0,66+16+16+16+16,str,16,RED,RED); - 8006686: f107 020c add.w r2, r7, #12 - 800668a: f44f 4378 mov.w r3, #63488 ; 0xf800 - 800668e: 9301 str r3, [sp, #4] - 8006690: f44f 4378 mov.w r3, #63488 ; 0xf800 - 8006694: 9300 str r3, [sp, #0] - 8006696: 2310 movs r3, #16 - 8006698: 2182 movs r1, #130 ; 0x82 - 800669a: 2000 movs r0, #0 - 800669c: f7ff f89a bl 80057d4 + 8006b4a: f107 020c add.w r2, r7, #12 + 8006b4e: f44f 4378 mov.w r3, #63488 ; 0xf800 + 8006b52: 9301 str r3, [sp, #4] + 8006b54: f44f 4378 mov.w r3, #63488 ; 0xf800 + 8006b58: 9300 str r3, [sp, #0] + 8006b5a: 2310 movs r3, #16 + 8006b5c: 2182 movs r1, #130 ; 0x82 + 8006b5e: 2000 movs r0, #0 + 8006b60: f7fe fe38 bl 80057d4 sprintf(str,"x_offset=%d y_offset=%d",offset_x,offset_y); - 80066a0: f107 000c add.w r0, r7, #12 - 80066a4: 6cfb ldr r3, [r7, #76] ; 0x4c - 80066a6: 6d3a ldr r2, [r7, #80] ; 0x50 - 80066a8: 4919 ldr r1, [pc, #100] ; (8006710 ) - 80066aa: f001 f9b5 bl 8007a18 + 8006b64: f107 000c add.w r0, r7, #12 + 8006b68: 6cfb ldr r3, [r7, #76] ; 0x4c + 8006b6a: 6d3a ldr r2, [r7, #80] ; 0x50 + 8006b6c: 4919 ldr r1, [pc, #100] ; (8006bd4 ) + 8006b6e: f001 faa1 bl 80080b4 LCD_ShowString(0,66+16+16+16+16+16,str,16,RED,RED); - 80066ae: f107 020c add.w r2, r7, #12 - 80066b2: f44f 4378 mov.w r3, #63488 ; 0xf800 - 80066b6: 9301 str r3, [sp, #4] - 80066b8: f44f 4378 mov.w r3, #63488 ; 0xf800 - 80066bc: 9300 str r3, [sp, #0] - 80066be: 2310 movs r3, #16 - 80066c0: 2192 movs r1, #146 ; 0x92 - 80066c2: 2000 movs r0, #0 - 80066c4: f7ff f886 bl 80057d4 + 8006b72: f107 020c add.w r2, r7, #12 + 8006b76: f44f 4378 mov.w r3, #63488 ; 0xf800 + 8006b7a: 9301 str r3, [sp, #4] + 8006b7c: f44f 4378 mov.w r3, #63488 ; 0xf800 + 8006b80: 9300 str r3, [sp, #0] + 8006b82: 2310 movs r3, #16 + 8006b84: 2192 movs r1, #146 ; 0x92 + 8006b86: 2000 movs r0, #0 + 8006b88: f7fe fe24 bl 80057d4 } //将结果保存起来 EEPROM_WRITE_BATY(16,(char *)&tconfig,sizeof(touch_config)); - 80066c8: 2218 movs r2, #24 - 80066ca: 490f ldr r1, [pc, #60] ; (8006708 ) - 80066cc: 2010 movs r0, #16 - 80066ce: f7ff f931 bl 8005934 + 8006b8c: 2218 movs r2, #24 + 8006b8e: 490f ldr r1, [pc, #60] ; (8006bcc ) + 8006b90: 2010 movs r0, #16 + 8006b92: f7fe fecf bl 8005934 HAL_Delay(1000); - 80066d2: f44f 707a mov.w r0, #1000 ; 0x3e8 - 80066d6: f7fb fa31 bl 8001b3c + 8006b96: f44f 707a mov.w r0, #1000 ; 0x3e8 + 8006b9a: f7fa ffcf bl 8001b3c return; - 80066da: e008 b.n 80066ee + 8006b9e: e008 b.n 8006bb2 while(HAL_GetTick() - 80066e0: 4602 mov r2, r0 - 80066e2: 6fbb ldr r3, [r7, #120] ; 0x78 - 80066e4: 4293 cmp r3, r2 - 80066e6: f63f ad6d bhi.w 80061c4 - 80066ea: e000 b.n 80066ee + 8006ba0: f7fa ffc2 bl 8001b28 + 8006ba4: 4602 mov r2, r0 + 8006ba6: 6fbb ldr r3, [r7, #120] ; 0x78 + 8006ba8: 4293 cmp r3, r2 + 8006baa: f63f ad6d bhi.w 8006688 + 8006bae: e000 b.n 8006bb2 return; //已经校准过了 - 80066ec: bf00 nop + 8006bb0: bf00 nop } } } - 80066ee: 3790 adds r7, #144 ; 0x90 - 80066f0: 46bd mov sp, r7 - 80066f2: bdb0 pop {r4, r5, r7, pc} - 80066f4: 40704000 .word 0x40704000 - 80066f8: 40668000 .word 0x40668000 - 80066fc: 41f00000 .word 0x41f00000 - 8006700: 43910000 .word 0x43910000 - 8006704: 43520000 .word 0x43520000 - 8006708: 2000036c .word 0x2000036c - 800670c: 08009dc4 .word 0x08009dc4 - 8006710: 08009dd8 .word 0x08009dd8 + 8006bb2: 3790 adds r7, #144 ; 0x90 + 8006bb4: 46bd mov sp, r7 + 8006bb6: bdb0 pop {r4, r5, r7, pc} + 8006bb8: 40704000 .word 0x40704000 + 8006bbc: 40668000 .word 0x40668000 + 8006bc0: 41f00000 .word 0x41f00000 + 8006bc4: 43910000 .word 0x43910000 + 8006bc8: 43520000 .word 0x43520000 + 8006bcc: 20000378 .word 0x20000378 + 8006bd0: 0800a45c .word 0x0800a45c + 8006bd4: 0800a470 .word 0x0800a470 -08006714 : -#include "APP_IDcard.h" +08006bd8 : window *idcard_window; +char idcard_str[32]; void APP_IDcard_init(window *a_window) { - 8006714: b580 push {r7, lr} - 8006716: b082 sub sp, #8 - 8006718: af00 add r7, sp, #0 - 800671a: 6078 str r0, [r7, #4] + 8006bd8: b580 push {r7, lr} + 8006bda: b082 sub sp, #8 + 8006bdc: af00 add r7, sp, #0 + 8006bde: 6078 str r0, [r7, #4] idcard_window=a_window; - 800671c: 4a04 ldr r2, [pc, #16] ; (8006730 ) - 800671e: 687b ldr r3, [r7, #4] - 8006720: 6013 str r3, [r2, #0] + 8006be0: 4a04 ldr r2, [pc, #16] ; (8006bf4 ) + 8006be2: 687b ldr r3, [r7, #4] + 8006be4: 6013 str r3, [r2, #0] RC522_Init(); - 8006722: f7ff fa99 bl 8005c58 + 8006be6: f7ff fa9a bl 800611e } - 8006726: bf00 nop - 8006728: 3708 adds r7, #8 - 800672a: 46bd mov sp, r7 - 800672c: bd80 pop {r7, pc} - 800672e: bf00 nop - 8006730: 20000394 .word 0x20000394 + 8006bea: bf00 nop + 8006bec: 3708 adds r7, #8 + 8006bee: 46bd mov sp, r7 + 8006bf0: bd80 pop {r7, pc} + 8006bf2: bf00 nop + 8006bf4: 200003d0 .word 0x200003d0 -08006734 : +08006bf8 : +unsigned char s=0x08; +char KEY[6]={0xff,0xff,0xff,0xff,0xff,0xff}; +uint32_t card_number_D=0; void APP_IDcard_loop() { - 8006734: b480 push {r7} - 8006736: af00 add r7, sp, #0 + 8006bf8: b5f0 push {r4, r5, r6, r7, lr} + 8006bfa: b097 sub sp, #92 ; 0x5c + 8006bfc: af0e add r7, sp, #56 ; 0x38 + status = PcdRequest(PICC_REQALL,CT); + 8006bfe: 496c ldr r1, [pc, #432] ; (8006db0 ) + 8006c00: 2052 movs r0, #82 ; 0x52 + 8006c02: f7ff f8fa bl 8005dfa + 8006c06: 4603 mov r3, r0 + 8006c08: 461a mov r2, r3 + 8006c0a: 4b6a ldr r3, [pc, #424] ; (8006db4 ) + 8006c0c: 701a strb r2, [r3, #0] + if(status==MI_OK) + 8006c0e: 4b69 ldr r3, [pc, #420] ; (8006db4 ) + 8006c10: 781b ldrb r3, [r3, #0] + 8006c12: 2b00 cmp r3, #0 + 8006c14: d109 bne.n 8006c2a + { + status=MI_ERR; + 8006c16: 4b67 ldr r3, [pc, #412] ; (8006db4 ) + 8006c18: 2202 movs r2, #2 + 8006c1a: 701a strb r2, [r3, #0] + status = PcdAnticoll(SN); + 8006c1c: 4866 ldr r0, [pc, #408] ; (8006db8 ) + 8006c1e: f7ff f923 bl 8005e68 + 8006c22: 4603 mov r3, r0 + 8006c24: 461a mov r2, r3 + 8006c26: 4b63 ldr r3, [pc, #396] ; (8006db4 ) + 8006c28: 701a strb r2, [r3, #0] + } + if (status==MI_OK) + 8006c2a: 4b62 ldr r3, [pc, #392] ; (8006db4 ) + 8006c2c: 781b ldrb r3, [r3, #0] + 8006c2e: 2b00 cmp r3, #0 + 8006c30: d139 bne.n 8006ca6 + { + status=MI_ERR; + 8006c32: 4b60 ldr r3, [pc, #384] ; (8006db4 ) + 8006c34: 2202 movs r2, #2 + 8006c36: 701a strb r2, [r3, #0] + card_number_D=(SN[2]<<16)+(SN[1]<<8)+(SN[0]); + 8006c38: 4b5f ldr r3, [pc, #380] ; (8006db8 ) + 8006c3a: 789b ldrb r3, [r3, #2] + 8006c3c: 041a lsls r2, r3, #16 + 8006c3e: 4b5e ldr r3, [pc, #376] ; (8006db8 ) + 8006c40: 785b ldrb r3, [r3, #1] + 8006c42: 021b lsls r3, r3, #8 + 8006c44: 4413 add r3, r2 + 8006c46: 4a5c ldr r2, [pc, #368] ; (8006db8 ) + 8006c48: 7812 ldrb r2, [r2, #0] + 8006c4a: 4413 add r3, r2 + 8006c4c: 461a mov r2, r3 + 8006c4e: 4b5b ldr r3, [pc, #364] ; (8006dbc ) + 8006c50: 601a str r2, [r3, #0] + PcdRead(0,RFID); + 8006c52: 495b ldr r1, [pc, #364] ; (8006dc0 ) + 8006c54: 2000 movs r0, #0 + 8006c56: f7ff fa20 bl 800609a + sprintf(idcard_str,"CardId:%d",card_number_D); + 8006c5a: 4b58 ldr r3, [pc, #352] ; (8006dbc ) + 8006c5c: 681b ldr r3, [r3, #0] + 8006c5e: 461a mov r2, r3 + 8006c60: 4958 ldr r1, [pc, #352] ; (8006dc4 ) + 8006c62: 4859 ldr r0, [pc, #356] ; (8006dc8 ) + 8006c64: f001 fa26 bl 80080b4 + LCD_ShowString(idcard_window->x, idcard_window->y+16, idcard_str, 16, GREEN, RED); + 8006c68: 4b58 ldr r3, [pc, #352] ; (8006dcc ) + 8006c6a: 681b ldr r3, [r3, #0] + 8006c6c: 8818 ldrh r0, [r3, #0] + 8006c6e: 4b57 ldr r3, [pc, #348] ; (8006dcc ) + 8006c70: 681b ldr r3, [r3, #0] + 8006c72: 885b ldrh r3, [r3, #2] + 8006c74: 3310 adds r3, #16 + 8006c76: b299 uxth r1, r3 + 8006c78: f44f 4378 mov.w r3, #63488 ; 0xf800 + 8006c7c: 9301 str r3, [sp, #4] + 8006c7e: f44f 63fc mov.w r3, #2016 ; 0x7e0 + 8006c82: 9300 str r3, [sp, #0] + 8006c84: 2310 movs r3, #16 + 8006c86: 4a50 ldr r2, [pc, #320] ; (8006dc8 ) + 8006c88: f7fe fda4 bl 80057d4 + + status=MI_ERR; + 8006c8c: 4b49 ldr r3, [pc, #292] ; (8006db4 ) + 8006c8e: 2202 movs r2, #2 + 8006c90: 701a strb r2, [r3, #0] + status =PcdAuthState(0,0,KEY,SN); + 8006c92: 4b49 ldr r3, [pc, #292] ; (8006db8 ) + 8006c94: 4a4e ldr r2, [pc, #312] ; (8006dd0 ) + 8006c96: 2100 movs r1, #0 + 8006c98: 2000 movs r0, #0 + 8006c9a: f7ff f999 bl 8005fd0 + 8006c9e: 4603 mov r3, r0 + 8006ca0: 461a mov r2, r3 + 8006ca2: 4b44 ldr r3, [pc, #272] ; (8006db4 ) + 8006ca4: 701a strb r2, [r3, #0] + } + if(status==MI_OK) + 8006ca6: 4b43 ldr r3, [pc, #268] ; (8006db4 ) + 8006ca8: 781b ldrb r3, [r3, #0] + 8006caa: 2b00 cmp r3, #0 + 8006cac: d11c bne.n 8006ce8 + { + LCD_ShowString(idcard_window->x, idcard_window->y+32, "KEY_OK", 16, GREEN, RED); + 8006cae: 4b47 ldr r3, [pc, #284] ; (8006dcc ) + 8006cb0: 681b ldr r3, [r3, #0] + 8006cb2: 8818 ldrh r0, [r3, #0] + 8006cb4: 4b45 ldr r3, [pc, #276] ; (8006dcc ) + 8006cb6: 681b ldr r3, [r3, #0] + 8006cb8: 885b ldrh r3, [r3, #2] + 8006cba: 3320 adds r3, #32 + 8006cbc: b299 uxth r1, r3 + 8006cbe: f44f 4378 mov.w r3, #63488 ; 0xf800 + 8006cc2: 9301 str r3, [sp, #4] + 8006cc4: f44f 63fc mov.w r3, #2016 ; 0x7e0 + 8006cc8: 9300 str r3, [sp, #0] + 8006cca: 2310 movs r3, #16 + 8006ccc: 4a41 ldr r2, [pc, #260] ; (8006dd4 ) + 8006cce: f7fe fd81 bl 80057d4 + status=MI_ERR; + 8006cd2: 4b38 ldr r3, [pc, #224] ; (8006db4 ) + 8006cd4: 2202 movs r2, #2 + 8006cd6: 701a strb r2, [r3, #0] + status=PcdRead(0,RFID); + 8006cd8: 4939 ldr r1, [pc, #228] ; (8006dc0 ) + 8006cda: 2000 movs r0, #0 + 8006cdc: f7ff f9dd bl 800609a + 8006ce0: 4603 mov r3, r0 + 8006ce2: 461a mov r2, r3 + 8006ce4: 4b33 ldr r3, [pc, #204] ; (8006db4 ) + 8006ce6: 701a strb r2, [r3, #0] + } + if(status==MI_OK) + 8006ce8: 4b32 ldr r3, [pc, #200] ; (8006db4 ) + 8006cea: 781b ldrb r3, [r3, #0] + 8006cec: 2b00 cmp r3, #0 + 8006cee: d15b bne.n 8006da8 + { + sprintf(idcard_str,"%x%x%x%x%x%x%x%x%x%x%x%x%x%x%x%x",RFID[0],RFID[1],RFID[2],RFID[3],RFID[4],RFID[5],RFID[6],RFID[7],RFID[8],RFID[9],RFID[10],RFID[11],RFID[12],RFID[13],RFID[14],RFID[15]); + 8006cf0: 4b33 ldr r3, [pc, #204] ; (8006dc0 ) + 8006cf2: 781b ldrb r3, [r3, #0] + 8006cf4: 469c mov ip, r3 + 8006cf6: 4b32 ldr r3, [pc, #200] ; (8006dc0 ) + 8006cf8: 785b ldrb r3, [r3, #1] + 8006cfa: 469e mov lr, r3 + 8006cfc: 4b30 ldr r3, [pc, #192] ; (8006dc0 ) + 8006cfe: 789b ldrb r3, [r3, #2] + 8006d00: 4618 mov r0, r3 + 8006d02: 4b2f ldr r3, [pc, #188] ; (8006dc0 ) + 8006d04: 78db ldrb r3, [r3, #3] + 8006d06: 461c mov r4, r3 + 8006d08: 4b2d ldr r3, [pc, #180] ; (8006dc0 ) + 8006d0a: 791b ldrb r3, [r3, #4] + 8006d0c: 461d mov r5, r3 + 8006d0e: 4b2c ldr r3, [pc, #176] ; (8006dc0 ) + 8006d10: 795b ldrb r3, [r3, #5] + 8006d12: 461e mov r6, r3 + 8006d14: 4b2a ldr r3, [pc, #168] ; (8006dc0 ) + 8006d16: 799b ldrb r3, [r3, #6] + 8006d18: 61fb str r3, [r7, #28] + 8006d1a: 4b29 ldr r3, [pc, #164] ; (8006dc0 ) + 8006d1c: 79db ldrb r3, [r3, #7] + 8006d1e: 61bb str r3, [r7, #24] + 8006d20: 4b27 ldr r3, [pc, #156] ; (8006dc0 ) + 8006d22: 7a1b ldrb r3, [r3, #8] + 8006d24: 617b str r3, [r7, #20] + 8006d26: 4b26 ldr r3, [pc, #152] ; (8006dc0 ) + 8006d28: 7a5b ldrb r3, [r3, #9] + 8006d2a: 613b str r3, [r7, #16] + 8006d2c: 4b24 ldr r3, [pc, #144] ; (8006dc0 ) + 8006d2e: 7a9b ldrb r3, [r3, #10] + 8006d30: 60fb str r3, [r7, #12] + 8006d32: 4b23 ldr r3, [pc, #140] ; (8006dc0 ) + 8006d34: 7adb ldrb r3, [r3, #11] + 8006d36: 60bb str r3, [r7, #8] + 8006d38: 4b21 ldr r3, [pc, #132] ; (8006dc0 ) + 8006d3a: 7b1b ldrb r3, [r3, #12] + 8006d3c: 607b str r3, [r7, #4] + 8006d3e: 4b20 ldr r3, [pc, #128] ; (8006dc0 ) + 8006d40: 7b5b ldrb r3, [r3, #13] + 8006d42: 4619 mov r1, r3 + 8006d44: 4b1e ldr r3, [pc, #120] ; (8006dc0 ) + 8006d46: 7b9b ldrb r3, [r3, #14] + 8006d48: 461a mov r2, r3 + 8006d4a: 4b1d ldr r3, [pc, #116] ; (8006dc0 ) + 8006d4c: 7bdb ldrb r3, [r3, #15] + 8006d4e: 930d str r3, [sp, #52] ; 0x34 + 8006d50: 920c str r2, [sp, #48] ; 0x30 + 8006d52: 910b str r1, [sp, #44] ; 0x2c + 8006d54: 687a ldr r2, [r7, #4] + 8006d56: 920a str r2, [sp, #40] ; 0x28 + 8006d58: 68ba ldr r2, [r7, #8] + 8006d5a: 9209 str r2, [sp, #36] ; 0x24 + 8006d5c: 68fa ldr r2, [r7, #12] + 8006d5e: 9208 str r2, [sp, #32] + 8006d60: 693a ldr r2, [r7, #16] + 8006d62: 9207 str r2, [sp, #28] + 8006d64: 697a ldr r2, [r7, #20] + 8006d66: 9206 str r2, [sp, #24] + 8006d68: 69ba ldr r2, [r7, #24] + 8006d6a: 9205 str r2, [sp, #20] + 8006d6c: 69fb ldr r3, [r7, #28] + 8006d6e: 9304 str r3, [sp, #16] + 8006d70: 9603 str r6, [sp, #12] + 8006d72: 9502 str r5, [sp, #8] + 8006d74: 9401 str r4, [sp, #4] + 8006d76: 9000 str r0, [sp, #0] + 8006d78: 4673 mov r3, lr + 8006d7a: 4662 mov r2, ip + 8006d7c: 4916 ldr r1, [pc, #88] ; (8006dd8 ) + 8006d7e: 4812 ldr r0, [pc, #72] ; (8006dc8 ) + 8006d80: f001 f998 bl 80080b4 + LCD_ShowString(idcard_window->x, idcard_window->y+32, idcard_str, 16, GREEN, RED); + 8006d84: 4b11 ldr r3, [pc, #68] ; (8006dcc ) + 8006d86: 681b ldr r3, [r3, #0] + 8006d88: 8818 ldrh r0, [r3, #0] + 8006d8a: 4b10 ldr r3, [pc, #64] ; (8006dcc ) + 8006d8c: 681b ldr r3, [r3, #0] + 8006d8e: 885b ldrh r3, [r3, #2] + 8006d90: 3320 adds r3, #32 + 8006d92: b299 uxth r1, r3 + 8006d94: f44f 4378 mov.w r3, #63488 ; 0xf800 + 8006d98: 9301 str r3, [sp, #4] + 8006d9a: f44f 63fc mov.w r3, #2016 ; 0x7e0 + 8006d9e: 9300 str r3, [sp, #0] + 8006da0: 2310 movs r3, #16 + 8006da2: 4a09 ldr r2, [pc, #36] ; (8006dc8 ) + 8006da4: f7fe fd16 bl 80057d4 + } + } - 8006738: bf00 nop - 800673a: 46bd mov sp, r7 - 800673c: bc80 pop {r7} - 800673e: 4770 bx lr + 8006da8: bf00 nop + 8006daa: 3724 adds r7, #36 ; 0x24 + 8006dac: 46bd mov sp, r7 + 8006dae: bdf0 pop {r4, r5, r6, r7, pc} + 8006db0: 200003d4 .word 0x200003d4 + 8006db4: 200003dc .word 0x200003dc + 8006db8: 200003d8 .word 0x200003d8 + 8006dbc: 20000208 .word 0x20000208 + 8006dc0: 200003a0 .word 0x200003a0 + 8006dc4: 0800a488 .word 0x0800a488 + 8006dc8: 200003b0 .word 0x200003b0 + 8006dcc: 200003d0 .word 0x200003d0 + 8006dd0: 2000000c .word 0x2000000c + 8006dd4: 0800a494 .word 0x0800a494 + 8006dd8: 0800a49c .word 0x0800a49c -08006740 : +08006ddc : IIC_SAND_DATE(MAX30102_Device_address,REG_LED2_PA,&a,1);// Choose value for ~ 10mA for LED2 a=0x7f; IIC_SAND_DATE(MAX30102_Device_address,REG_PILOT_PA,&a,1);// Choose value for ~ 25mA for Pilot LED } void max30102_read_fifo(void) { - 8006740: b580 push {r7, lr} - 8006742: b082 sub sp, #8 - 8006744: af00 add r7, sp, #0 + 8006ddc: b580 push {r7, lr} + 8006dde: b082 sub sp, #8 + 8006de0: af00 add r7, sp, #0 uint16_t un_temp; fifo_red=0; - 8006746: 4b3c ldr r3, [pc, #240] ; (8006838 ) - 8006748: 2200 movs r2, #0 - 800674a: 801a strh r2, [r3, #0] + 8006de2: 4b3c ldr r3, [pc, #240] ; (8006ed4 ) + 8006de4: 2200 movs r2, #0 + 8006de6: 801a strh r2, [r3, #0] fifo_ir=0; - 800674c: 4b3b ldr r3, [pc, #236] ; (800683c ) - 800674e: 2200 movs r2, #0 - 8006750: 801a strh r2, [r3, #0] + 8006de8: 4b3b ldr r3, [pc, #236] ; (8006ed8 ) + 8006dea: 2200 movs r2, #0 + 8006dec: 801a strh r2, [r3, #0] uint8_t ach_i2c_data[6]; //read and clear status register IIC_READ_DATE(MAX30102_Device_address,REG_INTR_STATUS_1,&ach_i2c_data,1); - 8006752: 463a mov r2, r7 - 8006754: 2301 movs r3, #1 - 8006756: 2100 movs r1, #0 - 8006758: 20ae movs r0, #174 ; 0xae - 800675a: f7ff f94f bl 80059fc + 8006dee: 463a mov r2, r7 + 8006df0: 2301 movs r3, #1 + 8006df2: 2100 movs r1, #0 + 8006df4: 20ae movs r0, #174 ; 0xae + 8006df6: f7fe fe01 bl 80059fc IIC_READ_DATE(MAX30102_Device_address,REG_INTR_STATUS_2,&ach_i2c_data,1); - 800675e: 463a mov r2, r7 - 8006760: 2301 movs r3, #1 - 8006762: 2101 movs r1, #1 - 8006764: 20ae movs r0, #174 ; 0xae - 8006766: f7ff f949 bl 80059fc + 8006dfa: 463a mov r2, r7 + 8006dfc: 2301 movs r3, #1 + 8006dfe: 2101 movs r1, #1 + 8006e00: 20ae movs r0, #174 ; 0xae + 8006e02: f7fe fdfb bl 80059fc ach_i2c_data[0]=REG_FIFO_DATA; - 800676a: 2307 movs r3, #7 - 800676c: 703b strb r3, [r7, #0] + 8006e06: 2307 movs r3, #7 + 8006e08: 703b strb r3, [r7, #0] IIC_READ_DATE(MAX30102_Device_address,REG_FIFO_DATA,&ach_i2c_data,6); - 800676e: 463a mov r2, r7 - 8006770: 2306 movs r3, #6 - 8006772: 2107 movs r1, #7 - 8006774: 20ae movs r0, #174 ; 0xae - 8006776: f7ff f941 bl 80059fc + 8006e0a: 463a mov r2, r7 + 8006e0c: 2306 movs r3, #6 + 8006e0e: 2107 movs r1, #7 + 8006e10: 20ae movs r0, #174 ; 0xae + 8006e12: f7fe fdf3 bl 80059fc un_temp=ach_i2c_data[0]; - 800677a: 783b ldrb r3, [r7, #0] - 800677c: 80fb strh r3, [r7, #6] + 8006e16: 783b ldrb r3, [r7, #0] + 8006e18: 80fb strh r3, [r7, #6] un_temp<<=14; - 800677e: 88fb ldrh r3, [r7, #6] - 8006780: 039b lsls r3, r3, #14 - 8006782: 80fb strh r3, [r7, #6] + 8006e1a: 88fb ldrh r3, [r7, #6] + 8006e1c: 039b lsls r3, r3, #14 + 8006e1e: 80fb strh r3, [r7, #6] fifo_red+=un_temp; - 8006784: 4b2c ldr r3, [pc, #176] ; (8006838 ) - 8006786: 881a ldrh r2, [r3, #0] - 8006788: 88fb ldrh r3, [r7, #6] - 800678a: 4413 add r3, r2 - 800678c: b29a uxth r2, r3 - 800678e: 4b2a ldr r3, [pc, #168] ; (8006838 ) - 8006790: 801a strh r2, [r3, #0] + 8006e20: 4b2c ldr r3, [pc, #176] ; (8006ed4 ) + 8006e22: 881a ldrh r2, [r3, #0] + 8006e24: 88fb ldrh r3, [r7, #6] + 8006e26: 4413 add r3, r2 + 8006e28: b29a uxth r2, r3 + 8006e2a: 4b2a ldr r3, [pc, #168] ; (8006ed4 ) + 8006e2c: 801a strh r2, [r3, #0] un_temp=ach_i2c_data[1]; - 8006792: 787b ldrb r3, [r7, #1] - 8006794: 80fb strh r3, [r7, #6] + 8006e2e: 787b ldrb r3, [r7, #1] + 8006e30: 80fb strh r3, [r7, #6] un_temp<<=6; - 8006796: 88fb ldrh r3, [r7, #6] - 8006798: 019b lsls r3, r3, #6 - 800679a: 80fb strh r3, [r7, #6] + 8006e32: 88fb ldrh r3, [r7, #6] + 8006e34: 019b lsls r3, r3, #6 + 8006e36: 80fb strh r3, [r7, #6] fifo_red+=un_temp; - 800679c: 4b26 ldr r3, [pc, #152] ; (8006838 ) - 800679e: 881a ldrh r2, [r3, #0] - 80067a0: 88fb ldrh r3, [r7, #6] - 80067a2: 4413 add r3, r2 - 80067a4: b29a uxth r2, r3 - 80067a6: 4b24 ldr r3, [pc, #144] ; (8006838 ) - 80067a8: 801a strh r2, [r3, #0] + 8006e38: 4b26 ldr r3, [pc, #152] ; (8006ed4 ) + 8006e3a: 881a ldrh r2, [r3, #0] + 8006e3c: 88fb ldrh r3, [r7, #6] + 8006e3e: 4413 add r3, r2 + 8006e40: b29a uxth r2, r3 + 8006e42: 4b24 ldr r3, [pc, #144] ; (8006ed4 ) + 8006e44: 801a strh r2, [r3, #0] un_temp=ach_i2c_data[2]; - 80067aa: 78bb ldrb r3, [r7, #2] - 80067ac: 80fb strh r3, [r7, #6] + 8006e46: 78bb ldrb r3, [r7, #2] + 8006e48: 80fb strh r3, [r7, #6] un_temp>>=2; - 80067ae: 88fb ldrh r3, [r7, #6] - 80067b0: 089b lsrs r3, r3, #2 - 80067b2: 80fb strh r3, [r7, #6] + 8006e4a: 88fb ldrh r3, [r7, #6] + 8006e4c: 089b lsrs r3, r3, #2 + 8006e4e: 80fb strh r3, [r7, #6] fifo_red+=un_temp; - 80067b4: 4b20 ldr r3, [pc, #128] ; (8006838 ) - 80067b6: 881a ldrh r2, [r3, #0] - 80067b8: 88fb ldrh r3, [r7, #6] - 80067ba: 4413 add r3, r2 - 80067bc: b29a uxth r2, r3 - 80067be: 4b1e ldr r3, [pc, #120] ; (8006838 ) - 80067c0: 801a strh r2, [r3, #0] + 8006e50: 4b20 ldr r3, [pc, #128] ; (8006ed4 ) + 8006e52: 881a ldrh r2, [r3, #0] + 8006e54: 88fb ldrh r3, [r7, #6] + 8006e56: 4413 add r3, r2 + 8006e58: b29a uxth r2, r3 + 8006e5a: 4b1e ldr r3, [pc, #120] ; (8006ed4 ) + 8006e5c: 801a strh r2, [r3, #0] un_temp=ach_i2c_data[3]; - 80067c2: 78fb ldrb r3, [r7, #3] - 80067c4: 80fb strh r3, [r7, #6] + 8006e5e: 78fb ldrb r3, [r7, #3] + 8006e60: 80fb strh r3, [r7, #6] un_temp<<=14; - 80067c6: 88fb ldrh r3, [r7, #6] - 80067c8: 039b lsls r3, r3, #14 - 80067ca: 80fb strh r3, [r7, #6] + 8006e62: 88fb ldrh r3, [r7, #6] + 8006e64: 039b lsls r3, r3, #14 + 8006e66: 80fb strh r3, [r7, #6] fifo_ir+=un_temp; - 80067cc: 4b1b ldr r3, [pc, #108] ; (800683c ) - 80067ce: 881a ldrh r2, [r3, #0] - 80067d0: 88fb ldrh r3, [r7, #6] - 80067d2: 4413 add r3, r2 - 80067d4: b29a uxth r2, r3 - 80067d6: 4b19 ldr r3, [pc, #100] ; (800683c ) - 80067d8: 801a strh r2, [r3, #0] + 8006e68: 4b1b ldr r3, [pc, #108] ; (8006ed8 ) + 8006e6a: 881a ldrh r2, [r3, #0] + 8006e6c: 88fb ldrh r3, [r7, #6] + 8006e6e: 4413 add r3, r2 + 8006e70: b29a uxth r2, r3 + 8006e72: 4b19 ldr r3, [pc, #100] ; (8006ed8 ) + 8006e74: 801a strh r2, [r3, #0] un_temp=ach_i2c_data[4]; - 80067da: 793b ldrb r3, [r7, #4] - 80067dc: 80fb strh r3, [r7, #6] + 8006e76: 793b ldrb r3, [r7, #4] + 8006e78: 80fb strh r3, [r7, #6] un_temp<<=6; - 80067de: 88fb ldrh r3, [r7, #6] - 80067e0: 019b lsls r3, r3, #6 - 80067e2: 80fb strh r3, [r7, #6] + 8006e7a: 88fb ldrh r3, [r7, #6] + 8006e7c: 019b lsls r3, r3, #6 + 8006e7e: 80fb strh r3, [r7, #6] fifo_ir+=un_temp; - 80067e4: 4b15 ldr r3, [pc, #84] ; (800683c ) - 80067e6: 881a ldrh r2, [r3, #0] - 80067e8: 88fb ldrh r3, [r7, #6] - 80067ea: 4413 add r3, r2 - 80067ec: b29a uxth r2, r3 - 80067ee: 4b13 ldr r3, [pc, #76] ; (800683c ) - 80067f0: 801a strh r2, [r3, #0] + 8006e80: 4b15 ldr r3, [pc, #84] ; (8006ed8 ) + 8006e82: 881a ldrh r2, [r3, #0] + 8006e84: 88fb ldrh r3, [r7, #6] + 8006e86: 4413 add r3, r2 + 8006e88: b29a uxth r2, r3 + 8006e8a: 4b13 ldr r3, [pc, #76] ; (8006ed8 ) + 8006e8c: 801a strh r2, [r3, #0] un_temp=ach_i2c_data[5]; - 80067f2: 797b ldrb r3, [r7, #5] - 80067f4: 80fb strh r3, [r7, #6] + 8006e8e: 797b ldrb r3, [r7, #5] + 8006e90: 80fb strh r3, [r7, #6] un_temp>>=2; - 80067f6: 88fb ldrh r3, [r7, #6] - 80067f8: 089b lsrs r3, r3, #2 - 80067fa: 80fb strh r3, [r7, #6] + 8006e92: 88fb ldrh r3, [r7, #6] + 8006e94: 089b lsrs r3, r3, #2 + 8006e96: 80fb strh r3, [r7, #6] fifo_ir+=un_temp; - 80067fc: 4b0f ldr r3, [pc, #60] ; (800683c ) - 80067fe: 881a ldrh r2, [r3, #0] - 8006800: 88fb ldrh r3, [r7, #6] - 8006802: 4413 add r3, r2 - 8006804: b29a uxth r2, r3 - 8006806: 4b0d ldr r3, [pc, #52] ; (800683c ) - 8006808: 801a strh r2, [r3, #0] + 8006e98: 4b0f ldr r3, [pc, #60] ; (8006ed8 ) + 8006e9a: 881a ldrh r2, [r3, #0] + 8006e9c: 88fb ldrh r3, [r7, #6] + 8006e9e: 4413 add r3, r2 + 8006ea0: b29a uxth r2, r3 + 8006ea2: 4b0d ldr r3, [pc, #52] ; (8006ed8 ) + 8006ea4: 801a strh r2, [r3, #0] if(fifo_ir<=10000) - 800680a: 4b0c ldr r3, [pc, #48] ; (800683c ) - 800680c: 881b ldrh r3, [r3, #0] - 800680e: f242 7210 movw r2, #10000 ; 0x2710 - 8006812: 4293 cmp r3, r2 - 8006814: d802 bhi.n 800681c + 8006ea6: 4b0c ldr r3, [pc, #48] ; (8006ed8 ) + 8006ea8: 881b ldrh r3, [r3, #0] + 8006eaa: f242 7210 movw r2, #10000 ; 0x2710 + 8006eae: 4293 cmp r3, r2 + 8006eb0: d802 bhi.n 8006eb8 { fifo_ir=0; - 8006816: 4b09 ldr r3, [pc, #36] ; (800683c ) - 8006818: 2200 movs r2, #0 - 800681a: 801a strh r2, [r3, #0] + 8006eb2: 4b09 ldr r3, [pc, #36] ; (8006ed8 ) + 8006eb4: 2200 movs r2, #0 + 8006eb6: 801a strh r2, [r3, #0] } if(fifo_red<=10000) - 800681c: 4b06 ldr r3, [pc, #24] ; (8006838 ) - 800681e: 881b ldrh r3, [r3, #0] - 8006820: f242 7210 movw r2, #10000 ; 0x2710 - 8006824: 4293 cmp r3, r2 - 8006826: d802 bhi.n 800682e + 8006eb8: 4b06 ldr r3, [pc, #24] ; (8006ed4 ) + 8006eba: 881b ldrh r3, [r3, #0] + 8006ebc: f242 7210 movw r2, #10000 ; 0x2710 + 8006ec0: 4293 cmp r3, r2 + 8006ec2: d802 bhi.n 8006eca { fifo_red=0; - 8006828: 4b03 ldr r3, [pc, #12] ; (8006838 ) - 800682a: 2200 movs r2, #0 - 800682c: 801a strh r2, [r3, #0] + 8006ec4: 4b03 ldr r3, [pc, #12] ; (8006ed4 ) + 8006ec6: 2200 movs r2, #0 + 8006ec8: 801a strh r2, [r3, #0] } } - 800682e: bf00 nop - 8006830: 3708 adds r7, #8 - 8006832: 46bd mov sp, r7 - 8006834: bd80 pop {r7, pc} - 8006836: bf00 nop - 8006838: 200024e8 .word 0x200024e8 - 800683c: 200003d8 .word 0x200003d8 + 8006eca: bf00 nop + 8006ecc: 3708 adds r7, #8 + 8006ece: 46bd mov sp, r7 + 8006ed0: bd80 pop {r7, pc} + 8006ed2: bf00 nop + 8006ed4: 20002530 .word 0x20002530 + 8006ed8: 20000420 .word 0x20000420 -08006840 : +08006edc : } void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)//10us { - 8006840: b590 push {r4, r7, lr} - 8006842: b083 sub sp, #12 - 8006844: af00 add r7, sp, #0 - 8006846: 6078 str r0, [r7, #4] + 8006edc: b590 push {r4, r7, lr} + 8006ede: b083 sub sp, #12 + 8006ee0: af00 add r7, sp, #0 + 8006ee2: 6078 str r0, [r7, #4] if (htim == (&htim6)) - 8006848: 687b ldr r3, [r7, #4] - 800684a: 4a21 ldr r2, [pc, #132] ; (80068d0 ) - 800684c: 4293 cmp r3, r2 - 800684e: d13a bne.n 80068c6 + 8006ee4: 687b ldr r3, [r7, #4] + 8006ee6: 4a21 ldr r2, [pc, #132] ; (8006f6c ) + 8006ee8: 4293 cmp r3, r2 + 8006eea: d13a bne.n 8006f62 { max30102_read_fifo(); //read from MAX30102 FIFO2 - 8006850: f7ff ff76 bl 8006740 + 8006eec: f7ff ff76 bl 8006ddc //将数据写入fft输入并清除输出 s1[g_fft_index].real = fifo_red; - 8006854: 4b1f ldr r3, [pc, #124] ; (80068d4 ) - 8006856: 881b ldrh r3, [r3, #0] - 8006858: 4a1f ldr r2, [pc, #124] ; (80068d8 ) - 800685a: 8812 ldrh r2, [r2, #0] - 800685c: 4614 mov r4, r2 - 800685e: 4618 mov r0, r3 - 8006860: f7fa fa84 bl 8000d6c <__aeabi_ui2f> - 8006864: 4603 mov r3, r0 - 8006866: 4a1d ldr r2, [pc, #116] ; (80068dc ) - 8006868: f842 3034 str.w r3, [r2, r4, lsl #3] + 8006ef0: 4b1f ldr r3, [pc, #124] ; (8006f70 ) + 8006ef2: 881b ldrh r3, [r3, #0] + 8006ef4: 4a1f ldr r2, [pc, #124] ; (8006f74 ) + 8006ef6: 8812 ldrh r2, [r2, #0] + 8006ef8: 4614 mov r4, r2 + 8006efa: 4618 mov r0, r3 + 8006efc: f7f9 ff36 bl 8000d6c <__aeabi_ui2f> + 8006f00: 4603 mov r3, r0 + 8006f02: 4a1d ldr r2, [pc, #116] ; (8006f78 ) + 8006f04: f842 3034 str.w r3, [r2, r4, lsl #3] s1[g_fft_index].imag= 0; - 800686c: 4b1a ldr r3, [pc, #104] ; (80068d8 ) - 800686e: 881b ldrh r3, [r3, #0] - 8006870: 4a1a ldr r2, [pc, #104] ; (80068dc ) - 8006872: 00db lsls r3, r3, #3 - 8006874: 4413 add r3, r2 - 8006876: f04f 0200 mov.w r2, #0 - 800687a: 605a str r2, [r3, #4] + 8006f08: 4b1a ldr r3, [pc, #104] ; (8006f74 ) + 8006f0a: 881b ldrh r3, [r3, #0] + 8006f0c: 4a1a ldr r2, [pc, #104] ; (8006f78 ) + 8006f0e: 00db lsls r3, r3, #3 + 8006f10: 4413 add r3, r2 + 8006f12: f04f 0200 mov.w r2, #0 + 8006f16: 605a str r2, [r3, #4] s2[g_fft_index].real = fifo_ir; - 800687c: 4b18 ldr r3, [pc, #96] ; (80068e0 ) - 800687e: 881b ldrh r3, [r3, #0] - 8006880: 4a15 ldr r2, [pc, #84] ; (80068d8 ) - 8006882: 8812 ldrh r2, [r2, #0] - 8006884: 4614 mov r4, r2 - 8006886: 4618 mov r0, r3 - 8006888: f7fa fa70 bl 8000d6c <__aeabi_ui2f> - 800688c: 4603 mov r3, r0 - 800688e: 4a15 ldr r2, [pc, #84] ; (80068e4 ) - 8006890: f842 3034 str.w r3, [r2, r4, lsl #3] + 8006f18: 4b18 ldr r3, [pc, #96] ; (8006f7c ) + 8006f1a: 881b ldrh r3, [r3, #0] + 8006f1c: 4a15 ldr r2, [pc, #84] ; (8006f74 ) + 8006f1e: 8812 ldrh r2, [r2, #0] + 8006f20: 4614 mov r4, r2 + 8006f22: 4618 mov r0, r3 + 8006f24: f7f9 ff22 bl 8000d6c <__aeabi_ui2f> + 8006f28: 4603 mov r3, r0 + 8006f2a: 4a15 ldr r2, [pc, #84] ; (8006f80 ) + 8006f2c: f842 3034 str.w r3, [r2, r4, lsl #3] s2[g_fft_index].imag= 0; - 8006894: 4b10 ldr r3, [pc, #64] ; (80068d8 ) - 8006896: 881b ldrh r3, [r3, #0] - 8006898: 4a12 ldr r2, [pc, #72] ; (80068e4 ) - 800689a: 00db lsls r3, r3, #3 - 800689c: 4413 add r3, r2 - 800689e: f04f 0200 mov.w r2, #0 - 80068a2: 605a str r2, [r3, #4] + 8006f30: 4b10 ldr r3, [pc, #64] ; (8006f74 ) + 8006f32: 881b ldrh r3, [r3, #0] + 8006f34: 4a12 ldr r2, [pc, #72] ; (8006f80 ) + 8006f36: 00db lsls r3, r3, #3 + 8006f38: 4413 add r3, r2 + 8006f3a: f04f 0200 mov.w r2, #0 + 8006f3e: 605a str r2, [r3, #4] g_fft_index++; - 80068a4: 4b0c ldr r3, [pc, #48] ; (80068d8 ) - 80068a6: 881b ldrh r3, [r3, #0] - 80068a8: 3301 adds r3, #1 - 80068aa: b29a uxth r2, r3 - 80068ac: 4b0a ldr r3, [pc, #40] ; (80068d8 ) - 80068ae: 801a strh r2, [r3, #0] + 8006f40: 4b0c ldr r3, [pc, #48] ; (8006f74 ) + 8006f42: 881b ldrh r3, [r3, #0] + 8006f44: 3301 adds r3, #1 + 8006f46: b29a uxth r2, r3 + 8006f48: 4b0a ldr r3, [pc, #40] ; (8006f74 ) + 8006f4a: 801a strh r2, [r3, #0] if(g_fft_index>FFT_N) - 80068b0: 4b09 ldr r3, [pc, #36] ; (80068d8 ) - 80068b2: 881b ldrh r3, [r3, #0] - 80068b4: f5b3 7f00 cmp.w r3, #512 ; 0x200 - 80068b8: d905 bls.n 80068c6 + 8006f4c: 4b09 ldr r3, [pc, #36] ; (8006f74 ) + 8006f4e: 881b ldrh r3, [r3, #0] + 8006f50: f5b3 7f00 cmp.w r3, #512 ; 0x200 + 8006f54: d905 bls.n 8006f62 { get_data_flag=1; - 80068ba: 4b0b ldr r3, [pc, #44] ; (80068e8 ) - 80068bc: 2201 movs r2, #1 - 80068be: 701a strb r2, [r3, #0] + 8006f56: 4b0b ldr r3, [pc, #44] ; (8006f84 ) + 8006f58: 2201 movs r2, #1 + 8006f5a: 701a strb r2, [r3, #0] HAL_TIM_Base_Stop_IT(&htim6); - 80068c0: 4803 ldr r0, [pc, #12] ; (80068d0 ) - 80068c2: f7fd fe3f bl 8004544 + 8006f5c: 4803 ldr r0, [pc, #12] ; (8006f6c ) + 8006f5e: f7fd faf1 bl 8004544 } } } - 80068c6: bf00 nop - 80068c8: 370c adds r7, #12 - 80068ca: 46bd mov sp, r7 - 80068cc: bd90 pop {r4, r7, pc} - 80068ce: bf00 nop - 80068d0: 200002a8 .word 0x200002a8 - 80068d4: 200024e8 .word 0x200024e8 - 80068d8: 20000202 .word 0x20000202 - 80068dc: 200003e0 .word 0x200003e0 - 80068e0: 200003d8 .word 0x200003d8 - 80068e4: 20001460 .word 0x20001460 - 80068e8: 20000200 .word 0x20000200 + 8006f62: bf00 nop + 8006f64: 370c adds r7, #12 + 8006f66: 46bd mov sp, r7 + 8006f68: bd90 pop {r4, r7, pc} + 8006f6a: bf00 nop + 8006f6c: 200002b4 .word 0x200002b4 + 8006f70: 20002530 .word 0x20002530 + 8006f74: 2000020e .word 0x2000020e + 8006f78: 20000428 .word 0x20000428 + 8006f7c: 20000420 .word 0x20000420 + 8006f80: 200014a8 .word 0x200014a8 + 8006f84: 2000020c .word 0x2000020c -080068ec : +08006f88 : extern touch_device t0; task run_loop;//主循环状态机 void main_app() { - 80068ec: b580 push {r7, lr} - 80068ee: b096 sub sp, #88 ; 0x58 - 80068f0: af04 add r7, sp, #16 + 8006f88: b580 push {r7, lr} + 8006f8a: b096 sub sp, #88 ; 0x58 + 8006f8c: af04 add r7, sp, #16 char str[64]; LCDx_Init(); - 80068f2: f7fe fbcb bl 800508c + 8006f8e: f7fe f87d bl 800508c EPPROM_SLOWWRITE_INIT(); - 80068f6: f7fe ffab bl 8005850 + 8006f92: f7fe fc5d bl 8005850 if(HAL_GPIO_ReadPin(KEY3_GPIO_Port, KEY3_Pin)==0) - 80068fa: 2104 movs r1, #4 - 80068fc: 4819 ldr r0, [pc, #100] ; (8006964 ) - 80068fe: f7fb fbe3 bl 80020c8 - 8006902: 4603 mov r3, r0 - 8006904: 2b00 cmp r3, #0 - 8006906: d103 bne.n 8006910 + 8006f96: 2104 movs r1, #4 + 8006f98: 4819 ldr r0, [pc, #100] ; (8007000 ) + 8006f9a: f7fb f895 bl 80020c8 + 8006f9e: 4603 mov r3, r0 + 8006fa0: 2b00 cmp r3, #0 + 8006fa2: d103 bne.n 8006fac { TP_adjustment(1); - 8006908: 2001 movs r0, #1 - 800690a: f7ff fc21 bl 8006150 - 800690e: e002 b.n 8006916 + 8006fa4: 2001 movs r0, #1 + 8006fa6: f7ff fb35 bl 8006614 + 8006faa: e002 b.n 8006fb2 }else { TP_adjustment(0); - 8006910: 2000 movs r0, #0 - 8006912: f7ff fc1d bl 8006150 + 8006fac: 2000 movs r0, #0 + 8006fae: f7ff fb31 bl 8006614 } UI *ui=UI_Init(BLACK); - 8006916: 2000 movs r0, #0 - 8006918: f000 f852 bl 80069c0 - 800691c: 6478 str r0, [r7, #68] ; 0x44 + 8006fb2: 2000 movs r0, #0 + 8006fb4: f000 f852 bl 800705c + 8006fb8: 6478 str r0, [r7, #68] ; 0x44 //APP_blood_init(New_Window(ui,10,10,128,128,WHITE,"MAX30102")); APP_IDcard_init(New_Window(ui,25,30,150,100,GREEN,"IDcard")); - 800691e: 4b12 ldr r3, [pc, #72] ; (8006968 ) - 8006920: 9302 str r3, [sp, #8] - 8006922: f44f 63fc mov.w r3, #2016 ; 0x7e0 - 8006926: 9301 str r3, [sp, #4] - 8006928: 2364 movs r3, #100 ; 0x64 - 800692a: 9300 str r3, [sp, #0] - 800692c: 2396 movs r3, #150 ; 0x96 - 800692e: 221e movs r2, #30 - 8006930: 2119 movs r1, #25 - 8006932: 6c78 ldr r0, [r7, #68] ; 0x44 - 8006934: f000 f877 bl 8006a26 - 8006938: 4603 mov r3, r0 - 800693a: 4618 mov r0, r3 - 800693c: f7ff feea bl 8006714 + 8006fba: 4b12 ldr r3, [pc, #72] ; (8007004 ) + 8006fbc: 9302 str r3, [sp, #8] + 8006fbe: f44f 63fc mov.w r3, #2016 ; 0x7e0 + 8006fc2: 9301 str r3, [sp, #4] + 8006fc4: 2364 movs r3, #100 ; 0x64 + 8006fc6: 9300 str r3, [sp, #0] + 8006fc8: 2396 movs r3, #150 ; 0x96 + 8006fca: 221e movs r2, #30 + 8006fcc: 2119 movs r1, #25 + 8006fce: 6c78 ldr r0, [r7, #68] ; 0x44 + 8006fd0: f000 f877 bl 80070c2 + 8006fd4: 4603 mov r3, r0 + 8006fd6: 4618 mov r0, r3 + 8006fd8: f7ff fdfe bl 8006bd8 //New_Window(ui,80,80,60,90,YELLOW,"YELLOW"); //New_Window(ui,120,90,70,60,MAGENTA,"MAGENTA"); ui->refresh_ui_flag=1; - 8006940: 6c7a ldr r2, [r7, #68] ; 0x44 - 8006942: f892 3020 ldrb.w r3, [r2, #32] - 8006946: f043 0304 orr.w r3, r3, #4 - 800694a: f882 3020 strb.w r3, [r2, #32] + 8006fdc: 6c7a ldr r2, [r7, #68] ; 0x44 + 8006fde: f892 3020 ldrb.w r3, [r2, #32] + 8006fe2: f043 0304 orr.w r3, r3, #4 + 8006fe6: f882 3020 strb.w r3, [r2, #32] */ // 交叉编译测试 //APP_blood_loop(); APP_IDcard_loop(); - 800694e: f7ff fef1 bl 8006734 + 8006fea: f7ff fe05 bl 8006bf8 UI_Server(ui); - 8006952: 6c78 ldr r0, [r7, #68] ; 0x44 - 8006954: f000 fa0e bl 8006d74 + 8006fee: 6c78 ldr r0, [r7, #68] ; 0x44 + 8006ff0: f000 fa0e bl 8007410 TP_Server(); - 8006958: f7ff fb26 bl 8005fa8 + 8006ff4: f7ff fa3a bl 800646c EEPROM_SLOWWRITE_SERVER(); - 800695c: f7fe ff92 bl 8005884 + 8006ff8: f7fe fc44 bl 8005884 { - 8006960: e7f5 b.n 800694e - 8006962: bf00 nop - 8006964: 40011800 .word 0x40011800 - 8006968: 08009df0 .word 0x08009df0 + 8006ffc: e7f5 b.n 8006fea + 8006ffe: bf00 nop + 8007000: 40011800 .word 0x40011800 + 8007004: 0800a4c0 .word 0x0800a4c0 -0800696c : +08007008 : #include "touch.h" extern touch_device t0; //接口 //设置屏幕像素坐标 void Inteface_SetCursor(uint16_t Xpos, uint16_t Ypos) { - 800696c: b580 push {r7, lr} - 800696e: b082 sub sp, #8 - 8006970: af00 add r7, sp, #0 - 8006972: 4603 mov r3, r0 - 8006974: 460a mov r2, r1 - 8006976: 80fb strh r3, [r7, #6] - 8006978: 4613 mov r3, r2 - 800697a: 80bb strh r3, [r7, #4] + 8007008: b580 push {r7, lr} + 800700a: b082 sub sp, #8 + 800700c: af00 add r7, sp, #0 + 800700e: 4603 mov r3, r0 + 8007010: 460a mov r2, r1 + 8007012: 80fb strh r3, [r7, #6] + 8007014: 4613 mov r3, r2 + 8007016: 80bb strh r3, [r7, #4] LCD_SetCursor(Xpos,Ypos); //设置光标位置 - 800697c: 88ba ldrh r2, [r7, #4] - 800697e: 88fb ldrh r3, [r7, #6] - 8006980: 4611 mov r1, r2 - 8006982: 4618 mov r0, r3 - 8006984: f7fe fc78 bl 8005278 + 8007018: 88ba ldrh r2, [r7, #4] + 800701a: 88fb ldrh r3, [r7, #6] + 800701c: 4611 mov r1, r2 + 800701e: 4618 mov r0, r3 + 8007020: f7fe f92a bl 8005278 LCD_REG_ADDRESS=lcddev.wramcmd; //开始写入GRAM - 8006988: 4b04 ldr r3, [pc, #16] ; (800699c ) - 800698a: 79da ldrb r2, [r3, #7] - 800698c: f04f 43d8 mov.w r3, #1811939328 ; 0x6c000000 - 8006990: b292 uxth r2, r2 - 8006992: 801a strh r2, [r3, #0] + 8007024: 4b04 ldr r3, [pc, #16] ; (8007038 ) + 8007026: 79da ldrb r2, [r3, #7] + 8007028: f04f 43d8 mov.w r3, #1811939328 ; 0x6c000000 + 800702c: b292 uxth r2, r2 + 800702e: 801a strh r2, [r3, #0] } - 8006994: bf00 nop - 8006996: 3708 adds r7, #8 - 8006998: 46bd mov sp, r7 - 800699a: bd80 pop {r7, pc} - 800699c: 2000034c .word 0x2000034c + 8007030: bf00 nop + 8007032: 3708 adds r7, #8 + 8007034: 46bd mov sp, r7 + 8007036: bd80 pop {r7, pc} + 8007038: 20000358 .word 0x20000358 -080069a0 : +0800703c : //往像素坐标写入一个颜色 void Inteface_SetColor(uint16_t color) { - 80069a0: b480 push {r7} - 80069a2: b083 sub sp, #12 - 80069a4: af00 add r7, sp, #0 - 80069a6: 4603 mov r3, r0 - 80069a8: 80fb strh r3, [r7, #6] + 800703c: b480 push {r7} + 800703e: b083 sub sp, #12 + 8007040: af00 add r7, sp, #0 + 8007042: 4603 mov r3, r0 + 8007044: 80fb strh r3, [r7, #6] LCD_DATA_ADDRESS=color; - 80069aa: 4a04 ldr r2, [pc, #16] ; (80069bc ) - 80069ac: 88fb ldrh r3, [r7, #6] - 80069ae: 8013 strh r3, [r2, #0] + 8007046: 4a04 ldr r2, [pc, #16] ; (8007058 ) + 8007048: 88fb ldrh r3, [r7, #6] + 800704a: 8013 strh r3, [r2, #0] } - 80069b0: bf00 nop - 80069b2: 370c adds r7, #12 - 80069b4: 46bd mov sp, r7 - 80069b6: bc80 pop {r7} - 80069b8: 4770 bx lr - 80069ba: bf00 nop - 80069bc: 6c000800 .word 0x6c000800 + 800704c: bf00 nop + 800704e: 370c adds r7, #12 + 8007050: 46bd mov sp, r7 + 8007052: bc80 pop {r7} + 8007054: 4770 bx lr + 8007056: bf00 nop + 8007058: 6c000800 .word 0x6c000800 -080069c0 : +0800705c : //新建一个UI对象 //当时都想法是类似windows的多桌面,每个桌面都能有n个窗口 UI *UI_Init(COLOR_16 background) { - 80069c0: b580 push {r7, lr} - 80069c2: b084 sub sp, #16 - 80069c4: af00 add r7, sp, #0 - 80069c6: 6078 str r0, [r7, #4] + 800705c: b580 push {r7, lr} + 800705e: b084 sub sp, #16 + 8007060: af00 add r7, sp, #0 + 8007062: 6078 str r0, [r7, #4] UI *ui; ui = (UI*)malloc(sizeof(UI)); - 80069c8: 2024 movs r0, #36 ; 0x24 - 80069ca: f000 faf7 bl 8006fbc - 80069ce: 4603 mov r3, r0 - 80069d0: 60fb str r3, [r7, #12] + 8007064: 2024 movs r0, #36 ; 0x24 + 8007066: f000 faf7 bl 8007658 + 800706a: 4603 mov r3, r0 + 800706c: 60fb str r3, [r7, #12] if(ui!=NULL) - 80069d2: 68fb ldr r3, [r7, #12] - 80069d4: 2b00 cmp r3, #0 - 80069d6: d021 beq.n 8006a1c + 800706e: 68fb ldr r3, [r7, #12] + 8007070: 2b00 cmp r3, #0 + 8007072: d021 beq.n 80070b8 { ui->x=0; - 80069d8: 68fb ldr r3, [r7, #12] - 80069da: 2200 movs r2, #0 - 80069dc: 809a strh r2, [r3, #4] + 8007074: 68fb ldr r3, [r7, #12] + 8007076: 2200 movs r2, #0 + 8007078: 809a strh r2, [r3, #4] ui->y=0; - 80069de: 68fb ldr r3, [r7, #12] - 80069e0: 2200 movs r2, #0 - 80069e2: 80da strh r2, [r3, #6] + 800707a: 68fb ldr r3, [r7, #12] + 800707c: 2200 movs r2, #0 + 800707e: 80da strh r2, [r3, #6] ui->high=240; - 80069e4: 68fb ldr r3, [r7, #12] - 80069e6: 22f0 movs r2, #240 ; 0xf0 - 80069e8: 815a strh r2, [r3, #10] + 8007080: 68fb ldr r3, [r7, #12] + 8007082: 22f0 movs r2, #240 ; 0xf0 + 8007084: 815a strh r2, [r3, #10] ui->width=320; - 80069ea: 68fb ldr r3, [r7, #12] - 80069ec: f44f 72a0 mov.w r2, #320 ; 0x140 - 80069f0: 811a strh r2, [r3, #8] + 8007086: 68fb ldr r3, [r7, #12] + 8007088: f44f 72a0 mov.w r2, #320 ; 0x140 + 800708c: 811a strh r2, [r3, #8] ui->background=background; - 80069f2: 68fb ldr r3, [r7, #12] - 80069f4: 687a ldr r2, [r7, #4] - 80069f6: 601a str r2, [r3, #0] + 800708e: 68fb ldr r3, [r7, #12] + 8007090: 687a ldr r2, [r7, #4] + 8007092: 601a str r2, [r3, #0] ui->windows=NULL; - 80069f8: 68fb ldr r3, [r7, #12] - 80069fa: 2200 movs r2, #0 - 80069fc: 60da str r2, [r3, #12] + 8007094: 68fb ldr r3, [r7, #12] + 8007096: 2200 movs r2, #0 + 8007098: 60da str r2, [r3, #12] ui->last_windows=NULL; - 80069fe: 68fb ldr r3, [r7, #12] - 8006a00: 2200 movs r2, #0 - 8006a02: 611a str r2, [r3, #16] + 800709a: 68fb ldr r3, [r7, #12] + 800709c: 2200 movs r2, #0 + 800709e: 611a str r2, [r3, #16] ui->refresh_ui_flag=1; - 8006a04: 68fa ldr r2, [r7, #12] - 8006a06: f892 3020 ldrb.w r3, [r2, #32] - 8006a0a: f043 0304 orr.w r3, r3, #4 - 8006a0e: f882 3020 strb.w r3, [r2, #32] + 80070a0: 68fa ldr r2, [r7, #12] + 80070a2: f892 3020 ldrb.w r3, [r2, #32] + 80070a6: f043 0304 orr.w r3, r3, #4 + 80070aa: f882 3020 strb.w r3, [r2, #32] ui->moveed_windwos=NULL; - 8006a12: 68fb ldr r3, [r7, #12] - 8006a14: 2200 movs r2, #0 - 8006a16: 615a str r2, [r3, #20] + 80070ae: 68fb ldr r3, [r7, #12] + 80070b0: 2200 movs r2, #0 + 80070b2: 615a str r2, [r3, #20] ui->touch->acc_y=0; } */ return ui; - 8006a18: 68fb ldr r3, [r7, #12] - 8006a1a: e000 b.n 8006a1e + 80070b4: 68fb ldr r3, [r7, #12] + 80070b6: e000 b.n 80070ba } return NULL; - 8006a1c: 2300 movs r3, #0 + 80070b8: 2300 movs r3, #0 } - 8006a1e: 4618 mov r0, r3 - 8006a20: 3710 adds r7, #16 - 8006a22: 46bd mov sp, r7 - 8006a24: bd80 pop {r7, pc} + 80070ba: 4618 mov r0, r3 + 80070bc: 3710 adds r7, #16 + 80070be: 46bd mov sp, r7 + 80070c0: bd80 pop {r7, pc} -08006a26 : +080070c2 : //新建一个窗口 //返回窗口的指针 //将窗口挂载到某个ui window *New_Window(UI *ui,uint16_t x,uint16_t y,uint16_t width,uint16_t high,COLOR_16 background,const char *title) { - 8006a26: b580 push {r7, lr} - 8006a28: b088 sub sp, #32 - 8006a2a: af00 add r7, sp, #0 - 8006a2c: 60f8 str r0, [r7, #12] - 8006a2e: 4608 mov r0, r1 - 8006a30: 4611 mov r1, r2 - 8006a32: 461a mov r2, r3 - 8006a34: 4603 mov r3, r0 - 8006a36: 817b strh r3, [r7, #10] - 8006a38: 460b mov r3, r1 - 8006a3a: 813b strh r3, [r7, #8] - 8006a3c: 4613 mov r3, r2 - 8006a3e: 80fb strh r3, [r7, #6] + 80070c2: b580 push {r7, lr} + 80070c4: b088 sub sp, #32 + 80070c6: af00 add r7, sp, #0 + 80070c8: 60f8 str r0, [r7, #12] + 80070ca: 4608 mov r0, r1 + 80070cc: 4611 mov r1, r2 + 80070ce: 461a mov r2, r3 + 80070d0: 4603 mov r3, r0 + 80070d2: 817b strh r3, [r7, #10] + 80070d4: 460b mov r3, r1 + 80070d6: 813b strh r3, [r7, #8] + 80070d8: 4613 mov r3, r2 + 80070da: 80fb strh r3, [r7, #6] window *temp_window; temp_window = (window*)malloc(sizeof(window)); - 8006a40: 201c movs r0, #28 - 8006a42: f000 fabb bl 8006fbc - 8006a46: 4603 mov r3, r0 - 8006a48: 617b str r3, [r7, #20] + 80070dc: 201c movs r0, #28 + 80070de: f000 fabb bl 8007658 + 80070e2: 4603 mov r3, r0 + 80070e4: 617b str r3, [r7, #20] if(temp_window!=NULL) - 8006a4a: 697b ldr r3, [r7, #20] - 8006a4c: 2b00 cmp r3, #0 - 8006a4e: d022 beq.n 8006a96 + 80070e6: 697b ldr r3, [r7, #20] + 80070e8: 2b00 cmp r3, #0 + 80070ea: d022 beq.n 8007132 { temp_window->background=background; - 8006a50: 697b ldr r3, [r7, #20] - 8006a52: 6afa ldr r2, [r7, #44] ; 0x2c - 8006a54: 609a str r2, [r3, #8] + 80070ec: 697b ldr r3, [r7, #20] + 80070ee: 6afa ldr r2, [r7, #44] ; 0x2c + 80070f0: 609a str r2, [r3, #8] temp_window->high=high; - 8006a56: 697b ldr r3, [r7, #20] - 8006a58: 8d3a ldrh r2, [r7, #40] ; 0x28 - 8006a5a: 80da strh r2, [r3, #6] + 80070f2: 697b ldr r3, [r7, #20] + 80070f4: 8d3a ldrh r2, [r7, #40] ; 0x28 + 80070f6: 80da strh r2, [r3, #6] temp_window->width=width; - 8006a5c: 697b ldr r3, [r7, #20] - 8006a5e: 88fa ldrh r2, [r7, #6] - 8006a60: 809a strh r2, [r3, #4] + 80070f8: 697b ldr r3, [r7, #20] + 80070fa: 88fa ldrh r2, [r7, #6] + 80070fc: 809a strh r2, [r3, #4] temp_window->x=x; - 8006a62: 697b ldr r3, [r7, #20] - 8006a64: 897a ldrh r2, [r7, #10] - 8006a66: 801a strh r2, [r3, #0] + 80070fe: 697b ldr r3, [r7, #20] + 8007100: 897a ldrh r2, [r7, #10] + 8007102: 801a strh r2, [r3, #0] temp_window->y=y; - 8006a68: 697b ldr r3, [r7, #20] - 8006a6a: 893a ldrh r2, [r7, #8] - 8006a6c: 805a strh r2, [r3, #2] + 8007104: 697b ldr r3, [r7, #20] + 8007106: 893a ldrh r2, [r7, #8] + 8007108: 805a strh r2, [r3, #2] for(int a=0;a<16;a++) - 8006a6e: 2300 movs r3, #0 - 8006a70: 61fb str r3, [r7, #28] - 8006a72: e00c b.n 8006a8e + 800710a: 2300 movs r3, #0 + 800710c: 61fb str r3, [r7, #28] + 800710e: e00c b.n 800712a { temp_window->title[a]=title[a]; - 8006a74: 69fb ldr r3, [r7, #28] - 8006a76: 6b3a ldr r2, [r7, #48] ; 0x30 - 8006a78: 4413 add r3, r2 - 8006a7a: 7819 ldrb r1, [r3, #0] - 8006a7c: 697a ldr r2, [r7, #20] - 8006a7e: 69fb ldr r3, [r7, #28] - 8006a80: 4413 add r3, r2 - 8006a82: 330c adds r3, #12 - 8006a84: 460a mov r2, r1 - 8006a86: 701a strb r2, [r3, #0] + 8007110: 69fb ldr r3, [r7, #28] + 8007112: 6b3a ldr r2, [r7, #48] ; 0x30 + 8007114: 4413 add r3, r2 + 8007116: 7819 ldrb r1, [r3, #0] + 8007118: 697a ldr r2, [r7, #20] + 800711a: 69fb ldr r3, [r7, #28] + 800711c: 4413 add r3, r2 + 800711e: 330c adds r3, #12 + 8007120: 460a mov r2, r1 + 8007122: 701a strb r2, [r3, #0] for(int a=0;a<16;a++) - 8006a88: 69fb ldr r3, [r7, #28] - 8006a8a: 3301 adds r3, #1 - 8006a8c: 61fb str r3, [r7, #28] - 8006a8e: 69fb ldr r3, [r7, #28] - 8006a90: 2b0f cmp r3, #15 - 8006a92: ddef ble.n 8006a74 - 8006a94: e001 b.n 8006a9a + 8007124: 69fb ldr r3, [r7, #28] + 8007126: 3301 adds r3, #1 + 8007128: 61fb str r3, [r7, #28] + 800712a: 69fb ldr r3, [r7, #28] + 800712c: 2b0f cmp r3, #15 + 800712e: ddef ble.n 8007110 + 8007130: e001 b.n 8007136 } }else{return NULL;} - 8006a96: 2300 movs r3, #0 - 8006a98: e02a b.n 8006af0 + 8007132: 2300 movs r3, #0 + 8007134: e02a b.n 800718c windows_stack *temp_windows_stack; temp_windows_stack=ui->last_windows; - 8006a9a: 68fb ldr r3, [r7, #12] - 8006a9c: 691b ldr r3, [r3, #16] - 8006a9e: 61bb str r3, [r7, #24] + 8007136: 68fb ldr r3, [r7, #12] + 8007138: 691b ldr r3, [r3, #16] + 800713a: 61bb str r3, [r7, #24] if(temp_windows_stack==NULL) - 8006aa0: 69bb ldr r3, [r7, #24] - 8006aa2: 2b00 cmp r3, #0 - 8006aa4: d10b bne.n 8006abe + 800713c: 69bb ldr r3, [r7, #24] + 800713e: 2b00 cmp r3, #0 + 8007140: d10b bne.n 800715a { temp_windows_stack=(windows_stack*)malloc(sizeof(windows_stack)); - 8006aa6: 200c movs r0, #12 - 8006aa8: f000 fa88 bl 8006fbc - 8006aac: 4603 mov r3, r0 - 8006aae: 61bb str r3, [r7, #24] + 8007142: 200c movs r0, #12 + 8007144: f000 fa88 bl 8007658 + 8007148: 4603 mov r3, r0 + 800714a: 61bb str r3, [r7, #24] temp_windows_stack->up=NULL; - 8006ab0: 69bb ldr r3, [r7, #24] - 8006ab2: 2200 movs r2, #0 - 8006ab4: 601a str r2, [r3, #0] + 800714c: 69bb ldr r3, [r7, #24] + 800714e: 2200 movs r2, #0 + 8007150: 601a str r2, [r3, #0] ui->windows=temp_windows_stack; - 8006ab6: 68fb ldr r3, [r7, #12] - 8006ab8: 69ba ldr r2, [r7, #24] - 8006aba: 60da str r2, [r3, #12] - 8006abc: e00e b.n 8006adc + 8007152: 68fb ldr r3, [r7, #12] + 8007154: 69ba ldr r2, [r7, #24] + 8007156: 60da str r2, [r3, #12] + 8007158: e00e b.n 8007178 while(temp_windows_stack->next!=NULL) { temp_windows_stack=temp_windows_stack->next; } */ windows_stack *up=temp_windows_stack;//备份当前对象指针 - 8006abe: 69bb ldr r3, [r7, #24] - 8006ac0: 613b str r3, [r7, #16] + 800715a: 69bb ldr r3, [r7, #24] + 800715c: 613b str r3, [r7, #16] temp_windows_stack->next=(windows_stack*)malloc(sizeof(windows_stack)); - 8006ac2: 200c movs r0, #12 - 8006ac4: f000 fa7a bl 8006fbc - 8006ac8: 4603 mov r3, r0 - 8006aca: 461a mov r2, r3 - 8006acc: 69bb ldr r3, [r7, #24] - 8006ace: 609a str r2, [r3, #8] + 800715e: 200c movs r0, #12 + 8007160: f000 fa7a bl 8007658 + 8007164: 4603 mov r3, r0 + 8007166: 461a mov r2, r3 + 8007168: 69bb ldr r3, [r7, #24] + 800716a: 609a str r2, [r3, #8] temp_windows_stack=temp_windows_stack->next; - 8006ad0: 69bb ldr r3, [r7, #24] - 8006ad2: 689b ldr r3, [r3, #8] - 8006ad4: 61bb str r3, [r7, #24] + 800716c: 69bb ldr r3, [r7, #24] + 800716e: 689b ldr r3, [r3, #8] + 8007170: 61bb str r3, [r7, #24] temp_windows_stack->up=up; - 8006ad6: 69bb ldr r3, [r7, #24] - 8006ad8: 693a ldr r2, [r7, #16] - 8006ada: 601a str r2, [r3, #0] + 8007172: 69bb ldr r3, [r7, #24] + 8007174: 693a ldr r2, [r7, #16] + 8007176: 601a str r2, [r3, #0] } temp_windows_stack->next=NULL; - 8006adc: 69bb ldr r3, [r7, #24] - 8006ade: 2200 movs r2, #0 - 8006ae0: 609a str r2, [r3, #8] + 8007178: 69bb ldr r3, [r7, #24] + 800717a: 2200 movs r2, #0 + 800717c: 609a str r2, [r3, #8] temp_windows_stack->window=temp_window; - 8006ae2: 69bb ldr r3, [r7, #24] - 8006ae4: 697a ldr r2, [r7, #20] - 8006ae6: 605a str r2, [r3, #4] + 800717e: 69bb ldr r3, [r7, #24] + 8007180: 697a ldr r2, [r7, #20] + 8007182: 605a str r2, [r3, #4] ui->last_windows=temp_windows_stack; - 8006ae8: 68fb ldr r3, [r7, #12] - 8006aea: 69ba ldr r2, [r7, #24] - 8006aec: 611a str r2, [r3, #16] + 8007184: 68fb ldr r3, [r7, #12] + 8007186: 69ba ldr r2, [r7, #24] + 8007188: 611a str r2, [r3, #16] return temp_window; - 8006aee: 697b ldr r3, [r7, #20] + 800718a: 697b ldr r3, [r7, #20] } - 8006af0: 4618 mov r0, r3 - 8006af2: 3720 adds r7, #32 - 8006af4: 46bd mov sp, r7 - 8006af6: bd80 pop {r7, pc} + 800718c: 4618 mov r0, r3 + 800718e: 3720 adds r7, #32 + 8007190: 46bd mov sp, r7 + 8007192: bd80 pop {r7, pc} -08006af8 : +08007194 : temp_window->y=temp_window->y+acc_y; } //显示一个窗口 void Refresh_Window(UI *ui,window *temp_window) { - 8006af8: b580 push {r7, lr} - 8006afa: b088 sub sp, #32 - 8006afc: af02 add r7, sp, #8 - 8006afe: 6078 str r0, [r7, #4] - 8006b00: 6039 str r1, [r7, #0] + 8007194: b580 push {r7, lr} + 8007196: b088 sub sp, #32 + 8007198: af02 add r7, sp, #8 + 800719a: 6078 str r0, [r7, #4] + 800719c: 6039 str r1, [r7, #0] //开始绘制窗口//填充窗口背景 int x,y; char z; for(uint16_t temp_y=0;temp_yhigh;temp_y++) - 8006b02: 2300 movs r3, #0 - 8006b04: 82bb strh r3, [r7, #20] - 8006b06: e063 b.n 8006bd0 + 800719e: 2300 movs r3, #0 + 80071a0: 82bb strh r3, [r7, #20] + 80071a2: e063 b.n 800726c { z=1; - 8006b08: 2301 movs r3, #1 - 8006b0a: 75fb strb r3, [r7, #23] + 80071a4: 2301 movs r3, #1 + 80071a6: 75fb strb r3, [r7, #23] for(uint16_t temp_i=0;temp_iwidth;temp_i++) - 8006b0c: 2300 movs r3, #0 - 8006b0e: 827b strh r3, [r7, #18] - 8006b10: e056 b.n 8006bc0 + 80071a8: 2300 movs r3, #0 + 80071aa: 827b strh r3, [r7, #18] + 80071ac: e056 b.n 800725c { x=temp_window->x+temp_i; - 8006b12: 683b ldr r3, [r7, #0] - 8006b14: 881b ldrh r3, [r3, #0] - 8006b16: 461a mov r2, r3 - 8006b18: 8a7b ldrh r3, [r7, #18] - 8006b1a: 4413 add r3, r2 - 8006b1c: 60fb str r3, [r7, #12] + 80071ae: 683b ldr r3, [r7, #0] + 80071b0: 881b ldrh r3, [r3, #0] + 80071b2: 461a mov r2, r3 + 80071b4: 8a7b ldrh r3, [r7, #18] + 80071b6: 4413 add r3, r2 + 80071b8: 60fb str r3, [r7, #12] y=temp_window->y+temp_y; - 8006b1e: 683b ldr r3, [r7, #0] - 8006b20: 885b ldrh r3, [r3, #2] - 8006b22: 461a mov r2, r3 - 8006b24: 8abb ldrh r3, [r7, #20] - 8006b26: 4413 add r3, r2 - 8006b28: 60bb str r3, [r7, #8] + 80071ba: 683b ldr r3, [r7, #0] + 80071bc: 885b ldrh r3, [r3, #2] + 80071be: 461a mov r2, r3 + 80071c0: 8abb ldrh r3, [r7, #20] + 80071c2: 4413 add r3, r2 + 80071c4: 60bb str r3, [r7, #8] if(y>=ui->y&&z==1) - 8006b2a: 687b ldr r3, [r7, #4] - 8006b2c: 88db ldrh r3, [r3, #6] - 8006b2e: 461a mov r2, r3 - 8006b30: 68bb ldr r3, [r7, #8] - 8006b32: 4293 cmp r3, r2 - 8006b34: db0c blt.n 8006b50 - 8006b36: 7dfb ldrb r3, [r7, #23] - 8006b38: 2b01 cmp r3, #1 - 8006b3a: d109 bne.n 8006b50 + 80071c6: 687b ldr r3, [r7, #4] + 80071c8: 88db ldrh r3, [r3, #6] + 80071ca: 461a mov r2, r3 + 80071cc: 68bb ldr r3, [r7, #8] + 80071ce: 4293 cmp r3, r2 + 80071d0: db0c blt.n 80071ec + 80071d2: 7dfb ldrb r3, [r7, #23] + 80071d4: 2b01 cmp r3, #1 + 80071d6: d109 bne.n 80071ec { Inteface_SetCursor(x,y); - 8006b3c: 68fb ldr r3, [r7, #12] - 8006b3e: b29b uxth r3, r3 - 8006b40: 68ba ldr r2, [r7, #8] - 8006b42: b292 uxth r2, r2 - 8006b44: 4611 mov r1, r2 - 8006b46: 4618 mov r0, r3 - 8006b48: f7ff ff10 bl 800696c + 80071d8: 68fb ldr r3, [r7, #12] + 80071da: b29b uxth r3, r3 + 80071dc: 68ba ldr r2, [r7, #8] + 80071de: b292 uxth r2, r2 + 80071e0: 4611 mov r1, r2 + 80071e2: 4618 mov r0, r3 + 80071e4: f7ff ff10 bl 8007008 z=0; - 8006b4c: 2300 movs r3, #0 - 8006b4e: 75fb strb r3, [r7, #23] + 80071e8: 2300 movs r3, #0 + 80071ea: 75fb strb r3, [r7, #23] } if(x>=ui->x) - 8006b50: 687b ldr r3, [r7, #4] - 8006b52: 889b ldrh r3, [r3, #4] - 8006b54: 461a mov r2, r3 - 8006b56: 68fb ldr r3, [r7, #12] - 8006b58: 4293 cmp r3, r2 - 8006b5a: db2e blt.n 8006bba + 80071ec: 687b ldr r3, [r7, #4] + 80071ee: 889b ldrh r3, [r3, #4] + 80071f0: 461a mov r2, r3 + 80071f2: 68fb ldr r3, [r7, #12] + 80071f4: 4293 cmp r3, r2 + 80071f6: db2e blt.n 8007256 { if(temp_y<16) - 8006b5c: 8abb ldrh r3, [r7, #20] - 8006b5e: 2b0f cmp r3, #15 - 8006b60: d80f bhi.n 8006b82 + 80071f8: 8abb ldrh r3, [r7, #20] + 80071fa: 2b0f cmp r3, #15 + 80071fc: d80f bhi.n 800721e { if(temp_i>temp_window->width-16) - 8006b62: 683b ldr r3, [r7, #0] - 8006b64: 889b ldrh r3, [r3, #4] - 8006b66: f1a3 020f sub.w r2, r3, #15 - 8006b6a: 8a7b ldrh r3, [r7, #18] - 8006b6c: 429a cmp r2, r3 - 8006b6e: dc04 bgt.n 8006b7a + 80071fe: 683b ldr r3, [r7, #0] + 8007200: 889b ldrh r3, [r3, #4] + 8007202: f1a3 020f sub.w r2, r3, #15 + 8007206: 8a7b ldrh r3, [r7, #18] + 8007208: 429a cmp r2, r3 + 800720a: dc04 bgt.n 8007216 { Inteface_SetColor(RED); - 8006b70: f44f 4078 mov.w r0, #63488 ; 0xf800 - 8006b74: f7ff ff14 bl 80069a0 - 8006b78: e01f b.n 8006bba + 800720c: f44f 4078 mov.w r0, #63488 ; 0xf800 + 8007210: f7ff ff14 bl 800703c + 8007214: e01f b.n 8007256 }else { Inteface_SetColor(BLUE); - 8006b7a: 201f movs r0, #31 - 8006b7c: f7ff ff10 bl 80069a0 - 8006b80: e01b b.n 8006bba + 8007216: 201f movs r0, #31 + 8007218: f7ff ff10 bl 800703c + 800721c: e01b b.n 8007256 } }else { if(temp_i==0||temp_y==0||temp_i==temp_window->width-1||temp_y==temp_window->high-1) - 8006b82: 8a7b ldrh r3, [r7, #18] - 8006b84: 2b00 cmp r3, #0 - 8006b86: d00e beq.n 8006ba6 - 8006b88: 8abb ldrh r3, [r7, #20] - 8006b8a: 2b00 cmp r3, #0 - 8006b8c: d00b beq.n 8006ba6 - 8006b8e: 8a7a ldrh r2, [r7, #18] - 8006b90: 683b ldr r3, [r7, #0] - 8006b92: 889b ldrh r3, [r3, #4] - 8006b94: 3b01 subs r3, #1 - 8006b96: 429a cmp r2, r3 - 8006b98: d005 beq.n 8006ba6 - 8006b9a: 8aba ldrh r2, [r7, #20] - 8006b9c: 683b ldr r3, [r7, #0] - 8006b9e: 88db ldrh r3, [r3, #6] - 8006ba0: 3b01 subs r3, #1 - 8006ba2: 429a cmp r2, r3 - 8006ba4: d103 bne.n 8006bae + 800721e: 8a7b ldrh r3, [r7, #18] + 8007220: 2b00 cmp r3, #0 + 8007222: d00e beq.n 8007242 + 8007224: 8abb ldrh r3, [r7, #20] + 8007226: 2b00 cmp r3, #0 + 8007228: d00b beq.n 8007242 + 800722a: 8a7a ldrh r2, [r7, #18] + 800722c: 683b ldr r3, [r7, #0] + 800722e: 889b ldrh r3, [r3, #4] + 8007230: 3b01 subs r3, #1 + 8007232: 429a cmp r2, r3 + 8007234: d005 beq.n 8007242 + 8007236: 8aba ldrh r2, [r7, #20] + 8007238: 683b ldr r3, [r7, #0] + 800723a: 88db ldrh r3, [r3, #6] + 800723c: 3b01 subs r3, #1 + 800723e: 429a cmp r2, r3 + 8007240: d103 bne.n 800724a { Inteface_SetColor(BLUE); - 8006ba6: 201f movs r0, #31 - 8006ba8: f7ff fefa bl 80069a0 - 8006bac: e005 b.n 8006bba + 8007242: 201f movs r0, #31 + 8007244: f7ff fefa bl 800703c + 8007248: e005 b.n 8007256 }else { Inteface_SetColor(temp_window->background); - 8006bae: 683b ldr r3, [r7, #0] - 8006bb0: 689b ldr r3, [r3, #8] - 8006bb2: b29b uxth r3, r3 - 8006bb4: 4618 mov r0, r3 - 8006bb6: f7ff fef3 bl 80069a0 + 800724a: 683b ldr r3, [r7, #0] + 800724c: 689b ldr r3, [r3, #8] + 800724e: b29b uxth r3, r3 + 8007250: 4618 mov r0, r3 + 8007252: f7ff fef3 bl 800703c for(uint16_t temp_i=0;temp_iwidth;temp_i++) - 8006bba: 8a7b ldrh r3, [r7, #18] - 8006bbc: 3301 adds r3, #1 - 8006bbe: 827b strh r3, [r7, #18] - 8006bc0: 683b ldr r3, [r7, #0] - 8006bc2: 889b ldrh r3, [r3, #4] - 8006bc4: 8a7a ldrh r2, [r7, #18] - 8006bc6: 429a cmp r2, r3 - 8006bc8: d3a3 bcc.n 8006b12 + 8007256: 8a7b ldrh r3, [r7, #18] + 8007258: 3301 adds r3, #1 + 800725a: 827b strh r3, [r7, #18] + 800725c: 683b ldr r3, [r7, #0] + 800725e: 889b ldrh r3, [r3, #4] + 8007260: 8a7a ldrh r2, [r7, #18] + 8007262: 429a cmp r2, r3 + 8007264: d3a3 bcc.n 80071ae for(uint16_t temp_y=0;temp_yhigh;temp_y++) - 8006bca: 8abb ldrh r3, [r7, #20] - 8006bcc: 3301 adds r3, #1 - 8006bce: 82bb strh r3, [r7, #20] - 8006bd0: 683b ldr r3, [r7, #0] - 8006bd2: 88db ldrh r3, [r3, #6] - 8006bd4: 8aba ldrh r2, [r7, #20] - 8006bd6: 429a cmp r2, r3 - 8006bd8: d396 bcc.n 8006b08 + 8007266: 8abb ldrh r3, [r7, #20] + 8007268: 3301 adds r3, #1 + 800726a: 82bb strh r3, [r7, #20] + 800726c: 683b ldr r3, [r7, #0] + 800726e: 88db ldrh r3, [r3, #6] + 8007270: 8aba ldrh r2, [r7, #20] + 8007272: 429a cmp r2, r3 + 8007274: d396 bcc.n 80071a4 } } */ //显示title LCD_ShowString(temp_window->x,temp_window->y,&temp_window->title,16,WHITE,WHITE); - 8006bda: 683b ldr r3, [r7, #0] - 8006bdc: 8818 ldrh r0, [r3, #0] - 8006bde: 683b ldr r3, [r7, #0] - 8006be0: 8859 ldrh r1, [r3, #2] - 8006be2: 683b ldr r3, [r7, #0] - 8006be4: f103 020c add.w r2, r3, #12 - 8006be8: f64f 73ff movw r3, #65535 ; 0xffff - 8006bec: 9301 str r3, [sp, #4] - 8006bee: f64f 73ff movw r3, #65535 ; 0xffff - 8006bf2: 9300 str r3, [sp, #0] - 8006bf4: 2310 movs r3, #16 - 8006bf6: f7fe fded bl 80057d4 + 8007276: 683b ldr r3, [r7, #0] + 8007278: 8818 ldrh r0, [r3, #0] + 800727a: 683b ldr r3, [r7, #0] + 800727c: 8859 ldrh r1, [r3, #2] + 800727e: 683b ldr r3, [r7, #0] + 8007280: f103 020c add.w r2, r3, #12 + 8007284: f64f 73ff movw r3, #65535 ; 0xffff + 8007288: 9301 str r3, [sp, #4] + 800728a: f64f 73ff movw r3, #65535 ; 0xffff + 800728e: 9300 str r3, [sp, #0] + 8007290: 2310 movs r3, #16 + 8007292: f7fe fa9f bl 80057d4 } - 8006bfa: bf00 nop - 8006bfc: 3718 adds r7, #24 - 8006bfe: 46bd mov sp, r7 - 8006c00: bd80 pop {r7, pc} + 8007296: bf00 nop + 8007298: 3718 adds r7, #24 + 800729a: 46bd mov sp, r7 + 800729c: bd80 pop {r7, pc} -08006c02 : +0800729e : * 很可惜 辛辛苦苦写的代码要被放弃 * 用算法实现遮挡关系计算真挺蠢 * * */ void Refresh_UI(UI *ui) { - 8006c02: b580 push {r7, lr} - 8006c04: b086 sub sp, #24 - 8006c06: af00 add r7, sp, #0 - 8006c08: 6078 str r0, [r7, #4] + 800729e: b580 push {r7, lr} + 80072a0: b086 sub sp, #24 + 80072a2: af00 add r7, sp, #0 + 80072a4: 6078 str r0, [r7, #4] int flag=0; - 8006c0a: 2300 movs r3, #0 - 8006c0c: 617b str r3, [r7, #20] + 80072a6: 2300 movs r3, #0 + 80072a8: 617b str r3, [r7, #20] uint16_t dot_y=0,dot_x=0; - 8006c0e: 2300 movs r3, #0 - 8006c10: 827b strh r3, [r7, #18] - 8006c12: 2300 movs r3, #0 - 8006c14: 823b strh r3, [r7, #16] + 80072aa: 2300 movs r3, #0 + 80072ac: 827b strh r3, [r7, #18] + 80072ae: 2300 movs r3, #0 + 80072b0: 823b strh r3, [r7, #16] //画背景 for(dot_y=ui->y;dot_yhigh;dot_y++) - 8006c16: 687b ldr r3, [r7, #4] - 8006c18: 88db ldrh r3, [r3, #6] - 8006c1a: 827b strh r3, [r7, #18] - 8006c1c: e01a b.n 8006c54 + 80072b2: 687b ldr r3, [r7, #4] + 80072b4: 88db ldrh r3, [r3, #6] + 80072b6: 827b strh r3, [r7, #18] + 80072b8: e01a b.n 80072f0 { Inteface_SetCursor(dot_x,dot_y); - 8006c1e: 8a7a ldrh r2, [r7, #18] - 8006c20: 8a3b ldrh r3, [r7, #16] - 8006c22: 4611 mov r1, r2 - 8006c24: 4618 mov r0, r3 - 8006c26: f7ff fea1 bl 800696c + 80072ba: 8a7a ldrh r2, [r7, #18] + 80072bc: 8a3b ldrh r3, [r7, #16] + 80072be: 4611 mov r1, r2 + 80072c0: 4618 mov r0, r3 + 80072c2: f7ff fea1 bl 8007008 for(dot_x=ui->x;dot_xwidth;dot_x++) - 8006c2a: 687b ldr r3, [r7, #4] - 8006c2c: 889b ldrh r3, [r3, #4] - 8006c2e: 823b strh r3, [r7, #16] - 8006c30: e008 b.n 8006c44 + 80072c6: 687b ldr r3, [r7, #4] + 80072c8: 889b ldrh r3, [r3, #4] + 80072ca: 823b strh r3, [r7, #16] + 80072cc: e008 b.n 80072e0 { Inteface_SetColor(ui->background); - 8006c32: 687b ldr r3, [r7, #4] - 8006c34: 681b ldr r3, [r3, #0] - 8006c36: b29b uxth r3, r3 - 8006c38: 4618 mov r0, r3 - 8006c3a: f7ff feb1 bl 80069a0 + 80072ce: 687b ldr r3, [r7, #4] + 80072d0: 681b ldr r3, [r3, #0] + 80072d2: b29b uxth r3, r3 + 80072d4: 4618 mov r0, r3 + 80072d6: f7ff feb1 bl 800703c for(dot_x=ui->x;dot_xwidth;dot_x++) - 8006c3e: 8a3b ldrh r3, [r7, #16] - 8006c40: 3301 adds r3, #1 - 8006c42: 823b strh r3, [r7, #16] - 8006c44: 687b ldr r3, [r7, #4] - 8006c46: 891b ldrh r3, [r3, #8] - 8006c48: 8a3a ldrh r2, [r7, #16] - 8006c4a: 429a cmp r2, r3 - 8006c4c: d3f1 bcc.n 8006c32 + 80072da: 8a3b ldrh r3, [r7, #16] + 80072dc: 3301 adds r3, #1 + 80072de: 823b strh r3, [r7, #16] + 80072e0: 687b ldr r3, [r7, #4] + 80072e2: 891b ldrh r3, [r3, #8] + 80072e4: 8a3a ldrh r2, [r7, #16] + 80072e6: 429a cmp r2, r3 + 80072e8: d3f1 bcc.n 80072ce for(dot_y=ui->y;dot_yhigh;dot_y++) - 8006c4e: 8a7b ldrh r3, [r7, #18] - 8006c50: 3301 adds r3, #1 - 8006c52: 827b strh r3, [r7, #18] - 8006c54: 687b ldr r3, [r7, #4] - 8006c56: 895b ldrh r3, [r3, #10] - 8006c58: 8a7a ldrh r2, [r7, #18] - 8006c5a: 429a cmp r2, r3 - 8006c5c: d3df bcc.n 8006c1e + 80072ea: 8a7b ldrh r3, [r7, #18] + 80072ec: 3301 adds r3, #1 + 80072ee: 827b strh r3, [r7, #18] + 80072f0: 687b ldr r3, [r7, #4] + 80072f2: 895b ldrh r3, [r3, #10] + 80072f4: 8a7a ldrh r2, [r7, #18] + 80072f6: 429a cmp r2, r3 + 80072f8: d3df bcc.n 80072ba } } windows_stack *temp_windows_stack,*temp_windows_stack2; temp_windows_stack=ui->windows; - 8006c5e: 687b ldr r3, [r7, #4] - 8006c60: 68db ldr r3, [r3, #12] - 8006c62: 60fb str r3, [r7, #12] + 80072fa: 687b ldr r3, [r7, #4] + 80072fc: 68db ldr r3, [r3, #12] + 80072fe: 60fb str r3, [r7, #12] do { if(temp_windows_stack!=NULL) - 8006c64: 68fb ldr r3, [r7, #12] - 8006c66: 2b00 cmp r3, #0 - 8006c68: d00b beq.n 8006c82 + 8007300: 68fb ldr r3, [r7, #12] + 8007302: 2b00 cmp r3, #0 + 8007304: d00b beq.n 800731e { flag=1; - 8006c6a: 2301 movs r3, #1 - 8006c6c: 617b str r3, [r7, #20] + 8007306: 2301 movs r3, #1 + 8007308: 617b str r3, [r7, #20] Refresh_Window(ui,temp_windows_stack->window); - 8006c6e: 68fb ldr r3, [r7, #12] - 8006c70: 685b ldr r3, [r3, #4] - 8006c72: 4619 mov r1, r3 - 8006c74: 6878 ldr r0, [r7, #4] - 8006c76: f7ff ff3f bl 8006af8 + 800730a: 68fb ldr r3, [r7, #12] + 800730c: 685b ldr r3, [r3, #4] + 800730e: 4619 mov r1, r3 + 8007310: 6878 ldr r0, [r7, #4] + 8007312: f7ff ff3f bl 8007194 //绘制下一个窗口 temp_windows_stack=temp_windows_stack->next; - 8006c7a: 68fb ldr r3, [r7, #12] - 8006c7c: 689b ldr r3, [r3, #8] - 8006c7e: 60fb str r3, [r7, #12] - 8006c80: e001 b.n 8006c86 + 8007316: 68fb ldr r3, [r7, #12] + 8007318: 689b ldr r3, [r3, #8] + 800731a: 60fb str r3, [r7, #12] + 800731c: e001 b.n 8007322 }else { flag=0; - 8006c82: 2300 movs r3, #0 - 8006c84: 617b str r3, [r7, #20] + 800731e: 2300 movs r3, #0 + 8007320: 617b str r3, [r7, #20] } }while(flag); - 8006c86: 697b ldr r3, [r7, #20] - 8006c88: 2b00 cmp r3, #0 - 8006c8a: d1eb bne.n 8006c64 + 8007322: 697b ldr r3, [r7, #20] + 8007324: 2b00 cmp r3, #0 + 8007326: d1eb bne.n 8007300 } } */ } - 8006c8c: bf00 nop - 8006c8e: bf00 nop - 8006c90: 3718 adds r7, #24 - 8006c92: 46bd mov sp, r7 - 8006c94: bd80 pop {r7, pc} + 8007328: bf00 nop + 800732a: bf00 nop + 800732c: 3718 adds r7, #24 + 800732e: 46bd mov sp, r7 + 8007330: bd80 pop {r7, pc} -08006c96 : +08007332 : #define BODY 1 #define BAR 2 #define CLOSE 3 uint8_t Chack(window *this_window,int x,int y) { - 8006c96: b480 push {r7} - 8006c98: b087 sub sp, #28 - 8006c9a: af00 add r7, sp, #0 - 8006c9c: 60f8 str r0, [r7, #12] - 8006c9e: 60b9 str r1, [r7, #8] - 8006ca0: 607a str r2, [r7, #4] + 8007332: b480 push {r7} + 8007334: b087 sub sp, #28 + 8007336: af00 add r7, sp, #0 + 8007338: 60f8 str r0, [r7, #12] + 800733a: 60b9 str r1, [r7, #8] + 800733c: 607a str r2, [r7, #4] int a=0; - 8006ca2: 2300 movs r3, #0 - 8006ca4: 617b str r3, [r7, #20] + 800733e: 2300 movs r3, #0 + 8007340: 617b str r3, [r7, #20] if(((x>=this_window->x)&&(x<(this_window->x+this_window->width)))&&((y>=this_window->y+16)&&(y<(this_window->y+this_window->high)))) - 8006ca6: 68fb ldr r3, [r7, #12] - 8006ca8: 881b ldrh r3, [r3, #0] - 8006caa: 461a mov r2, r3 - 8006cac: 68bb ldr r3, [r7, #8] - 8006cae: 4293 cmp r3, r2 - 8006cb0: db19 blt.n 8006ce6 - 8006cb2: 68fb ldr r3, [r7, #12] - 8006cb4: 881b ldrh r3, [r3, #0] - 8006cb6: 461a mov r2, r3 - 8006cb8: 68fb ldr r3, [r7, #12] - 8006cba: 889b ldrh r3, [r3, #4] - 8006cbc: 4413 add r3, r2 - 8006cbe: 68ba ldr r2, [r7, #8] - 8006cc0: 429a cmp r2, r3 - 8006cc2: da10 bge.n 8006ce6 - 8006cc4: 68fb ldr r3, [r7, #12] - 8006cc6: 885b ldrh r3, [r3, #2] - 8006cc8: 330f adds r3, #15 - 8006cca: 687a ldr r2, [r7, #4] - 8006ccc: 429a cmp r2, r3 - 8006cce: dd0a ble.n 8006ce6 - 8006cd0: 68fb ldr r3, [r7, #12] - 8006cd2: 885b ldrh r3, [r3, #2] - 8006cd4: 461a mov r2, r3 - 8006cd6: 68fb ldr r3, [r7, #12] - 8006cd8: 88db ldrh r3, [r3, #6] - 8006cda: 4413 add r3, r2 - 8006cdc: 687a ldr r2, [r7, #4] - 8006cde: 429a cmp r2, r3 - 8006ce0: da01 bge.n 8006ce6 + 8007342: 68fb ldr r3, [r7, #12] + 8007344: 881b ldrh r3, [r3, #0] + 8007346: 461a mov r2, r3 + 8007348: 68bb ldr r3, [r7, #8] + 800734a: 4293 cmp r3, r2 + 800734c: db19 blt.n 8007382 + 800734e: 68fb ldr r3, [r7, #12] + 8007350: 881b ldrh r3, [r3, #0] + 8007352: 461a mov r2, r3 + 8007354: 68fb ldr r3, [r7, #12] + 8007356: 889b ldrh r3, [r3, #4] + 8007358: 4413 add r3, r2 + 800735a: 68ba ldr r2, [r7, #8] + 800735c: 429a cmp r2, r3 + 800735e: da10 bge.n 8007382 + 8007360: 68fb ldr r3, [r7, #12] + 8007362: 885b ldrh r3, [r3, #2] + 8007364: 330f adds r3, #15 + 8007366: 687a ldr r2, [r7, #4] + 8007368: 429a cmp r2, r3 + 800736a: dd0a ble.n 8007382 + 800736c: 68fb ldr r3, [r7, #12] + 800736e: 885b ldrh r3, [r3, #2] + 8007370: 461a mov r2, r3 + 8007372: 68fb ldr r3, [r7, #12] + 8007374: 88db ldrh r3, [r3, #6] + 8007376: 4413 add r3, r2 + 8007378: 687a ldr r2, [r7, #4] + 800737a: 429a cmp r2, r3 + 800737c: da01 bge.n 8007382 { a=1; - 8006ce2: 2301 movs r3, #1 - 8006ce4: 617b str r3, [r7, #20] + 800737e: 2301 movs r3, #1 + 8007380: 617b str r3, [r7, #20] } if(((x>=this_window->x)&&(x<(this_window->x+this_window->width-16)))&&((y>=this_window->y)&&(y<(this_window->y+16)))) - 8006ce6: 68fb ldr r3, [r7, #12] - 8006ce8: 881b ldrh r3, [r3, #0] - 8006cea: 461a mov r2, r3 - 8006cec: 68bb ldr r3, [r7, #8] - 8006cee: 4293 cmp r3, r2 - 8006cf0: db17 blt.n 8006d22 - 8006cf2: 68fb ldr r3, [r7, #12] - 8006cf4: 881b ldrh r3, [r3, #0] - 8006cf6: 461a mov r2, r3 - 8006cf8: 68fb ldr r3, [r7, #12] - 8006cfa: 889b ldrh r3, [r3, #4] - 8006cfc: 4413 add r3, r2 - 8006cfe: 3b10 subs r3, #16 - 8006d00: 68ba ldr r2, [r7, #8] - 8006d02: 429a cmp r2, r3 - 8006d04: da0d bge.n 8006d22 - 8006d06: 68fb ldr r3, [r7, #12] - 8006d08: 885b ldrh r3, [r3, #2] - 8006d0a: 461a mov r2, r3 - 8006d0c: 687b ldr r3, [r7, #4] - 8006d0e: 4293 cmp r3, r2 - 8006d10: db07 blt.n 8006d22 - 8006d12: 68fb ldr r3, [r7, #12] - 8006d14: 885b ldrh r3, [r3, #2] - 8006d16: 330f adds r3, #15 - 8006d18: 687a ldr r2, [r7, #4] - 8006d1a: 429a cmp r2, r3 - 8006d1c: dc01 bgt.n 8006d22 + 8007382: 68fb ldr r3, [r7, #12] + 8007384: 881b ldrh r3, [r3, #0] + 8007386: 461a mov r2, r3 + 8007388: 68bb ldr r3, [r7, #8] + 800738a: 4293 cmp r3, r2 + 800738c: db17 blt.n 80073be + 800738e: 68fb ldr r3, [r7, #12] + 8007390: 881b ldrh r3, [r3, #0] + 8007392: 461a mov r2, r3 + 8007394: 68fb ldr r3, [r7, #12] + 8007396: 889b ldrh r3, [r3, #4] + 8007398: 4413 add r3, r2 + 800739a: 3b10 subs r3, #16 + 800739c: 68ba ldr r2, [r7, #8] + 800739e: 429a cmp r2, r3 + 80073a0: da0d bge.n 80073be + 80073a2: 68fb ldr r3, [r7, #12] + 80073a4: 885b ldrh r3, [r3, #2] + 80073a6: 461a mov r2, r3 + 80073a8: 687b ldr r3, [r7, #4] + 80073aa: 4293 cmp r3, r2 + 80073ac: db07 blt.n 80073be + 80073ae: 68fb ldr r3, [r7, #12] + 80073b0: 885b ldrh r3, [r3, #2] + 80073b2: 330f adds r3, #15 + 80073b4: 687a ldr r2, [r7, #4] + 80073b6: 429a cmp r2, r3 + 80073b8: dc01 bgt.n 80073be { a=2; - 8006d1e: 2302 movs r3, #2 - 8006d20: 617b str r3, [r7, #20] + 80073ba: 2302 movs r3, #2 + 80073bc: 617b str r3, [r7, #20] } if((x>=(this_window->x+this_window->width-16))&&(x<(this_window->x+this_window->width))&&((y>=this_window->y)&&(y<(this_window->y+16)))) - 8006d22: 68fb ldr r3, [r7, #12] - 8006d24: 881b ldrh r3, [r3, #0] - 8006d26: 461a mov r2, r3 - 8006d28: 68fb ldr r3, [r7, #12] - 8006d2a: 889b ldrh r3, [r3, #4] - 8006d2c: 4413 add r3, r2 - 8006d2e: 3b10 subs r3, #16 - 8006d30: 68ba ldr r2, [r7, #8] - 8006d32: 429a cmp r2, r3 - 8006d34: db16 blt.n 8006d64 - 8006d36: 68fb ldr r3, [r7, #12] - 8006d38: 881b ldrh r3, [r3, #0] - 8006d3a: 461a mov r2, r3 - 8006d3c: 68fb ldr r3, [r7, #12] - 8006d3e: 889b ldrh r3, [r3, #4] - 8006d40: 4413 add r3, r2 - 8006d42: 68ba ldr r2, [r7, #8] - 8006d44: 429a cmp r2, r3 - 8006d46: da0d bge.n 8006d64 - 8006d48: 68fb ldr r3, [r7, #12] - 8006d4a: 885b ldrh r3, [r3, #2] - 8006d4c: 461a mov r2, r3 - 8006d4e: 687b ldr r3, [r7, #4] - 8006d50: 4293 cmp r3, r2 - 8006d52: db07 blt.n 8006d64 - 8006d54: 68fb ldr r3, [r7, #12] - 8006d56: 885b ldrh r3, [r3, #2] - 8006d58: 330f adds r3, #15 - 8006d5a: 687a ldr r2, [r7, #4] - 8006d5c: 429a cmp r2, r3 - 8006d5e: dc01 bgt.n 8006d64 + 80073be: 68fb ldr r3, [r7, #12] + 80073c0: 881b ldrh r3, [r3, #0] + 80073c2: 461a mov r2, r3 + 80073c4: 68fb ldr r3, [r7, #12] + 80073c6: 889b ldrh r3, [r3, #4] + 80073c8: 4413 add r3, r2 + 80073ca: 3b10 subs r3, #16 + 80073cc: 68ba ldr r2, [r7, #8] + 80073ce: 429a cmp r2, r3 + 80073d0: db16 blt.n 8007400 + 80073d2: 68fb ldr r3, [r7, #12] + 80073d4: 881b ldrh r3, [r3, #0] + 80073d6: 461a mov r2, r3 + 80073d8: 68fb ldr r3, [r7, #12] + 80073da: 889b ldrh r3, [r3, #4] + 80073dc: 4413 add r3, r2 + 80073de: 68ba ldr r2, [r7, #8] + 80073e0: 429a cmp r2, r3 + 80073e2: da0d bge.n 8007400 + 80073e4: 68fb ldr r3, [r7, #12] + 80073e6: 885b ldrh r3, [r3, #2] + 80073e8: 461a mov r2, r3 + 80073ea: 687b ldr r3, [r7, #4] + 80073ec: 4293 cmp r3, r2 + 80073ee: db07 blt.n 8007400 + 80073f0: 68fb ldr r3, [r7, #12] + 80073f2: 885b ldrh r3, [r3, #2] + 80073f4: 330f adds r3, #15 + 80073f6: 687a ldr r2, [r7, #4] + 80073f8: 429a cmp r2, r3 + 80073fa: dc01 bgt.n 8007400 { a=3; - 8006d60: 2303 movs r3, #3 - 8006d62: 617b str r3, [r7, #20] + 80073fc: 2303 movs r3, #3 + 80073fe: 617b str r3, [r7, #20] } return a; - 8006d64: 697b ldr r3, [r7, #20] - 8006d66: b2db uxtb r3, r3 + 8007400: 697b ldr r3, [r7, #20] + 8007402: b2db uxtb r3, r3 } - 8006d68: 4618 mov r0, r3 - 8006d6a: 371c adds r7, #28 - 8006d6c: 46bd mov sp, r7 - 8006d6e: bc80 pop {r7} - 8006d70: 4770 bx lr + 8007404: 4618 mov r0, r3 + 8007406: 371c adds r7, #28 + 8007408: 46bd mov sp, r7 + 800740a: bc80 pop {r7} + 800740c: 4770 bx lr ... -08006d74 : +08007410 : void UI_Server(UI *ui) { - 8006d74: b580 push {r7, lr} - 8006d76: b088 sub sp, #32 - 8006d78: af00 add r7, sp, #0 - 8006d7a: 6078 str r0, [r7, #4] + 8007410: b580 push {r7, lr} + 8007412: b088 sub sp, #32 + 8007414: af00 add r7, sp, #0 + 8007416: 6078 str r0, [r7, #4] windows_stack *temp_windows_stack=NULL; - 8006d7c: 2300 movs r3, #0 - 8006d7e: 61fb str r3, [r7, #28] + 8007418: 2300 movs r3, #0 + 800741a: 61fb str r3, [r7, #28] window *temp_window; //touch_device *temp_touch=NULL; int flag=0; - 8006d80: 2300 movs r3, #0 - 8006d82: 61bb str r3, [r7, #24] + 800741c: 2300 movs r3, #0 + 800741e: 61bb str r3, [r7, #24] uint8_t hit_flag=0; - 8006d84: 2300 movs r3, #0 - 8006d86: 75fb strb r3, [r7, #23] + 8007420: 2300 movs r3, #0 + 8007422: 75fb strb r3, [r7, #23] int t_x,t_y; //touch //temp_touch=ui->touch; if(t0.c)//TP_XY(&t_x, &t_y)) - 8006d88: 4b76 ldr r3, [pc, #472] ; (8006f64 ) - 8006d8a: 7b1b ldrb r3, [r3, #12] - 8006d8c: f003 0302 and.w r3, r3, #2 - 8006d90: b2db uxtb r3, r3 - 8006d92: 2b00 cmp r3, #0 - 8006d94: f000 80ba beq.w 8006f0c + 8007424: 4b76 ldr r3, [pc, #472] ; (8007600 ) + 8007426: 7b1b ldrb r3, [r3, #12] + 8007428: f003 0302 and.w r3, r3, #2 + 800742c: b2db uxtb r3, r3 + 800742e: 2b00 cmp r3, #0 + 8007430: f000 80ba beq.w 80075a8 { if(t0.d) - 8006d98: 4b72 ldr r3, [pc, #456] ; (8006f64 ) - 8006d9a: 7b1b ldrb r3, [r3, #12] - 8006d9c: f003 0304 and.w r3, r3, #4 - 8006da0: b2db uxtb r3, r3 - 8006da2: 2b00 cmp r3, #0 - 8006da4: f000 80c8 beq.w 8006f38 + 8007434: 4b72 ldr r3, [pc, #456] ; (8007600 ) + 8007436: 7b1b ldrb r3, [r3, #12] + 8007438: f003 0304 and.w r3, r3, #4 + 800743c: b2db uxtb r3, r3 + 800743e: 2b00 cmp r3, #0 + 8007440: f000 80c8 beq.w 80075d4 { t_x=t0.pix_x; - 8006da8: 4b6e ldr r3, [pc, #440] ; (8006f64 ) - 8006daa: 685b ldr r3, [r3, #4] - 8006dac: 613b str r3, [r7, #16] + 8007444: 4b6e ldr r3, [pc, #440] ; (8007600 ) + 8007446: 685b ldr r3, [r3, #4] + 8007448: 613b str r3, [r7, #16] t_y=t0.pix_y; - 8006dae: 4b6d ldr r3, [pc, #436] ; (8006f64 ) - 8006db0: 689b ldr r3, [r3, #8] - 8006db2: 60fb str r3, [r7, #12] + 800744a: 4b6d ldr r3, [pc, #436] ; (8007600 ) + 800744c: 689b ldr r3, [r3, #8] + 800744e: 60fb str r3, [r7, #12] temp_window=NULL; - 8006db4: 2300 movs r3, #0 - 8006db6: 60bb str r3, [r7, #8] + 8007450: 2300 movs r3, #0 + 8007452: 60bb str r3, [r7, #8] if(ui->moveed_windwos==NULL) - 8006db8: 687b ldr r3, [r7, #4] - 8006dba: 695b ldr r3, [r3, #20] - 8006dbc: 2b00 cmp r3, #0 - 8006dbe: f040 8088 bne.w 8006ed2 + 8007454: 687b ldr r3, [r7, #4] + 8007456: 695b ldr r3, [r3, #20] + 8007458: 2b00 cmp r3, #0 + 800745a: f040 8088 bne.w 800756e { if(ui->First_click_flag==0) - 8006dc2: 687b ldr r3, [r7, #4] - 8006dc4: f893 3020 ldrb.w r3, [r3, #32] - 8006dc8: f003 0302 and.w r3, r3, #2 - 8006dcc: b2db uxtb r3, r3 - 8006dce: 2b00 cmp r3, #0 - 8006dd0: f040 80b2 bne.w 8006f38 + 800745e: 687b ldr r3, [r7, #4] + 8007460: f893 3020 ldrb.w r3, [r3, #32] + 8007464: f003 0302 and.w r3, r3, #2 + 8007468: b2db uxtb r3, r3 + 800746a: 2b00 cmp r3, #0 + 800746c: f040 80b2 bne.w 80075d4 { ui->First_click_flag=1; - 8006dd4: 687a ldr r2, [r7, #4] - 8006dd6: f892 3020 ldrb.w r3, [r2, #32] - 8006dda: f043 0302 orr.w r3, r3, #2 - 8006dde: f882 3020 strb.w r3, [r2, #32] + 8007470: 687a ldr r2, [r7, #4] + 8007472: f892 3020 ldrb.w r3, [r2, #32] + 8007476: f043 0302 orr.w r3, r3, #2 + 800747a: f882 3020 strb.w r3, [r2, #32] temp_windows_stack=ui->last_windows; //获取ui中最前端的窗口 从前往后扫描 - 8006de2: 687b ldr r3, [r7, #4] - 8006de4: 691b ldr r3, [r3, #16] - 8006de6: 61fb str r3, [r7, #28] + 800747e: 687b ldr r3, [r7, #4] + 8007480: 691b ldr r3, [r3, #16] + 8007482: 61fb str r3, [r7, #28] do { if(temp_windows_stack!=NULL) //如果有窗口就开始扫描 - 8006de8: 69fb ldr r3, [r7, #28] - 8006dea: 2b00 cmp r3, #0 - 8006dec: d06b beq.n 8006ec6 + 8007484: 69fb ldr r3, [r7, #28] + 8007486: 2b00 cmp r3, #0 + 8007488: d06b beq.n 8007562 { flag=1; //检查到有窗口 需要循环一次以检查是否有下一个窗口 - 8006dee: 2301 movs r3, #1 - 8006df0: 61bb str r3, [r7, #24] + 800748a: 2301 movs r3, #1 + 800748c: 61bb str r3, [r7, #24] // temp_window=temp_windows_stack->window; //取出这个窗口 - 8006df2: 69fb ldr r3, [r7, #28] - 8006df4: 685b ldr r3, [r3, #4] - 8006df6: 60bb str r3, [r7, #8] + 800748e: 69fb ldr r3, [r7, #28] + 8007490: 685b ldr r3, [r3, #4] + 8007492: 60bb str r3, [r7, #8] hit_flag=Chack(temp_window,t_x,t_y); //检查触摸是否命中 直接返回命中窗口的位置 - 8006df8: 68fa ldr r2, [r7, #12] - 8006dfa: 6939 ldr r1, [r7, #16] - 8006dfc: 68b8 ldr r0, [r7, #8] - 8006dfe: f7ff ff4a bl 8006c96 - 8006e02: 4603 mov r3, r0 - 8006e04: 75fb strb r3, [r7, #23] + 8007494: 68fa ldr r2, [r7, #12] + 8007496: 6939 ldr r1, [r7, #16] + 8007498: 68b8 ldr r0, [r7, #8] + 800749a: f7ff ff4a bl 8007332 + 800749e: 4603 mov r3, r0 + 80074a0: 75fb strb r3, [r7, #23] if(hit_flag) // 命中继续 - 8006e06: 7dfb ldrb r3, [r7, #23] - 8006e08: 2b00 cmp r3, #0 - 8006e0a: d058 beq.n 8006ebe + 80074a2: 7dfb ldrb r3, [r7, #23] + 80074a4: 2b00 cmp r3, #0 + 80074a6: d058 beq.n 800755a { if(temp_windows_stack!=ui->last_windows) //检查是否最前端的窗口 如果不是就放最前面 - 8006e0c: 687b ldr r3, [r7, #4] - 8006e0e: 691b ldr r3, [r3, #16] - 8006e10: 69fa ldr r2, [r7, #28] - 8006e12: 429a cmp r2, r3 - 8006e14: d02c beq.n 8006e70 + 80074a8: 687b ldr r3, [r7, #4] + 80074aa: 691b ldr r3, [r3, #16] + 80074ac: 69fa ldr r2, [r7, #28] + 80074ae: 429a cmp r2, r3 + 80074b0: d02c beq.n 800750c { if(temp_windows_stack!=ui->windows) //检查是否最后端的窗口 因为显示是从最后端往前显示的 所以ui有最后端窗口的入口 - 8006e16: 687b ldr r3, [r7, #4] - 8006e18: 68db ldr r3, [r3, #12] - 8006e1a: 69fa ldr r2, [r7, #28] - 8006e1c: 429a cmp r2, r3 - 8006e1e: d00a beq.n 8006e36 + 80074b2: 687b ldr r3, [r7, #4] + 80074b4: 68db ldr r3, [r3, #12] + 80074b6: 69fa ldr r2, [r7, #28] + 80074b8: 429a cmp r2, r3 + 80074ba: d00a beq.n 80074d2 { temp_windows_stack->up->next=temp_windows_stack->next; //取出这个节点 把节点的上下补上链接 - 8006e20: 69fb ldr r3, [r7, #28] - 8006e22: 681b ldr r3, [r3, #0] - 8006e24: 69fa ldr r2, [r7, #28] - 8006e26: 6892 ldr r2, [r2, #8] - 8006e28: 609a str r2, [r3, #8] + 80074bc: 69fb ldr r3, [r7, #28] + 80074be: 681b ldr r3, [r3, #0] + 80074c0: 69fa ldr r2, [r7, #28] + 80074c2: 6892 ldr r2, [r2, #8] + 80074c4: 609a str r2, [r3, #8] temp_windows_stack->next->up=temp_windows_stack->up; - 8006e2a: 69fb ldr r3, [r7, #28] - 8006e2c: 689b ldr r3, [r3, #8] - 8006e2e: 69fa ldr r2, [r7, #28] - 8006e30: 6812 ldr r2, [r2, #0] - 8006e32: 601a str r2, [r3, #0] - 8006e34: e007 b.n 8006e46 + 80074c6: 69fb ldr r3, [r7, #28] + 80074c8: 689b ldr r3, [r3, #8] + 80074ca: 69fa ldr r2, [r7, #28] + 80074cc: 6812 ldr r2, [r2, #0] + 80074ce: 601a str r2, [r3, #0] + 80074d0: e007 b.n 80074e2 }else { ui->windows=temp_windows_stack->next; //如果是最后端的窗口 则取出这个节点后入口就变下一个节点了 - 8006e36: 69fb ldr r3, [r7, #28] - 8006e38: 689a ldr r2, [r3, #8] - 8006e3a: 687b ldr r3, [r7, #4] - 8006e3c: 60da str r2, [r3, #12] + 80074d2: 69fb ldr r3, [r7, #28] + 80074d4: 689a ldr r2, [r3, #8] + 80074d6: 687b ldr r3, [r7, #4] + 80074d8: 60da str r2, [r3, #12] ui->windows->up=NULL; //倒数第二变最后端 在走就没了 所以要清空指针 - 8006e3e: 687b ldr r3, [r7, #4] - 8006e40: 68db ldr r3, [r3, #12] - 8006e42: 2200 movs r2, #0 - 8006e44: 601a str r2, [r3, #0] + 80074da: 687b ldr r3, [r7, #4] + 80074dc: 68db ldr r3, [r3, #12] + 80074de: 2200 movs r2, #0 + 80074e0: 601a str r2, [r3, #0] } temp_windows_stack->next=NULL; //取出的节点要放在最前端 所以 无法再往前 清空往前的指针 - 8006e46: 69fb ldr r3, [r7, #28] - 8006e48: 2200 movs r2, #0 - 8006e4a: 609a str r2, [r3, #8] + 80074e2: 69fb ldr r3, [r7, #28] + 80074e4: 2200 movs r2, #0 + 80074e6: 609a str r2, [r3, #8] temp_windows_stack->up=ui->last_windows; //上一个指针就是原来的最后一个 - 8006e4c: 687b ldr r3, [r7, #4] - 8006e4e: 691a ldr r2, [r3, #16] - 8006e50: 69fb ldr r3, [r7, #28] - 8006e52: 601a str r2, [r3, #0] + 80074e8: 687b ldr r3, [r7, #4] + 80074ea: 691a ldr r2, [r3, #16] + 80074ec: 69fb ldr r3, [r7, #28] + 80074ee: 601a str r2, [r3, #0] ui->last_windows->next=temp_windows_stack; //原来的最后一个指向现在的最后一个 - 8006e54: 687b ldr r3, [r7, #4] - 8006e56: 691b ldr r3, [r3, #16] - 8006e58: 69fa ldr r2, [r7, #28] - 8006e5a: 609a str r2, [r3, #8] + 80074f0: 687b ldr r3, [r7, #4] + 80074f2: 691b ldr r3, [r3, #16] + 80074f4: 69fa ldr r2, [r7, #28] + 80074f6: 609a str r2, [r3, #8] ui->last_windows=temp_windows_stack; //更新ui中的最后一个的入口 - 8006e5c: 687b ldr r3, [r7, #4] - 8006e5e: 69fa ldr r2, [r7, #28] - 8006e60: 611a str r2, [r3, #16] + 80074f8: 687b ldr r3, [r7, #4] + 80074fa: 69fa ldr r2, [r7, #28] + 80074fc: 611a str r2, [r3, #16] ui->refresh_ui_flag=1; //发生了变化 刷新ui的显示 - 8006e62: 687a ldr r2, [r7, #4] - 8006e64: f892 3020 ldrb.w r3, [r2, #32] - 8006e68: f043 0304 orr.w r3, r3, #4 - 8006e6c: f882 3020 strb.w r3, [r2, #32] + 80074fe: 687a ldr r2, [r7, #4] + 8007500: f892 3020 ldrb.w r3, [r2, #32] + 8007504: f043 0304 orr.w r3, r3, #4 + 8007508: f882 3020 strb.w r3, [r2, #32] } //检查标中窗口的什么位置 switch(hit_flag) - 8006e70: 7dfb ldrb r3, [r7, #23] - 8006e72: 2b03 cmp r3, #3 - 8006e74: d006 beq.n 8006e84 - 8006e76: 2b03 cmp r3, #3 - 8006e78: dc1f bgt.n 8006eba - 8006e7a: 2b01 cmp r3, #1 - 8006e7c: d01c beq.n 8006eb8 - 8006e7e: 2b02 cmp r3, #2 - 8006e80: d008 beq.n 8006e94 - 8006e82: e01a b.n 8006eba + 800750c: 7dfb ldrb r3, [r7, #23] + 800750e: 2b03 cmp r3, #3 + 8007510: d006 beq.n 8007520 + 8007512: 2b03 cmp r3, #3 + 8007514: dc1f bgt.n 8007556 + 8007516: 2b01 cmp r3, #1 + 8007518: d01c beq.n 8007554 + 800751a: 2b02 cmp r3, #2 + 800751c: d008 beq.n 8007530 + 800751e: e01a b.n 8007556 { case CLOSE: //Close_Windows_Stack(ui,temp_windows_stack); ui->refresh_ui_flag=1; //发生了变化 刷新ui的显示 - 8006e84: 687a ldr r2, [r7, #4] - 8006e86: f892 3020 ldrb.w r3, [r2, #32] - 8006e8a: f043 0304 orr.w r3, r3, #4 - 8006e8e: f882 3020 strb.w r3, [r2, #32] + 8007520: 687a ldr r2, [r7, #4] + 8007522: f892 3020 ldrb.w r3, [r2, #32] + 8007526: f043 0304 orr.w r3, r3, #4 + 800752a: f882 3020 strb.w r3, [r2, #32] break; - 8006e92: e012 b.n 8006eba + 800752e: e012 b.n 8007556 case BAR: ui->moveed_windwos=temp_window; - 8006e94: 687b ldr r3, [r7, #4] - 8006e96: 68ba ldr r2, [r7, #8] - 8006e98: 615a str r2, [r3, #20] + 8007530: 687b ldr r3, [r7, #4] + 8007532: 68ba ldr r2, [r7, #8] + 8007534: 615a str r2, [r3, #20] ui->move_x=t_x-temp_window->x; - 8006e9a: 68bb ldr r3, [r7, #8] - 8006e9c: 881b ldrh r3, [r3, #0] - 8006e9e: 461a mov r2, r3 - 8006ea0: 693b ldr r3, [r7, #16] - 8006ea2: 1a9a subs r2, r3, r2 - 8006ea4: 687b ldr r3, [r7, #4] - 8006ea6: 619a str r2, [r3, #24] + 8007536: 68bb ldr r3, [r7, #8] + 8007538: 881b ldrh r3, [r3, #0] + 800753a: 461a mov r2, r3 + 800753c: 693b ldr r3, [r7, #16] + 800753e: 1a9a subs r2, r3, r2 + 8007540: 687b ldr r3, [r7, #4] + 8007542: 619a str r2, [r3, #24] ui->move_y=t_y-temp_window->y; - 8006ea8: 68bb ldr r3, [r7, #8] - 8006eaa: 885b ldrh r3, [r3, #2] - 8006eac: 461a mov r2, r3 - 8006eae: 68fb ldr r3, [r7, #12] - 8006eb0: 1a9a subs r2, r3, r2 - 8006eb2: 687b ldr r3, [r7, #4] - 8006eb4: 61da str r2, [r3, #28] + 8007544: 68bb ldr r3, [r7, #8] + 8007546: 885b ldrh r3, [r3, #2] + 8007548: 461a mov r2, r3 + 800754a: 68fb ldr r3, [r7, #12] + 800754c: 1a9a subs r2, r3, r2 + 800754e: 687b ldr r3, [r7, #4] + 8007550: 61da str r2, [r3, #28] break; - 8006eb6: e000 b.n 8006eba + 8007552: e000 b.n 8007556 case BODY: //ui->background=temp_windows_stack->window->background; //ui->refresh_ui_flag=1; break; - 8006eb8: bf00 nop + 8007554: bf00 nop } flag=0; //结束扫描 防止穿透当前窗口 - 8006eba: 2300 movs r3, #0 - 8006ebc: 61bb str r3, [r7, #24] + 8007556: 2300 movs r3, #0 + 8007558: 61bb str r3, [r7, #24] } temp_windows_stack=temp_windows_stack->up; //往前扫描 - 8006ebe: 69fb ldr r3, [r7, #28] - 8006ec0: 681b ldr r3, [r3, #0] - 8006ec2: 61fb str r3, [r7, #28] - 8006ec4: e001 b.n 8006eca + 800755a: 69fb ldr r3, [r7, #28] + 800755c: 681b ldr r3, [r3, #0] + 800755e: 61fb str r3, [r7, #28] + 8007560: e001 b.n 8007566 }else { flag=0; //一个窗口都没有 直接结束循环 - 8006ec6: 2300 movs r3, #0 - 8006ec8: 61bb str r3, [r7, #24] + 8007562: 2300 movs r3, #0 + 8007564: 61bb str r3, [r7, #24] } }while(flag); - 8006eca: 69bb ldr r3, [r7, #24] - 8006ecc: 2b00 cmp r3, #0 - 8006ece: d18b bne.n 8006de8 - 8006ed0: e032 b.n 8006f38 + 8007566: 69bb ldr r3, [r7, #24] + 8007568: 2b00 cmp r3, #0 + 800756a: d18b bne.n 8007484 + 800756c: e032 b.n 80075d4 } }else { temp_window=ui->moveed_windwos; - 8006ed2: 687b ldr r3, [r7, #4] - 8006ed4: 695b ldr r3, [r3, #20] - 8006ed6: 60bb str r3, [r7, #8] + 800756e: 687b ldr r3, [r7, #4] + 8007570: 695b ldr r3, [r3, #20] + 8007572: 60bb str r3, [r7, #8] temp_window->x=t_x-ui->move_x; - 8006ed8: 693b ldr r3, [r7, #16] - 8006eda: b29a uxth r2, r3 - 8006edc: 687b ldr r3, [r7, #4] - 8006ede: 699b ldr r3, [r3, #24] - 8006ee0: b29b uxth r3, r3 - 8006ee2: 1ad3 subs r3, r2, r3 - 8006ee4: b29a uxth r2, r3 - 8006ee6: 68bb ldr r3, [r7, #8] - 8006ee8: 801a strh r2, [r3, #0] + 8007574: 693b ldr r3, [r7, #16] + 8007576: b29a uxth r2, r3 + 8007578: 687b ldr r3, [r7, #4] + 800757a: 699b ldr r3, [r3, #24] + 800757c: b29b uxth r3, r3 + 800757e: 1ad3 subs r3, r2, r3 + 8007580: b29a uxth r2, r3 + 8007582: 68bb ldr r3, [r7, #8] + 8007584: 801a strh r2, [r3, #0] temp_window->y=t_y-ui->move_y; - 8006eea: 68fb ldr r3, [r7, #12] - 8006eec: b29a uxth r2, r3 - 8006eee: 687b ldr r3, [r7, #4] - 8006ef0: 69db ldr r3, [r3, #28] - 8006ef2: b29b uxth r3, r3 - 8006ef4: 1ad3 subs r3, r2, r3 - 8006ef6: b29a uxth r2, r3 - 8006ef8: 68bb ldr r3, [r7, #8] - 8006efa: 805a strh r2, [r3, #2] + 8007586: 68fb ldr r3, [r7, #12] + 8007588: b29a uxth r2, r3 + 800758a: 687b ldr r3, [r7, #4] + 800758c: 69db ldr r3, [r3, #28] + 800758e: b29b uxth r3, r3 + 8007590: 1ad3 subs r3, r2, r3 + 8007592: b29a uxth r2, r3 + 8007594: 68bb ldr r3, [r7, #8] + 8007596: 805a strh r2, [r3, #2] ui->refresh_ui_flag=1; - 8006efc: 687a ldr r2, [r7, #4] - 8006efe: f892 3020 ldrb.w r3, [r2, #32] - 8006f02: f043 0304 orr.w r3, r3, #4 - 8006f06: f882 3020 strb.w r3, [r2, #32] - 8006f0a: e015 b.n 8006f38 + 8007598: 687a ldr r2, [r7, #4] + 800759a: f892 3020 ldrb.w r3, [r2, #32] + 800759e: f043 0304 orr.w r3, r3, #4 + 80075a2: f882 3020 strb.w r3, [r2, #32] + 80075a6: e015 b.n 80075d4 }else { if(ui->First_click_flag==1) - 8006f0c: 687b ldr r3, [r7, #4] - 8006f0e: f893 3020 ldrb.w r3, [r3, #32] - 8006f12: f003 0302 and.w r3, r3, #2 - 8006f16: b2db uxtb r3, r3 - 8006f18: 2b00 cmp r3, #0 - 8006f1a: d006 beq.n 8006f2a + 80075a8: 687b ldr r3, [r7, #4] + 80075aa: f893 3020 ldrb.w r3, [r3, #32] + 80075ae: f003 0302 and.w r3, r3, #2 + 80075b2: b2db uxtb r3, r3 + 80075b4: 2b00 cmp r3, #0 + 80075b6: d006 beq.n 80075c6 { ui->First_click_flag=0; - 8006f1c: 687a ldr r2, [r7, #4] - 8006f1e: f892 3020 ldrb.w r3, [r2, #32] - 8006f22: f36f 0341 bfc r3, #1, #1 - 8006f26: f882 3020 strb.w r3, [r2, #32] + 80075b8: 687a ldr r2, [r7, #4] + 80075ba: f892 3020 ldrb.w r3, [r2, #32] + 80075be: f36f 0341 bfc r3, #1, #1 + 80075c2: f882 3020 strb.w r3, [r2, #32] } if(ui->moveed_windwos!=NULL) - 8006f2a: 687b ldr r3, [r7, #4] - 8006f2c: 695b ldr r3, [r3, #20] - 8006f2e: 2b00 cmp r3, #0 - 8006f30: d002 beq.n 8006f38 + 80075c6: 687b ldr r3, [r7, #4] + 80075c8: 695b ldr r3, [r3, #20] + 80075ca: 2b00 cmp r3, #0 + 80075cc: d002 beq.n 80075d4 { ui->moveed_windwos=NULL; - 8006f32: 687b ldr r3, [r7, #4] - 8006f34: 2200 movs r2, #0 - 8006f36: 615a str r2, [r3, #20] + 80075ce: 687b ldr r3, [r7, #4] + 80075d0: 2200 movs r2, #0 + 80075d2: 615a str r2, [r3, #20] } } //display if(ui->refresh_ui_flag==1) - 8006f38: 687b ldr r3, [r7, #4] - 8006f3a: f893 3020 ldrb.w r3, [r3, #32] - 8006f3e: f003 0304 and.w r3, r3, #4 - 8006f42: b2db uxtb r3, r3 - 8006f44: 2b00 cmp r3, #0 - 8006f46: d009 beq.n 8006f5c + 80075d4: 687b ldr r3, [r7, #4] + 80075d6: f893 3020 ldrb.w r3, [r3, #32] + 80075da: f003 0304 and.w r3, r3, #4 + 80075de: b2db uxtb r3, r3 + 80075e0: 2b00 cmp r3, #0 + 80075e2: d009 beq.n 80075f8 { ui->refresh_ui_flag=0; - 8006f48: 687a ldr r2, [r7, #4] - 8006f4a: f892 3020 ldrb.w r3, [r2, #32] - 8006f4e: f36f 0382 bfc r3, #2, #1 - 8006f52: f882 3020 strb.w r3, [r2, #32] + 80075e4: 687a ldr r2, [r7, #4] + 80075e6: f892 3020 ldrb.w r3, [r2, #32] + 80075ea: f36f 0382 bfc r3, #2, #1 + 80075ee: f882 3020 strb.w r3, [r2, #32] Refresh_UI(ui); - 8006f56: 6878 ldr r0, [r7, #4] - 8006f58: f7ff fe53 bl 8006c02 + 80075f2: 6878 ldr r0, [r7, #4] + 80075f4: f7ff fe53 bl 800729e } } - 8006f5c: bf00 nop - 8006f5e: 3720 adds r7, #32 - 8006f60: 46bd mov sp, r7 - 8006f62: bd80 pop {r7, pc} - 8006f64: 20000384 .word 0x20000384 + 80075f8: bf00 nop + 80075fa: 3720 adds r7, #32 + 80075fc: 46bd mov sp, r7 + 80075fe: bd80 pop {r7, pc} + 8007600: 20000390 .word 0x20000390 -08006f68 <__errno>: - 8006f68: 4b01 ldr r3, [pc, #4] ; (8006f70 <__errno+0x8>) - 8006f6a: 6818 ldr r0, [r3, #0] - 8006f6c: 4770 bx lr - 8006f6e: bf00 nop - 8006f70: 2000000c .word 0x2000000c +08007604 <__errno>: + 8007604: 4b01 ldr r3, [pc, #4] ; (800760c <__errno+0x8>) + 8007606: 6818 ldr r0, [r3, #0] + 8007608: 4770 bx lr + 800760a: bf00 nop + 800760c: 20000014 .word 0x20000014 -08006f74 <__libc_init_array>: - 8006f74: b570 push {r4, r5, r6, lr} - 8006f76: 2600 movs r6, #0 - 8006f78: 4d0c ldr r5, [pc, #48] ; (8006fac <__libc_init_array+0x38>) - 8006f7a: 4c0d ldr r4, [pc, #52] ; (8006fb0 <__libc_init_array+0x3c>) - 8006f7c: 1b64 subs r4, r4, r5 - 8006f7e: 10a4 asrs r4, r4, #2 - 8006f80: 42a6 cmp r6, r4 - 8006f82: d109 bne.n 8006f98 <__libc_init_array+0x24> - 8006f84: f002 fec4 bl 8009d10 <_init> - 8006f88: 2600 movs r6, #0 - 8006f8a: 4d0a ldr r5, [pc, #40] ; (8006fb4 <__libc_init_array+0x40>) - 8006f8c: 4c0a ldr r4, [pc, #40] ; (8006fb8 <__libc_init_array+0x44>) - 8006f8e: 1b64 subs r4, r4, r5 - 8006f90: 10a4 asrs r4, r4, #2 - 8006f92: 42a6 cmp r6, r4 - 8006f94: d105 bne.n 8006fa2 <__libc_init_array+0x2e> - 8006f96: bd70 pop {r4, r5, r6, pc} - 8006f98: f855 3b04 ldr.w r3, [r5], #4 - 8006f9c: 4798 blx r3 - 8006f9e: 3601 adds r6, #1 - 8006fa0: e7ee b.n 8006f80 <__libc_init_array+0xc> - 8006fa2: f855 3b04 ldr.w r3, [r5], #4 - 8006fa6: 4798 blx r3 - 8006fa8: 3601 adds r6, #1 - 8006faa: e7f2 b.n 8006f92 <__libc_init_array+0x1e> - 8006fac: 0800ac54 .word 0x0800ac54 - 8006fb0: 0800ac54 .word 0x0800ac54 - 8006fb4: 0800ac54 .word 0x0800ac54 - 8006fb8: 0800ac58 .word 0x0800ac58 +08007610 <__libc_init_array>: + 8007610: b570 push {r4, r5, r6, lr} + 8007612: 2600 movs r6, #0 + 8007614: 4d0c ldr r5, [pc, #48] ; (8007648 <__libc_init_array+0x38>) + 8007616: 4c0d ldr r4, [pc, #52] ; (800764c <__libc_init_array+0x3c>) + 8007618: 1b64 subs r4, r4, r5 + 800761a: 10a4 asrs r4, r4, #2 + 800761c: 42a6 cmp r6, r4 + 800761e: d109 bne.n 8007634 <__libc_init_array+0x24> + 8007620: f002 fec2 bl 800a3a8 <_init> + 8007624: 2600 movs r6, #0 + 8007626: 4d0a ldr r5, [pc, #40] ; (8007650 <__libc_init_array+0x40>) + 8007628: 4c0a ldr r4, [pc, #40] ; (8007654 <__libc_init_array+0x44>) + 800762a: 1b64 subs r4, r4, r5 + 800762c: 10a4 asrs r4, r4, #2 + 800762e: 42a6 cmp r6, r4 + 8007630: d105 bne.n 800763e <__libc_init_array+0x2e> + 8007632: bd70 pop {r4, r5, r6, pc} + 8007634: f855 3b04 ldr.w r3, [r5], #4 + 8007638: 4798 blx r3 + 800763a: 3601 adds r6, #1 + 800763c: e7ee b.n 800761c <__libc_init_array+0xc> + 800763e: f855 3b04 ldr.w r3, [r5], #4 + 8007642: 4798 blx r3 + 8007644: 3601 adds r6, #1 + 8007646: e7f2 b.n 800762e <__libc_init_array+0x1e> + 8007648: 0800b324 .word 0x0800b324 + 800764c: 0800b324 .word 0x0800b324 + 8007650: 0800b324 .word 0x0800b324 + 8007654: 0800b328 .word 0x0800b328 -08006fbc : - 8006fbc: 4b02 ldr r3, [pc, #8] ; (8006fc8 ) - 8006fbe: 4601 mov r1, r0 - 8006fc0: 6818 ldr r0, [r3, #0] - 8006fc2: f000 b85f b.w 8007084 <_malloc_r> - 8006fc6: bf00 nop - 8006fc8: 2000000c .word 0x2000000c +08007658 : + 8007658: 4b02 ldr r3, [pc, #8] ; (8007664 ) + 800765a: 4601 mov r1, r0 + 800765c: 6818 ldr r0, [r3, #0] + 800765e: f000 b85f b.w 8007720 <_malloc_r> + 8007662: bf00 nop + 8007664: 20000014 .word 0x20000014 -08006fcc : - 8006fcc: 4b02 ldr r3, [pc, #8] ; (8006fd8 ) - 8006fce: 4601 mov r1, r0 - 8006fd0: 6818 ldr r0, [r3, #0] - 8006fd2: f000 b80b b.w 8006fec <_free_r> - 8006fd6: bf00 nop - 8006fd8: 2000000c .word 0x2000000c +08007668 : + 8007668: 4b02 ldr r3, [pc, #8] ; (8007674 ) + 800766a: 4601 mov r1, r0 + 800766c: 6818 ldr r0, [r3, #0] + 800766e: f000 b80b b.w 8007688 <_free_r> + 8007672: bf00 nop + 8007674: 20000014 .word 0x20000014 -08006fdc : - 8006fdc: 4603 mov r3, r0 - 8006fde: 4402 add r2, r0 - 8006fe0: 4293 cmp r3, r2 - 8006fe2: d100 bne.n 8006fe6 - 8006fe4: 4770 bx lr - 8006fe6: f803 1b01 strb.w r1, [r3], #1 - 8006fea: e7f9 b.n 8006fe0 +08007678 : + 8007678: 4603 mov r3, r0 + 800767a: 4402 add r2, r0 + 800767c: 4293 cmp r3, r2 + 800767e: d100 bne.n 8007682 + 8007680: 4770 bx lr + 8007682: f803 1b01 strb.w r1, [r3], #1 + 8007686: e7f9 b.n 800767c -08006fec <_free_r>: - 8006fec: b538 push {r3, r4, r5, lr} - 8006fee: 4605 mov r5, r0 - 8006ff0: 2900 cmp r1, #0 - 8006ff2: d043 beq.n 800707c <_free_r+0x90> - 8006ff4: f851 3c04 ldr.w r3, [r1, #-4] - 8006ff8: 1f0c subs r4, r1, #4 - 8006ffa: 2b00 cmp r3, #0 - 8006ffc: bfb8 it lt - 8006ffe: 18e4 addlt r4, r4, r3 - 8007000: f001 fbc8 bl 8008794 <__malloc_lock> - 8007004: 4a1e ldr r2, [pc, #120] ; (8007080 <_free_r+0x94>) - 8007006: 6813 ldr r3, [r2, #0] - 8007008: 4610 mov r0, r2 - 800700a: b933 cbnz r3, 800701a <_free_r+0x2e> - 800700c: 6063 str r3, [r4, #4] - 800700e: 6014 str r4, [r2, #0] - 8007010: 4628 mov r0, r5 - 8007012: e8bd 4038 ldmia.w sp!, {r3, r4, r5, lr} - 8007016: f001 bbc3 b.w 80087a0 <__malloc_unlock> - 800701a: 42a3 cmp r3, r4 - 800701c: d90a bls.n 8007034 <_free_r+0x48> - 800701e: 6821 ldr r1, [r4, #0] - 8007020: 1862 adds r2, r4, r1 - 8007022: 4293 cmp r3, r2 - 8007024: bf01 itttt eq - 8007026: 681a ldreq r2, [r3, #0] - 8007028: 685b ldreq r3, [r3, #4] - 800702a: 1852 addeq r2, r2, r1 - 800702c: 6022 streq r2, [r4, #0] - 800702e: 6063 str r3, [r4, #4] - 8007030: 6004 str r4, [r0, #0] - 8007032: e7ed b.n 8007010 <_free_r+0x24> - 8007034: 461a mov r2, r3 - 8007036: 685b ldr r3, [r3, #4] - 8007038: b10b cbz r3, 800703e <_free_r+0x52> - 800703a: 42a3 cmp r3, r4 - 800703c: d9fa bls.n 8007034 <_free_r+0x48> - 800703e: 6811 ldr r1, [r2, #0] - 8007040: 1850 adds r0, r2, r1 - 8007042: 42a0 cmp r0, r4 - 8007044: d10b bne.n 800705e <_free_r+0x72> - 8007046: 6820 ldr r0, [r4, #0] - 8007048: 4401 add r1, r0 - 800704a: 1850 adds r0, r2, r1 - 800704c: 4283 cmp r3, r0 - 800704e: 6011 str r1, [r2, #0] - 8007050: d1de bne.n 8007010 <_free_r+0x24> - 8007052: 6818 ldr r0, [r3, #0] - 8007054: 685b ldr r3, [r3, #4] - 8007056: 4401 add r1, r0 - 8007058: 6011 str r1, [r2, #0] - 800705a: 6053 str r3, [r2, #4] - 800705c: e7d8 b.n 8007010 <_free_r+0x24> - 800705e: d902 bls.n 8007066 <_free_r+0x7a> - 8007060: 230c movs r3, #12 - 8007062: 602b str r3, [r5, #0] - 8007064: e7d4 b.n 8007010 <_free_r+0x24> - 8007066: 6820 ldr r0, [r4, #0] - 8007068: 1821 adds r1, r4, r0 - 800706a: 428b cmp r3, r1 - 800706c: bf01 itttt eq - 800706e: 6819 ldreq r1, [r3, #0] - 8007070: 685b ldreq r3, [r3, #4] - 8007072: 1809 addeq r1, r1, r0 - 8007074: 6021 streq r1, [r4, #0] - 8007076: 6063 str r3, [r4, #4] - 8007078: 6054 str r4, [r2, #4] - 800707a: e7c9 b.n 8007010 <_free_r+0x24> - 800707c: bd38 pop {r3, r4, r5, pc} - 800707e: bf00 nop - 8007080: 20000204 .word 0x20000204 +08007688 <_free_r>: + 8007688: b538 push {r3, r4, r5, lr} + 800768a: 4605 mov r5, r0 + 800768c: 2900 cmp r1, #0 + 800768e: d043 beq.n 8007718 <_free_r+0x90> + 8007690: f851 3c04 ldr.w r3, [r1, #-4] + 8007694: 1f0c subs r4, r1, #4 + 8007696: 2b00 cmp r3, #0 + 8007698: bfb8 it lt + 800769a: 18e4 addlt r4, r4, r3 + 800769c: f001 fbc6 bl 8008e2c <__malloc_lock> + 80076a0: 4a1e ldr r2, [pc, #120] ; (800771c <_free_r+0x94>) + 80076a2: 6813 ldr r3, [r2, #0] + 80076a4: 4610 mov r0, r2 + 80076a6: b933 cbnz r3, 80076b6 <_free_r+0x2e> + 80076a8: 6063 str r3, [r4, #4] + 80076aa: 6014 str r4, [r2, #0] + 80076ac: 4628 mov r0, r5 + 80076ae: e8bd 4038 ldmia.w sp!, {r3, r4, r5, lr} + 80076b2: f001 bbc1 b.w 8008e38 <__malloc_unlock> + 80076b6: 42a3 cmp r3, r4 + 80076b8: d90a bls.n 80076d0 <_free_r+0x48> + 80076ba: 6821 ldr r1, [r4, #0] + 80076bc: 1862 adds r2, r4, r1 + 80076be: 4293 cmp r3, r2 + 80076c0: bf01 itttt eq + 80076c2: 681a ldreq r2, [r3, #0] + 80076c4: 685b ldreq r3, [r3, #4] + 80076c6: 1852 addeq r2, r2, r1 + 80076c8: 6022 streq r2, [r4, #0] + 80076ca: 6063 str r3, [r4, #4] + 80076cc: 6004 str r4, [r0, #0] + 80076ce: e7ed b.n 80076ac <_free_r+0x24> + 80076d0: 461a mov r2, r3 + 80076d2: 685b ldr r3, [r3, #4] + 80076d4: b10b cbz r3, 80076da <_free_r+0x52> + 80076d6: 42a3 cmp r3, r4 + 80076d8: d9fa bls.n 80076d0 <_free_r+0x48> + 80076da: 6811 ldr r1, [r2, #0] + 80076dc: 1850 adds r0, r2, r1 + 80076de: 42a0 cmp r0, r4 + 80076e0: d10b bne.n 80076fa <_free_r+0x72> + 80076e2: 6820 ldr r0, [r4, #0] + 80076e4: 4401 add r1, r0 + 80076e6: 1850 adds r0, r2, r1 + 80076e8: 4283 cmp r3, r0 + 80076ea: 6011 str r1, [r2, #0] + 80076ec: d1de bne.n 80076ac <_free_r+0x24> + 80076ee: 6818 ldr r0, [r3, #0] + 80076f0: 685b ldr r3, [r3, #4] + 80076f2: 4401 add r1, r0 + 80076f4: 6011 str r1, [r2, #0] + 80076f6: 6053 str r3, [r2, #4] + 80076f8: e7d8 b.n 80076ac <_free_r+0x24> + 80076fa: d902 bls.n 8007702 <_free_r+0x7a> + 80076fc: 230c movs r3, #12 + 80076fe: 602b str r3, [r5, #0] + 8007700: e7d4 b.n 80076ac <_free_r+0x24> + 8007702: 6820 ldr r0, [r4, #0] + 8007704: 1821 adds r1, r4, r0 + 8007706: 428b cmp r3, r1 + 8007708: bf01 itttt eq + 800770a: 6819 ldreq r1, [r3, #0] + 800770c: 685b ldreq r3, [r3, #4] + 800770e: 1809 addeq r1, r1, r0 + 8007710: 6021 streq r1, [r4, #0] + 8007712: 6063 str r3, [r4, #4] + 8007714: 6054 str r4, [r2, #4] + 8007716: e7c9 b.n 80076ac <_free_r+0x24> + 8007718: bd38 pop {r3, r4, r5, pc} + 800771a: bf00 nop + 800771c: 20000210 .word 0x20000210 -08007084 <_malloc_r>: - 8007084: b5f8 push {r3, r4, r5, r6, r7, lr} - 8007086: 1ccd adds r5, r1, #3 - 8007088: f025 0503 bic.w r5, r5, #3 - 800708c: 3508 adds r5, #8 - 800708e: 2d0c cmp r5, #12 - 8007090: bf38 it cc - 8007092: 250c movcc r5, #12 - 8007094: 2d00 cmp r5, #0 - 8007096: 4606 mov r6, r0 - 8007098: db01 blt.n 800709e <_malloc_r+0x1a> - 800709a: 42a9 cmp r1, r5 - 800709c: d903 bls.n 80070a6 <_malloc_r+0x22> - 800709e: 230c movs r3, #12 - 80070a0: 6033 str r3, [r6, #0] - 80070a2: 2000 movs r0, #0 - 80070a4: bdf8 pop {r3, r4, r5, r6, r7, pc} - 80070a6: f001 fb75 bl 8008794 <__malloc_lock> - 80070aa: 4921 ldr r1, [pc, #132] ; (8007130 <_malloc_r+0xac>) - 80070ac: 680a ldr r2, [r1, #0] - 80070ae: 4614 mov r4, r2 - 80070b0: b99c cbnz r4, 80070da <_malloc_r+0x56> - 80070b2: 4f20 ldr r7, [pc, #128] ; (8007134 <_malloc_r+0xb0>) - 80070b4: 683b ldr r3, [r7, #0] - 80070b6: b923 cbnz r3, 80070c2 <_malloc_r+0x3e> - 80070b8: 4621 mov r1, r4 - 80070ba: 4630 mov r0, r6 - 80070bc: f000 fc9c bl 80079f8 <_sbrk_r> - 80070c0: 6038 str r0, [r7, #0] - 80070c2: 4629 mov r1, r5 - 80070c4: 4630 mov r0, r6 - 80070c6: f000 fc97 bl 80079f8 <_sbrk_r> - 80070ca: 1c43 adds r3, r0, #1 - 80070cc: d123 bne.n 8007116 <_malloc_r+0x92> - 80070ce: 230c movs r3, #12 - 80070d0: 4630 mov r0, r6 - 80070d2: 6033 str r3, [r6, #0] - 80070d4: f001 fb64 bl 80087a0 <__malloc_unlock> - 80070d8: e7e3 b.n 80070a2 <_malloc_r+0x1e> - 80070da: 6823 ldr r3, [r4, #0] - 80070dc: 1b5b subs r3, r3, r5 - 80070de: d417 bmi.n 8007110 <_malloc_r+0x8c> - 80070e0: 2b0b cmp r3, #11 - 80070e2: d903 bls.n 80070ec <_malloc_r+0x68> - 80070e4: 6023 str r3, [r4, #0] - 80070e6: 441c add r4, r3 - 80070e8: 6025 str r5, [r4, #0] - 80070ea: e004 b.n 80070f6 <_malloc_r+0x72> - 80070ec: 6863 ldr r3, [r4, #4] - 80070ee: 42a2 cmp r2, r4 - 80070f0: bf0c ite eq - 80070f2: 600b streq r3, [r1, #0] - 80070f4: 6053 strne r3, [r2, #4] - 80070f6: 4630 mov r0, r6 - 80070f8: f001 fb52 bl 80087a0 <__malloc_unlock> - 80070fc: f104 000b add.w r0, r4, #11 - 8007100: 1d23 adds r3, r4, #4 - 8007102: f020 0007 bic.w r0, r0, #7 - 8007106: 1ac2 subs r2, r0, r3 - 8007108: d0cc beq.n 80070a4 <_malloc_r+0x20> - 800710a: 1a1b subs r3, r3, r0 - 800710c: 50a3 str r3, [r4, r2] - 800710e: e7c9 b.n 80070a4 <_malloc_r+0x20> - 8007110: 4622 mov r2, r4 - 8007112: 6864 ldr r4, [r4, #4] - 8007114: e7cc b.n 80070b0 <_malloc_r+0x2c> - 8007116: 1cc4 adds r4, r0, #3 - 8007118: f024 0403 bic.w r4, r4, #3 - 800711c: 42a0 cmp r0, r4 - 800711e: d0e3 beq.n 80070e8 <_malloc_r+0x64> - 8007120: 1a21 subs r1, r4, r0 - 8007122: 4630 mov r0, r6 - 8007124: f000 fc68 bl 80079f8 <_sbrk_r> - 8007128: 3001 adds r0, #1 - 800712a: d1dd bne.n 80070e8 <_malloc_r+0x64> - 800712c: e7cf b.n 80070ce <_malloc_r+0x4a> - 800712e: bf00 nop - 8007130: 20000204 .word 0x20000204 - 8007134: 20000208 .word 0x20000208 +08007720 <_malloc_r>: + 8007720: b5f8 push {r3, r4, r5, r6, r7, lr} + 8007722: 1ccd adds r5, r1, #3 + 8007724: f025 0503 bic.w r5, r5, #3 + 8007728: 3508 adds r5, #8 + 800772a: 2d0c cmp r5, #12 + 800772c: bf38 it cc + 800772e: 250c movcc r5, #12 + 8007730: 2d00 cmp r5, #0 + 8007732: 4606 mov r6, r0 + 8007734: db01 blt.n 800773a <_malloc_r+0x1a> + 8007736: 42a9 cmp r1, r5 + 8007738: d903 bls.n 8007742 <_malloc_r+0x22> + 800773a: 230c movs r3, #12 + 800773c: 6033 str r3, [r6, #0] + 800773e: 2000 movs r0, #0 + 8007740: bdf8 pop {r3, r4, r5, r6, r7, pc} + 8007742: f001 fb73 bl 8008e2c <__malloc_lock> + 8007746: 4921 ldr r1, [pc, #132] ; (80077cc <_malloc_r+0xac>) + 8007748: 680a ldr r2, [r1, #0] + 800774a: 4614 mov r4, r2 + 800774c: b99c cbnz r4, 8007776 <_malloc_r+0x56> + 800774e: 4f20 ldr r7, [pc, #128] ; (80077d0 <_malloc_r+0xb0>) + 8007750: 683b ldr r3, [r7, #0] + 8007752: b923 cbnz r3, 800775e <_malloc_r+0x3e> + 8007754: 4621 mov r1, r4 + 8007756: 4630 mov r0, r6 + 8007758: f000 fc9c bl 8008094 <_sbrk_r> + 800775c: 6038 str r0, [r7, #0] + 800775e: 4629 mov r1, r5 + 8007760: 4630 mov r0, r6 + 8007762: f000 fc97 bl 8008094 <_sbrk_r> + 8007766: 1c43 adds r3, r0, #1 + 8007768: d123 bne.n 80077b2 <_malloc_r+0x92> + 800776a: 230c movs r3, #12 + 800776c: 4630 mov r0, r6 + 800776e: 6033 str r3, [r6, #0] + 8007770: f001 fb62 bl 8008e38 <__malloc_unlock> + 8007774: e7e3 b.n 800773e <_malloc_r+0x1e> + 8007776: 6823 ldr r3, [r4, #0] + 8007778: 1b5b subs r3, r3, r5 + 800777a: d417 bmi.n 80077ac <_malloc_r+0x8c> + 800777c: 2b0b cmp r3, #11 + 800777e: d903 bls.n 8007788 <_malloc_r+0x68> + 8007780: 6023 str r3, [r4, #0] + 8007782: 441c add r4, r3 + 8007784: 6025 str r5, [r4, #0] + 8007786: e004 b.n 8007792 <_malloc_r+0x72> + 8007788: 6863 ldr r3, [r4, #4] + 800778a: 42a2 cmp r2, r4 + 800778c: bf0c ite eq + 800778e: 600b streq r3, [r1, #0] + 8007790: 6053 strne r3, [r2, #4] + 8007792: 4630 mov r0, r6 + 8007794: f001 fb50 bl 8008e38 <__malloc_unlock> + 8007798: f104 000b add.w r0, r4, #11 + 800779c: 1d23 adds r3, r4, #4 + 800779e: f020 0007 bic.w r0, r0, #7 + 80077a2: 1ac2 subs r2, r0, r3 + 80077a4: d0cc beq.n 8007740 <_malloc_r+0x20> + 80077a6: 1a1b subs r3, r3, r0 + 80077a8: 50a3 str r3, [r4, r2] + 80077aa: e7c9 b.n 8007740 <_malloc_r+0x20> + 80077ac: 4622 mov r2, r4 + 80077ae: 6864 ldr r4, [r4, #4] + 80077b0: e7cc b.n 800774c <_malloc_r+0x2c> + 80077b2: 1cc4 adds r4, r0, #3 + 80077b4: f024 0403 bic.w r4, r4, #3 + 80077b8: 42a0 cmp r0, r4 + 80077ba: d0e3 beq.n 8007784 <_malloc_r+0x64> + 80077bc: 1a21 subs r1, r4, r0 + 80077be: 4630 mov r0, r6 + 80077c0: f000 fc68 bl 8008094 <_sbrk_r> + 80077c4: 3001 adds r0, #1 + 80077c6: d1dd bne.n 8007784 <_malloc_r+0x64> + 80077c8: e7cf b.n 800776a <_malloc_r+0x4a> + 80077ca: bf00 nop + 80077cc: 20000210 .word 0x20000210 + 80077d0: 20000214 .word 0x20000214 -08007138 <__cvt>: - 8007138: 2b00 cmp r3, #0 - 800713a: e92d 47f0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, lr} - 800713e: 461f mov r7, r3 - 8007140: bfbb ittet lt - 8007142: f103 4300 addlt.w r3, r3, #2147483648 ; 0x80000000 - 8007146: 461f movlt r7, r3 - 8007148: 2300 movge r3, #0 - 800714a: 232d movlt r3, #45 ; 0x2d - 800714c: b088 sub sp, #32 - 800714e: 4614 mov r4, r2 - 8007150: 9a12 ldr r2, [sp, #72] ; 0x48 - 8007152: 9d10 ldr r5, [sp, #64] ; 0x40 - 8007154: 7013 strb r3, [r2, #0] - 8007156: 9b14 ldr r3, [sp, #80] ; 0x50 - 8007158: f8dd a04c ldr.w sl, [sp, #76] ; 0x4c - 800715c: f023 0820 bic.w r8, r3, #32 - 8007160: f1b8 0f46 cmp.w r8, #70 ; 0x46 - 8007164: d005 beq.n 8007172 <__cvt+0x3a> - 8007166: f1b8 0f45 cmp.w r8, #69 ; 0x45 - 800716a: d100 bne.n 800716e <__cvt+0x36> - 800716c: 3501 adds r5, #1 - 800716e: 2302 movs r3, #2 - 8007170: e000 b.n 8007174 <__cvt+0x3c> - 8007172: 2303 movs r3, #3 - 8007174: aa07 add r2, sp, #28 - 8007176: 9204 str r2, [sp, #16] - 8007178: aa06 add r2, sp, #24 - 800717a: e9cd a202 strd sl, r2, [sp, #8] - 800717e: e9cd 3500 strd r3, r5, [sp] - 8007182: 4622 mov r2, r4 - 8007184: 463b mov r3, r7 - 8007186: f000 fcf7 bl 8007b78 <_dtoa_r> - 800718a: f1b8 0f47 cmp.w r8, #71 ; 0x47 - 800718e: 4606 mov r6, r0 - 8007190: d102 bne.n 8007198 <__cvt+0x60> - 8007192: 9b11 ldr r3, [sp, #68] ; 0x44 - 8007194: 07db lsls r3, r3, #31 - 8007196: d522 bpl.n 80071de <__cvt+0xa6> - 8007198: f1b8 0f46 cmp.w r8, #70 ; 0x46 - 800719c: eb06 0905 add.w r9, r6, r5 - 80071a0: d110 bne.n 80071c4 <__cvt+0x8c> - 80071a2: 7833 ldrb r3, [r6, #0] - 80071a4: 2b30 cmp r3, #48 ; 0x30 - 80071a6: d10a bne.n 80071be <__cvt+0x86> - 80071a8: 2200 movs r2, #0 - 80071aa: 2300 movs r3, #0 - 80071ac: 4620 mov r0, r4 - 80071ae: 4639 mov r1, r7 - 80071b0: f7f9 fc66 bl 8000a80 <__aeabi_dcmpeq> - 80071b4: b918 cbnz r0, 80071be <__cvt+0x86> - 80071b6: f1c5 0501 rsb r5, r5, #1 - 80071ba: f8ca 5000 str.w r5, [sl] - 80071be: f8da 3000 ldr.w r3, [sl] - 80071c2: 4499 add r9, r3 - 80071c4: 2200 movs r2, #0 - 80071c6: 2300 movs r3, #0 - 80071c8: 4620 mov r0, r4 - 80071ca: 4639 mov r1, r7 - 80071cc: f7f9 fc58 bl 8000a80 <__aeabi_dcmpeq> - 80071d0: b108 cbz r0, 80071d6 <__cvt+0x9e> - 80071d2: f8cd 901c str.w r9, [sp, #28] - 80071d6: 2230 movs r2, #48 ; 0x30 - 80071d8: 9b07 ldr r3, [sp, #28] - 80071da: 454b cmp r3, r9 - 80071dc: d307 bcc.n 80071ee <__cvt+0xb6> - 80071de: 4630 mov r0, r6 - 80071e0: 9b07 ldr r3, [sp, #28] - 80071e2: 9a15 ldr r2, [sp, #84] ; 0x54 - 80071e4: 1b9b subs r3, r3, r6 - 80071e6: 6013 str r3, [r2, #0] - 80071e8: b008 add sp, #32 - 80071ea: e8bd 87f0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, pc} - 80071ee: 1c59 adds r1, r3, #1 - 80071f0: 9107 str r1, [sp, #28] - 80071f2: 701a strb r2, [r3, #0] - 80071f4: e7f0 b.n 80071d8 <__cvt+0xa0> +080077d4 <__cvt>: + 80077d4: 2b00 cmp r3, #0 + 80077d6: e92d 47f0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, lr} + 80077da: 461f mov r7, r3 + 80077dc: bfbb ittet lt + 80077de: f103 4300 addlt.w r3, r3, #2147483648 ; 0x80000000 + 80077e2: 461f movlt r7, r3 + 80077e4: 2300 movge r3, #0 + 80077e6: 232d movlt r3, #45 ; 0x2d + 80077e8: b088 sub sp, #32 + 80077ea: 4614 mov r4, r2 + 80077ec: 9a12 ldr r2, [sp, #72] ; 0x48 + 80077ee: 9d10 ldr r5, [sp, #64] ; 0x40 + 80077f0: 7013 strb r3, [r2, #0] + 80077f2: 9b14 ldr r3, [sp, #80] ; 0x50 + 80077f4: f8dd a04c ldr.w sl, [sp, #76] ; 0x4c + 80077f8: f023 0820 bic.w r8, r3, #32 + 80077fc: f1b8 0f46 cmp.w r8, #70 ; 0x46 + 8007800: d005 beq.n 800780e <__cvt+0x3a> + 8007802: f1b8 0f45 cmp.w r8, #69 ; 0x45 + 8007806: d100 bne.n 800780a <__cvt+0x36> + 8007808: 3501 adds r5, #1 + 800780a: 2302 movs r3, #2 + 800780c: e000 b.n 8007810 <__cvt+0x3c> + 800780e: 2303 movs r3, #3 + 8007810: aa07 add r2, sp, #28 + 8007812: 9204 str r2, [sp, #16] + 8007814: aa06 add r2, sp, #24 + 8007816: e9cd a202 strd sl, r2, [sp, #8] + 800781a: e9cd 3500 strd r3, r5, [sp] + 800781e: 4622 mov r2, r4 + 8007820: 463b mov r3, r7 + 8007822: f000 fcf5 bl 8008210 <_dtoa_r> + 8007826: f1b8 0f47 cmp.w r8, #71 ; 0x47 + 800782a: 4606 mov r6, r0 + 800782c: d102 bne.n 8007834 <__cvt+0x60> + 800782e: 9b11 ldr r3, [sp, #68] ; 0x44 + 8007830: 07db lsls r3, r3, #31 + 8007832: d522 bpl.n 800787a <__cvt+0xa6> + 8007834: f1b8 0f46 cmp.w r8, #70 ; 0x46 + 8007838: eb06 0905 add.w r9, r6, r5 + 800783c: d110 bne.n 8007860 <__cvt+0x8c> + 800783e: 7833 ldrb r3, [r6, #0] + 8007840: 2b30 cmp r3, #48 ; 0x30 + 8007842: d10a bne.n 800785a <__cvt+0x86> + 8007844: 2200 movs r2, #0 + 8007846: 2300 movs r3, #0 + 8007848: 4620 mov r0, r4 + 800784a: 4639 mov r1, r7 + 800784c: f7f9 f918 bl 8000a80 <__aeabi_dcmpeq> + 8007850: b918 cbnz r0, 800785a <__cvt+0x86> + 8007852: f1c5 0501 rsb r5, r5, #1 + 8007856: f8ca 5000 str.w r5, [sl] + 800785a: f8da 3000 ldr.w r3, [sl] + 800785e: 4499 add r9, r3 + 8007860: 2200 movs r2, #0 + 8007862: 2300 movs r3, #0 + 8007864: 4620 mov r0, r4 + 8007866: 4639 mov r1, r7 + 8007868: f7f9 f90a bl 8000a80 <__aeabi_dcmpeq> + 800786c: b108 cbz r0, 8007872 <__cvt+0x9e> + 800786e: f8cd 901c str.w r9, [sp, #28] + 8007872: 2230 movs r2, #48 ; 0x30 + 8007874: 9b07 ldr r3, [sp, #28] + 8007876: 454b cmp r3, r9 + 8007878: d307 bcc.n 800788a <__cvt+0xb6> + 800787a: 4630 mov r0, r6 + 800787c: 9b07 ldr r3, [sp, #28] + 800787e: 9a15 ldr r2, [sp, #84] ; 0x54 + 8007880: 1b9b subs r3, r3, r6 + 8007882: 6013 str r3, [r2, #0] + 8007884: b008 add sp, #32 + 8007886: e8bd 87f0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, pc} + 800788a: 1c59 adds r1, r3, #1 + 800788c: 9107 str r1, [sp, #28] + 800788e: 701a strb r2, [r3, #0] + 8007890: e7f0 b.n 8007874 <__cvt+0xa0> -080071f6 <__exponent>: - 80071f6: 4603 mov r3, r0 - 80071f8: b5f7 push {r0, r1, r2, r4, r5, r6, r7, lr} - 80071fa: 2900 cmp r1, #0 - 80071fc: f803 2b02 strb.w r2, [r3], #2 - 8007200: bfb6 itet lt - 8007202: 222d movlt r2, #45 ; 0x2d - 8007204: 222b movge r2, #43 ; 0x2b - 8007206: 4249 neglt r1, r1 - 8007208: 2909 cmp r1, #9 - 800720a: 7042 strb r2, [r0, #1] - 800720c: dd2b ble.n 8007266 <__exponent+0x70> - 800720e: f10d 0407 add.w r4, sp, #7 - 8007212: 46a4 mov ip, r4 - 8007214: 270a movs r7, #10 - 8007216: fb91 f6f7 sdiv r6, r1, r7 - 800721a: 460a mov r2, r1 - 800721c: 46a6 mov lr, r4 - 800721e: fb07 1516 mls r5, r7, r6, r1 - 8007222: 2a63 cmp r2, #99 ; 0x63 - 8007224: f105 0530 add.w r5, r5, #48 ; 0x30 - 8007228: 4631 mov r1, r6 - 800722a: f104 34ff add.w r4, r4, #4294967295 ; 0xffffffff - 800722e: f80e 5c01 strb.w r5, [lr, #-1] - 8007232: dcf0 bgt.n 8007216 <__exponent+0x20> - 8007234: 3130 adds r1, #48 ; 0x30 - 8007236: f1ae 0502 sub.w r5, lr, #2 - 800723a: f804 1c01 strb.w r1, [r4, #-1] - 800723e: 4629 mov r1, r5 - 8007240: 1c44 adds r4, r0, #1 - 8007242: 4561 cmp r1, ip - 8007244: d30a bcc.n 800725c <__exponent+0x66> - 8007246: f10d 0209 add.w r2, sp, #9 - 800724a: eba2 020e sub.w r2, r2, lr - 800724e: 4565 cmp r5, ip - 8007250: bf88 it hi - 8007252: 2200 movhi r2, #0 - 8007254: 4413 add r3, r2 - 8007256: 1a18 subs r0, r3, r0 - 8007258: b003 add sp, #12 - 800725a: bdf0 pop {r4, r5, r6, r7, pc} - 800725c: f811 2b01 ldrb.w r2, [r1], #1 - 8007260: f804 2f01 strb.w r2, [r4, #1]! - 8007264: e7ed b.n 8007242 <__exponent+0x4c> - 8007266: 2330 movs r3, #48 ; 0x30 - 8007268: 3130 adds r1, #48 ; 0x30 - 800726a: 7083 strb r3, [r0, #2] - 800726c: 70c1 strb r1, [r0, #3] - 800726e: 1d03 adds r3, r0, #4 - 8007270: e7f1 b.n 8007256 <__exponent+0x60> +08007892 <__exponent>: + 8007892: 4603 mov r3, r0 + 8007894: b5f7 push {r0, r1, r2, r4, r5, r6, r7, lr} + 8007896: 2900 cmp r1, #0 + 8007898: f803 2b02 strb.w r2, [r3], #2 + 800789c: bfb6 itet lt + 800789e: 222d movlt r2, #45 ; 0x2d + 80078a0: 222b movge r2, #43 ; 0x2b + 80078a2: 4249 neglt r1, r1 + 80078a4: 2909 cmp r1, #9 + 80078a6: 7042 strb r2, [r0, #1] + 80078a8: dd2b ble.n 8007902 <__exponent+0x70> + 80078aa: f10d 0407 add.w r4, sp, #7 + 80078ae: 46a4 mov ip, r4 + 80078b0: 270a movs r7, #10 + 80078b2: fb91 f6f7 sdiv r6, r1, r7 + 80078b6: 460a mov r2, r1 + 80078b8: 46a6 mov lr, r4 + 80078ba: fb07 1516 mls r5, r7, r6, r1 + 80078be: 2a63 cmp r2, #99 ; 0x63 + 80078c0: f105 0530 add.w r5, r5, #48 ; 0x30 + 80078c4: 4631 mov r1, r6 + 80078c6: f104 34ff add.w r4, r4, #4294967295 ; 0xffffffff + 80078ca: f80e 5c01 strb.w r5, [lr, #-1] + 80078ce: dcf0 bgt.n 80078b2 <__exponent+0x20> + 80078d0: 3130 adds r1, #48 ; 0x30 + 80078d2: f1ae 0502 sub.w r5, lr, #2 + 80078d6: f804 1c01 strb.w r1, [r4, #-1] + 80078da: 4629 mov r1, r5 + 80078dc: 1c44 adds r4, r0, #1 + 80078de: 4561 cmp r1, ip + 80078e0: d30a bcc.n 80078f8 <__exponent+0x66> + 80078e2: f10d 0209 add.w r2, sp, #9 + 80078e6: eba2 020e sub.w r2, r2, lr + 80078ea: 4565 cmp r5, ip + 80078ec: bf88 it hi + 80078ee: 2200 movhi r2, #0 + 80078f0: 4413 add r3, r2 + 80078f2: 1a18 subs r0, r3, r0 + 80078f4: b003 add sp, #12 + 80078f6: bdf0 pop {r4, r5, r6, r7, pc} + 80078f8: f811 2b01 ldrb.w r2, [r1], #1 + 80078fc: f804 2f01 strb.w r2, [r4, #1]! + 8007900: e7ed b.n 80078de <__exponent+0x4c> + 8007902: 2330 movs r3, #48 ; 0x30 + 8007904: 3130 adds r1, #48 ; 0x30 + 8007906: 7083 strb r3, [r0, #2] + 8007908: 70c1 strb r1, [r0, #3] + 800790a: 1d03 adds r3, r0, #4 + 800790c: e7f1 b.n 80078f2 <__exponent+0x60> ... -08007274 <_printf_float>: - 8007274: e92d 4ff0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} - 8007278: b091 sub sp, #68 ; 0x44 - 800727a: 460c mov r4, r1 - 800727c: f8dd 8068 ldr.w r8, [sp, #104] ; 0x68 - 8007280: 4616 mov r6, r2 - 8007282: 461f mov r7, r3 - 8007284: 4605 mov r5, r0 - 8007286: f001 fa65 bl 8008754 <_localeconv_r> - 800728a: 6803 ldr r3, [r0, #0] - 800728c: 4618 mov r0, r3 - 800728e: 9309 str r3, [sp, #36] ; 0x24 - 8007290: f7f8 ffca bl 8000228 - 8007294: 2300 movs r3, #0 - 8007296: 930e str r3, [sp, #56] ; 0x38 - 8007298: f8d8 3000 ldr.w r3, [r8] - 800729c: 900a str r0, [sp, #40] ; 0x28 - 800729e: 3307 adds r3, #7 - 80072a0: f023 0307 bic.w r3, r3, #7 - 80072a4: f103 0208 add.w r2, r3, #8 - 80072a8: f894 9018 ldrb.w r9, [r4, #24] - 80072ac: f8d4 b000 ldr.w fp, [r4] - 80072b0: f8c8 2000 str.w r2, [r8] - 80072b4: e9d3 2300 ldrd r2, r3, [r3] - 80072b8: e9c4 2312 strd r2, r3, [r4, #72] ; 0x48 - 80072bc: e9d4 8a12 ldrd r8, sl, [r4, #72] ; 0x48 - 80072c0: f02a 4300 bic.w r3, sl, #2147483648 ; 0x80000000 - 80072c4: 930b str r3, [sp, #44] ; 0x2c - 80072c6: f04f 32ff mov.w r2, #4294967295 ; 0xffffffff - 80072ca: 4640 mov r0, r8 - 80072cc: 4b9c ldr r3, [pc, #624] ; (8007540 <_printf_float+0x2cc>) - 80072ce: 990b ldr r1, [sp, #44] ; 0x2c - 80072d0: f7f9 fc08 bl 8000ae4 <__aeabi_dcmpun> - 80072d4: bb70 cbnz r0, 8007334 <_printf_float+0xc0> - 80072d6: f04f 32ff mov.w r2, #4294967295 ; 0xffffffff - 80072da: 4640 mov r0, r8 - 80072dc: 4b98 ldr r3, [pc, #608] ; (8007540 <_printf_float+0x2cc>) - 80072de: 990b ldr r1, [sp, #44] ; 0x2c - 80072e0: f7f9 fbe2 bl 8000aa8 <__aeabi_dcmple> - 80072e4: bb30 cbnz r0, 8007334 <_printf_float+0xc0> - 80072e6: 2200 movs r2, #0 - 80072e8: 2300 movs r3, #0 - 80072ea: 4640 mov r0, r8 - 80072ec: 4651 mov r1, sl - 80072ee: f7f9 fbd1 bl 8000a94 <__aeabi_dcmplt> - 80072f2: b110 cbz r0, 80072fa <_printf_float+0x86> - 80072f4: 232d movs r3, #45 ; 0x2d - 80072f6: f884 3043 strb.w r3, [r4, #67] ; 0x43 - 80072fa: 4b92 ldr r3, [pc, #584] ; (8007544 <_printf_float+0x2d0>) - 80072fc: 4892 ldr r0, [pc, #584] ; (8007548 <_printf_float+0x2d4>) - 80072fe: f1b9 0f47 cmp.w r9, #71 ; 0x47 - 8007302: bf94 ite ls - 8007304: 4698 movls r8, r3 - 8007306: 4680 movhi r8, r0 - 8007308: 2303 movs r3, #3 - 800730a: f04f 0a00 mov.w sl, #0 - 800730e: 6123 str r3, [r4, #16] - 8007310: f02b 0304 bic.w r3, fp, #4 - 8007314: 6023 str r3, [r4, #0] - 8007316: 4633 mov r3, r6 - 8007318: 4621 mov r1, r4 - 800731a: 4628 mov r0, r5 - 800731c: 9700 str r7, [sp, #0] - 800731e: aa0f add r2, sp, #60 ; 0x3c - 8007320: f000 f9d4 bl 80076cc <_printf_common> - 8007324: 3001 adds r0, #1 - 8007326: f040 8090 bne.w 800744a <_printf_float+0x1d6> - 800732a: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff - 800732e: b011 add sp, #68 ; 0x44 - 8007330: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc} - 8007334: 4642 mov r2, r8 - 8007336: 4653 mov r3, sl - 8007338: 4640 mov r0, r8 - 800733a: 4651 mov r1, sl - 800733c: f7f9 fbd2 bl 8000ae4 <__aeabi_dcmpun> - 8007340: b148 cbz r0, 8007356 <_printf_float+0xe2> - 8007342: f1ba 0f00 cmp.w sl, #0 - 8007346: bfb8 it lt - 8007348: 232d movlt r3, #45 ; 0x2d - 800734a: 4880 ldr r0, [pc, #512] ; (800754c <_printf_float+0x2d8>) - 800734c: bfb8 it lt - 800734e: f884 3043 strblt.w r3, [r4, #67] ; 0x43 - 8007352: 4b7f ldr r3, [pc, #508] ; (8007550 <_printf_float+0x2dc>) - 8007354: e7d3 b.n 80072fe <_printf_float+0x8a> - 8007356: 6863 ldr r3, [r4, #4] - 8007358: f009 01df and.w r1, r9, #223 ; 0xdf - 800735c: 1c5a adds r2, r3, #1 - 800735e: d142 bne.n 80073e6 <_printf_float+0x172> - 8007360: 2306 movs r3, #6 - 8007362: 6063 str r3, [r4, #4] - 8007364: 2200 movs r2, #0 - 8007366: 9206 str r2, [sp, #24] - 8007368: aa0e add r2, sp, #56 ; 0x38 - 800736a: e9cd 9204 strd r9, r2, [sp, #16] - 800736e: aa0d add r2, sp, #52 ; 0x34 - 8007370: f44b 6380 orr.w r3, fp, #1024 ; 0x400 - 8007374: 9203 str r2, [sp, #12] - 8007376: f10d 0233 add.w r2, sp, #51 ; 0x33 - 800737a: e9cd 3201 strd r3, r2, [sp, #4] - 800737e: 6023 str r3, [r4, #0] - 8007380: 6863 ldr r3, [r4, #4] - 8007382: 4642 mov r2, r8 - 8007384: 9300 str r3, [sp, #0] - 8007386: 4628 mov r0, r5 - 8007388: 4653 mov r3, sl - 800738a: 910b str r1, [sp, #44] ; 0x2c - 800738c: f7ff fed4 bl 8007138 <__cvt> - 8007390: 990b ldr r1, [sp, #44] ; 0x2c - 8007392: 4680 mov r8, r0 - 8007394: 2947 cmp r1, #71 ; 0x47 - 8007396: 990d ldr r1, [sp, #52] ; 0x34 - 8007398: d108 bne.n 80073ac <_printf_float+0x138> - 800739a: 1cc8 adds r0, r1, #3 - 800739c: db02 blt.n 80073a4 <_printf_float+0x130> - 800739e: 6863 ldr r3, [r4, #4] - 80073a0: 4299 cmp r1, r3 - 80073a2: dd40 ble.n 8007426 <_printf_float+0x1b2> - 80073a4: f1a9 0902 sub.w r9, r9, #2 - 80073a8: fa5f f989 uxtb.w r9, r9 - 80073ac: f1b9 0f65 cmp.w r9, #101 ; 0x65 - 80073b0: d81f bhi.n 80073f2 <_printf_float+0x17e> - 80073b2: 464a mov r2, r9 - 80073b4: 3901 subs r1, #1 - 80073b6: f104 0050 add.w r0, r4, #80 ; 0x50 - 80073ba: 910d str r1, [sp, #52] ; 0x34 - 80073bc: f7ff ff1b bl 80071f6 <__exponent> - 80073c0: 9a0e ldr r2, [sp, #56] ; 0x38 - 80073c2: 4682 mov sl, r0 - 80073c4: 1813 adds r3, r2, r0 - 80073c6: 2a01 cmp r2, #1 - 80073c8: 6123 str r3, [r4, #16] - 80073ca: dc02 bgt.n 80073d2 <_printf_float+0x15e> - 80073cc: 6822 ldr r2, [r4, #0] - 80073ce: 07d2 lsls r2, r2, #31 - 80073d0: d501 bpl.n 80073d6 <_printf_float+0x162> - 80073d2: 3301 adds r3, #1 - 80073d4: 6123 str r3, [r4, #16] - 80073d6: f89d 3033 ldrb.w r3, [sp, #51] ; 0x33 - 80073da: 2b00 cmp r3, #0 - 80073dc: d09b beq.n 8007316 <_printf_float+0xa2> - 80073de: 232d movs r3, #45 ; 0x2d - 80073e0: f884 3043 strb.w r3, [r4, #67] ; 0x43 - 80073e4: e797 b.n 8007316 <_printf_float+0xa2> - 80073e6: 2947 cmp r1, #71 ; 0x47 - 80073e8: d1bc bne.n 8007364 <_printf_float+0xf0> - 80073ea: 2b00 cmp r3, #0 - 80073ec: d1ba bne.n 8007364 <_printf_float+0xf0> - 80073ee: 2301 movs r3, #1 - 80073f0: e7b7 b.n 8007362 <_printf_float+0xee> - 80073f2: f1b9 0f66 cmp.w r9, #102 ; 0x66 - 80073f6: d118 bne.n 800742a <_printf_float+0x1b6> - 80073f8: 2900 cmp r1, #0 - 80073fa: 6863 ldr r3, [r4, #4] - 80073fc: dd0b ble.n 8007416 <_printf_float+0x1a2> - 80073fe: 6121 str r1, [r4, #16] - 8007400: b913 cbnz r3, 8007408 <_printf_float+0x194> - 8007402: 6822 ldr r2, [r4, #0] - 8007404: 07d0 lsls r0, r2, #31 - 8007406: d502 bpl.n 800740e <_printf_float+0x19a> - 8007408: 3301 adds r3, #1 - 800740a: 440b add r3, r1 - 800740c: 6123 str r3, [r4, #16] - 800740e: f04f 0a00 mov.w sl, #0 - 8007412: 65a1 str r1, [r4, #88] ; 0x58 - 8007414: e7df b.n 80073d6 <_printf_float+0x162> - 8007416: b913 cbnz r3, 800741e <_printf_float+0x1aa> - 8007418: 6822 ldr r2, [r4, #0] - 800741a: 07d2 lsls r2, r2, #31 - 800741c: d501 bpl.n 8007422 <_printf_float+0x1ae> - 800741e: 3302 adds r3, #2 - 8007420: e7f4 b.n 800740c <_printf_float+0x198> - 8007422: 2301 movs r3, #1 - 8007424: e7f2 b.n 800740c <_printf_float+0x198> - 8007426: f04f 0967 mov.w r9, #103 ; 0x67 - 800742a: 9b0e ldr r3, [sp, #56] ; 0x38 - 800742c: 4299 cmp r1, r3 - 800742e: db05 blt.n 800743c <_printf_float+0x1c8> - 8007430: 6823 ldr r3, [r4, #0] - 8007432: 6121 str r1, [r4, #16] - 8007434: 07d8 lsls r0, r3, #31 - 8007436: d5ea bpl.n 800740e <_printf_float+0x19a> - 8007438: 1c4b adds r3, r1, #1 - 800743a: e7e7 b.n 800740c <_printf_float+0x198> - 800743c: 2900 cmp r1, #0 - 800743e: bfcc ite gt - 8007440: 2201 movgt r2, #1 - 8007442: f1c1 0202 rsble r2, r1, #2 - 8007446: 4413 add r3, r2 - 8007448: e7e0 b.n 800740c <_printf_float+0x198> - 800744a: 6823 ldr r3, [r4, #0] - 800744c: 055a lsls r2, r3, #21 - 800744e: d407 bmi.n 8007460 <_printf_float+0x1ec> - 8007450: 6923 ldr r3, [r4, #16] - 8007452: 4642 mov r2, r8 - 8007454: 4631 mov r1, r6 - 8007456: 4628 mov r0, r5 - 8007458: 47b8 blx r7 - 800745a: 3001 adds r0, #1 - 800745c: d12b bne.n 80074b6 <_printf_float+0x242> - 800745e: e764 b.n 800732a <_printf_float+0xb6> - 8007460: f1b9 0f65 cmp.w r9, #101 ; 0x65 - 8007464: f240 80dd bls.w 8007622 <_printf_float+0x3ae> - 8007468: e9d4 0112 ldrd r0, r1, [r4, #72] ; 0x48 - 800746c: 2200 movs r2, #0 - 800746e: 2300 movs r3, #0 - 8007470: f7f9 fb06 bl 8000a80 <__aeabi_dcmpeq> - 8007474: 2800 cmp r0, #0 - 8007476: d033 beq.n 80074e0 <_printf_float+0x26c> - 8007478: 2301 movs r3, #1 - 800747a: 4631 mov r1, r6 - 800747c: 4628 mov r0, r5 - 800747e: 4a35 ldr r2, [pc, #212] ; (8007554 <_printf_float+0x2e0>) - 8007480: 47b8 blx r7 - 8007482: 3001 adds r0, #1 - 8007484: f43f af51 beq.w 800732a <_printf_float+0xb6> - 8007488: e9dd 230d ldrd r2, r3, [sp, #52] ; 0x34 - 800748c: 429a cmp r2, r3 - 800748e: db02 blt.n 8007496 <_printf_float+0x222> - 8007490: 6823 ldr r3, [r4, #0] - 8007492: 07d8 lsls r0, r3, #31 - 8007494: d50f bpl.n 80074b6 <_printf_float+0x242> - 8007496: e9dd 2309 ldrd r2, r3, [sp, #36] ; 0x24 - 800749a: 4631 mov r1, r6 - 800749c: 4628 mov r0, r5 - 800749e: 47b8 blx r7 - 80074a0: 3001 adds r0, #1 - 80074a2: f43f af42 beq.w 800732a <_printf_float+0xb6> - 80074a6: f04f 0800 mov.w r8, #0 - 80074aa: f104 091a add.w r9, r4, #26 - 80074ae: 9b0e ldr r3, [sp, #56] ; 0x38 - 80074b0: 3b01 subs r3, #1 - 80074b2: 4543 cmp r3, r8 - 80074b4: dc09 bgt.n 80074ca <_printf_float+0x256> - 80074b6: 6823 ldr r3, [r4, #0] - 80074b8: 079b lsls r3, r3, #30 - 80074ba: f100 8102 bmi.w 80076c2 <_printf_float+0x44e> - 80074be: 68e0 ldr r0, [r4, #12] - 80074c0: 9b0f ldr r3, [sp, #60] ; 0x3c - 80074c2: 4298 cmp r0, r3 - 80074c4: bfb8 it lt - 80074c6: 4618 movlt r0, r3 - 80074c8: e731 b.n 800732e <_printf_float+0xba> - 80074ca: 2301 movs r3, #1 - 80074cc: 464a mov r2, r9 - 80074ce: 4631 mov r1, r6 - 80074d0: 4628 mov r0, r5 - 80074d2: 47b8 blx r7 - 80074d4: 3001 adds r0, #1 - 80074d6: f43f af28 beq.w 800732a <_printf_float+0xb6> - 80074da: f108 0801 add.w r8, r8, #1 - 80074de: e7e6 b.n 80074ae <_printf_float+0x23a> - 80074e0: 9b0d ldr r3, [sp, #52] ; 0x34 - 80074e2: 2b00 cmp r3, #0 - 80074e4: dc38 bgt.n 8007558 <_printf_float+0x2e4> - 80074e6: 2301 movs r3, #1 - 80074e8: 4631 mov r1, r6 - 80074ea: 4628 mov r0, r5 - 80074ec: 4a19 ldr r2, [pc, #100] ; (8007554 <_printf_float+0x2e0>) - 80074ee: 47b8 blx r7 - 80074f0: 3001 adds r0, #1 - 80074f2: f43f af1a beq.w 800732a <_printf_float+0xb6> - 80074f6: e9dd 230d ldrd r2, r3, [sp, #52] ; 0x34 - 80074fa: 4313 orrs r3, r2 - 80074fc: d102 bne.n 8007504 <_printf_float+0x290> - 80074fe: 6823 ldr r3, [r4, #0] - 8007500: 07d9 lsls r1, r3, #31 - 8007502: d5d8 bpl.n 80074b6 <_printf_float+0x242> - 8007504: e9dd 2309 ldrd r2, r3, [sp, #36] ; 0x24 - 8007508: 4631 mov r1, r6 - 800750a: 4628 mov r0, r5 - 800750c: 47b8 blx r7 - 800750e: 3001 adds r0, #1 - 8007510: f43f af0b beq.w 800732a <_printf_float+0xb6> - 8007514: f04f 0900 mov.w r9, #0 - 8007518: f104 0a1a add.w sl, r4, #26 - 800751c: 9b0d ldr r3, [sp, #52] ; 0x34 - 800751e: 425b negs r3, r3 - 8007520: 454b cmp r3, r9 - 8007522: dc01 bgt.n 8007528 <_printf_float+0x2b4> - 8007524: 9b0e ldr r3, [sp, #56] ; 0x38 - 8007526: e794 b.n 8007452 <_printf_float+0x1de> - 8007528: 2301 movs r3, #1 - 800752a: 4652 mov r2, sl - 800752c: 4631 mov r1, r6 - 800752e: 4628 mov r0, r5 - 8007530: 47b8 blx r7 - 8007532: 3001 adds r0, #1 - 8007534: f43f aef9 beq.w 800732a <_printf_float+0xb6> - 8007538: f109 0901 add.w r9, r9, #1 - 800753c: e7ee b.n 800751c <_printf_float+0x2a8> - 800753e: bf00 nop - 8007540: 7fefffff .word 0x7fefffff - 8007544: 0800a878 .word 0x0800a878 - 8007548: 0800a87c .word 0x0800a87c - 800754c: 0800a884 .word 0x0800a884 - 8007550: 0800a880 .word 0x0800a880 - 8007554: 0800a888 .word 0x0800a888 - 8007558: 9a0e ldr r2, [sp, #56] ; 0x38 - 800755a: 6da3 ldr r3, [r4, #88] ; 0x58 - 800755c: 429a cmp r2, r3 - 800755e: bfa8 it ge - 8007560: 461a movge r2, r3 - 8007562: 2a00 cmp r2, #0 - 8007564: 4691 mov r9, r2 - 8007566: dc37 bgt.n 80075d8 <_printf_float+0x364> - 8007568: f04f 0b00 mov.w fp, #0 - 800756c: ea29 79e9 bic.w r9, r9, r9, asr #31 - 8007570: f104 021a add.w r2, r4, #26 - 8007574: f8d4 a058 ldr.w sl, [r4, #88] ; 0x58 - 8007578: ebaa 0309 sub.w r3, sl, r9 - 800757c: 455b cmp r3, fp - 800757e: dc33 bgt.n 80075e8 <_printf_float+0x374> - 8007580: e9dd 230d ldrd r2, r3, [sp, #52] ; 0x34 - 8007584: 429a cmp r2, r3 - 8007586: db3b blt.n 8007600 <_printf_float+0x38c> - 8007588: 6823 ldr r3, [r4, #0] - 800758a: 07da lsls r2, r3, #31 - 800758c: d438 bmi.n 8007600 <_printf_float+0x38c> - 800758e: 9a0e ldr r2, [sp, #56] ; 0x38 - 8007590: 990d ldr r1, [sp, #52] ; 0x34 - 8007592: eba2 030a sub.w r3, r2, sl - 8007596: eba2 0901 sub.w r9, r2, r1 - 800759a: 4599 cmp r9, r3 - 800759c: bfa8 it ge - 800759e: 4699 movge r9, r3 - 80075a0: f1b9 0f00 cmp.w r9, #0 - 80075a4: dc34 bgt.n 8007610 <_printf_float+0x39c> - 80075a6: f04f 0800 mov.w r8, #0 - 80075aa: ea29 79e9 bic.w r9, r9, r9, asr #31 - 80075ae: f104 0a1a add.w sl, r4, #26 - 80075b2: e9dd 230d ldrd r2, r3, [sp, #52] ; 0x34 - 80075b6: 1a9b subs r3, r3, r2 - 80075b8: eba3 0309 sub.w r3, r3, r9 - 80075bc: 4543 cmp r3, r8 - 80075be: f77f af7a ble.w 80074b6 <_printf_float+0x242> - 80075c2: 2301 movs r3, #1 - 80075c4: 4652 mov r2, sl - 80075c6: 4631 mov r1, r6 - 80075c8: 4628 mov r0, r5 - 80075ca: 47b8 blx r7 - 80075cc: 3001 adds r0, #1 - 80075ce: f43f aeac beq.w 800732a <_printf_float+0xb6> - 80075d2: f108 0801 add.w r8, r8, #1 - 80075d6: e7ec b.n 80075b2 <_printf_float+0x33e> - 80075d8: 4613 mov r3, r2 - 80075da: 4631 mov r1, r6 - 80075dc: 4642 mov r2, r8 - 80075de: 4628 mov r0, r5 - 80075e0: 47b8 blx r7 - 80075e2: 3001 adds r0, #1 - 80075e4: d1c0 bne.n 8007568 <_printf_float+0x2f4> - 80075e6: e6a0 b.n 800732a <_printf_float+0xb6> - 80075e8: 2301 movs r3, #1 - 80075ea: 4631 mov r1, r6 - 80075ec: 4628 mov r0, r5 - 80075ee: 920b str r2, [sp, #44] ; 0x2c - 80075f0: 47b8 blx r7 - 80075f2: 3001 adds r0, #1 - 80075f4: f43f ae99 beq.w 800732a <_printf_float+0xb6> - 80075f8: 9a0b ldr r2, [sp, #44] ; 0x2c - 80075fa: f10b 0b01 add.w fp, fp, #1 - 80075fe: e7b9 b.n 8007574 <_printf_float+0x300> - 8007600: 4631 mov r1, r6 - 8007602: e9dd 2309 ldrd r2, r3, [sp, #36] ; 0x24 - 8007606: 4628 mov r0, r5 - 8007608: 47b8 blx r7 - 800760a: 3001 adds r0, #1 - 800760c: d1bf bne.n 800758e <_printf_float+0x31a> - 800760e: e68c b.n 800732a <_printf_float+0xb6> - 8007610: 464b mov r3, r9 - 8007612: 4631 mov r1, r6 - 8007614: 4628 mov r0, r5 - 8007616: eb08 020a add.w r2, r8, sl - 800761a: 47b8 blx r7 - 800761c: 3001 adds r0, #1 - 800761e: d1c2 bne.n 80075a6 <_printf_float+0x332> - 8007620: e683 b.n 800732a <_printf_float+0xb6> - 8007622: 9a0e ldr r2, [sp, #56] ; 0x38 - 8007624: 2a01 cmp r2, #1 - 8007626: dc01 bgt.n 800762c <_printf_float+0x3b8> - 8007628: 07db lsls r3, r3, #31 - 800762a: d537 bpl.n 800769c <_printf_float+0x428> - 800762c: 2301 movs r3, #1 - 800762e: 4642 mov r2, r8 - 8007630: 4631 mov r1, r6 - 8007632: 4628 mov r0, r5 - 8007634: 47b8 blx r7 - 8007636: 3001 adds r0, #1 - 8007638: f43f ae77 beq.w 800732a <_printf_float+0xb6> - 800763c: e9dd 2309 ldrd r2, r3, [sp, #36] ; 0x24 - 8007640: 4631 mov r1, r6 - 8007642: 4628 mov r0, r5 - 8007644: 47b8 blx r7 - 8007646: 3001 adds r0, #1 - 8007648: f43f ae6f beq.w 800732a <_printf_float+0xb6> - 800764c: e9d4 0112 ldrd r0, r1, [r4, #72] ; 0x48 - 8007650: 2200 movs r2, #0 - 8007652: 2300 movs r3, #0 - 8007654: f7f9 fa14 bl 8000a80 <__aeabi_dcmpeq> - 8007658: b9d8 cbnz r0, 8007692 <_printf_float+0x41e> - 800765a: 9b0e ldr r3, [sp, #56] ; 0x38 - 800765c: f108 0201 add.w r2, r8, #1 - 8007660: 3b01 subs r3, #1 - 8007662: 4631 mov r1, r6 - 8007664: 4628 mov r0, r5 - 8007666: 47b8 blx r7 - 8007668: 3001 adds r0, #1 - 800766a: d10e bne.n 800768a <_printf_float+0x416> - 800766c: e65d b.n 800732a <_printf_float+0xb6> - 800766e: 2301 movs r3, #1 - 8007670: 464a mov r2, r9 - 8007672: 4631 mov r1, r6 - 8007674: 4628 mov r0, r5 - 8007676: 47b8 blx r7 - 8007678: 3001 adds r0, #1 - 800767a: f43f ae56 beq.w 800732a <_printf_float+0xb6> - 800767e: f108 0801 add.w r8, r8, #1 - 8007682: 9b0e ldr r3, [sp, #56] ; 0x38 - 8007684: 3b01 subs r3, #1 - 8007686: 4543 cmp r3, r8 - 8007688: dcf1 bgt.n 800766e <_printf_float+0x3fa> - 800768a: 4653 mov r3, sl - 800768c: f104 0250 add.w r2, r4, #80 ; 0x50 - 8007690: e6e0 b.n 8007454 <_printf_float+0x1e0> - 8007692: f04f 0800 mov.w r8, #0 - 8007696: f104 091a add.w r9, r4, #26 - 800769a: e7f2 b.n 8007682 <_printf_float+0x40e> - 800769c: 2301 movs r3, #1 - 800769e: 4642 mov r2, r8 - 80076a0: e7df b.n 8007662 <_printf_float+0x3ee> - 80076a2: 2301 movs r3, #1 - 80076a4: 464a mov r2, r9 - 80076a6: 4631 mov r1, r6 - 80076a8: 4628 mov r0, r5 - 80076aa: 47b8 blx r7 - 80076ac: 3001 adds r0, #1 - 80076ae: f43f ae3c beq.w 800732a <_printf_float+0xb6> - 80076b2: f108 0801 add.w r8, r8, #1 - 80076b6: 68e3 ldr r3, [r4, #12] - 80076b8: 990f ldr r1, [sp, #60] ; 0x3c - 80076ba: 1a5b subs r3, r3, r1 - 80076bc: 4543 cmp r3, r8 - 80076be: dcf0 bgt.n 80076a2 <_printf_float+0x42e> - 80076c0: e6fd b.n 80074be <_printf_float+0x24a> - 80076c2: f04f 0800 mov.w r8, #0 - 80076c6: f104 0919 add.w r9, r4, #25 - 80076ca: e7f4 b.n 80076b6 <_printf_float+0x442> +08007910 <_printf_float>: + 8007910: e92d 4ff0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} + 8007914: b091 sub sp, #68 ; 0x44 + 8007916: 460c mov r4, r1 + 8007918: f8dd 8068 ldr.w r8, [sp, #104] ; 0x68 + 800791c: 4616 mov r6, r2 + 800791e: 461f mov r7, r3 + 8007920: 4605 mov r5, r0 + 8007922: f001 fa63 bl 8008dec <_localeconv_r> + 8007926: 6803 ldr r3, [r0, #0] + 8007928: 4618 mov r0, r3 + 800792a: 9309 str r3, [sp, #36] ; 0x24 + 800792c: f7f8 fc7c bl 8000228 + 8007930: 2300 movs r3, #0 + 8007932: 930e str r3, [sp, #56] ; 0x38 + 8007934: f8d8 3000 ldr.w r3, [r8] + 8007938: 900a str r0, [sp, #40] ; 0x28 + 800793a: 3307 adds r3, #7 + 800793c: f023 0307 bic.w r3, r3, #7 + 8007940: f103 0208 add.w r2, r3, #8 + 8007944: f894 9018 ldrb.w r9, [r4, #24] + 8007948: f8d4 b000 ldr.w fp, [r4] + 800794c: f8c8 2000 str.w r2, [r8] + 8007950: e9d3 2300 ldrd r2, r3, [r3] + 8007954: e9c4 2312 strd r2, r3, [r4, #72] ; 0x48 + 8007958: e9d4 8a12 ldrd r8, sl, [r4, #72] ; 0x48 + 800795c: f02a 4300 bic.w r3, sl, #2147483648 ; 0x80000000 + 8007960: 930b str r3, [sp, #44] ; 0x2c + 8007962: f04f 32ff mov.w r2, #4294967295 ; 0xffffffff + 8007966: 4640 mov r0, r8 + 8007968: 4b9c ldr r3, [pc, #624] ; (8007bdc <_printf_float+0x2cc>) + 800796a: 990b ldr r1, [sp, #44] ; 0x2c + 800796c: f7f9 f8ba bl 8000ae4 <__aeabi_dcmpun> + 8007970: bb70 cbnz r0, 80079d0 <_printf_float+0xc0> + 8007972: f04f 32ff mov.w r2, #4294967295 ; 0xffffffff + 8007976: 4640 mov r0, r8 + 8007978: 4b98 ldr r3, [pc, #608] ; (8007bdc <_printf_float+0x2cc>) + 800797a: 990b ldr r1, [sp, #44] ; 0x2c + 800797c: f7f9 f894 bl 8000aa8 <__aeabi_dcmple> + 8007980: bb30 cbnz r0, 80079d0 <_printf_float+0xc0> + 8007982: 2200 movs r2, #0 + 8007984: 2300 movs r3, #0 + 8007986: 4640 mov r0, r8 + 8007988: 4651 mov r1, sl + 800798a: f7f9 f883 bl 8000a94 <__aeabi_dcmplt> + 800798e: b110 cbz r0, 8007996 <_printf_float+0x86> + 8007990: 232d movs r3, #45 ; 0x2d + 8007992: f884 3043 strb.w r3, [r4, #67] ; 0x43 + 8007996: 4b92 ldr r3, [pc, #584] ; (8007be0 <_printf_float+0x2d0>) + 8007998: 4892 ldr r0, [pc, #584] ; (8007be4 <_printf_float+0x2d4>) + 800799a: f1b9 0f47 cmp.w r9, #71 ; 0x47 + 800799e: bf94 ite ls + 80079a0: 4698 movls r8, r3 + 80079a2: 4680 movhi r8, r0 + 80079a4: 2303 movs r3, #3 + 80079a6: f04f 0a00 mov.w sl, #0 + 80079aa: 6123 str r3, [r4, #16] + 80079ac: f02b 0304 bic.w r3, fp, #4 + 80079b0: 6023 str r3, [r4, #0] + 80079b2: 4633 mov r3, r6 + 80079b4: 4621 mov r1, r4 + 80079b6: 4628 mov r0, r5 + 80079b8: 9700 str r7, [sp, #0] + 80079ba: aa0f add r2, sp, #60 ; 0x3c + 80079bc: f000 f9d4 bl 8007d68 <_printf_common> + 80079c0: 3001 adds r0, #1 + 80079c2: f040 8090 bne.w 8007ae6 <_printf_float+0x1d6> + 80079c6: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff + 80079ca: b011 add sp, #68 ; 0x44 + 80079cc: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc} + 80079d0: 4642 mov r2, r8 + 80079d2: 4653 mov r3, sl + 80079d4: 4640 mov r0, r8 + 80079d6: 4651 mov r1, sl + 80079d8: f7f9 f884 bl 8000ae4 <__aeabi_dcmpun> + 80079dc: b148 cbz r0, 80079f2 <_printf_float+0xe2> + 80079de: f1ba 0f00 cmp.w sl, #0 + 80079e2: bfb8 it lt + 80079e4: 232d movlt r3, #45 ; 0x2d + 80079e6: 4880 ldr r0, [pc, #512] ; (8007be8 <_printf_float+0x2d8>) + 80079e8: bfb8 it lt + 80079ea: f884 3043 strblt.w r3, [r4, #67] ; 0x43 + 80079ee: 4b7f ldr r3, [pc, #508] ; (8007bec <_printf_float+0x2dc>) + 80079f0: e7d3 b.n 800799a <_printf_float+0x8a> + 80079f2: 6863 ldr r3, [r4, #4] + 80079f4: f009 01df and.w r1, r9, #223 ; 0xdf + 80079f8: 1c5a adds r2, r3, #1 + 80079fa: d142 bne.n 8007a82 <_printf_float+0x172> + 80079fc: 2306 movs r3, #6 + 80079fe: 6063 str r3, [r4, #4] + 8007a00: 2200 movs r2, #0 + 8007a02: 9206 str r2, [sp, #24] + 8007a04: aa0e add r2, sp, #56 ; 0x38 + 8007a06: e9cd 9204 strd r9, r2, [sp, #16] + 8007a0a: aa0d add r2, sp, #52 ; 0x34 + 8007a0c: f44b 6380 orr.w r3, fp, #1024 ; 0x400 + 8007a10: 9203 str r2, [sp, #12] + 8007a12: f10d 0233 add.w r2, sp, #51 ; 0x33 + 8007a16: e9cd 3201 strd r3, r2, [sp, #4] + 8007a1a: 6023 str r3, [r4, #0] + 8007a1c: 6863 ldr r3, [r4, #4] + 8007a1e: 4642 mov r2, r8 + 8007a20: 9300 str r3, [sp, #0] + 8007a22: 4628 mov r0, r5 + 8007a24: 4653 mov r3, sl + 8007a26: 910b str r1, [sp, #44] ; 0x2c + 8007a28: f7ff fed4 bl 80077d4 <__cvt> + 8007a2c: 990b ldr r1, [sp, #44] ; 0x2c + 8007a2e: 4680 mov r8, r0 + 8007a30: 2947 cmp r1, #71 ; 0x47 + 8007a32: 990d ldr r1, [sp, #52] ; 0x34 + 8007a34: d108 bne.n 8007a48 <_printf_float+0x138> + 8007a36: 1cc8 adds r0, r1, #3 + 8007a38: db02 blt.n 8007a40 <_printf_float+0x130> + 8007a3a: 6863 ldr r3, [r4, #4] + 8007a3c: 4299 cmp r1, r3 + 8007a3e: dd40 ble.n 8007ac2 <_printf_float+0x1b2> + 8007a40: f1a9 0902 sub.w r9, r9, #2 + 8007a44: fa5f f989 uxtb.w r9, r9 + 8007a48: f1b9 0f65 cmp.w r9, #101 ; 0x65 + 8007a4c: d81f bhi.n 8007a8e <_printf_float+0x17e> + 8007a4e: 464a mov r2, r9 + 8007a50: 3901 subs r1, #1 + 8007a52: f104 0050 add.w r0, r4, #80 ; 0x50 + 8007a56: 910d str r1, [sp, #52] ; 0x34 + 8007a58: f7ff ff1b bl 8007892 <__exponent> + 8007a5c: 9a0e ldr r2, [sp, #56] ; 0x38 + 8007a5e: 4682 mov sl, r0 + 8007a60: 1813 adds r3, r2, r0 + 8007a62: 2a01 cmp r2, #1 + 8007a64: 6123 str r3, [r4, #16] + 8007a66: dc02 bgt.n 8007a6e <_printf_float+0x15e> + 8007a68: 6822 ldr r2, [r4, #0] + 8007a6a: 07d2 lsls r2, r2, #31 + 8007a6c: d501 bpl.n 8007a72 <_printf_float+0x162> + 8007a6e: 3301 adds r3, #1 + 8007a70: 6123 str r3, [r4, #16] + 8007a72: f89d 3033 ldrb.w r3, [sp, #51] ; 0x33 + 8007a76: 2b00 cmp r3, #0 + 8007a78: d09b beq.n 80079b2 <_printf_float+0xa2> + 8007a7a: 232d movs r3, #45 ; 0x2d + 8007a7c: f884 3043 strb.w r3, [r4, #67] ; 0x43 + 8007a80: e797 b.n 80079b2 <_printf_float+0xa2> + 8007a82: 2947 cmp r1, #71 ; 0x47 + 8007a84: d1bc bne.n 8007a00 <_printf_float+0xf0> + 8007a86: 2b00 cmp r3, #0 + 8007a88: d1ba bne.n 8007a00 <_printf_float+0xf0> + 8007a8a: 2301 movs r3, #1 + 8007a8c: e7b7 b.n 80079fe <_printf_float+0xee> + 8007a8e: f1b9 0f66 cmp.w r9, #102 ; 0x66 + 8007a92: d118 bne.n 8007ac6 <_printf_float+0x1b6> + 8007a94: 2900 cmp r1, #0 + 8007a96: 6863 ldr r3, [r4, #4] + 8007a98: dd0b ble.n 8007ab2 <_printf_float+0x1a2> + 8007a9a: 6121 str r1, [r4, #16] + 8007a9c: b913 cbnz r3, 8007aa4 <_printf_float+0x194> + 8007a9e: 6822 ldr r2, [r4, #0] + 8007aa0: 07d0 lsls r0, r2, #31 + 8007aa2: d502 bpl.n 8007aaa <_printf_float+0x19a> + 8007aa4: 3301 adds r3, #1 + 8007aa6: 440b add r3, r1 + 8007aa8: 6123 str r3, [r4, #16] + 8007aaa: f04f 0a00 mov.w sl, #0 + 8007aae: 65a1 str r1, [r4, #88] ; 0x58 + 8007ab0: e7df b.n 8007a72 <_printf_float+0x162> + 8007ab2: b913 cbnz r3, 8007aba <_printf_float+0x1aa> + 8007ab4: 6822 ldr r2, [r4, #0] + 8007ab6: 07d2 lsls r2, r2, #31 + 8007ab8: d501 bpl.n 8007abe <_printf_float+0x1ae> + 8007aba: 3302 adds r3, #2 + 8007abc: e7f4 b.n 8007aa8 <_printf_float+0x198> + 8007abe: 2301 movs r3, #1 + 8007ac0: e7f2 b.n 8007aa8 <_printf_float+0x198> + 8007ac2: f04f 0967 mov.w r9, #103 ; 0x67 + 8007ac6: 9b0e ldr r3, [sp, #56] ; 0x38 + 8007ac8: 4299 cmp r1, r3 + 8007aca: db05 blt.n 8007ad8 <_printf_float+0x1c8> + 8007acc: 6823 ldr r3, [r4, #0] + 8007ace: 6121 str r1, [r4, #16] + 8007ad0: 07d8 lsls r0, r3, #31 + 8007ad2: d5ea bpl.n 8007aaa <_printf_float+0x19a> + 8007ad4: 1c4b adds r3, r1, #1 + 8007ad6: e7e7 b.n 8007aa8 <_printf_float+0x198> + 8007ad8: 2900 cmp r1, #0 + 8007ada: bfcc ite gt + 8007adc: 2201 movgt r2, #1 + 8007ade: f1c1 0202 rsble r2, r1, #2 + 8007ae2: 4413 add r3, r2 + 8007ae4: e7e0 b.n 8007aa8 <_printf_float+0x198> + 8007ae6: 6823 ldr r3, [r4, #0] + 8007ae8: 055a lsls r2, r3, #21 + 8007aea: d407 bmi.n 8007afc <_printf_float+0x1ec> + 8007aec: 6923 ldr r3, [r4, #16] + 8007aee: 4642 mov r2, r8 + 8007af0: 4631 mov r1, r6 + 8007af2: 4628 mov r0, r5 + 8007af4: 47b8 blx r7 + 8007af6: 3001 adds r0, #1 + 8007af8: d12b bne.n 8007b52 <_printf_float+0x242> + 8007afa: e764 b.n 80079c6 <_printf_float+0xb6> + 8007afc: f1b9 0f65 cmp.w r9, #101 ; 0x65 + 8007b00: f240 80dd bls.w 8007cbe <_printf_float+0x3ae> + 8007b04: e9d4 0112 ldrd r0, r1, [r4, #72] ; 0x48 + 8007b08: 2200 movs r2, #0 + 8007b0a: 2300 movs r3, #0 + 8007b0c: f7f8 ffb8 bl 8000a80 <__aeabi_dcmpeq> + 8007b10: 2800 cmp r0, #0 + 8007b12: d033 beq.n 8007b7c <_printf_float+0x26c> + 8007b14: 2301 movs r3, #1 + 8007b16: 4631 mov r1, r6 + 8007b18: 4628 mov r0, r5 + 8007b1a: 4a35 ldr r2, [pc, #212] ; (8007bf0 <_printf_float+0x2e0>) + 8007b1c: 47b8 blx r7 + 8007b1e: 3001 adds r0, #1 + 8007b20: f43f af51 beq.w 80079c6 <_printf_float+0xb6> + 8007b24: e9dd 230d ldrd r2, r3, [sp, #52] ; 0x34 + 8007b28: 429a cmp r2, r3 + 8007b2a: db02 blt.n 8007b32 <_printf_float+0x222> + 8007b2c: 6823 ldr r3, [r4, #0] + 8007b2e: 07d8 lsls r0, r3, #31 + 8007b30: d50f bpl.n 8007b52 <_printf_float+0x242> + 8007b32: e9dd 2309 ldrd r2, r3, [sp, #36] ; 0x24 + 8007b36: 4631 mov r1, r6 + 8007b38: 4628 mov r0, r5 + 8007b3a: 47b8 blx r7 + 8007b3c: 3001 adds r0, #1 + 8007b3e: f43f af42 beq.w 80079c6 <_printf_float+0xb6> + 8007b42: f04f 0800 mov.w r8, #0 + 8007b46: f104 091a add.w r9, r4, #26 + 8007b4a: 9b0e ldr r3, [sp, #56] ; 0x38 + 8007b4c: 3b01 subs r3, #1 + 8007b4e: 4543 cmp r3, r8 + 8007b50: dc09 bgt.n 8007b66 <_printf_float+0x256> + 8007b52: 6823 ldr r3, [r4, #0] + 8007b54: 079b lsls r3, r3, #30 + 8007b56: f100 8102 bmi.w 8007d5e <_printf_float+0x44e> + 8007b5a: 68e0 ldr r0, [r4, #12] + 8007b5c: 9b0f ldr r3, [sp, #60] ; 0x3c + 8007b5e: 4298 cmp r0, r3 + 8007b60: bfb8 it lt + 8007b62: 4618 movlt r0, r3 + 8007b64: e731 b.n 80079ca <_printf_float+0xba> + 8007b66: 2301 movs r3, #1 + 8007b68: 464a mov r2, r9 + 8007b6a: 4631 mov r1, r6 + 8007b6c: 4628 mov r0, r5 + 8007b6e: 47b8 blx r7 + 8007b70: 3001 adds r0, #1 + 8007b72: f43f af28 beq.w 80079c6 <_printf_float+0xb6> + 8007b76: f108 0801 add.w r8, r8, #1 + 8007b7a: e7e6 b.n 8007b4a <_printf_float+0x23a> + 8007b7c: 9b0d ldr r3, [sp, #52] ; 0x34 + 8007b7e: 2b00 cmp r3, #0 + 8007b80: dc38 bgt.n 8007bf4 <_printf_float+0x2e4> + 8007b82: 2301 movs r3, #1 + 8007b84: 4631 mov r1, r6 + 8007b86: 4628 mov r0, r5 + 8007b88: 4a19 ldr r2, [pc, #100] ; (8007bf0 <_printf_float+0x2e0>) + 8007b8a: 47b8 blx r7 + 8007b8c: 3001 adds r0, #1 + 8007b8e: f43f af1a beq.w 80079c6 <_printf_float+0xb6> + 8007b92: e9dd 230d ldrd r2, r3, [sp, #52] ; 0x34 + 8007b96: 4313 orrs r3, r2 + 8007b98: d102 bne.n 8007ba0 <_printf_float+0x290> + 8007b9a: 6823 ldr r3, [r4, #0] + 8007b9c: 07d9 lsls r1, r3, #31 + 8007b9e: d5d8 bpl.n 8007b52 <_printf_float+0x242> + 8007ba0: e9dd 2309 ldrd r2, r3, [sp, #36] ; 0x24 + 8007ba4: 4631 mov r1, r6 + 8007ba6: 4628 mov r0, r5 + 8007ba8: 47b8 blx r7 + 8007baa: 3001 adds r0, #1 + 8007bac: f43f af0b beq.w 80079c6 <_printf_float+0xb6> + 8007bb0: f04f 0900 mov.w r9, #0 + 8007bb4: f104 0a1a add.w sl, r4, #26 + 8007bb8: 9b0d ldr r3, [sp, #52] ; 0x34 + 8007bba: 425b negs r3, r3 + 8007bbc: 454b cmp r3, r9 + 8007bbe: dc01 bgt.n 8007bc4 <_printf_float+0x2b4> + 8007bc0: 9b0e ldr r3, [sp, #56] ; 0x38 + 8007bc2: e794 b.n 8007aee <_printf_float+0x1de> + 8007bc4: 2301 movs r3, #1 + 8007bc6: 4652 mov r2, sl + 8007bc8: 4631 mov r1, r6 + 8007bca: 4628 mov r0, r5 + 8007bcc: 47b8 blx r7 + 8007bce: 3001 adds r0, #1 + 8007bd0: f43f aef9 beq.w 80079c6 <_printf_float+0xb6> + 8007bd4: f109 0901 add.w r9, r9, #1 + 8007bd8: e7ee b.n 8007bb8 <_printf_float+0x2a8> + 8007bda: bf00 nop + 8007bdc: 7fefffff .word 0x7fefffff + 8007be0: 0800af48 .word 0x0800af48 + 8007be4: 0800af4c .word 0x0800af4c + 8007be8: 0800af54 .word 0x0800af54 + 8007bec: 0800af50 .word 0x0800af50 + 8007bf0: 0800af58 .word 0x0800af58 + 8007bf4: 9a0e ldr r2, [sp, #56] ; 0x38 + 8007bf6: 6da3 ldr r3, [r4, #88] ; 0x58 + 8007bf8: 429a cmp r2, r3 + 8007bfa: bfa8 it ge + 8007bfc: 461a movge r2, r3 + 8007bfe: 2a00 cmp r2, #0 + 8007c00: 4691 mov r9, r2 + 8007c02: dc37 bgt.n 8007c74 <_printf_float+0x364> + 8007c04: f04f 0b00 mov.w fp, #0 + 8007c08: ea29 79e9 bic.w r9, r9, r9, asr #31 + 8007c0c: f104 021a add.w r2, r4, #26 + 8007c10: f8d4 a058 ldr.w sl, [r4, #88] ; 0x58 + 8007c14: ebaa 0309 sub.w r3, sl, r9 + 8007c18: 455b cmp r3, fp + 8007c1a: dc33 bgt.n 8007c84 <_printf_float+0x374> + 8007c1c: e9dd 230d ldrd r2, r3, [sp, #52] ; 0x34 + 8007c20: 429a cmp r2, r3 + 8007c22: db3b blt.n 8007c9c <_printf_float+0x38c> + 8007c24: 6823 ldr r3, [r4, #0] + 8007c26: 07da lsls r2, r3, #31 + 8007c28: d438 bmi.n 8007c9c <_printf_float+0x38c> + 8007c2a: 9a0e ldr r2, [sp, #56] ; 0x38 + 8007c2c: 990d ldr r1, [sp, #52] ; 0x34 + 8007c2e: eba2 030a sub.w r3, r2, sl + 8007c32: eba2 0901 sub.w r9, r2, r1 + 8007c36: 4599 cmp r9, r3 + 8007c38: bfa8 it ge + 8007c3a: 4699 movge r9, r3 + 8007c3c: f1b9 0f00 cmp.w r9, #0 + 8007c40: dc34 bgt.n 8007cac <_printf_float+0x39c> + 8007c42: f04f 0800 mov.w r8, #0 + 8007c46: ea29 79e9 bic.w r9, r9, r9, asr #31 + 8007c4a: f104 0a1a add.w sl, r4, #26 + 8007c4e: e9dd 230d ldrd r2, r3, [sp, #52] ; 0x34 + 8007c52: 1a9b subs r3, r3, r2 + 8007c54: eba3 0309 sub.w r3, r3, r9 + 8007c58: 4543 cmp r3, r8 + 8007c5a: f77f af7a ble.w 8007b52 <_printf_float+0x242> + 8007c5e: 2301 movs r3, #1 + 8007c60: 4652 mov r2, sl + 8007c62: 4631 mov r1, r6 + 8007c64: 4628 mov r0, r5 + 8007c66: 47b8 blx r7 + 8007c68: 3001 adds r0, #1 + 8007c6a: f43f aeac beq.w 80079c6 <_printf_float+0xb6> + 8007c6e: f108 0801 add.w r8, r8, #1 + 8007c72: e7ec b.n 8007c4e <_printf_float+0x33e> + 8007c74: 4613 mov r3, r2 + 8007c76: 4631 mov r1, r6 + 8007c78: 4642 mov r2, r8 + 8007c7a: 4628 mov r0, r5 + 8007c7c: 47b8 blx r7 + 8007c7e: 3001 adds r0, #1 + 8007c80: d1c0 bne.n 8007c04 <_printf_float+0x2f4> + 8007c82: e6a0 b.n 80079c6 <_printf_float+0xb6> + 8007c84: 2301 movs r3, #1 + 8007c86: 4631 mov r1, r6 + 8007c88: 4628 mov r0, r5 + 8007c8a: 920b str r2, [sp, #44] ; 0x2c + 8007c8c: 47b8 blx r7 + 8007c8e: 3001 adds r0, #1 + 8007c90: f43f ae99 beq.w 80079c6 <_printf_float+0xb6> + 8007c94: 9a0b ldr r2, [sp, #44] ; 0x2c + 8007c96: f10b 0b01 add.w fp, fp, #1 + 8007c9a: e7b9 b.n 8007c10 <_printf_float+0x300> + 8007c9c: 4631 mov r1, r6 + 8007c9e: e9dd 2309 ldrd r2, r3, [sp, #36] ; 0x24 + 8007ca2: 4628 mov r0, r5 + 8007ca4: 47b8 blx r7 + 8007ca6: 3001 adds r0, #1 + 8007ca8: d1bf bne.n 8007c2a <_printf_float+0x31a> + 8007caa: e68c b.n 80079c6 <_printf_float+0xb6> + 8007cac: 464b mov r3, r9 + 8007cae: 4631 mov r1, r6 + 8007cb0: 4628 mov r0, r5 + 8007cb2: eb08 020a add.w r2, r8, sl + 8007cb6: 47b8 blx r7 + 8007cb8: 3001 adds r0, #1 + 8007cba: d1c2 bne.n 8007c42 <_printf_float+0x332> + 8007cbc: e683 b.n 80079c6 <_printf_float+0xb6> + 8007cbe: 9a0e ldr r2, [sp, #56] ; 0x38 + 8007cc0: 2a01 cmp r2, #1 + 8007cc2: dc01 bgt.n 8007cc8 <_printf_float+0x3b8> + 8007cc4: 07db lsls r3, r3, #31 + 8007cc6: d537 bpl.n 8007d38 <_printf_float+0x428> + 8007cc8: 2301 movs r3, #1 + 8007cca: 4642 mov r2, r8 + 8007ccc: 4631 mov r1, r6 + 8007cce: 4628 mov r0, r5 + 8007cd0: 47b8 blx r7 + 8007cd2: 3001 adds r0, #1 + 8007cd4: f43f ae77 beq.w 80079c6 <_printf_float+0xb6> + 8007cd8: e9dd 2309 ldrd r2, r3, [sp, #36] ; 0x24 + 8007cdc: 4631 mov r1, r6 + 8007cde: 4628 mov r0, r5 + 8007ce0: 47b8 blx r7 + 8007ce2: 3001 adds r0, #1 + 8007ce4: f43f ae6f beq.w 80079c6 <_printf_float+0xb6> + 8007ce8: e9d4 0112 ldrd r0, r1, [r4, #72] ; 0x48 + 8007cec: 2200 movs r2, #0 + 8007cee: 2300 movs r3, #0 + 8007cf0: f7f8 fec6 bl 8000a80 <__aeabi_dcmpeq> + 8007cf4: b9d8 cbnz r0, 8007d2e <_printf_float+0x41e> + 8007cf6: 9b0e ldr r3, [sp, #56] ; 0x38 + 8007cf8: f108 0201 add.w r2, r8, #1 + 8007cfc: 3b01 subs r3, #1 + 8007cfe: 4631 mov r1, r6 + 8007d00: 4628 mov r0, r5 + 8007d02: 47b8 blx r7 + 8007d04: 3001 adds r0, #1 + 8007d06: d10e bne.n 8007d26 <_printf_float+0x416> + 8007d08: e65d b.n 80079c6 <_printf_float+0xb6> + 8007d0a: 2301 movs r3, #1 + 8007d0c: 464a mov r2, r9 + 8007d0e: 4631 mov r1, r6 + 8007d10: 4628 mov r0, r5 + 8007d12: 47b8 blx r7 + 8007d14: 3001 adds r0, #1 + 8007d16: f43f ae56 beq.w 80079c6 <_printf_float+0xb6> + 8007d1a: f108 0801 add.w r8, r8, #1 + 8007d1e: 9b0e ldr r3, [sp, #56] ; 0x38 + 8007d20: 3b01 subs r3, #1 + 8007d22: 4543 cmp r3, r8 + 8007d24: dcf1 bgt.n 8007d0a <_printf_float+0x3fa> + 8007d26: 4653 mov r3, sl + 8007d28: f104 0250 add.w r2, r4, #80 ; 0x50 + 8007d2c: e6e0 b.n 8007af0 <_printf_float+0x1e0> + 8007d2e: f04f 0800 mov.w r8, #0 + 8007d32: f104 091a add.w r9, r4, #26 + 8007d36: e7f2 b.n 8007d1e <_printf_float+0x40e> + 8007d38: 2301 movs r3, #1 + 8007d3a: 4642 mov r2, r8 + 8007d3c: e7df b.n 8007cfe <_printf_float+0x3ee> + 8007d3e: 2301 movs r3, #1 + 8007d40: 464a mov r2, r9 + 8007d42: 4631 mov r1, r6 + 8007d44: 4628 mov r0, r5 + 8007d46: 47b8 blx r7 + 8007d48: 3001 adds r0, #1 + 8007d4a: f43f ae3c beq.w 80079c6 <_printf_float+0xb6> + 8007d4e: f108 0801 add.w r8, r8, #1 + 8007d52: 68e3 ldr r3, [r4, #12] + 8007d54: 990f ldr r1, [sp, #60] ; 0x3c + 8007d56: 1a5b subs r3, r3, r1 + 8007d58: 4543 cmp r3, r8 + 8007d5a: dcf0 bgt.n 8007d3e <_printf_float+0x42e> + 8007d5c: e6fd b.n 8007b5a <_printf_float+0x24a> + 8007d5e: f04f 0800 mov.w r8, #0 + 8007d62: f104 0919 add.w r9, r4, #25 + 8007d66: e7f4 b.n 8007d52 <_printf_float+0x442> -080076cc <_printf_common>: - 80076cc: e92d 47f0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, lr} - 80076d0: 4616 mov r6, r2 - 80076d2: 4699 mov r9, r3 - 80076d4: 688a ldr r2, [r1, #8] - 80076d6: 690b ldr r3, [r1, #16] - 80076d8: 4607 mov r7, r0 - 80076da: 4293 cmp r3, r2 - 80076dc: bfb8 it lt - 80076de: 4613 movlt r3, r2 - 80076e0: 6033 str r3, [r6, #0] - 80076e2: f891 2043 ldrb.w r2, [r1, #67] ; 0x43 - 80076e6: 460c mov r4, r1 - 80076e8: f8dd 8020 ldr.w r8, [sp, #32] - 80076ec: b10a cbz r2, 80076f2 <_printf_common+0x26> - 80076ee: 3301 adds r3, #1 - 80076f0: 6033 str r3, [r6, #0] - 80076f2: 6823 ldr r3, [r4, #0] - 80076f4: 0699 lsls r1, r3, #26 - 80076f6: bf42 ittt mi - 80076f8: 6833 ldrmi r3, [r6, #0] - 80076fa: 3302 addmi r3, #2 - 80076fc: 6033 strmi r3, [r6, #0] - 80076fe: 6825 ldr r5, [r4, #0] - 8007700: f015 0506 ands.w r5, r5, #6 - 8007704: d106 bne.n 8007714 <_printf_common+0x48> - 8007706: f104 0a19 add.w sl, r4, #25 - 800770a: 68e3 ldr r3, [r4, #12] - 800770c: 6832 ldr r2, [r6, #0] - 800770e: 1a9b subs r3, r3, r2 - 8007710: 42ab cmp r3, r5 - 8007712: dc28 bgt.n 8007766 <_printf_common+0x9a> - 8007714: f894 2043 ldrb.w r2, [r4, #67] ; 0x43 - 8007718: 1e13 subs r3, r2, #0 - 800771a: 6822 ldr r2, [r4, #0] - 800771c: bf18 it ne - 800771e: 2301 movne r3, #1 - 8007720: 0692 lsls r2, r2, #26 - 8007722: d42d bmi.n 8007780 <_printf_common+0xb4> - 8007724: 4649 mov r1, r9 - 8007726: 4638 mov r0, r7 - 8007728: f104 0243 add.w r2, r4, #67 ; 0x43 - 800772c: 47c0 blx r8 - 800772e: 3001 adds r0, #1 - 8007730: d020 beq.n 8007774 <_printf_common+0xa8> - 8007732: 6823 ldr r3, [r4, #0] - 8007734: 68e5 ldr r5, [r4, #12] - 8007736: f003 0306 and.w r3, r3, #6 - 800773a: 2b04 cmp r3, #4 - 800773c: bf18 it ne - 800773e: 2500 movne r5, #0 - 8007740: 6832 ldr r2, [r6, #0] - 8007742: f04f 0600 mov.w r6, #0 - 8007746: 68a3 ldr r3, [r4, #8] - 8007748: bf08 it eq - 800774a: 1aad subeq r5, r5, r2 - 800774c: 6922 ldr r2, [r4, #16] - 800774e: bf08 it eq - 8007750: ea25 75e5 biceq.w r5, r5, r5, asr #31 - 8007754: 4293 cmp r3, r2 - 8007756: bfc4 itt gt - 8007758: 1a9b subgt r3, r3, r2 - 800775a: 18ed addgt r5, r5, r3 - 800775c: 341a adds r4, #26 - 800775e: 42b5 cmp r5, r6 - 8007760: d11a bne.n 8007798 <_printf_common+0xcc> - 8007762: 2000 movs r0, #0 - 8007764: e008 b.n 8007778 <_printf_common+0xac> - 8007766: 2301 movs r3, #1 - 8007768: 4652 mov r2, sl - 800776a: 4649 mov r1, r9 - 800776c: 4638 mov r0, r7 - 800776e: 47c0 blx r8 - 8007770: 3001 adds r0, #1 - 8007772: d103 bne.n 800777c <_printf_common+0xb0> - 8007774: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff - 8007778: e8bd 87f0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, pc} - 800777c: 3501 adds r5, #1 - 800777e: e7c4 b.n 800770a <_printf_common+0x3e> - 8007780: 2030 movs r0, #48 ; 0x30 - 8007782: 18e1 adds r1, r4, r3 - 8007784: f881 0043 strb.w r0, [r1, #67] ; 0x43 - 8007788: 1c5a adds r2, r3, #1 - 800778a: f894 1045 ldrb.w r1, [r4, #69] ; 0x45 - 800778e: 4422 add r2, r4 - 8007790: 3302 adds r3, #2 - 8007792: f882 1043 strb.w r1, [r2, #67] ; 0x43 - 8007796: e7c5 b.n 8007724 <_printf_common+0x58> - 8007798: 2301 movs r3, #1 - 800779a: 4622 mov r2, r4 - 800779c: 4649 mov r1, r9 - 800779e: 4638 mov r0, r7 - 80077a0: 47c0 blx r8 - 80077a2: 3001 adds r0, #1 - 80077a4: d0e6 beq.n 8007774 <_printf_common+0xa8> - 80077a6: 3601 adds r6, #1 - 80077a8: e7d9 b.n 800775e <_printf_common+0x92> +08007d68 <_printf_common>: + 8007d68: e92d 47f0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, lr} + 8007d6c: 4616 mov r6, r2 + 8007d6e: 4699 mov r9, r3 + 8007d70: 688a ldr r2, [r1, #8] + 8007d72: 690b ldr r3, [r1, #16] + 8007d74: 4607 mov r7, r0 + 8007d76: 4293 cmp r3, r2 + 8007d78: bfb8 it lt + 8007d7a: 4613 movlt r3, r2 + 8007d7c: 6033 str r3, [r6, #0] + 8007d7e: f891 2043 ldrb.w r2, [r1, #67] ; 0x43 + 8007d82: 460c mov r4, r1 + 8007d84: f8dd 8020 ldr.w r8, [sp, #32] + 8007d88: b10a cbz r2, 8007d8e <_printf_common+0x26> + 8007d8a: 3301 adds r3, #1 + 8007d8c: 6033 str r3, [r6, #0] + 8007d8e: 6823 ldr r3, [r4, #0] + 8007d90: 0699 lsls r1, r3, #26 + 8007d92: bf42 ittt mi + 8007d94: 6833 ldrmi r3, [r6, #0] + 8007d96: 3302 addmi r3, #2 + 8007d98: 6033 strmi r3, [r6, #0] + 8007d9a: 6825 ldr r5, [r4, #0] + 8007d9c: f015 0506 ands.w r5, r5, #6 + 8007da0: d106 bne.n 8007db0 <_printf_common+0x48> + 8007da2: f104 0a19 add.w sl, r4, #25 + 8007da6: 68e3 ldr r3, [r4, #12] + 8007da8: 6832 ldr r2, [r6, #0] + 8007daa: 1a9b subs r3, r3, r2 + 8007dac: 42ab cmp r3, r5 + 8007dae: dc28 bgt.n 8007e02 <_printf_common+0x9a> + 8007db0: f894 2043 ldrb.w r2, [r4, #67] ; 0x43 + 8007db4: 1e13 subs r3, r2, #0 + 8007db6: 6822 ldr r2, [r4, #0] + 8007db8: bf18 it ne + 8007dba: 2301 movne r3, #1 + 8007dbc: 0692 lsls r2, r2, #26 + 8007dbe: d42d bmi.n 8007e1c <_printf_common+0xb4> + 8007dc0: 4649 mov r1, r9 + 8007dc2: 4638 mov r0, r7 + 8007dc4: f104 0243 add.w r2, r4, #67 ; 0x43 + 8007dc8: 47c0 blx r8 + 8007dca: 3001 adds r0, #1 + 8007dcc: d020 beq.n 8007e10 <_printf_common+0xa8> + 8007dce: 6823 ldr r3, [r4, #0] + 8007dd0: 68e5 ldr r5, [r4, #12] + 8007dd2: f003 0306 and.w r3, r3, #6 + 8007dd6: 2b04 cmp r3, #4 + 8007dd8: bf18 it ne + 8007dda: 2500 movne r5, #0 + 8007ddc: 6832 ldr r2, [r6, #0] + 8007dde: f04f 0600 mov.w r6, #0 + 8007de2: 68a3 ldr r3, [r4, #8] + 8007de4: bf08 it eq + 8007de6: 1aad subeq r5, r5, r2 + 8007de8: 6922 ldr r2, [r4, #16] + 8007dea: bf08 it eq + 8007dec: ea25 75e5 biceq.w r5, r5, r5, asr #31 + 8007df0: 4293 cmp r3, r2 + 8007df2: bfc4 itt gt + 8007df4: 1a9b subgt r3, r3, r2 + 8007df6: 18ed addgt r5, r5, r3 + 8007df8: 341a adds r4, #26 + 8007dfa: 42b5 cmp r5, r6 + 8007dfc: d11a bne.n 8007e34 <_printf_common+0xcc> + 8007dfe: 2000 movs r0, #0 + 8007e00: e008 b.n 8007e14 <_printf_common+0xac> + 8007e02: 2301 movs r3, #1 + 8007e04: 4652 mov r2, sl + 8007e06: 4649 mov r1, r9 + 8007e08: 4638 mov r0, r7 + 8007e0a: 47c0 blx r8 + 8007e0c: 3001 adds r0, #1 + 8007e0e: d103 bne.n 8007e18 <_printf_common+0xb0> + 8007e10: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff + 8007e14: e8bd 87f0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, pc} + 8007e18: 3501 adds r5, #1 + 8007e1a: e7c4 b.n 8007da6 <_printf_common+0x3e> + 8007e1c: 2030 movs r0, #48 ; 0x30 + 8007e1e: 18e1 adds r1, r4, r3 + 8007e20: f881 0043 strb.w r0, [r1, #67] ; 0x43 + 8007e24: 1c5a adds r2, r3, #1 + 8007e26: f894 1045 ldrb.w r1, [r4, #69] ; 0x45 + 8007e2a: 4422 add r2, r4 + 8007e2c: 3302 adds r3, #2 + 8007e2e: f882 1043 strb.w r1, [r2, #67] ; 0x43 + 8007e32: e7c5 b.n 8007dc0 <_printf_common+0x58> + 8007e34: 2301 movs r3, #1 + 8007e36: 4622 mov r2, r4 + 8007e38: 4649 mov r1, r9 + 8007e3a: 4638 mov r0, r7 + 8007e3c: 47c0 blx r8 + 8007e3e: 3001 adds r0, #1 + 8007e40: d0e6 beq.n 8007e10 <_printf_common+0xa8> + 8007e42: 3601 adds r6, #1 + 8007e44: e7d9 b.n 8007dfa <_printf_common+0x92> ... -080077ac <_printf_i>: - 80077ac: e92d 47ff stmdb sp!, {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, lr} - 80077b0: 460c mov r4, r1 - 80077b2: 7e27 ldrb r7, [r4, #24] - 80077b4: 4691 mov r9, r2 - 80077b6: 2f78 cmp r7, #120 ; 0x78 - 80077b8: 4680 mov r8, r0 - 80077ba: 469a mov sl, r3 - 80077bc: 990c ldr r1, [sp, #48] ; 0x30 - 80077be: f104 0243 add.w r2, r4, #67 ; 0x43 - 80077c2: d807 bhi.n 80077d4 <_printf_i+0x28> - 80077c4: 2f62 cmp r7, #98 ; 0x62 - 80077c6: d80a bhi.n 80077de <_printf_i+0x32> - 80077c8: 2f00 cmp r7, #0 - 80077ca: f000 80d9 beq.w 8007980 <_printf_i+0x1d4> - 80077ce: 2f58 cmp r7, #88 ; 0x58 - 80077d0: f000 80a4 beq.w 800791c <_printf_i+0x170> - 80077d4: f104 0642 add.w r6, r4, #66 ; 0x42 - 80077d8: f884 7042 strb.w r7, [r4, #66] ; 0x42 - 80077dc: e03a b.n 8007854 <_printf_i+0xa8> - 80077de: f1a7 0363 sub.w r3, r7, #99 ; 0x63 - 80077e2: 2b15 cmp r3, #21 - 80077e4: d8f6 bhi.n 80077d4 <_printf_i+0x28> - 80077e6: a001 add r0, pc, #4 ; (adr r0, 80077ec <_printf_i+0x40>) - 80077e8: f850 f023 ldr.w pc, [r0, r3, lsl #2] - 80077ec: 08007845 .word 0x08007845 - 80077f0: 08007859 .word 0x08007859 - 80077f4: 080077d5 .word 0x080077d5 - 80077f8: 080077d5 .word 0x080077d5 - 80077fc: 080077d5 .word 0x080077d5 - 8007800: 080077d5 .word 0x080077d5 - 8007804: 08007859 .word 0x08007859 - 8007808: 080077d5 .word 0x080077d5 - 800780c: 080077d5 .word 0x080077d5 - 8007810: 080077d5 .word 0x080077d5 - 8007814: 080077d5 .word 0x080077d5 - 8007818: 08007967 .word 0x08007967 - 800781c: 08007889 .word 0x08007889 - 8007820: 08007949 .word 0x08007949 - 8007824: 080077d5 .word 0x080077d5 - 8007828: 080077d5 .word 0x080077d5 - 800782c: 08007989 .word 0x08007989 - 8007830: 080077d5 .word 0x080077d5 - 8007834: 08007889 .word 0x08007889 - 8007838: 080077d5 .word 0x080077d5 - 800783c: 080077d5 .word 0x080077d5 - 8007840: 08007951 .word 0x08007951 - 8007844: 680b ldr r3, [r1, #0] - 8007846: f104 0642 add.w r6, r4, #66 ; 0x42 - 800784a: 1d1a adds r2, r3, #4 - 800784c: 681b ldr r3, [r3, #0] - 800784e: 600a str r2, [r1, #0] - 8007850: f884 3042 strb.w r3, [r4, #66] ; 0x42 - 8007854: 2301 movs r3, #1 - 8007856: e0a4 b.n 80079a2 <_printf_i+0x1f6> - 8007858: 6825 ldr r5, [r4, #0] - 800785a: 6808 ldr r0, [r1, #0] - 800785c: 062e lsls r6, r5, #24 - 800785e: f100 0304 add.w r3, r0, #4 - 8007862: d50a bpl.n 800787a <_printf_i+0xce> - 8007864: 6805 ldr r5, [r0, #0] - 8007866: 600b str r3, [r1, #0] - 8007868: 2d00 cmp r5, #0 - 800786a: da03 bge.n 8007874 <_printf_i+0xc8> - 800786c: 232d movs r3, #45 ; 0x2d - 800786e: 426d negs r5, r5 - 8007870: f884 3043 strb.w r3, [r4, #67] ; 0x43 - 8007874: 230a movs r3, #10 - 8007876: 485e ldr r0, [pc, #376] ; (80079f0 <_printf_i+0x244>) - 8007878: e019 b.n 80078ae <_printf_i+0x102> - 800787a: f015 0f40 tst.w r5, #64 ; 0x40 - 800787e: 6805 ldr r5, [r0, #0] - 8007880: 600b str r3, [r1, #0] - 8007882: bf18 it ne - 8007884: b22d sxthne r5, r5 - 8007886: e7ef b.n 8007868 <_printf_i+0xbc> - 8007888: 680b ldr r3, [r1, #0] - 800788a: 6825 ldr r5, [r4, #0] - 800788c: 1d18 adds r0, r3, #4 - 800788e: 6008 str r0, [r1, #0] - 8007890: 0628 lsls r0, r5, #24 - 8007892: d501 bpl.n 8007898 <_printf_i+0xec> - 8007894: 681d ldr r5, [r3, #0] - 8007896: e002 b.n 800789e <_printf_i+0xf2> - 8007898: 0669 lsls r1, r5, #25 - 800789a: d5fb bpl.n 8007894 <_printf_i+0xe8> - 800789c: 881d ldrh r5, [r3, #0] - 800789e: 2f6f cmp r7, #111 ; 0x6f - 80078a0: bf0c ite eq - 80078a2: 2308 moveq r3, #8 - 80078a4: 230a movne r3, #10 - 80078a6: 4852 ldr r0, [pc, #328] ; (80079f0 <_printf_i+0x244>) - 80078a8: 2100 movs r1, #0 - 80078aa: f884 1043 strb.w r1, [r4, #67] ; 0x43 - 80078ae: 6866 ldr r6, [r4, #4] - 80078b0: 2e00 cmp r6, #0 - 80078b2: bfa8 it ge - 80078b4: 6821 ldrge r1, [r4, #0] - 80078b6: 60a6 str r6, [r4, #8] - 80078b8: bfa4 itt ge - 80078ba: f021 0104 bicge.w r1, r1, #4 - 80078be: 6021 strge r1, [r4, #0] - 80078c0: b90d cbnz r5, 80078c6 <_printf_i+0x11a> - 80078c2: 2e00 cmp r6, #0 - 80078c4: d04d beq.n 8007962 <_printf_i+0x1b6> - 80078c6: 4616 mov r6, r2 - 80078c8: fbb5 f1f3 udiv r1, r5, r3 - 80078cc: fb03 5711 mls r7, r3, r1, r5 - 80078d0: 5dc7 ldrb r7, [r0, r7] - 80078d2: f806 7d01 strb.w r7, [r6, #-1]! - 80078d6: 462f mov r7, r5 - 80078d8: 42bb cmp r3, r7 - 80078da: 460d mov r5, r1 - 80078dc: d9f4 bls.n 80078c8 <_printf_i+0x11c> - 80078de: 2b08 cmp r3, #8 - 80078e0: d10b bne.n 80078fa <_printf_i+0x14e> - 80078e2: 6823 ldr r3, [r4, #0] - 80078e4: 07df lsls r7, r3, #31 - 80078e6: d508 bpl.n 80078fa <_printf_i+0x14e> - 80078e8: 6923 ldr r3, [r4, #16] - 80078ea: 6861 ldr r1, [r4, #4] - 80078ec: 4299 cmp r1, r3 - 80078ee: bfde ittt le - 80078f0: 2330 movle r3, #48 ; 0x30 - 80078f2: f806 3c01 strble.w r3, [r6, #-1] - 80078f6: f106 36ff addle.w r6, r6, #4294967295 ; 0xffffffff - 80078fa: 1b92 subs r2, r2, r6 - 80078fc: 6122 str r2, [r4, #16] - 80078fe: 464b mov r3, r9 - 8007900: 4621 mov r1, r4 - 8007902: 4640 mov r0, r8 - 8007904: f8cd a000 str.w sl, [sp] - 8007908: aa03 add r2, sp, #12 - 800790a: f7ff fedf bl 80076cc <_printf_common> - 800790e: 3001 adds r0, #1 - 8007910: d14c bne.n 80079ac <_printf_i+0x200> - 8007912: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff - 8007916: b004 add sp, #16 - 8007918: e8bd 87f0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, pc} - 800791c: 4834 ldr r0, [pc, #208] ; (80079f0 <_printf_i+0x244>) - 800791e: f884 7045 strb.w r7, [r4, #69] ; 0x45 - 8007922: 680e ldr r6, [r1, #0] - 8007924: 6823 ldr r3, [r4, #0] - 8007926: f856 5b04 ldr.w r5, [r6], #4 - 800792a: 061f lsls r7, r3, #24 - 800792c: 600e str r6, [r1, #0] - 800792e: d514 bpl.n 800795a <_printf_i+0x1ae> - 8007930: 07d9 lsls r1, r3, #31 - 8007932: bf44 itt mi - 8007934: f043 0320 orrmi.w r3, r3, #32 - 8007938: 6023 strmi r3, [r4, #0] - 800793a: b91d cbnz r5, 8007944 <_printf_i+0x198> - 800793c: 6823 ldr r3, [r4, #0] - 800793e: f023 0320 bic.w r3, r3, #32 - 8007942: 6023 str r3, [r4, #0] - 8007944: 2310 movs r3, #16 - 8007946: e7af b.n 80078a8 <_printf_i+0xfc> - 8007948: 6823 ldr r3, [r4, #0] - 800794a: f043 0320 orr.w r3, r3, #32 - 800794e: 6023 str r3, [r4, #0] - 8007950: 2378 movs r3, #120 ; 0x78 - 8007952: 4828 ldr r0, [pc, #160] ; (80079f4 <_printf_i+0x248>) - 8007954: f884 3045 strb.w r3, [r4, #69] ; 0x45 - 8007958: e7e3 b.n 8007922 <_printf_i+0x176> - 800795a: 065e lsls r6, r3, #25 - 800795c: bf48 it mi - 800795e: b2ad uxthmi r5, r5 - 8007960: e7e6 b.n 8007930 <_printf_i+0x184> - 8007962: 4616 mov r6, r2 - 8007964: e7bb b.n 80078de <_printf_i+0x132> - 8007966: 680b ldr r3, [r1, #0] - 8007968: 6826 ldr r6, [r4, #0] - 800796a: 1d1d adds r5, r3, #4 - 800796c: 6960 ldr r0, [r4, #20] - 800796e: 600d str r5, [r1, #0] - 8007970: 0635 lsls r5, r6, #24 - 8007972: 681b ldr r3, [r3, #0] - 8007974: d501 bpl.n 800797a <_printf_i+0x1ce> - 8007976: 6018 str r0, [r3, #0] - 8007978: e002 b.n 8007980 <_printf_i+0x1d4> - 800797a: 0671 lsls r1, r6, #25 - 800797c: d5fb bpl.n 8007976 <_printf_i+0x1ca> - 800797e: 8018 strh r0, [r3, #0] - 8007980: 2300 movs r3, #0 - 8007982: 4616 mov r6, r2 - 8007984: 6123 str r3, [r4, #16] - 8007986: e7ba b.n 80078fe <_printf_i+0x152> - 8007988: 680b ldr r3, [r1, #0] - 800798a: 1d1a adds r2, r3, #4 - 800798c: 600a str r2, [r1, #0] - 800798e: 681e ldr r6, [r3, #0] - 8007990: 2100 movs r1, #0 - 8007992: 4630 mov r0, r6 - 8007994: 6862 ldr r2, [r4, #4] - 8007996: f000 fee1 bl 800875c - 800799a: b108 cbz r0, 80079a0 <_printf_i+0x1f4> - 800799c: 1b80 subs r0, r0, r6 - 800799e: 6060 str r0, [r4, #4] - 80079a0: 6863 ldr r3, [r4, #4] - 80079a2: 6123 str r3, [r4, #16] - 80079a4: 2300 movs r3, #0 - 80079a6: f884 3043 strb.w r3, [r4, #67] ; 0x43 - 80079aa: e7a8 b.n 80078fe <_printf_i+0x152> - 80079ac: 4632 mov r2, r6 - 80079ae: 4649 mov r1, r9 - 80079b0: 4640 mov r0, r8 - 80079b2: 6923 ldr r3, [r4, #16] - 80079b4: 47d0 blx sl - 80079b6: 3001 adds r0, #1 - 80079b8: d0ab beq.n 8007912 <_printf_i+0x166> - 80079ba: 6823 ldr r3, [r4, #0] - 80079bc: 079b lsls r3, r3, #30 - 80079be: d413 bmi.n 80079e8 <_printf_i+0x23c> - 80079c0: 68e0 ldr r0, [r4, #12] - 80079c2: 9b03 ldr r3, [sp, #12] - 80079c4: 4298 cmp r0, r3 - 80079c6: bfb8 it lt - 80079c8: 4618 movlt r0, r3 - 80079ca: e7a4 b.n 8007916 <_printf_i+0x16a> - 80079cc: 2301 movs r3, #1 - 80079ce: 4632 mov r2, r6 - 80079d0: 4649 mov r1, r9 - 80079d2: 4640 mov r0, r8 - 80079d4: 47d0 blx sl - 80079d6: 3001 adds r0, #1 - 80079d8: d09b beq.n 8007912 <_printf_i+0x166> - 80079da: 3501 adds r5, #1 - 80079dc: 68e3 ldr r3, [r4, #12] - 80079de: 9903 ldr r1, [sp, #12] - 80079e0: 1a5b subs r3, r3, r1 - 80079e2: 42ab cmp r3, r5 - 80079e4: dcf2 bgt.n 80079cc <_printf_i+0x220> - 80079e6: e7eb b.n 80079c0 <_printf_i+0x214> - 80079e8: 2500 movs r5, #0 - 80079ea: f104 0619 add.w r6, r4, #25 - 80079ee: e7f5 b.n 80079dc <_printf_i+0x230> - 80079f0: 0800a88a .word 0x0800a88a - 80079f4: 0800a89b .word 0x0800a89b +08007e48 <_printf_i>: + 8007e48: e92d 47ff stmdb sp!, {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, lr} + 8007e4c: 460c mov r4, r1 + 8007e4e: 7e27 ldrb r7, [r4, #24] + 8007e50: 4691 mov r9, r2 + 8007e52: 2f78 cmp r7, #120 ; 0x78 + 8007e54: 4680 mov r8, r0 + 8007e56: 469a mov sl, r3 + 8007e58: 990c ldr r1, [sp, #48] ; 0x30 + 8007e5a: f104 0243 add.w r2, r4, #67 ; 0x43 + 8007e5e: d807 bhi.n 8007e70 <_printf_i+0x28> + 8007e60: 2f62 cmp r7, #98 ; 0x62 + 8007e62: d80a bhi.n 8007e7a <_printf_i+0x32> + 8007e64: 2f00 cmp r7, #0 + 8007e66: f000 80d9 beq.w 800801c <_printf_i+0x1d4> + 8007e6a: 2f58 cmp r7, #88 ; 0x58 + 8007e6c: f000 80a4 beq.w 8007fb8 <_printf_i+0x170> + 8007e70: f104 0642 add.w r6, r4, #66 ; 0x42 + 8007e74: f884 7042 strb.w r7, [r4, #66] ; 0x42 + 8007e78: e03a b.n 8007ef0 <_printf_i+0xa8> + 8007e7a: f1a7 0363 sub.w r3, r7, #99 ; 0x63 + 8007e7e: 2b15 cmp r3, #21 + 8007e80: d8f6 bhi.n 8007e70 <_printf_i+0x28> + 8007e82: a001 add r0, pc, #4 ; (adr r0, 8007e88 <_printf_i+0x40>) + 8007e84: f850 f023 ldr.w pc, [r0, r3, lsl #2] + 8007e88: 08007ee1 .word 0x08007ee1 + 8007e8c: 08007ef5 .word 0x08007ef5 + 8007e90: 08007e71 .word 0x08007e71 + 8007e94: 08007e71 .word 0x08007e71 + 8007e98: 08007e71 .word 0x08007e71 + 8007e9c: 08007e71 .word 0x08007e71 + 8007ea0: 08007ef5 .word 0x08007ef5 + 8007ea4: 08007e71 .word 0x08007e71 + 8007ea8: 08007e71 .word 0x08007e71 + 8007eac: 08007e71 .word 0x08007e71 + 8007eb0: 08007e71 .word 0x08007e71 + 8007eb4: 08008003 .word 0x08008003 + 8007eb8: 08007f25 .word 0x08007f25 + 8007ebc: 08007fe5 .word 0x08007fe5 + 8007ec0: 08007e71 .word 0x08007e71 + 8007ec4: 08007e71 .word 0x08007e71 + 8007ec8: 08008025 .word 0x08008025 + 8007ecc: 08007e71 .word 0x08007e71 + 8007ed0: 08007f25 .word 0x08007f25 + 8007ed4: 08007e71 .word 0x08007e71 + 8007ed8: 08007e71 .word 0x08007e71 + 8007edc: 08007fed .word 0x08007fed + 8007ee0: 680b ldr r3, [r1, #0] + 8007ee2: f104 0642 add.w r6, r4, #66 ; 0x42 + 8007ee6: 1d1a adds r2, r3, #4 + 8007ee8: 681b ldr r3, [r3, #0] + 8007eea: 600a str r2, [r1, #0] + 8007eec: f884 3042 strb.w r3, [r4, #66] ; 0x42 + 8007ef0: 2301 movs r3, #1 + 8007ef2: e0a4 b.n 800803e <_printf_i+0x1f6> + 8007ef4: 6825 ldr r5, [r4, #0] + 8007ef6: 6808 ldr r0, [r1, #0] + 8007ef8: 062e lsls r6, r5, #24 + 8007efa: f100 0304 add.w r3, r0, #4 + 8007efe: d50a bpl.n 8007f16 <_printf_i+0xce> + 8007f00: 6805 ldr r5, [r0, #0] + 8007f02: 600b str r3, [r1, #0] + 8007f04: 2d00 cmp r5, #0 + 8007f06: da03 bge.n 8007f10 <_printf_i+0xc8> + 8007f08: 232d movs r3, #45 ; 0x2d + 8007f0a: 426d negs r5, r5 + 8007f0c: f884 3043 strb.w r3, [r4, #67] ; 0x43 + 8007f10: 230a movs r3, #10 + 8007f12: 485e ldr r0, [pc, #376] ; (800808c <_printf_i+0x244>) + 8007f14: e019 b.n 8007f4a <_printf_i+0x102> + 8007f16: f015 0f40 tst.w r5, #64 ; 0x40 + 8007f1a: 6805 ldr r5, [r0, #0] + 8007f1c: 600b str r3, [r1, #0] + 8007f1e: bf18 it ne + 8007f20: b22d sxthne r5, r5 + 8007f22: e7ef b.n 8007f04 <_printf_i+0xbc> + 8007f24: 680b ldr r3, [r1, #0] + 8007f26: 6825 ldr r5, [r4, #0] + 8007f28: 1d18 adds r0, r3, #4 + 8007f2a: 6008 str r0, [r1, #0] + 8007f2c: 0628 lsls r0, r5, #24 + 8007f2e: d501 bpl.n 8007f34 <_printf_i+0xec> + 8007f30: 681d ldr r5, [r3, #0] + 8007f32: e002 b.n 8007f3a <_printf_i+0xf2> + 8007f34: 0669 lsls r1, r5, #25 + 8007f36: d5fb bpl.n 8007f30 <_printf_i+0xe8> + 8007f38: 881d ldrh r5, [r3, #0] + 8007f3a: 2f6f cmp r7, #111 ; 0x6f + 8007f3c: bf0c ite eq + 8007f3e: 2308 moveq r3, #8 + 8007f40: 230a movne r3, #10 + 8007f42: 4852 ldr r0, [pc, #328] ; (800808c <_printf_i+0x244>) + 8007f44: 2100 movs r1, #0 + 8007f46: f884 1043 strb.w r1, [r4, #67] ; 0x43 + 8007f4a: 6866 ldr r6, [r4, #4] + 8007f4c: 2e00 cmp r6, #0 + 8007f4e: bfa8 it ge + 8007f50: 6821 ldrge r1, [r4, #0] + 8007f52: 60a6 str r6, [r4, #8] + 8007f54: bfa4 itt ge + 8007f56: f021 0104 bicge.w r1, r1, #4 + 8007f5a: 6021 strge r1, [r4, #0] + 8007f5c: b90d cbnz r5, 8007f62 <_printf_i+0x11a> + 8007f5e: 2e00 cmp r6, #0 + 8007f60: d04d beq.n 8007ffe <_printf_i+0x1b6> + 8007f62: 4616 mov r6, r2 + 8007f64: fbb5 f1f3 udiv r1, r5, r3 + 8007f68: fb03 5711 mls r7, r3, r1, r5 + 8007f6c: 5dc7 ldrb r7, [r0, r7] + 8007f6e: f806 7d01 strb.w r7, [r6, #-1]! + 8007f72: 462f mov r7, r5 + 8007f74: 42bb cmp r3, r7 + 8007f76: 460d mov r5, r1 + 8007f78: d9f4 bls.n 8007f64 <_printf_i+0x11c> + 8007f7a: 2b08 cmp r3, #8 + 8007f7c: d10b bne.n 8007f96 <_printf_i+0x14e> + 8007f7e: 6823 ldr r3, [r4, #0] + 8007f80: 07df lsls r7, r3, #31 + 8007f82: d508 bpl.n 8007f96 <_printf_i+0x14e> + 8007f84: 6923 ldr r3, [r4, #16] + 8007f86: 6861 ldr r1, [r4, #4] + 8007f88: 4299 cmp r1, r3 + 8007f8a: bfde ittt le + 8007f8c: 2330 movle r3, #48 ; 0x30 + 8007f8e: f806 3c01 strble.w r3, [r6, #-1] + 8007f92: f106 36ff addle.w r6, r6, #4294967295 ; 0xffffffff + 8007f96: 1b92 subs r2, r2, r6 + 8007f98: 6122 str r2, [r4, #16] + 8007f9a: 464b mov r3, r9 + 8007f9c: 4621 mov r1, r4 + 8007f9e: 4640 mov r0, r8 + 8007fa0: f8cd a000 str.w sl, [sp] + 8007fa4: aa03 add r2, sp, #12 + 8007fa6: f7ff fedf bl 8007d68 <_printf_common> + 8007faa: 3001 adds r0, #1 + 8007fac: d14c bne.n 8008048 <_printf_i+0x200> + 8007fae: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff + 8007fb2: b004 add sp, #16 + 8007fb4: e8bd 87f0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, pc} + 8007fb8: 4834 ldr r0, [pc, #208] ; (800808c <_printf_i+0x244>) + 8007fba: f884 7045 strb.w r7, [r4, #69] ; 0x45 + 8007fbe: 680e ldr r6, [r1, #0] + 8007fc0: 6823 ldr r3, [r4, #0] + 8007fc2: f856 5b04 ldr.w r5, [r6], #4 + 8007fc6: 061f lsls r7, r3, #24 + 8007fc8: 600e str r6, [r1, #0] + 8007fca: d514 bpl.n 8007ff6 <_printf_i+0x1ae> + 8007fcc: 07d9 lsls r1, r3, #31 + 8007fce: bf44 itt mi + 8007fd0: f043 0320 orrmi.w r3, r3, #32 + 8007fd4: 6023 strmi r3, [r4, #0] + 8007fd6: b91d cbnz r5, 8007fe0 <_printf_i+0x198> + 8007fd8: 6823 ldr r3, [r4, #0] + 8007fda: f023 0320 bic.w r3, r3, #32 + 8007fde: 6023 str r3, [r4, #0] + 8007fe0: 2310 movs r3, #16 + 8007fe2: e7af b.n 8007f44 <_printf_i+0xfc> + 8007fe4: 6823 ldr r3, [r4, #0] + 8007fe6: f043 0320 orr.w r3, r3, #32 + 8007fea: 6023 str r3, [r4, #0] + 8007fec: 2378 movs r3, #120 ; 0x78 + 8007fee: 4828 ldr r0, [pc, #160] ; (8008090 <_printf_i+0x248>) + 8007ff0: f884 3045 strb.w r3, [r4, #69] ; 0x45 + 8007ff4: e7e3 b.n 8007fbe <_printf_i+0x176> + 8007ff6: 065e lsls r6, r3, #25 + 8007ff8: bf48 it mi + 8007ffa: b2ad uxthmi r5, r5 + 8007ffc: e7e6 b.n 8007fcc <_printf_i+0x184> + 8007ffe: 4616 mov r6, r2 + 8008000: e7bb b.n 8007f7a <_printf_i+0x132> + 8008002: 680b ldr r3, [r1, #0] + 8008004: 6826 ldr r6, [r4, #0] + 8008006: 1d1d adds r5, r3, #4 + 8008008: 6960 ldr r0, [r4, #20] + 800800a: 600d str r5, [r1, #0] + 800800c: 0635 lsls r5, r6, #24 + 800800e: 681b ldr r3, [r3, #0] + 8008010: d501 bpl.n 8008016 <_printf_i+0x1ce> + 8008012: 6018 str r0, [r3, #0] + 8008014: e002 b.n 800801c <_printf_i+0x1d4> + 8008016: 0671 lsls r1, r6, #25 + 8008018: d5fb bpl.n 8008012 <_printf_i+0x1ca> + 800801a: 8018 strh r0, [r3, #0] + 800801c: 2300 movs r3, #0 + 800801e: 4616 mov r6, r2 + 8008020: 6123 str r3, [r4, #16] + 8008022: e7ba b.n 8007f9a <_printf_i+0x152> + 8008024: 680b ldr r3, [r1, #0] + 8008026: 1d1a adds r2, r3, #4 + 8008028: 600a str r2, [r1, #0] + 800802a: 681e ldr r6, [r3, #0] + 800802c: 2100 movs r1, #0 + 800802e: 4630 mov r0, r6 + 8008030: 6862 ldr r2, [r4, #4] + 8008032: f000 fedf bl 8008df4 + 8008036: b108 cbz r0, 800803c <_printf_i+0x1f4> + 8008038: 1b80 subs r0, r0, r6 + 800803a: 6060 str r0, [r4, #4] + 800803c: 6863 ldr r3, [r4, #4] + 800803e: 6123 str r3, [r4, #16] + 8008040: 2300 movs r3, #0 + 8008042: f884 3043 strb.w r3, [r4, #67] ; 0x43 + 8008046: e7a8 b.n 8007f9a <_printf_i+0x152> + 8008048: 4632 mov r2, r6 + 800804a: 4649 mov r1, r9 + 800804c: 4640 mov r0, r8 + 800804e: 6923 ldr r3, [r4, #16] + 8008050: 47d0 blx sl + 8008052: 3001 adds r0, #1 + 8008054: d0ab beq.n 8007fae <_printf_i+0x166> + 8008056: 6823 ldr r3, [r4, #0] + 8008058: 079b lsls r3, r3, #30 + 800805a: d413 bmi.n 8008084 <_printf_i+0x23c> + 800805c: 68e0 ldr r0, [r4, #12] + 800805e: 9b03 ldr r3, [sp, #12] + 8008060: 4298 cmp r0, r3 + 8008062: bfb8 it lt + 8008064: 4618 movlt r0, r3 + 8008066: e7a4 b.n 8007fb2 <_printf_i+0x16a> + 8008068: 2301 movs r3, #1 + 800806a: 4632 mov r2, r6 + 800806c: 4649 mov r1, r9 + 800806e: 4640 mov r0, r8 + 8008070: 47d0 blx sl + 8008072: 3001 adds r0, #1 + 8008074: d09b beq.n 8007fae <_printf_i+0x166> + 8008076: 3501 adds r5, #1 + 8008078: 68e3 ldr r3, [r4, #12] + 800807a: 9903 ldr r1, [sp, #12] + 800807c: 1a5b subs r3, r3, r1 + 800807e: 42ab cmp r3, r5 + 8008080: dcf2 bgt.n 8008068 <_printf_i+0x220> + 8008082: e7eb b.n 800805c <_printf_i+0x214> + 8008084: 2500 movs r5, #0 + 8008086: f104 0619 add.w r6, r4, #25 + 800808a: e7f5 b.n 8008078 <_printf_i+0x230> + 800808c: 0800af5a .word 0x0800af5a + 8008090: 0800af6b .word 0x0800af6b -080079f8 <_sbrk_r>: - 80079f8: b538 push {r3, r4, r5, lr} - 80079fa: 2300 movs r3, #0 - 80079fc: 4d05 ldr r5, [pc, #20] ; (8007a14 <_sbrk_r+0x1c>) - 80079fe: 4604 mov r4, r0 - 8007a00: 4608 mov r0, r1 - 8007a02: 602b str r3, [r5, #0] - 8007a04: f7f9 ffd6 bl 80019b4 <_sbrk> - 8007a08: 1c43 adds r3, r0, #1 - 8007a0a: d102 bne.n 8007a12 <_sbrk_r+0x1a> - 8007a0c: 682b ldr r3, [r5, #0] - 8007a0e: b103 cbz r3, 8007a12 <_sbrk_r+0x1a> - 8007a10: 6023 str r3, [r4, #0] - 8007a12: bd38 pop {r3, r4, r5, pc} - 8007a14: 200024ec .word 0x200024ec +08008094 <_sbrk_r>: + 8008094: b538 push {r3, r4, r5, lr} + 8008096: 2300 movs r3, #0 + 8008098: 4d05 ldr r5, [pc, #20] ; (80080b0 <_sbrk_r+0x1c>) + 800809a: 4604 mov r4, r0 + 800809c: 4608 mov r0, r1 + 800809e: 602b str r3, [r5, #0] + 80080a0: f7f9 fc88 bl 80019b4 <_sbrk> + 80080a4: 1c43 adds r3, r0, #1 + 80080a6: d102 bne.n 80080ae <_sbrk_r+0x1a> + 80080a8: 682b ldr r3, [r5, #0] + 80080aa: b103 cbz r3, 80080ae <_sbrk_r+0x1a> + 80080ac: 6023 str r3, [r4, #0] + 80080ae: bd38 pop {r3, r4, r5, pc} + 80080b0: 20002534 .word 0x20002534 -08007a18 : - 8007a18: b40e push {r1, r2, r3} - 8007a1a: f06f 4100 mvn.w r1, #2147483648 ; 0x80000000 - 8007a1e: b500 push {lr} - 8007a20: b09c sub sp, #112 ; 0x70 - 8007a22: ab1d add r3, sp, #116 ; 0x74 - 8007a24: 9002 str r0, [sp, #8] - 8007a26: 9006 str r0, [sp, #24] - 8007a28: 9107 str r1, [sp, #28] - 8007a2a: 9104 str r1, [sp, #16] - 8007a2c: 4808 ldr r0, [pc, #32] ; (8007a50 ) - 8007a2e: 4909 ldr r1, [pc, #36] ; (8007a54 ) - 8007a30: f853 2b04 ldr.w r2, [r3], #4 - 8007a34: 9105 str r1, [sp, #20] - 8007a36: 6800 ldr r0, [r0, #0] - 8007a38: a902 add r1, sp, #8 - 8007a3a: 9301 str r3, [sp, #4] - 8007a3c: f001 faa2 bl 8008f84 <_svfiprintf_r> - 8007a40: 2200 movs r2, #0 - 8007a42: 9b02 ldr r3, [sp, #8] - 8007a44: 701a strb r2, [r3, #0] - 8007a46: b01c add sp, #112 ; 0x70 - 8007a48: f85d eb04 ldr.w lr, [sp], #4 - 8007a4c: b003 add sp, #12 - 8007a4e: 4770 bx lr - 8007a50: 2000000c .word 0x2000000c - 8007a54: ffff0208 .word 0xffff0208 +080080b4 : + 80080b4: b40e push {r1, r2, r3} + 80080b6: f06f 4100 mvn.w r1, #2147483648 ; 0x80000000 + 80080ba: b500 push {lr} + 80080bc: b09c sub sp, #112 ; 0x70 + 80080be: ab1d add r3, sp, #116 ; 0x74 + 80080c0: 9002 str r0, [sp, #8] + 80080c2: 9006 str r0, [sp, #24] + 80080c4: 9107 str r1, [sp, #28] + 80080c6: 9104 str r1, [sp, #16] + 80080c8: 4808 ldr r0, [pc, #32] ; (80080ec ) + 80080ca: 4909 ldr r1, [pc, #36] ; (80080f0 ) + 80080cc: f853 2b04 ldr.w r2, [r3], #4 + 80080d0: 9105 str r1, [sp, #20] + 80080d2: 6800 ldr r0, [r0, #0] + 80080d4: a902 add r1, sp, #8 + 80080d6: 9301 str r3, [sp, #4] + 80080d8: f001 faa0 bl 800961c <_svfiprintf_r> + 80080dc: 2200 movs r2, #0 + 80080de: 9b02 ldr r3, [sp, #8] + 80080e0: 701a strb r2, [r3, #0] + 80080e2: b01c add sp, #112 ; 0x70 + 80080e4: f85d eb04 ldr.w lr, [sp], #4 + 80080e8: b003 add sp, #12 + 80080ea: 4770 bx lr + 80080ec: 20000014 .word 0x20000014 + 80080f0: ffff0208 .word 0xffff0208 -08007a58 : - 8007a58: e92d 4ff7 stmdb sp!, {r0, r1, r2, r4, r5, r6, r7, r8, r9, sl, fp, lr} - 8007a5c: 6903 ldr r3, [r0, #16] - 8007a5e: 690c ldr r4, [r1, #16] - 8007a60: 4607 mov r7, r0 - 8007a62: 42a3 cmp r3, r4 - 8007a64: f2c0 8083 blt.w 8007b6e - 8007a68: 3c01 subs r4, #1 - 8007a6a: f100 0514 add.w r5, r0, #20 - 8007a6e: f101 0814 add.w r8, r1, #20 - 8007a72: eb05 0384 add.w r3, r5, r4, lsl #2 - 8007a76: 9301 str r3, [sp, #4] - 8007a78: f858 3024 ldr.w r3, [r8, r4, lsl #2] - 8007a7c: f855 2024 ldr.w r2, [r5, r4, lsl #2] - 8007a80: 3301 adds r3, #1 - 8007a82: 429a cmp r2, r3 - 8007a84: fbb2 f6f3 udiv r6, r2, r3 - 8007a88: ea4f 0b84 mov.w fp, r4, lsl #2 - 8007a8c: eb08 0984 add.w r9, r8, r4, lsl #2 - 8007a90: d332 bcc.n 8007af8 - 8007a92: f04f 0e00 mov.w lr, #0 - 8007a96: 4640 mov r0, r8 - 8007a98: 46ac mov ip, r5 - 8007a9a: 46f2 mov sl, lr - 8007a9c: f850 2b04 ldr.w r2, [r0], #4 - 8007aa0: b293 uxth r3, r2 - 8007aa2: fb06 e303 mla r3, r6, r3, lr - 8007aa6: 0c12 lsrs r2, r2, #16 - 8007aa8: ea4f 4e13 mov.w lr, r3, lsr #16 - 8007aac: fb06 e202 mla r2, r6, r2, lr - 8007ab0: b29b uxth r3, r3 - 8007ab2: ebaa 0303 sub.w r3, sl, r3 - 8007ab6: f8dc a000 ldr.w sl, [ip] - 8007aba: ea4f 4e12 mov.w lr, r2, lsr #16 - 8007abe: fa1f fa8a uxth.w sl, sl - 8007ac2: 4453 add r3, sl - 8007ac4: fa1f fa82 uxth.w sl, r2 - 8007ac8: f8dc 2000 ldr.w r2, [ip] - 8007acc: 4581 cmp r9, r0 - 8007ace: ebca 4212 rsb r2, sl, r2, lsr #16 - 8007ad2: eb02 4223 add.w r2, r2, r3, asr #16 - 8007ad6: b29b uxth r3, r3 - 8007ad8: ea43 4302 orr.w r3, r3, r2, lsl #16 - 8007adc: ea4f 4a22 mov.w sl, r2, asr #16 - 8007ae0: f84c 3b04 str.w r3, [ip], #4 - 8007ae4: d2da bcs.n 8007a9c - 8007ae6: f855 300b ldr.w r3, [r5, fp] - 8007aea: b92b cbnz r3, 8007af8 - 8007aec: 9b01 ldr r3, [sp, #4] - 8007aee: 3b04 subs r3, #4 - 8007af0: 429d cmp r5, r3 - 8007af2: 461a mov r2, r3 - 8007af4: d32f bcc.n 8007b56 - 8007af6: 613c str r4, [r7, #16] - 8007af8: 4638 mov r0, r7 - 8007afa: f001 f8d1 bl 8008ca0 <__mcmp> - 8007afe: 2800 cmp r0, #0 - 8007b00: db25 blt.n 8007b4e - 8007b02: 4628 mov r0, r5 - 8007b04: f04f 0c00 mov.w ip, #0 - 8007b08: 3601 adds r6, #1 - 8007b0a: f858 1b04 ldr.w r1, [r8], #4 - 8007b0e: f8d0 e000 ldr.w lr, [r0] - 8007b12: b28b uxth r3, r1 - 8007b14: ebac 0303 sub.w r3, ip, r3 - 8007b18: fa1f f28e uxth.w r2, lr - 8007b1c: 4413 add r3, r2 - 8007b1e: 0c0a lsrs r2, r1, #16 - 8007b20: ebc2 421e rsb r2, r2, lr, lsr #16 - 8007b24: eb02 4223 add.w r2, r2, r3, asr #16 - 8007b28: b29b uxth r3, r3 - 8007b2a: ea43 4302 orr.w r3, r3, r2, lsl #16 - 8007b2e: 45c1 cmp r9, r8 - 8007b30: ea4f 4c22 mov.w ip, r2, asr #16 - 8007b34: f840 3b04 str.w r3, [r0], #4 - 8007b38: d2e7 bcs.n 8007b0a - 8007b3a: f855 2024 ldr.w r2, [r5, r4, lsl #2] - 8007b3e: eb05 0384 add.w r3, r5, r4, lsl #2 - 8007b42: b922 cbnz r2, 8007b4e - 8007b44: 3b04 subs r3, #4 - 8007b46: 429d cmp r5, r3 - 8007b48: 461a mov r2, r3 - 8007b4a: d30a bcc.n 8007b62 - 8007b4c: 613c str r4, [r7, #16] - 8007b4e: 4630 mov r0, r6 - 8007b50: b003 add sp, #12 - 8007b52: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc} - 8007b56: 6812 ldr r2, [r2, #0] - 8007b58: 3b04 subs r3, #4 - 8007b5a: 2a00 cmp r2, #0 - 8007b5c: d1cb bne.n 8007af6 - 8007b5e: 3c01 subs r4, #1 - 8007b60: e7c6 b.n 8007af0 - 8007b62: 6812 ldr r2, [r2, #0] - 8007b64: 3b04 subs r3, #4 - 8007b66: 2a00 cmp r2, #0 - 8007b68: d1f0 bne.n 8007b4c - 8007b6a: 3c01 subs r4, #1 - 8007b6c: e7eb b.n 8007b46 - 8007b6e: 2000 movs r0, #0 - 8007b70: e7ee b.n 8007b50 - 8007b72: 0000 movs r0, r0 - 8007b74: 0000 movs r0, r0 +080080f4 : + 80080f4: e92d 4ff7 stmdb sp!, {r0, r1, r2, r4, r5, r6, r7, r8, r9, sl, fp, lr} + 80080f8: 6903 ldr r3, [r0, #16] + 80080fa: 690c ldr r4, [r1, #16] + 80080fc: 4607 mov r7, r0 + 80080fe: 42a3 cmp r3, r4 + 8008100: f2c0 8083 blt.w 800820a + 8008104: 3c01 subs r4, #1 + 8008106: f100 0514 add.w r5, r0, #20 + 800810a: f101 0814 add.w r8, r1, #20 + 800810e: eb05 0384 add.w r3, r5, r4, lsl #2 + 8008112: 9301 str r3, [sp, #4] + 8008114: f858 3024 ldr.w r3, [r8, r4, lsl #2] + 8008118: f855 2024 ldr.w r2, [r5, r4, lsl #2] + 800811c: 3301 adds r3, #1 + 800811e: 429a cmp r2, r3 + 8008120: fbb2 f6f3 udiv r6, r2, r3 + 8008124: ea4f 0b84 mov.w fp, r4, lsl #2 + 8008128: eb08 0984 add.w r9, r8, r4, lsl #2 + 800812c: d332 bcc.n 8008194 + 800812e: f04f 0e00 mov.w lr, #0 + 8008132: 4640 mov r0, r8 + 8008134: 46ac mov ip, r5 + 8008136: 46f2 mov sl, lr + 8008138: f850 2b04 ldr.w r2, [r0], #4 + 800813c: b293 uxth r3, r2 + 800813e: fb06 e303 mla r3, r6, r3, lr + 8008142: 0c12 lsrs r2, r2, #16 + 8008144: ea4f 4e13 mov.w lr, r3, lsr #16 + 8008148: fb06 e202 mla r2, r6, r2, lr + 800814c: b29b uxth r3, r3 + 800814e: ebaa 0303 sub.w r3, sl, r3 + 8008152: f8dc a000 ldr.w sl, [ip] + 8008156: ea4f 4e12 mov.w lr, r2, lsr #16 + 800815a: fa1f fa8a uxth.w sl, sl + 800815e: 4453 add r3, sl + 8008160: fa1f fa82 uxth.w sl, r2 + 8008164: f8dc 2000 ldr.w r2, [ip] + 8008168: 4581 cmp r9, r0 + 800816a: ebca 4212 rsb r2, sl, r2, lsr #16 + 800816e: eb02 4223 add.w r2, r2, r3, asr #16 + 8008172: b29b uxth r3, r3 + 8008174: ea43 4302 orr.w r3, r3, r2, lsl #16 + 8008178: ea4f 4a22 mov.w sl, r2, asr #16 + 800817c: f84c 3b04 str.w r3, [ip], #4 + 8008180: d2da bcs.n 8008138 + 8008182: f855 300b ldr.w r3, [r5, fp] + 8008186: b92b cbnz r3, 8008194 + 8008188: 9b01 ldr r3, [sp, #4] + 800818a: 3b04 subs r3, #4 + 800818c: 429d cmp r5, r3 + 800818e: 461a mov r2, r3 + 8008190: d32f bcc.n 80081f2 + 8008192: 613c str r4, [r7, #16] + 8008194: 4638 mov r0, r7 + 8008196: f001 f8cf bl 8009338 <__mcmp> + 800819a: 2800 cmp r0, #0 + 800819c: db25 blt.n 80081ea + 800819e: 4628 mov r0, r5 + 80081a0: f04f 0c00 mov.w ip, #0 + 80081a4: 3601 adds r6, #1 + 80081a6: f858 1b04 ldr.w r1, [r8], #4 + 80081aa: f8d0 e000 ldr.w lr, [r0] + 80081ae: b28b uxth r3, r1 + 80081b0: ebac 0303 sub.w r3, ip, r3 + 80081b4: fa1f f28e uxth.w r2, lr + 80081b8: 4413 add r3, r2 + 80081ba: 0c0a lsrs r2, r1, #16 + 80081bc: ebc2 421e rsb r2, r2, lr, lsr #16 + 80081c0: eb02 4223 add.w r2, r2, r3, asr #16 + 80081c4: b29b uxth r3, r3 + 80081c6: ea43 4302 orr.w r3, r3, r2, lsl #16 + 80081ca: 45c1 cmp r9, r8 + 80081cc: ea4f 4c22 mov.w ip, r2, asr #16 + 80081d0: f840 3b04 str.w r3, [r0], #4 + 80081d4: d2e7 bcs.n 80081a6 + 80081d6: f855 2024 ldr.w r2, [r5, r4, lsl #2] + 80081da: eb05 0384 add.w r3, r5, r4, lsl #2 + 80081de: b922 cbnz r2, 80081ea + 80081e0: 3b04 subs r3, #4 + 80081e2: 429d cmp r5, r3 + 80081e4: 461a mov r2, r3 + 80081e6: d30a bcc.n 80081fe + 80081e8: 613c str r4, [r7, #16] + 80081ea: 4630 mov r0, r6 + 80081ec: b003 add sp, #12 + 80081ee: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc} + 80081f2: 6812 ldr r2, [r2, #0] + 80081f4: 3b04 subs r3, #4 + 80081f6: 2a00 cmp r2, #0 + 80081f8: d1cb bne.n 8008192 + 80081fa: 3c01 subs r4, #1 + 80081fc: e7c6 b.n 800818c + 80081fe: 6812 ldr r2, [r2, #0] + 8008200: 3b04 subs r3, #4 + 8008202: 2a00 cmp r2, #0 + 8008204: d1f0 bne.n 80081e8 + 8008206: 3c01 subs r4, #1 + 8008208: e7eb b.n 80081e2 + 800820a: 2000 movs r0, #0 + 800820c: e7ee b.n 80081ec ... -08007b78 <_dtoa_r>: - 8007b78: e92d 4ff0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} - 8007b7c: 4616 mov r6, r2 - 8007b7e: 461f mov r7, r3 - 8007b80: 6a44 ldr r4, [r0, #36] ; 0x24 - 8007b82: b099 sub sp, #100 ; 0x64 - 8007b84: 4605 mov r5, r0 - 8007b86: e9cd 6704 strd r6, r7, [sp, #16] - 8007b8a: f8dd 8094 ldr.w r8, [sp, #148] ; 0x94 - 8007b8e: b974 cbnz r4, 8007bae <_dtoa_r+0x36> - 8007b90: 2010 movs r0, #16 - 8007b92: f7ff fa13 bl 8006fbc - 8007b96: 4602 mov r2, r0 - 8007b98: 6268 str r0, [r5, #36] ; 0x24 - 8007b9a: b920 cbnz r0, 8007ba6 <_dtoa_r+0x2e> - 8007b9c: 21ea movs r1, #234 ; 0xea - 8007b9e: 4bae ldr r3, [pc, #696] ; (8007e58 <_dtoa_r+0x2e0>) - 8007ba0: 48ae ldr r0, [pc, #696] ; (8007e5c <_dtoa_r+0x2e4>) - 8007ba2: f001 faef bl 8009184 <__assert_func> - 8007ba6: e9c0 4401 strd r4, r4, [r0, #4] - 8007baa: 6004 str r4, [r0, #0] - 8007bac: 60c4 str r4, [r0, #12] - 8007bae: 6a6b ldr r3, [r5, #36] ; 0x24 - 8007bb0: 6819 ldr r1, [r3, #0] - 8007bb2: b151 cbz r1, 8007bca <_dtoa_r+0x52> - 8007bb4: 685a ldr r2, [r3, #4] - 8007bb6: 2301 movs r3, #1 - 8007bb8: 4093 lsls r3, r2 - 8007bba: 604a str r2, [r1, #4] - 8007bbc: 608b str r3, [r1, #8] - 8007bbe: 4628 mov r0, r5 - 8007bc0: f000 fe34 bl 800882c <_Bfree> - 8007bc4: 2200 movs r2, #0 - 8007bc6: 6a6b ldr r3, [r5, #36] ; 0x24 - 8007bc8: 601a str r2, [r3, #0] - 8007bca: 1e3b subs r3, r7, #0 - 8007bcc: bfaf iteee ge - 8007bce: 2300 movge r3, #0 - 8007bd0: 2201 movlt r2, #1 - 8007bd2: f023 4300 biclt.w r3, r3, #2147483648 ; 0x80000000 - 8007bd6: 9305 strlt r3, [sp, #20] - 8007bd8: bfa8 it ge - 8007bda: f8c8 3000 strge.w r3, [r8] - 8007bde: f8dd 9014 ldr.w r9, [sp, #20] - 8007be2: 4b9f ldr r3, [pc, #636] ; (8007e60 <_dtoa_r+0x2e8>) - 8007be4: bfb8 it lt - 8007be6: f8c8 2000 strlt.w r2, [r8] - 8007bea: ea33 0309 bics.w r3, r3, r9 - 8007bee: d119 bne.n 8007c24 <_dtoa_r+0xac> - 8007bf0: f242 730f movw r3, #9999 ; 0x270f - 8007bf4: 9a24 ldr r2, [sp, #144] ; 0x90 - 8007bf6: 6013 str r3, [r2, #0] - 8007bf8: f3c9 0313 ubfx r3, r9, #0, #20 - 8007bfc: 4333 orrs r3, r6 - 8007bfe: f000 8580 beq.w 8008702 <_dtoa_r+0xb8a> - 8007c02: 9b26 ldr r3, [sp, #152] ; 0x98 - 8007c04: b953 cbnz r3, 8007c1c <_dtoa_r+0xa4> - 8007c06: 4b97 ldr r3, [pc, #604] ; (8007e64 <_dtoa_r+0x2ec>) - 8007c08: e022 b.n 8007c50 <_dtoa_r+0xd8> - 8007c0a: 4b97 ldr r3, [pc, #604] ; (8007e68 <_dtoa_r+0x2f0>) - 8007c0c: 9308 str r3, [sp, #32] - 8007c0e: 3308 adds r3, #8 - 8007c10: 9a26 ldr r2, [sp, #152] ; 0x98 - 8007c12: 6013 str r3, [r2, #0] - 8007c14: 9808 ldr r0, [sp, #32] - 8007c16: b019 add sp, #100 ; 0x64 - 8007c18: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc} - 8007c1c: 4b91 ldr r3, [pc, #580] ; (8007e64 <_dtoa_r+0x2ec>) - 8007c1e: 9308 str r3, [sp, #32] - 8007c20: 3303 adds r3, #3 - 8007c22: e7f5 b.n 8007c10 <_dtoa_r+0x98> - 8007c24: e9dd 3404 ldrd r3, r4, [sp, #16] - 8007c28: e9cd 340c strd r3, r4, [sp, #48] ; 0x30 - 8007c2c: e9dd 010c ldrd r0, r1, [sp, #48] ; 0x30 - 8007c30: 2200 movs r2, #0 - 8007c32: 2300 movs r3, #0 - 8007c34: f7f8 ff24 bl 8000a80 <__aeabi_dcmpeq> - 8007c38: 4680 mov r8, r0 - 8007c3a: b158 cbz r0, 8007c54 <_dtoa_r+0xdc> - 8007c3c: 2301 movs r3, #1 - 8007c3e: 9a24 ldr r2, [sp, #144] ; 0x90 - 8007c40: 6013 str r3, [r2, #0] - 8007c42: 9b26 ldr r3, [sp, #152] ; 0x98 - 8007c44: 2b00 cmp r3, #0 - 8007c46: f000 8559 beq.w 80086fc <_dtoa_r+0xb84> - 8007c4a: 4888 ldr r0, [pc, #544] ; (8007e6c <_dtoa_r+0x2f4>) - 8007c4c: 6018 str r0, [r3, #0] - 8007c4e: 1e43 subs r3, r0, #1 - 8007c50: 9308 str r3, [sp, #32] - 8007c52: e7df b.n 8007c14 <_dtoa_r+0x9c> - 8007c54: ab16 add r3, sp, #88 ; 0x58 - 8007c56: 9301 str r3, [sp, #4] - 8007c58: ab17 add r3, sp, #92 ; 0x5c - 8007c5a: 9300 str r3, [sp, #0] - 8007c5c: 4628 mov r0, r5 - 8007c5e: e9dd 230c ldrd r2, r3, [sp, #48] ; 0x30 - 8007c62: f001 f8c9 bl 8008df8 <__d2b> - 8007c66: f3c9 540a ubfx r4, r9, #20, #11 - 8007c6a: 4682 mov sl, r0 - 8007c6c: 2c00 cmp r4, #0 - 8007c6e: d07e beq.n 8007d6e <_dtoa_r+0x1f6> - 8007c70: e9dd 010c ldrd r0, r1, [sp, #48] ; 0x30 - 8007c74: 9b0d ldr r3, [sp, #52] ; 0x34 - 8007c76: f2a4 34ff subw r4, r4, #1023 ; 0x3ff - 8007c7a: f3c3 0313 ubfx r3, r3, #0, #20 - 8007c7e: f043 517f orr.w r1, r3, #1069547520 ; 0x3fc00000 - 8007c82: f441 1140 orr.w r1, r1, #3145728 ; 0x300000 - 8007c86: f8cd 804c str.w r8, [sp, #76] ; 0x4c - 8007c8a: 2200 movs r2, #0 - 8007c8c: 4b78 ldr r3, [pc, #480] ; (8007e70 <_dtoa_r+0x2f8>) - 8007c8e: f7f8 fad7 bl 8000240 <__aeabi_dsub> - 8007c92: a36b add r3, pc, #428 ; (adr r3, 8007e40 <_dtoa_r+0x2c8>) - 8007c94: e9d3 2300 ldrd r2, r3, [r3] - 8007c98: f7f8 fc8a bl 80005b0 <__aeabi_dmul> - 8007c9c: a36a add r3, pc, #424 ; (adr r3, 8007e48 <_dtoa_r+0x2d0>) - 8007c9e: e9d3 2300 ldrd r2, r3, [r3] - 8007ca2: f7f8 facf bl 8000244 <__adddf3> - 8007ca6: 4606 mov r6, r0 - 8007ca8: 4620 mov r0, r4 - 8007caa: 460f mov r7, r1 - 8007cac: f7f8 fc16 bl 80004dc <__aeabi_i2d> - 8007cb0: a367 add r3, pc, #412 ; (adr r3, 8007e50 <_dtoa_r+0x2d8>) - 8007cb2: e9d3 2300 ldrd r2, r3, [r3] - 8007cb6: f7f8 fc7b bl 80005b0 <__aeabi_dmul> - 8007cba: 4602 mov r2, r0 - 8007cbc: 460b mov r3, r1 - 8007cbe: 4630 mov r0, r6 - 8007cc0: 4639 mov r1, r7 - 8007cc2: f7f8 fabf bl 8000244 <__adddf3> - 8007cc6: 4606 mov r6, r0 - 8007cc8: 460f mov r7, r1 - 8007cca: f7f8 ff21 bl 8000b10 <__aeabi_d2iz> - 8007cce: 2200 movs r2, #0 - 8007cd0: 4681 mov r9, r0 - 8007cd2: 2300 movs r3, #0 - 8007cd4: 4630 mov r0, r6 - 8007cd6: 4639 mov r1, r7 - 8007cd8: f7f8 fedc bl 8000a94 <__aeabi_dcmplt> - 8007cdc: b148 cbz r0, 8007cf2 <_dtoa_r+0x17a> - 8007cde: 4648 mov r0, r9 - 8007ce0: f7f8 fbfc bl 80004dc <__aeabi_i2d> - 8007ce4: 4632 mov r2, r6 - 8007ce6: 463b mov r3, r7 - 8007ce8: f7f8 feca bl 8000a80 <__aeabi_dcmpeq> - 8007cec: b908 cbnz r0, 8007cf2 <_dtoa_r+0x17a> - 8007cee: f109 39ff add.w r9, r9, #4294967295 ; 0xffffffff - 8007cf2: f1b9 0f16 cmp.w r9, #22 - 8007cf6: d857 bhi.n 8007da8 <_dtoa_r+0x230> - 8007cf8: e9dd 010c ldrd r0, r1, [sp, #48] ; 0x30 - 8007cfc: 4b5d ldr r3, [pc, #372] ; (8007e74 <_dtoa_r+0x2fc>) - 8007cfe: eb03 03c9 add.w r3, r3, r9, lsl #3 - 8007d02: e9d3 2300 ldrd r2, r3, [r3] - 8007d06: f7f8 fec5 bl 8000a94 <__aeabi_dcmplt> - 8007d0a: 2800 cmp r0, #0 - 8007d0c: d04e beq.n 8007dac <_dtoa_r+0x234> - 8007d0e: 2300 movs r3, #0 - 8007d10: f109 39ff add.w r9, r9, #4294967295 ; 0xffffffff - 8007d14: 930f str r3, [sp, #60] ; 0x3c - 8007d16: 9b16 ldr r3, [sp, #88] ; 0x58 - 8007d18: 1b1c subs r4, r3, r4 - 8007d1a: 1e63 subs r3, r4, #1 - 8007d1c: 9309 str r3, [sp, #36] ; 0x24 - 8007d1e: bf49 itett mi - 8007d20: f1c4 0301 rsbmi r3, r4, #1 - 8007d24: 2300 movpl r3, #0 - 8007d26: 9306 strmi r3, [sp, #24] - 8007d28: 2300 movmi r3, #0 - 8007d2a: bf54 ite pl - 8007d2c: 9306 strpl r3, [sp, #24] - 8007d2e: 9309 strmi r3, [sp, #36] ; 0x24 - 8007d30: f1b9 0f00 cmp.w r9, #0 - 8007d34: db3c blt.n 8007db0 <_dtoa_r+0x238> - 8007d36: 9b09 ldr r3, [sp, #36] ; 0x24 - 8007d38: f8cd 9038 str.w r9, [sp, #56] ; 0x38 - 8007d3c: 444b add r3, r9 - 8007d3e: 9309 str r3, [sp, #36] ; 0x24 - 8007d40: 2300 movs r3, #0 - 8007d42: 930a str r3, [sp, #40] ; 0x28 - 8007d44: 9b22 ldr r3, [sp, #136] ; 0x88 - 8007d46: 2b09 cmp r3, #9 - 8007d48: d86c bhi.n 8007e24 <_dtoa_r+0x2ac> - 8007d4a: 2b05 cmp r3, #5 - 8007d4c: bfc4 itt gt - 8007d4e: 3b04 subgt r3, #4 - 8007d50: 9322 strgt r3, [sp, #136] ; 0x88 - 8007d52: 9b22 ldr r3, [sp, #136] ; 0x88 - 8007d54: bfc8 it gt - 8007d56: 2400 movgt r4, #0 - 8007d58: f1a3 0302 sub.w r3, r3, #2 - 8007d5c: bfd8 it le - 8007d5e: 2401 movle r4, #1 - 8007d60: 2b03 cmp r3, #3 - 8007d62: f200 808b bhi.w 8007e7c <_dtoa_r+0x304> - 8007d66: e8df f003 tbb [pc, r3] - 8007d6a: 4f2d .short 0x4f2d - 8007d6c: 5b4d .short 0x5b4d - 8007d6e: e9dd 4316 ldrd r4, r3, [sp, #88] ; 0x58 - 8007d72: 441c add r4, r3 - 8007d74: f204 4332 addw r3, r4, #1074 ; 0x432 - 8007d78: 2b20 cmp r3, #32 - 8007d7a: bfc3 ittte gt - 8007d7c: f1c3 0340 rsbgt r3, r3, #64 ; 0x40 - 8007d80: f204 4012 addwgt r0, r4, #1042 ; 0x412 - 8007d84: fa09 f303 lslgt.w r3, r9, r3 - 8007d88: f1c3 0320 rsble r3, r3, #32 - 8007d8c: bfc6 itte gt - 8007d8e: fa26 f000 lsrgt.w r0, r6, r0 - 8007d92: 4318 orrgt r0, r3 - 8007d94: fa06 f003 lslle.w r0, r6, r3 - 8007d98: f7f8 fb90 bl 80004bc <__aeabi_ui2d> - 8007d9c: 2301 movs r3, #1 - 8007d9e: f1a1 71f8 sub.w r1, r1, #32505856 ; 0x1f00000 - 8007da2: 3c01 subs r4, #1 - 8007da4: 9313 str r3, [sp, #76] ; 0x4c - 8007da6: e770 b.n 8007c8a <_dtoa_r+0x112> - 8007da8: 2301 movs r3, #1 - 8007daa: e7b3 b.n 8007d14 <_dtoa_r+0x19c> - 8007dac: 900f str r0, [sp, #60] ; 0x3c - 8007dae: e7b2 b.n 8007d16 <_dtoa_r+0x19e> - 8007db0: 9b06 ldr r3, [sp, #24] - 8007db2: eba3 0309 sub.w r3, r3, r9 - 8007db6: 9306 str r3, [sp, #24] - 8007db8: f1c9 0300 rsb r3, r9, #0 - 8007dbc: 930a str r3, [sp, #40] ; 0x28 - 8007dbe: 2300 movs r3, #0 - 8007dc0: 930e str r3, [sp, #56] ; 0x38 - 8007dc2: e7bf b.n 8007d44 <_dtoa_r+0x1cc> - 8007dc4: 2300 movs r3, #0 - 8007dc6: 930b str r3, [sp, #44] ; 0x2c - 8007dc8: 9b23 ldr r3, [sp, #140] ; 0x8c - 8007dca: 2b00 cmp r3, #0 - 8007dcc: dc59 bgt.n 8007e82 <_dtoa_r+0x30a> - 8007dce: f04f 0b01 mov.w fp, #1 - 8007dd2: 465b mov r3, fp - 8007dd4: f8cd b008 str.w fp, [sp, #8] - 8007dd8: f8cd b08c str.w fp, [sp, #140] ; 0x8c - 8007ddc: 2200 movs r2, #0 - 8007dde: 6a68 ldr r0, [r5, #36] ; 0x24 - 8007de0: 6042 str r2, [r0, #4] - 8007de2: 2204 movs r2, #4 - 8007de4: f102 0614 add.w r6, r2, #20 - 8007de8: 429e cmp r6, r3 - 8007dea: 6841 ldr r1, [r0, #4] - 8007dec: d94f bls.n 8007e8e <_dtoa_r+0x316> - 8007dee: 4628 mov r0, r5 - 8007df0: f000 fcdc bl 80087ac <_Balloc> - 8007df4: 9008 str r0, [sp, #32] - 8007df6: 2800 cmp r0, #0 - 8007df8: d14d bne.n 8007e96 <_dtoa_r+0x31e> - 8007dfa: 4602 mov r2, r0 - 8007dfc: f44f 71d5 mov.w r1, #426 ; 0x1aa - 8007e00: 4b1d ldr r3, [pc, #116] ; (8007e78 <_dtoa_r+0x300>) - 8007e02: e6cd b.n 8007ba0 <_dtoa_r+0x28> - 8007e04: 2301 movs r3, #1 - 8007e06: e7de b.n 8007dc6 <_dtoa_r+0x24e> - 8007e08: 2300 movs r3, #0 - 8007e0a: 930b str r3, [sp, #44] ; 0x2c - 8007e0c: 9b23 ldr r3, [sp, #140] ; 0x8c - 8007e0e: eb09 0b03 add.w fp, r9, r3 - 8007e12: f10b 0301 add.w r3, fp, #1 - 8007e16: 2b01 cmp r3, #1 - 8007e18: 9302 str r3, [sp, #8] - 8007e1a: bfb8 it lt - 8007e1c: 2301 movlt r3, #1 - 8007e1e: e7dd b.n 8007ddc <_dtoa_r+0x264> - 8007e20: 2301 movs r3, #1 - 8007e22: e7f2 b.n 8007e0a <_dtoa_r+0x292> - 8007e24: 2401 movs r4, #1 - 8007e26: 2300 movs r3, #0 - 8007e28: 940b str r4, [sp, #44] ; 0x2c - 8007e2a: 9322 str r3, [sp, #136] ; 0x88 - 8007e2c: f04f 3bff mov.w fp, #4294967295 ; 0xffffffff - 8007e30: 2200 movs r2, #0 - 8007e32: 2312 movs r3, #18 - 8007e34: f8cd b008 str.w fp, [sp, #8] - 8007e38: 9223 str r2, [sp, #140] ; 0x8c - 8007e3a: e7cf b.n 8007ddc <_dtoa_r+0x264> - 8007e3c: f3af 8000 nop.w - 8007e40: 636f4361 .word 0x636f4361 - 8007e44: 3fd287a7 .word 0x3fd287a7 - 8007e48: 8b60c8b3 .word 0x8b60c8b3 - 8007e4c: 3fc68a28 .word 0x3fc68a28 - 8007e50: 509f79fb .word 0x509f79fb - 8007e54: 3fd34413 .word 0x3fd34413 - 8007e58: 0800a8b9 .word 0x0800a8b9 - 8007e5c: 0800a8d0 .word 0x0800a8d0 - 8007e60: 7ff00000 .word 0x7ff00000 - 8007e64: 0800a8b5 .word 0x0800a8b5 - 8007e68: 0800a8ac .word 0x0800a8ac - 8007e6c: 0800a889 .word 0x0800a889 - 8007e70: 3ff80000 .word 0x3ff80000 - 8007e74: 0800a9c8 .word 0x0800a9c8 - 8007e78: 0800a92f .word 0x0800a92f - 8007e7c: 2301 movs r3, #1 - 8007e7e: 930b str r3, [sp, #44] ; 0x2c - 8007e80: e7d4 b.n 8007e2c <_dtoa_r+0x2b4> - 8007e82: f8dd b08c ldr.w fp, [sp, #140] ; 0x8c - 8007e86: 465b mov r3, fp - 8007e88: f8cd b008 str.w fp, [sp, #8] - 8007e8c: e7a6 b.n 8007ddc <_dtoa_r+0x264> - 8007e8e: 3101 adds r1, #1 - 8007e90: 6041 str r1, [r0, #4] - 8007e92: 0052 lsls r2, r2, #1 - 8007e94: e7a6 b.n 8007de4 <_dtoa_r+0x26c> - 8007e96: 6a6b ldr r3, [r5, #36] ; 0x24 - 8007e98: 9a08 ldr r2, [sp, #32] - 8007e9a: 601a str r2, [r3, #0] - 8007e9c: 9b02 ldr r3, [sp, #8] - 8007e9e: 2b0e cmp r3, #14 - 8007ea0: f200 80a8 bhi.w 8007ff4 <_dtoa_r+0x47c> - 8007ea4: 2c00 cmp r4, #0 - 8007ea6: f000 80a5 beq.w 8007ff4 <_dtoa_r+0x47c> - 8007eaa: f1b9 0f00 cmp.w r9, #0 - 8007eae: dd34 ble.n 8007f1a <_dtoa_r+0x3a2> - 8007eb0: 4a9a ldr r2, [pc, #616] ; (800811c <_dtoa_r+0x5a4>) - 8007eb2: f009 030f and.w r3, r9, #15 - 8007eb6: eb02 03c3 add.w r3, r2, r3, lsl #3 - 8007eba: f419 7f80 tst.w r9, #256 ; 0x100 - 8007ebe: e9d3 3400 ldrd r3, r4, [r3] - 8007ec2: e9cd 3410 strd r3, r4, [sp, #64] ; 0x40 - 8007ec6: ea4f 1429 mov.w r4, r9, asr #4 - 8007eca: d016 beq.n 8007efa <_dtoa_r+0x382> - 8007ecc: e9dd 010c ldrd r0, r1, [sp, #48] ; 0x30 - 8007ed0: 4b93 ldr r3, [pc, #588] ; (8008120 <_dtoa_r+0x5a8>) - 8007ed2: 2703 movs r7, #3 - 8007ed4: e9d3 2308 ldrd r2, r3, [r3, #32] - 8007ed8: f7f8 fc94 bl 8000804 <__aeabi_ddiv> - 8007edc: e9cd 0104 strd r0, r1, [sp, #16] - 8007ee0: f004 040f and.w r4, r4, #15 - 8007ee4: 4e8e ldr r6, [pc, #568] ; (8008120 <_dtoa_r+0x5a8>) - 8007ee6: b954 cbnz r4, 8007efe <_dtoa_r+0x386> - 8007ee8: e9dd 2310 ldrd r2, r3, [sp, #64] ; 0x40 - 8007eec: e9dd 0104 ldrd r0, r1, [sp, #16] - 8007ef0: f7f8 fc88 bl 8000804 <__aeabi_ddiv> - 8007ef4: e9cd 0104 strd r0, r1, [sp, #16] - 8007ef8: e029 b.n 8007f4e <_dtoa_r+0x3d6> - 8007efa: 2702 movs r7, #2 - 8007efc: e7f2 b.n 8007ee4 <_dtoa_r+0x36c> - 8007efe: 07e1 lsls r1, r4, #31 - 8007f00: d508 bpl.n 8007f14 <_dtoa_r+0x39c> - 8007f02: e9dd 0110 ldrd r0, r1, [sp, #64] ; 0x40 - 8007f06: e9d6 2300 ldrd r2, r3, [r6] - 8007f0a: f7f8 fb51 bl 80005b0 <__aeabi_dmul> - 8007f0e: e9cd 0110 strd r0, r1, [sp, #64] ; 0x40 - 8007f12: 3701 adds r7, #1 - 8007f14: 1064 asrs r4, r4, #1 - 8007f16: 3608 adds r6, #8 - 8007f18: e7e5 b.n 8007ee6 <_dtoa_r+0x36e> - 8007f1a: f000 80a5 beq.w 8008068 <_dtoa_r+0x4f0> - 8007f1e: e9dd 010c ldrd r0, r1, [sp, #48] ; 0x30 - 8007f22: f1c9 0400 rsb r4, r9, #0 - 8007f26: 4b7d ldr r3, [pc, #500] ; (800811c <_dtoa_r+0x5a4>) - 8007f28: f004 020f and.w r2, r4, #15 - 8007f2c: eb03 03c2 add.w r3, r3, r2, lsl #3 - 8007f30: e9d3 2300 ldrd r2, r3, [r3] - 8007f34: f7f8 fb3c bl 80005b0 <__aeabi_dmul> - 8007f38: 2702 movs r7, #2 - 8007f3a: 2300 movs r3, #0 - 8007f3c: e9cd 0104 strd r0, r1, [sp, #16] - 8007f40: 4e77 ldr r6, [pc, #476] ; (8008120 <_dtoa_r+0x5a8>) - 8007f42: 1124 asrs r4, r4, #4 - 8007f44: 2c00 cmp r4, #0 - 8007f46: f040 8084 bne.w 8008052 <_dtoa_r+0x4da> - 8007f4a: 2b00 cmp r3, #0 - 8007f4c: d1d2 bne.n 8007ef4 <_dtoa_r+0x37c> - 8007f4e: 9b0f ldr r3, [sp, #60] ; 0x3c - 8007f50: 2b00 cmp r3, #0 - 8007f52: f000 808b beq.w 800806c <_dtoa_r+0x4f4> - 8007f56: e9dd 3404 ldrd r3, r4, [sp, #16] - 8007f5a: e9cd 3410 strd r3, r4, [sp, #64] ; 0x40 - 8007f5e: e9dd 0110 ldrd r0, r1, [sp, #64] ; 0x40 - 8007f62: 2200 movs r2, #0 - 8007f64: 4b6f ldr r3, [pc, #444] ; (8008124 <_dtoa_r+0x5ac>) - 8007f66: f7f8 fd95 bl 8000a94 <__aeabi_dcmplt> - 8007f6a: 2800 cmp r0, #0 - 8007f6c: d07e beq.n 800806c <_dtoa_r+0x4f4> - 8007f6e: 9b02 ldr r3, [sp, #8] - 8007f70: 2b00 cmp r3, #0 - 8007f72: d07b beq.n 800806c <_dtoa_r+0x4f4> - 8007f74: f1bb 0f00 cmp.w fp, #0 - 8007f78: dd38 ble.n 8007fec <_dtoa_r+0x474> - 8007f7a: e9dd 0110 ldrd r0, r1, [sp, #64] ; 0x40 - 8007f7e: 2200 movs r2, #0 - 8007f80: 4b69 ldr r3, [pc, #420] ; (8008128 <_dtoa_r+0x5b0>) - 8007f82: f7f8 fb15 bl 80005b0 <__aeabi_dmul> - 8007f86: 465c mov r4, fp - 8007f88: e9cd 0104 strd r0, r1, [sp, #16] - 8007f8c: f109 38ff add.w r8, r9, #4294967295 ; 0xffffffff - 8007f90: 3701 adds r7, #1 - 8007f92: 4638 mov r0, r7 - 8007f94: f7f8 faa2 bl 80004dc <__aeabi_i2d> - 8007f98: e9dd 2304 ldrd r2, r3, [sp, #16] - 8007f9c: f7f8 fb08 bl 80005b0 <__aeabi_dmul> - 8007fa0: 2200 movs r2, #0 - 8007fa2: 4b62 ldr r3, [pc, #392] ; (800812c <_dtoa_r+0x5b4>) - 8007fa4: f7f8 f94e bl 8000244 <__adddf3> - 8007fa8: f1a1 7650 sub.w r6, r1, #54525952 ; 0x3400000 - 8007fac: e9cd 0110 strd r0, r1, [sp, #64] ; 0x40 - 8007fb0: 9611 str r6, [sp, #68] ; 0x44 - 8007fb2: 2c00 cmp r4, #0 - 8007fb4: d15d bne.n 8008072 <_dtoa_r+0x4fa> - 8007fb6: e9dd 0104 ldrd r0, r1, [sp, #16] - 8007fba: 2200 movs r2, #0 - 8007fbc: 4b5c ldr r3, [pc, #368] ; (8008130 <_dtoa_r+0x5b8>) - 8007fbe: f7f8 f93f bl 8000240 <__aeabi_dsub> - 8007fc2: 4602 mov r2, r0 - 8007fc4: 460b mov r3, r1 - 8007fc6: e9cd 2304 strd r2, r3, [sp, #16] - 8007fca: 4633 mov r3, r6 - 8007fcc: 9a10 ldr r2, [sp, #64] ; 0x40 - 8007fce: f7f8 fd7f bl 8000ad0 <__aeabi_dcmpgt> - 8007fd2: 2800 cmp r0, #0 - 8007fd4: f040 829e bne.w 8008514 <_dtoa_r+0x99c> - 8007fd8: e9dd 0104 ldrd r0, r1, [sp, #16] - 8007fdc: 9a10 ldr r2, [sp, #64] ; 0x40 - 8007fde: f106 4300 add.w r3, r6, #2147483648 ; 0x80000000 - 8007fe2: f7f8 fd57 bl 8000a94 <__aeabi_dcmplt> - 8007fe6: 2800 cmp r0, #0 - 8007fe8: f040 8292 bne.w 8008510 <_dtoa_r+0x998> - 8007fec: e9dd 340c ldrd r3, r4, [sp, #48] ; 0x30 - 8007ff0: e9cd 3404 strd r3, r4, [sp, #16] - 8007ff4: 9b17 ldr r3, [sp, #92] ; 0x5c - 8007ff6: 2b00 cmp r3, #0 - 8007ff8: f2c0 8153 blt.w 80082a2 <_dtoa_r+0x72a> - 8007ffc: f1b9 0f0e cmp.w r9, #14 - 8008000: f300 814f bgt.w 80082a2 <_dtoa_r+0x72a> - 8008004: 4b45 ldr r3, [pc, #276] ; (800811c <_dtoa_r+0x5a4>) - 8008006: eb03 03c9 add.w r3, r3, r9, lsl #3 - 800800a: e9d3 3400 ldrd r3, r4, [r3] - 800800e: e9cd 3406 strd r3, r4, [sp, #24] - 8008012: 9b23 ldr r3, [sp, #140] ; 0x8c - 8008014: 2b00 cmp r3, #0 - 8008016: f280 80db bge.w 80081d0 <_dtoa_r+0x658> - 800801a: 9b02 ldr r3, [sp, #8] - 800801c: 2b00 cmp r3, #0 - 800801e: f300 80d7 bgt.w 80081d0 <_dtoa_r+0x658> - 8008022: f040 8274 bne.w 800850e <_dtoa_r+0x996> - 8008026: e9dd 0106 ldrd r0, r1, [sp, #24] - 800802a: 2200 movs r2, #0 - 800802c: 4b40 ldr r3, [pc, #256] ; (8008130 <_dtoa_r+0x5b8>) - 800802e: f7f8 fabf bl 80005b0 <__aeabi_dmul> - 8008032: e9dd 2304 ldrd r2, r3, [sp, #16] - 8008036: f7f8 fd41 bl 8000abc <__aeabi_dcmpge> - 800803a: 9c02 ldr r4, [sp, #8] - 800803c: 4626 mov r6, r4 - 800803e: 2800 cmp r0, #0 - 8008040: f040 824a bne.w 80084d8 <_dtoa_r+0x960> - 8008044: 2331 movs r3, #49 ; 0x31 - 8008046: 9f08 ldr r7, [sp, #32] - 8008048: f109 0901 add.w r9, r9, #1 - 800804c: f807 3b01 strb.w r3, [r7], #1 - 8008050: e246 b.n 80084e0 <_dtoa_r+0x968> - 8008052: 07e2 lsls r2, r4, #31 - 8008054: d505 bpl.n 8008062 <_dtoa_r+0x4ea> - 8008056: e9d6 2300 ldrd r2, r3, [r6] - 800805a: f7f8 faa9 bl 80005b0 <__aeabi_dmul> - 800805e: 2301 movs r3, #1 - 8008060: 3701 adds r7, #1 - 8008062: 1064 asrs r4, r4, #1 - 8008064: 3608 adds r6, #8 - 8008066: e76d b.n 8007f44 <_dtoa_r+0x3cc> - 8008068: 2702 movs r7, #2 - 800806a: e770 b.n 8007f4e <_dtoa_r+0x3d6> - 800806c: 46c8 mov r8, r9 - 800806e: 9c02 ldr r4, [sp, #8] - 8008070: e78f b.n 8007f92 <_dtoa_r+0x41a> - 8008072: 9908 ldr r1, [sp, #32] - 8008074: 4b29 ldr r3, [pc, #164] ; (800811c <_dtoa_r+0x5a4>) - 8008076: 4421 add r1, r4 - 8008078: 9112 str r1, [sp, #72] ; 0x48 - 800807a: 990b ldr r1, [sp, #44] ; 0x2c - 800807c: eb03 03c4 add.w r3, r3, r4, lsl #3 - 8008080: e9dd 6710 ldrd r6, r7, [sp, #64] ; 0x40 - 8008084: e953 2302 ldrd r2, r3, [r3, #-8] - 8008088: 2900 cmp r1, #0 - 800808a: d055 beq.n 8008138 <_dtoa_r+0x5c0> - 800808c: 2000 movs r0, #0 - 800808e: 4929 ldr r1, [pc, #164] ; (8008134 <_dtoa_r+0x5bc>) - 8008090: f7f8 fbb8 bl 8000804 <__aeabi_ddiv> - 8008094: 463b mov r3, r7 - 8008096: 4632 mov r2, r6 - 8008098: f7f8 f8d2 bl 8000240 <__aeabi_dsub> - 800809c: e9cd 0110 strd r0, r1, [sp, #64] ; 0x40 - 80080a0: 9f08 ldr r7, [sp, #32] - 80080a2: e9dd 0104 ldrd r0, r1, [sp, #16] - 80080a6: f7f8 fd33 bl 8000b10 <__aeabi_d2iz> - 80080aa: 4604 mov r4, r0 - 80080ac: f7f8 fa16 bl 80004dc <__aeabi_i2d> - 80080b0: 4602 mov r2, r0 - 80080b2: 460b mov r3, r1 - 80080b4: e9dd 0104 ldrd r0, r1, [sp, #16] - 80080b8: f7f8 f8c2 bl 8000240 <__aeabi_dsub> - 80080bc: 4602 mov r2, r0 - 80080be: 460b mov r3, r1 - 80080c0: 3430 adds r4, #48 ; 0x30 - 80080c2: e9cd 2304 strd r2, r3, [sp, #16] - 80080c6: e9dd 2310 ldrd r2, r3, [sp, #64] ; 0x40 - 80080ca: f807 4b01 strb.w r4, [r7], #1 - 80080ce: f7f8 fce1 bl 8000a94 <__aeabi_dcmplt> - 80080d2: 2800 cmp r0, #0 - 80080d4: d174 bne.n 80081c0 <_dtoa_r+0x648> - 80080d6: e9dd 2304 ldrd r2, r3, [sp, #16] - 80080da: 2000 movs r0, #0 - 80080dc: 4911 ldr r1, [pc, #68] ; (8008124 <_dtoa_r+0x5ac>) - 80080de: f7f8 f8af bl 8000240 <__aeabi_dsub> - 80080e2: e9dd 2310 ldrd r2, r3, [sp, #64] ; 0x40 - 80080e6: f7f8 fcd5 bl 8000a94 <__aeabi_dcmplt> - 80080ea: 2800 cmp r0, #0 - 80080ec: f040 80b6 bne.w 800825c <_dtoa_r+0x6e4> - 80080f0: 9b12 ldr r3, [sp, #72] ; 0x48 - 80080f2: 429f cmp r7, r3 - 80080f4: f43f af7a beq.w 8007fec <_dtoa_r+0x474> - 80080f8: e9dd 0110 ldrd r0, r1, [sp, #64] ; 0x40 - 80080fc: 2200 movs r2, #0 - 80080fe: 4b0a ldr r3, [pc, #40] ; (8008128 <_dtoa_r+0x5b0>) - 8008100: f7f8 fa56 bl 80005b0 <__aeabi_dmul> - 8008104: 2200 movs r2, #0 - 8008106: e9cd 0110 strd r0, r1, [sp, #64] ; 0x40 - 800810a: e9dd 0104 ldrd r0, r1, [sp, #16] - 800810e: 4b06 ldr r3, [pc, #24] ; (8008128 <_dtoa_r+0x5b0>) - 8008110: f7f8 fa4e bl 80005b0 <__aeabi_dmul> - 8008114: e9cd 0104 strd r0, r1, [sp, #16] - 8008118: e7c3 b.n 80080a2 <_dtoa_r+0x52a> - 800811a: bf00 nop - 800811c: 0800a9c8 .word 0x0800a9c8 - 8008120: 0800a9a0 .word 0x0800a9a0 - 8008124: 3ff00000 .word 0x3ff00000 - 8008128: 40240000 .word 0x40240000 - 800812c: 401c0000 .word 0x401c0000 - 8008130: 40140000 .word 0x40140000 - 8008134: 3fe00000 .word 0x3fe00000 - 8008138: 4630 mov r0, r6 - 800813a: 4639 mov r1, r7 - 800813c: f7f8 fa38 bl 80005b0 <__aeabi_dmul> - 8008140: 9b12 ldr r3, [sp, #72] ; 0x48 - 8008142: e9cd 0110 strd r0, r1, [sp, #64] ; 0x40 - 8008146: 9c08 ldr r4, [sp, #32] - 8008148: 9314 str r3, [sp, #80] ; 0x50 - 800814a: e9dd 0104 ldrd r0, r1, [sp, #16] - 800814e: f7f8 fcdf bl 8000b10 <__aeabi_d2iz> - 8008152: 9015 str r0, [sp, #84] ; 0x54 - 8008154: f7f8 f9c2 bl 80004dc <__aeabi_i2d> - 8008158: 4602 mov r2, r0 - 800815a: 460b mov r3, r1 - 800815c: e9dd 0104 ldrd r0, r1, [sp, #16] - 8008160: f7f8 f86e bl 8000240 <__aeabi_dsub> - 8008164: 9b15 ldr r3, [sp, #84] ; 0x54 - 8008166: 4606 mov r6, r0 - 8008168: 3330 adds r3, #48 ; 0x30 - 800816a: f804 3b01 strb.w r3, [r4], #1 - 800816e: 9b12 ldr r3, [sp, #72] ; 0x48 - 8008170: 460f mov r7, r1 - 8008172: 429c cmp r4, r3 - 8008174: f04f 0200 mov.w r2, #0 - 8008178: d124 bne.n 80081c4 <_dtoa_r+0x64c> - 800817a: e9dd 0110 ldrd r0, r1, [sp, #64] ; 0x40 - 800817e: 4bb3 ldr r3, [pc, #716] ; (800844c <_dtoa_r+0x8d4>) - 8008180: f7f8 f860 bl 8000244 <__adddf3> - 8008184: 4602 mov r2, r0 - 8008186: 460b mov r3, r1 - 8008188: 4630 mov r0, r6 - 800818a: 4639 mov r1, r7 - 800818c: f7f8 fca0 bl 8000ad0 <__aeabi_dcmpgt> - 8008190: 2800 cmp r0, #0 - 8008192: d162 bne.n 800825a <_dtoa_r+0x6e2> - 8008194: e9dd 2310 ldrd r2, r3, [sp, #64] ; 0x40 - 8008198: 2000 movs r0, #0 - 800819a: 49ac ldr r1, [pc, #688] ; (800844c <_dtoa_r+0x8d4>) - 800819c: f7f8 f850 bl 8000240 <__aeabi_dsub> - 80081a0: 4602 mov r2, r0 - 80081a2: 460b mov r3, r1 - 80081a4: 4630 mov r0, r6 - 80081a6: 4639 mov r1, r7 - 80081a8: f7f8 fc74 bl 8000a94 <__aeabi_dcmplt> - 80081ac: 2800 cmp r0, #0 - 80081ae: f43f af1d beq.w 8007fec <_dtoa_r+0x474> - 80081b2: 9f14 ldr r7, [sp, #80] ; 0x50 - 80081b4: 1e7b subs r3, r7, #1 - 80081b6: 9314 str r3, [sp, #80] ; 0x50 - 80081b8: f817 3c01 ldrb.w r3, [r7, #-1] - 80081bc: 2b30 cmp r3, #48 ; 0x30 - 80081be: d0f8 beq.n 80081b2 <_dtoa_r+0x63a> - 80081c0: 46c1 mov r9, r8 - 80081c2: e03a b.n 800823a <_dtoa_r+0x6c2> - 80081c4: 4ba2 ldr r3, [pc, #648] ; (8008450 <_dtoa_r+0x8d8>) - 80081c6: f7f8 f9f3 bl 80005b0 <__aeabi_dmul> - 80081ca: e9cd 0104 strd r0, r1, [sp, #16] - 80081ce: e7bc b.n 800814a <_dtoa_r+0x5d2> - 80081d0: 9f08 ldr r7, [sp, #32] - 80081d2: e9dd 2306 ldrd r2, r3, [sp, #24] - 80081d6: e9dd 0104 ldrd r0, r1, [sp, #16] - 80081da: f7f8 fb13 bl 8000804 <__aeabi_ddiv> - 80081de: f7f8 fc97 bl 8000b10 <__aeabi_d2iz> - 80081e2: 4604 mov r4, r0 - 80081e4: f7f8 f97a bl 80004dc <__aeabi_i2d> - 80081e8: e9dd 2306 ldrd r2, r3, [sp, #24] - 80081ec: f7f8 f9e0 bl 80005b0 <__aeabi_dmul> - 80081f0: f104 0630 add.w r6, r4, #48 ; 0x30 - 80081f4: 460b mov r3, r1 - 80081f6: 4602 mov r2, r0 - 80081f8: e9dd 0104 ldrd r0, r1, [sp, #16] - 80081fc: f7f8 f820 bl 8000240 <__aeabi_dsub> - 8008200: f807 6b01 strb.w r6, [r7], #1 - 8008204: 9e08 ldr r6, [sp, #32] - 8008206: 9b02 ldr r3, [sp, #8] - 8008208: 1bbe subs r6, r7, r6 - 800820a: 42b3 cmp r3, r6 - 800820c: d13a bne.n 8008284 <_dtoa_r+0x70c> - 800820e: 4602 mov r2, r0 - 8008210: 460b mov r3, r1 - 8008212: f7f8 f817 bl 8000244 <__adddf3> - 8008216: 4602 mov r2, r0 - 8008218: 460b mov r3, r1 - 800821a: e9cd 2302 strd r2, r3, [sp, #8] - 800821e: e9dd 2306 ldrd r2, r3, [sp, #24] - 8008222: f7f8 fc55 bl 8000ad0 <__aeabi_dcmpgt> - 8008226: bb58 cbnz r0, 8008280 <_dtoa_r+0x708> - 8008228: e9dd 2306 ldrd r2, r3, [sp, #24] - 800822c: e9dd 0102 ldrd r0, r1, [sp, #8] - 8008230: f7f8 fc26 bl 8000a80 <__aeabi_dcmpeq> - 8008234: b108 cbz r0, 800823a <_dtoa_r+0x6c2> - 8008236: 07e1 lsls r1, r4, #31 - 8008238: d422 bmi.n 8008280 <_dtoa_r+0x708> - 800823a: 4628 mov r0, r5 - 800823c: 4651 mov r1, sl - 800823e: f000 faf5 bl 800882c <_Bfree> - 8008242: 2300 movs r3, #0 - 8008244: 703b strb r3, [r7, #0] - 8008246: 9b24 ldr r3, [sp, #144] ; 0x90 - 8008248: f109 0001 add.w r0, r9, #1 - 800824c: 6018 str r0, [r3, #0] - 800824e: 9b26 ldr r3, [sp, #152] ; 0x98 - 8008250: 2b00 cmp r3, #0 - 8008252: f43f acdf beq.w 8007c14 <_dtoa_r+0x9c> - 8008256: 601f str r7, [r3, #0] - 8008258: e4dc b.n 8007c14 <_dtoa_r+0x9c> - 800825a: 4627 mov r7, r4 - 800825c: 463b mov r3, r7 - 800825e: 461f mov r7, r3 - 8008260: f813 2d01 ldrb.w r2, [r3, #-1]! - 8008264: 2a39 cmp r2, #57 ; 0x39 - 8008266: d107 bne.n 8008278 <_dtoa_r+0x700> - 8008268: 9a08 ldr r2, [sp, #32] - 800826a: 429a cmp r2, r3 - 800826c: d1f7 bne.n 800825e <_dtoa_r+0x6e6> - 800826e: 2230 movs r2, #48 ; 0x30 - 8008270: 9908 ldr r1, [sp, #32] - 8008272: f108 0801 add.w r8, r8, #1 - 8008276: 700a strb r2, [r1, #0] - 8008278: 781a ldrb r2, [r3, #0] - 800827a: 3201 adds r2, #1 - 800827c: 701a strb r2, [r3, #0] - 800827e: e79f b.n 80081c0 <_dtoa_r+0x648> - 8008280: 46c8 mov r8, r9 - 8008282: e7eb b.n 800825c <_dtoa_r+0x6e4> - 8008284: 2200 movs r2, #0 - 8008286: 4b72 ldr r3, [pc, #456] ; (8008450 <_dtoa_r+0x8d8>) - 8008288: f7f8 f992 bl 80005b0 <__aeabi_dmul> - 800828c: 4602 mov r2, r0 - 800828e: 460b mov r3, r1 - 8008290: e9cd 2304 strd r2, r3, [sp, #16] - 8008294: 2200 movs r2, #0 - 8008296: 2300 movs r3, #0 - 8008298: f7f8 fbf2 bl 8000a80 <__aeabi_dcmpeq> - 800829c: 2800 cmp r0, #0 - 800829e: d098 beq.n 80081d2 <_dtoa_r+0x65a> - 80082a0: e7cb b.n 800823a <_dtoa_r+0x6c2> - 80082a2: 9a0b ldr r2, [sp, #44] ; 0x2c - 80082a4: 2a00 cmp r2, #0 - 80082a6: f000 80cd beq.w 8008444 <_dtoa_r+0x8cc> - 80082aa: 9a22 ldr r2, [sp, #136] ; 0x88 - 80082ac: 2a01 cmp r2, #1 - 80082ae: f300 80af bgt.w 8008410 <_dtoa_r+0x898> - 80082b2: 9a13 ldr r2, [sp, #76] ; 0x4c - 80082b4: 2a00 cmp r2, #0 - 80082b6: f000 80a7 beq.w 8008408 <_dtoa_r+0x890> - 80082ba: f203 4333 addw r3, r3, #1075 ; 0x433 - 80082be: 9c0a ldr r4, [sp, #40] ; 0x28 - 80082c0: 9f06 ldr r7, [sp, #24] - 80082c2: 9a06 ldr r2, [sp, #24] - 80082c4: 2101 movs r1, #1 - 80082c6: 441a add r2, r3 - 80082c8: 9206 str r2, [sp, #24] - 80082ca: 9a09 ldr r2, [sp, #36] ; 0x24 - 80082cc: 4628 mov r0, r5 - 80082ce: 441a add r2, r3 - 80082d0: 9209 str r2, [sp, #36] ; 0x24 - 80082d2: f000 fb65 bl 80089a0 <__i2b> - 80082d6: 4606 mov r6, r0 - 80082d8: 2f00 cmp r7, #0 - 80082da: dd0c ble.n 80082f6 <_dtoa_r+0x77e> - 80082dc: 9b09 ldr r3, [sp, #36] ; 0x24 - 80082de: 2b00 cmp r3, #0 - 80082e0: dd09 ble.n 80082f6 <_dtoa_r+0x77e> - 80082e2: 42bb cmp r3, r7 - 80082e4: bfa8 it ge - 80082e6: 463b movge r3, r7 - 80082e8: 9a06 ldr r2, [sp, #24] - 80082ea: 1aff subs r7, r7, r3 - 80082ec: 1ad2 subs r2, r2, r3 - 80082ee: 9206 str r2, [sp, #24] - 80082f0: 9a09 ldr r2, [sp, #36] ; 0x24 - 80082f2: 1ad3 subs r3, r2, r3 - 80082f4: 9309 str r3, [sp, #36] ; 0x24 - 80082f6: 9b0a ldr r3, [sp, #40] ; 0x28 - 80082f8: b1f3 cbz r3, 8008338 <_dtoa_r+0x7c0> - 80082fa: 9b0b ldr r3, [sp, #44] ; 0x2c - 80082fc: 2b00 cmp r3, #0 - 80082fe: f000 80a9 beq.w 8008454 <_dtoa_r+0x8dc> - 8008302: 2c00 cmp r4, #0 - 8008304: dd10 ble.n 8008328 <_dtoa_r+0x7b0> - 8008306: 4631 mov r1, r6 - 8008308: 4622 mov r2, r4 - 800830a: 4628 mov r0, r5 - 800830c: f000 fc02 bl 8008b14 <__pow5mult> - 8008310: 4652 mov r2, sl - 8008312: 4601 mov r1, r0 - 8008314: 4606 mov r6, r0 - 8008316: 4628 mov r0, r5 - 8008318: f000 fb58 bl 80089cc <__multiply> - 800831c: 4680 mov r8, r0 - 800831e: 4651 mov r1, sl - 8008320: 4628 mov r0, r5 - 8008322: f000 fa83 bl 800882c <_Bfree> - 8008326: 46c2 mov sl, r8 - 8008328: 9b0a ldr r3, [sp, #40] ; 0x28 - 800832a: 1b1a subs r2, r3, r4 - 800832c: d004 beq.n 8008338 <_dtoa_r+0x7c0> - 800832e: 4651 mov r1, sl - 8008330: 4628 mov r0, r5 - 8008332: f000 fbef bl 8008b14 <__pow5mult> - 8008336: 4682 mov sl, r0 - 8008338: 2101 movs r1, #1 - 800833a: 4628 mov r0, r5 - 800833c: f000 fb30 bl 80089a0 <__i2b> - 8008340: 9b0e ldr r3, [sp, #56] ; 0x38 - 8008342: 4604 mov r4, r0 - 8008344: 2b00 cmp r3, #0 - 8008346: f340 8087 ble.w 8008458 <_dtoa_r+0x8e0> - 800834a: 461a mov r2, r3 - 800834c: 4601 mov r1, r0 - 800834e: 4628 mov r0, r5 - 8008350: f000 fbe0 bl 8008b14 <__pow5mult> - 8008354: 9b22 ldr r3, [sp, #136] ; 0x88 - 8008356: 4604 mov r4, r0 - 8008358: 2b01 cmp r3, #1 - 800835a: f340 8080 ble.w 800845e <_dtoa_r+0x8e6> - 800835e: f04f 0800 mov.w r8, #0 - 8008362: 6923 ldr r3, [r4, #16] - 8008364: eb04 0383 add.w r3, r4, r3, lsl #2 - 8008368: 6918 ldr r0, [r3, #16] - 800836a: f000 facb bl 8008904 <__hi0bits> - 800836e: f1c0 0020 rsb r0, r0, #32 - 8008372: 9b09 ldr r3, [sp, #36] ; 0x24 - 8008374: 4418 add r0, r3 - 8008376: f010 001f ands.w r0, r0, #31 - 800837a: f000 8092 beq.w 80084a2 <_dtoa_r+0x92a> - 800837e: f1c0 0320 rsb r3, r0, #32 - 8008382: 2b04 cmp r3, #4 - 8008384: f340 808a ble.w 800849c <_dtoa_r+0x924> - 8008388: f1c0 001c rsb r0, r0, #28 - 800838c: 9b06 ldr r3, [sp, #24] - 800838e: 4407 add r7, r0 - 8008390: 4403 add r3, r0 - 8008392: 9306 str r3, [sp, #24] - 8008394: 9b09 ldr r3, [sp, #36] ; 0x24 - 8008396: 4403 add r3, r0 - 8008398: 9309 str r3, [sp, #36] ; 0x24 - 800839a: 9b06 ldr r3, [sp, #24] - 800839c: 2b00 cmp r3, #0 - 800839e: dd05 ble.n 80083ac <_dtoa_r+0x834> - 80083a0: 4651 mov r1, sl - 80083a2: 461a mov r2, r3 - 80083a4: 4628 mov r0, r5 - 80083a6: f000 fc0f bl 8008bc8 <__lshift> - 80083aa: 4682 mov sl, r0 - 80083ac: 9b09 ldr r3, [sp, #36] ; 0x24 - 80083ae: 2b00 cmp r3, #0 - 80083b0: dd05 ble.n 80083be <_dtoa_r+0x846> - 80083b2: 4621 mov r1, r4 - 80083b4: 461a mov r2, r3 - 80083b6: 4628 mov r0, r5 - 80083b8: f000 fc06 bl 8008bc8 <__lshift> - 80083bc: 4604 mov r4, r0 - 80083be: 9b0f ldr r3, [sp, #60] ; 0x3c - 80083c0: 2b00 cmp r3, #0 - 80083c2: d070 beq.n 80084a6 <_dtoa_r+0x92e> - 80083c4: 4621 mov r1, r4 - 80083c6: 4650 mov r0, sl - 80083c8: f000 fc6a bl 8008ca0 <__mcmp> - 80083cc: 2800 cmp r0, #0 - 80083ce: da6a bge.n 80084a6 <_dtoa_r+0x92e> - 80083d0: 2300 movs r3, #0 - 80083d2: 4651 mov r1, sl - 80083d4: 220a movs r2, #10 - 80083d6: 4628 mov r0, r5 - 80083d8: f000 fa4a bl 8008870 <__multadd> - 80083dc: 9b0b ldr r3, [sp, #44] ; 0x2c - 80083de: 4682 mov sl, r0 - 80083e0: f109 39ff add.w r9, r9, #4294967295 ; 0xffffffff - 80083e4: 2b00 cmp r3, #0 - 80083e6: f000 8193 beq.w 8008710 <_dtoa_r+0xb98> - 80083ea: 4631 mov r1, r6 - 80083ec: 2300 movs r3, #0 - 80083ee: 220a movs r2, #10 - 80083f0: 4628 mov r0, r5 - 80083f2: f000 fa3d bl 8008870 <__multadd> - 80083f6: f1bb 0f00 cmp.w fp, #0 - 80083fa: 4606 mov r6, r0 - 80083fc: f300 8093 bgt.w 8008526 <_dtoa_r+0x9ae> - 8008400: 9b22 ldr r3, [sp, #136] ; 0x88 - 8008402: 2b02 cmp r3, #2 - 8008404: dc57 bgt.n 80084b6 <_dtoa_r+0x93e> - 8008406: e08e b.n 8008526 <_dtoa_r+0x9ae> - 8008408: 9b16 ldr r3, [sp, #88] ; 0x58 - 800840a: f1c3 0336 rsb r3, r3, #54 ; 0x36 - 800840e: e756 b.n 80082be <_dtoa_r+0x746> - 8008410: 9b02 ldr r3, [sp, #8] - 8008412: 1e5c subs r4, r3, #1 - 8008414: 9b0a ldr r3, [sp, #40] ; 0x28 - 8008416: 42a3 cmp r3, r4 - 8008418: bfb7 itett lt - 800841a: 9b0a ldrlt r3, [sp, #40] ; 0x28 - 800841c: 1b1c subge r4, r3, r4 - 800841e: 1ae2 sublt r2, r4, r3 - 8008420: 9b0e ldrlt r3, [sp, #56] ; 0x38 - 8008422: bfbe ittt lt - 8008424: 940a strlt r4, [sp, #40] ; 0x28 - 8008426: 189b addlt r3, r3, r2 - 8008428: 930e strlt r3, [sp, #56] ; 0x38 - 800842a: 9b02 ldr r3, [sp, #8] - 800842c: bfb8 it lt - 800842e: 2400 movlt r4, #0 - 8008430: 2b00 cmp r3, #0 - 8008432: bfbb ittet lt - 8008434: 9b06 ldrlt r3, [sp, #24] - 8008436: 9a02 ldrlt r2, [sp, #8] - 8008438: 9f06 ldrge r7, [sp, #24] - 800843a: 1a9f sublt r7, r3, r2 - 800843c: bfac ite ge - 800843e: 9b02 ldrge r3, [sp, #8] - 8008440: 2300 movlt r3, #0 - 8008442: e73e b.n 80082c2 <_dtoa_r+0x74a> - 8008444: 9c0a ldr r4, [sp, #40] ; 0x28 - 8008446: 9f06 ldr r7, [sp, #24] - 8008448: 9e0b ldr r6, [sp, #44] ; 0x2c - 800844a: e745 b.n 80082d8 <_dtoa_r+0x760> - 800844c: 3fe00000 .word 0x3fe00000 - 8008450: 40240000 .word 0x40240000 - 8008454: 9a0a ldr r2, [sp, #40] ; 0x28 - 8008456: e76a b.n 800832e <_dtoa_r+0x7b6> - 8008458: 9b22 ldr r3, [sp, #136] ; 0x88 - 800845a: 2b01 cmp r3, #1 - 800845c: dc19 bgt.n 8008492 <_dtoa_r+0x91a> - 800845e: 9b04 ldr r3, [sp, #16] - 8008460: b9bb cbnz r3, 8008492 <_dtoa_r+0x91a> - 8008462: 9b05 ldr r3, [sp, #20] - 8008464: f3c3 0313 ubfx r3, r3, #0, #20 - 8008468: b99b cbnz r3, 8008492 <_dtoa_r+0x91a> - 800846a: 9b05 ldr r3, [sp, #20] - 800846c: f023 4300 bic.w r3, r3, #2147483648 ; 0x80000000 - 8008470: 0d1b lsrs r3, r3, #20 - 8008472: 051b lsls r3, r3, #20 - 8008474: b183 cbz r3, 8008498 <_dtoa_r+0x920> - 8008476: f04f 0801 mov.w r8, #1 - 800847a: 9b06 ldr r3, [sp, #24] - 800847c: 3301 adds r3, #1 - 800847e: 9306 str r3, [sp, #24] - 8008480: 9b09 ldr r3, [sp, #36] ; 0x24 - 8008482: 3301 adds r3, #1 - 8008484: 9309 str r3, [sp, #36] ; 0x24 - 8008486: 9b0e ldr r3, [sp, #56] ; 0x38 - 8008488: 2b00 cmp r3, #0 - 800848a: f47f af6a bne.w 8008362 <_dtoa_r+0x7ea> - 800848e: 2001 movs r0, #1 - 8008490: e76f b.n 8008372 <_dtoa_r+0x7fa> - 8008492: f04f 0800 mov.w r8, #0 - 8008496: e7f6 b.n 8008486 <_dtoa_r+0x90e> - 8008498: 4698 mov r8, r3 - 800849a: e7f4 b.n 8008486 <_dtoa_r+0x90e> - 800849c: f43f af7d beq.w 800839a <_dtoa_r+0x822> - 80084a0: 4618 mov r0, r3 - 80084a2: 301c adds r0, #28 - 80084a4: e772 b.n 800838c <_dtoa_r+0x814> - 80084a6: 9b02 ldr r3, [sp, #8] - 80084a8: 2b00 cmp r3, #0 - 80084aa: dc36 bgt.n 800851a <_dtoa_r+0x9a2> - 80084ac: 9b22 ldr r3, [sp, #136] ; 0x88 - 80084ae: 2b02 cmp r3, #2 - 80084b0: dd33 ble.n 800851a <_dtoa_r+0x9a2> - 80084b2: f8dd b008 ldr.w fp, [sp, #8] - 80084b6: f1bb 0f00 cmp.w fp, #0 - 80084ba: d10d bne.n 80084d8 <_dtoa_r+0x960> - 80084bc: 4621 mov r1, r4 - 80084be: 465b mov r3, fp - 80084c0: 2205 movs r2, #5 - 80084c2: 4628 mov r0, r5 - 80084c4: f000 f9d4 bl 8008870 <__multadd> - 80084c8: 4601 mov r1, r0 - 80084ca: 4604 mov r4, r0 - 80084cc: 4650 mov r0, sl - 80084ce: f000 fbe7 bl 8008ca0 <__mcmp> - 80084d2: 2800 cmp r0, #0 - 80084d4: f73f adb6 bgt.w 8008044 <_dtoa_r+0x4cc> - 80084d8: 9b23 ldr r3, [sp, #140] ; 0x8c - 80084da: 9f08 ldr r7, [sp, #32] - 80084dc: ea6f 0903 mvn.w r9, r3 - 80084e0: f04f 0800 mov.w r8, #0 - 80084e4: 4621 mov r1, r4 - 80084e6: 4628 mov r0, r5 - 80084e8: f000 f9a0 bl 800882c <_Bfree> - 80084ec: 2e00 cmp r6, #0 - 80084ee: f43f aea4 beq.w 800823a <_dtoa_r+0x6c2> - 80084f2: f1b8 0f00 cmp.w r8, #0 - 80084f6: d005 beq.n 8008504 <_dtoa_r+0x98c> - 80084f8: 45b0 cmp r8, r6 - 80084fa: d003 beq.n 8008504 <_dtoa_r+0x98c> - 80084fc: 4641 mov r1, r8 - 80084fe: 4628 mov r0, r5 - 8008500: f000 f994 bl 800882c <_Bfree> - 8008504: 4631 mov r1, r6 - 8008506: 4628 mov r0, r5 - 8008508: f000 f990 bl 800882c <_Bfree> - 800850c: e695 b.n 800823a <_dtoa_r+0x6c2> - 800850e: 2400 movs r4, #0 - 8008510: 4626 mov r6, r4 - 8008512: e7e1 b.n 80084d8 <_dtoa_r+0x960> - 8008514: 46c1 mov r9, r8 - 8008516: 4626 mov r6, r4 - 8008518: e594 b.n 8008044 <_dtoa_r+0x4cc> - 800851a: 9b0b ldr r3, [sp, #44] ; 0x2c - 800851c: f8dd b008 ldr.w fp, [sp, #8] - 8008520: 2b00 cmp r3, #0 - 8008522: f000 80fc beq.w 800871e <_dtoa_r+0xba6> - 8008526: 2f00 cmp r7, #0 - 8008528: dd05 ble.n 8008536 <_dtoa_r+0x9be> - 800852a: 4631 mov r1, r6 - 800852c: 463a mov r2, r7 - 800852e: 4628 mov r0, r5 - 8008530: f000 fb4a bl 8008bc8 <__lshift> - 8008534: 4606 mov r6, r0 - 8008536: f1b8 0f00 cmp.w r8, #0 - 800853a: d05c beq.n 80085f6 <_dtoa_r+0xa7e> - 800853c: 4628 mov r0, r5 - 800853e: 6871 ldr r1, [r6, #4] - 8008540: f000 f934 bl 80087ac <_Balloc> - 8008544: 4607 mov r7, r0 - 8008546: b928 cbnz r0, 8008554 <_dtoa_r+0x9dc> - 8008548: 4602 mov r2, r0 - 800854a: f240 21ea movw r1, #746 ; 0x2ea - 800854e: 4b7e ldr r3, [pc, #504] ; (8008748 <_dtoa_r+0xbd0>) - 8008550: f7ff bb26 b.w 8007ba0 <_dtoa_r+0x28> - 8008554: 6932 ldr r2, [r6, #16] - 8008556: f106 010c add.w r1, r6, #12 - 800855a: 3202 adds r2, #2 - 800855c: 0092 lsls r2, r2, #2 - 800855e: 300c adds r0, #12 - 8008560: f000 f90a bl 8008778 - 8008564: 2201 movs r2, #1 - 8008566: 4639 mov r1, r7 - 8008568: 4628 mov r0, r5 - 800856a: f000 fb2d bl 8008bc8 <__lshift> - 800856e: 46b0 mov r8, r6 - 8008570: 4606 mov r6, r0 - 8008572: 9b08 ldr r3, [sp, #32] - 8008574: 3301 adds r3, #1 - 8008576: 9302 str r3, [sp, #8] - 8008578: 9b08 ldr r3, [sp, #32] - 800857a: 445b add r3, fp - 800857c: 930a str r3, [sp, #40] ; 0x28 - 800857e: 9b04 ldr r3, [sp, #16] - 8008580: f003 0301 and.w r3, r3, #1 - 8008584: 9309 str r3, [sp, #36] ; 0x24 - 8008586: 9b02 ldr r3, [sp, #8] - 8008588: 4621 mov r1, r4 - 800858a: 4650 mov r0, sl - 800858c: f103 3bff add.w fp, r3, #4294967295 ; 0xffffffff - 8008590: f7ff fa62 bl 8007a58 - 8008594: 4603 mov r3, r0 - 8008596: 4641 mov r1, r8 - 8008598: 3330 adds r3, #48 ; 0x30 - 800859a: 9004 str r0, [sp, #16] - 800859c: 4650 mov r0, sl - 800859e: 930b str r3, [sp, #44] ; 0x2c - 80085a0: f000 fb7e bl 8008ca0 <__mcmp> - 80085a4: 4632 mov r2, r6 - 80085a6: 9006 str r0, [sp, #24] - 80085a8: 4621 mov r1, r4 - 80085aa: 4628 mov r0, r5 - 80085ac: f000 fb94 bl 8008cd8 <__mdiff> - 80085b0: 68c2 ldr r2, [r0, #12] - 80085b2: 4607 mov r7, r0 - 80085b4: 9b0b ldr r3, [sp, #44] ; 0x2c - 80085b6: bb02 cbnz r2, 80085fa <_dtoa_r+0xa82> - 80085b8: 4601 mov r1, r0 - 80085ba: 4650 mov r0, sl - 80085bc: f000 fb70 bl 8008ca0 <__mcmp> - 80085c0: 4602 mov r2, r0 - 80085c2: 9b0b ldr r3, [sp, #44] ; 0x2c - 80085c4: 4639 mov r1, r7 - 80085c6: 4628 mov r0, r5 - 80085c8: e9cd 320b strd r3, r2, [sp, #44] ; 0x2c - 80085cc: f000 f92e bl 800882c <_Bfree> - 80085d0: 9b22 ldr r3, [sp, #136] ; 0x88 - 80085d2: 9a0c ldr r2, [sp, #48] ; 0x30 - 80085d4: 9f02 ldr r7, [sp, #8] - 80085d6: ea43 0102 orr.w r1, r3, r2 - 80085da: 9b09 ldr r3, [sp, #36] ; 0x24 - 80085dc: 430b orrs r3, r1 - 80085de: 9b0b ldr r3, [sp, #44] ; 0x2c - 80085e0: d10d bne.n 80085fe <_dtoa_r+0xa86> - 80085e2: 2b39 cmp r3, #57 ; 0x39 - 80085e4: d027 beq.n 8008636 <_dtoa_r+0xabe> - 80085e6: 9a06 ldr r2, [sp, #24] - 80085e8: 2a00 cmp r2, #0 - 80085ea: dd01 ble.n 80085f0 <_dtoa_r+0xa78> - 80085ec: 9b04 ldr r3, [sp, #16] - 80085ee: 3331 adds r3, #49 ; 0x31 - 80085f0: f88b 3000 strb.w r3, [fp] - 80085f4: e776 b.n 80084e4 <_dtoa_r+0x96c> - 80085f6: 4630 mov r0, r6 - 80085f8: e7b9 b.n 800856e <_dtoa_r+0x9f6> - 80085fa: 2201 movs r2, #1 - 80085fc: e7e2 b.n 80085c4 <_dtoa_r+0xa4c> - 80085fe: 9906 ldr r1, [sp, #24] - 8008600: 2900 cmp r1, #0 - 8008602: db04 blt.n 800860e <_dtoa_r+0xa96> - 8008604: 9822 ldr r0, [sp, #136] ; 0x88 - 8008606: 4301 orrs r1, r0 - 8008608: 9809 ldr r0, [sp, #36] ; 0x24 - 800860a: 4301 orrs r1, r0 - 800860c: d120 bne.n 8008650 <_dtoa_r+0xad8> - 800860e: 2a00 cmp r2, #0 - 8008610: ddee ble.n 80085f0 <_dtoa_r+0xa78> - 8008612: 4651 mov r1, sl - 8008614: 2201 movs r2, #1 - 8008616: 4628 mov r0, r5 - 8008618: 9302 str r3, [sp, #8] - 800861a: f000 fad5 bl 8008bc8 <__lshift> - 800861e: 4621 mov r1, r4 - 8008620: 4682 mov sl, r0 - 8008622: f000 fb3d bl 8008ca0 <__mcmp> - 8008626: 2800 cmp r0, #0 - 8008628: 9b02 ldr r3, [sp, #8] - 800862a: dc02 bgt.n 8008632 <_dtoa_r+0xaba> - 800862c: d1e0 bne.n 80085f0 <_dtoa_r+0xa78> - 800862e: 07da lsls r2, r3, #31 - 8008630: d5de bpl.n 80085f0 <_dtoa_r+0xa78> - 8008632: 2b39 cmp r3, #57 ; 0x39 - 8008634: d1da bne.n 80085ec <_dtoa_r+0xa74> - 8008636: 2339 movs r3, #57 ; 0x39 - 8008638: f88b 3000 strb.w r3, [fp] - 800863c: 463b mov r3, r7 - 800863e: 461f mov r7, r3 - 8008640: f817 2c01 ldrb.w r2, [r7, #-1] - 8008644: 3b01 subs r3, #1 - 8008646: 2a39 cmp r2, #57 ; 0x39 - 8008648: d050 beq.n 80086ec <_dtoa_r+0xb74> - 800864a: 3201 adds r2, #1 - 800864c: 701a strb r2, [r3, #0] - 800864e: e749 b.n 80084e4 <_dtoa_r+0x96c> - 8008650: 2a00 cmp r2, #0 - 8008652: dd03 ble.n 800865c <_dtoa_r+0xae4> - 8008654: 2b39 cmp r3, #57 ; 0x39 - 8008656: d0ee beq.n 8008636 <_dtoa_r+0xabe> - 8008658: 3301 adds r3, #1 - 800865a: e7c9 b.n 80085f0 <_dtoa_r+0xa78> - 800865c: 9a02 ldr r2, [sp, #8] - 800865e: 990a ldr r1, [sp, #40] ; 0x28 - 8008660: f802 3c01 strb.w r3, [r2, #-1] - 8008664: 428a cmp r2, r1 - 8008666: d02a beq.n 80086be <_dtoa_r+0xb46> - 8008668: 4651 mov r1, sl - 800866a: 2300 movs r3, #0 - 800866c: 220a movs r2, #10 - 800866e: 4628 mov r0, r5 - 8008670: f000 f8fe bl 8008870 <__multadd> - 8008674: 45b0 cmp r8, r6 - 8008676: 4682 mov sl, r0 - 8008678: f04f 0300 mov.w r3, #0 - 800867c: f04f 020a mov.w r2, #10 - 8008680: 4641 mov r1, r8 - 8008682: 4628 mov r0, r5 - 8008684: d107 bne.n 8008696 <_dtoa_r+0xb1e> - 8008686: f000 f8f3 bl 8008870 <__multadd> - 800868a: 4680 mov r8, r0 - 800868c: 4606 mov r6, r0 - 800868e: 9b02 ldr r3, [sp, #8] - 8008690: 3301 adds r3, #1 - 8008692: 9302 str r3, [sp, #8] - 8008694: e777 b.n 8008586 <_dtoa_r+0xa0e> - 8008696: f000 f8eb bl 8008870 <__multadd> - 800869a: 4631 mov r1, r6 - 800869c: 4680 mov r8, r0 - 800869e: 2300 movs r3, #0 - 80086a0: 220a movs r2, #10 - 80086a2: 4628 mov r0, r5 - 80086a4: f000 f8e4 bl 8008870 <__multadd> - 80086a8: 4606 mov r6, r0 - 80086aa: e7f0 b.n 800868e <_dtoa_r+0xb16> - 80086ac: f1bb 0f00 cmp.w fp, #0 - 80086b0: bfcc ite gt - 80086b2: 465f movgt r7, fp - 80086b4: 2701 movle r7, #1 - 80086b6: f04f 0800 mov.w r8, #0 - 80086ba: 9a08 ldr r2, [sp, #32] - 80086bc: 4417 add r7, r2 - 80086be: 4651 mov r1, sl - 80086c0: 2201 movs r2, #1 - 80086c2: 4628 mov r0, r5 - 80086c4: 9302 str r3, [sp, #8] - 80086c6: f000 fa7f bl 8008bc8 <__lshift> - 80086ca: 4621 mov r1, r4 - 80086cc: 4682 mov sl, r0 - 80086ce: f000 fae7 bl 8008ca0 <__mcmp> - 80086d2: 2800 cmp r0, #0 - 80086d4: dcb2 bgt.n 800863c <_dtoa_r+0xac4> - 80086d6: d102 bne.n 80086de <_dtoa_r+0xb66> - 80086d8: 9b02 ldr r3, [sp, #8] - 80086da: 07db lsls r3, r3, #31 - 80086dc: d4ae bmi.n 800863c <_dtoa_r+0xac4> - 80086de: 463b mov r3, r7 - 80086e0: 461f mov r7, r3 - 80086e2: f813 2d01 ldrb.w r2, [r3, #-1]! - 80086e6: 2a30 cmp r2, #48 ; 0x30 - 80086e8: d0fa beq.n 80086e0 <_dtoa_r+0xb68> - 80086ea: e6fb b.n 80084e4 <_dtoa_r+0x96c> - 80086ec: 9a08 ldr r2, [sp, #32] - 80086ee: 429a cmp r2, r3 - 80086f0: d1a5 bne.n 800863e <_dtoa_r+0xac6> - 80086f2: 2331 movs r3, #49 ; 0x31 - 80086f4: f109 0901 add.w r9, r9, #1 - 80086f8: 7013 strb r3, [r2, #0] - 80086fa: e6f3 b.n 80084e4 <_dtoa_r+0x96c> - 80086fc: 4b13 ldr r3, [pc, #76] ; (800874c <_dtoa_r+0xbd4>) - 80086fe: f7ff baa7 b.w 8007c50 <_dtoa_r+0xd8> - 8008702: 9b26 ldr r3, [sp, #152] ; 0x98 - 8008704: 2b00 cmp r3, #0 - 8008706: f47f aa80 bne.w 8007c0a <_dtoa_r+0x92> - 800870a: 4b11 ldr r3, [pc, #68] ; (8008750 <_dtoa_r+0xbd8>) - 800870c: f7ff baa0 b.w 8007c50 <_dtoa_r+0xd8> - 8008710: f1bb 0f00 cmp.w fp, #0 - 8008714: dc03 bgt.n 800871e <_dtoa_r+0xba6> - 8008716: 9b22 ldr r3, [sp, #136] ; 0x88 - 8008718: 2b02 cmp r3, #2 - 800871a: f73f aecc bgt.w 80084b6 <_dtoa_r+0x93e> - 800871e: 9f08 ldr r7, [sp, #32] - 8008720: 4621 mov r1, r4 - 8008722: 4650 mov r0, sl - 8008724: f7ff f998 bl 8007a58 - 8008728: 9a08 ldr r2, [sp, #32] - 800872a: f100 0330 add.w r3, r0, #48 ; 0x30 - 800872e: f807 3b01 strb.w r3, [r7], #1 - 8008732: 1aba subs r2, r7, r2 - 8008734: 4593 cmp fp, r2 - 8008736: ddb9 ble.n 80086ac <_dtoa_r+0xb34> - 8008738: 4651 mov r1, sl - 800873a: 2300 movs r3, #0 - 800873c: 220a movs r2, #10 - 800873e: 4628 mov r0, r5 - 8008740: f000 f896 bl 8008870 <__multadd> - 8008744: 4682 mov sl, r0 - 8008746: e7eb b.n 8008720 <_dtoa_r+0xba8> - 8008748: 0800a92f .word 0x0800a92f - 800874c: 0800a888 .word 0x0800a888 - 8008750: 0800a8ac .word 0x0800a8ac +08008210 <_dtoa_r>: + 8008210: e92d 4ff0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} + 8008214: 4616 mov r6, r2 + 8008216: 461f mov r7, r3 + 8008218: 6a44 ldr r4, [r0, #36] ; 0x24 + 800821a: b099 sub sp, #100 ; 0x64 + 800821c: 4605 mov r5, r0 + 800821e: e9cd 6704 strd r6, r7, [sp, #16] + 8008222: f8dd 8094 ldr.w r8, [sp, #148] ; 0x94 + 8008226: b974 cbnz r4, 8008246 <_dtoa_r+0x36> + 8008228: 2010 movs r0, #16 + 800822a: f7ff fa15 bl 8007658 + 800822e: 4602 mov r2, r0 + 8008230: 6268 str r0, [r5, #36] ; 0x24 + 8008232: b920 cbnz r0, 800823e <_dtoa_r+0x2e> + 8008234: 21ea movs r1, #234 ; 0xea + 8008236: 4bae ldr r3, [pc, #696] ; (80084f0 <_dtoa_r+0x2e0>) + 8008238: 48ae ldr r0, [pc, #696] ; (80084f4 <_dtoa_r+0x2e4>) + 800823a: f001 faef bl 800981c <__assert_func> + 800823e: e9c0 4401 strd r4, r4, [r0, #4] + 8008242: 6004 str r4, [r0, #0] + 8008244: 60c4 str r4, [r0, #12] + 8008246: 6a6b ldr r3, [r5, #36] ; 0x24 + 8008248: 6819 ldr r1, [r3, #0] + 800824a: b151 cbz r1, 8008262 <_dtoa_r+0x52> + 800824c: 685a ldr r2, [r3, #4] + 800824e: 2301 movs r3, #1 + 8008250: 4093 lsls r3, r2 + 8008252: 604a str r2, [r1, #4] + 8008254: 608b str r3, [r1, #8] + 8008256: 4628 mov r0, r5 + 8008258: f000 fe34 bl 8008ec4 <_Bfree> + 800825c: 2200 movs r2, #0 + 800825e: 6a6b ldr r3, [r5, #36] ; 0x24 + 8008260: 601a str r2, [r3, #0] + 8008262: 1e3b subs r3, r7, #0 + 8008264: bfaf iteee ge + 8008266: 2300 movge r3, #0 + 8008268: 2201 movlt r2, #1 + 800826a: f023 4300 biclt.w r3, r3, #2147483648 ; 0x80000000 + 800826e: 9305 strlt r3, [sp, #20] + 8008270: bfa8 it ge + 8008272: f8c8 3000 strge.w r3, [r8] + 8008276: f8dd 9014 ldr.w r9, [sp, #20] + 800827a: 4b9f ldr r3, [pc, #636] ; (80084f8 <_dtoa_r+0x2e8>) + 800827c: bfb8 it lt + 800827e: f8c8 2000 strlt.w r2, [r8] + 8008282: ea33 0309 bics.w r3, r3, r9 + 8008286: d119 bne.n 80082bc <_dtoa_r+0xac> + 8008288: f242 730f movw r3, #9999 ; 0x270f + 800828c: 9a24 ldr r2, [sp, #144] ; 0x90 + 800828e: 6013 str r3, [r2, #0] + 8008290: f3c9 0313 ubfx r3, r9, #0, #20 + 8008294: 4333 orrs r3, r6 + 8008296: f000 8580 beq.w 8008d9a <_dtoa_r+0xb8a> + 800829a: 9b26 ldr r3, [sp, #152] ; 0x98 + 800829c: b953 cbnz r3, 80082b4 <_dtoa_r+0xa4> + 800829e: 4b97 ldr r3, [pc, #604] ; (80084fc <_dtoa_r+0x2ec>) + 80082a0: e022 b.n 80082e8 <_dtoa_r+0xd8> + 80082a2: 4b97 ldr r3, [pc, #604] ; (8008500 <_dtoa_r+0x2f0>) + 80082a4: 9308 str r3, [sp, #32] + 80082a6: 3308 adds r3, #8 + 80082a8: 9a26 ldr r2, [sp, #152] ; 0x98 + 80082aa: 6013 str r3, [r2, #0] + 80082ac: 9808 ldr r0, [sp, #32] + 80082ae: b019 add sp, #100 ; 0x64 + 80082b0: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc} + 80082b4: 4b91 ldr r3, [pc, #580] ; (80084fc <_dtoa_r+0x2ec>) + 80082b6: 9308 str r3, [sp, #32] + 80082b8: 3303 adds r3, #3 + 80082ba: e7f5 b.n 80082a8 <_dtoa_r+0x98> + 80082bc: e9dd 3404 ldrd r3, r4, [sp, #16] + 80082c0: e9cd 340c strd r3, r4, [sp, #48] ; 0x30 + 80082c4: e9dd 010c ldrd r0, r1, [sp, #48] ; 0x30 + 80082c8: 2200 movs r2, #0 + 80082ca: 2300 movs r3, #0 + 80082cc: f7f8 fbd8 bl 8000a80 <__aeabi_dcmpeq> + 80082d0: 4680 mov r8, r0 + 80082d2: b158 cbz r0, 80082ec <_dtoa_r+0xdc> + 80082d4: 2301 movs r3, #1 + 80082d6: 9a24 ldr r2, [sp, #144] ; 0x90 + 80082d8: 6013 str r3, [r2, #0] + 80082da: 9b26 ldr r3, [sp, #152] ; 0x98 + 80082dc: 2b00 cmp r3, #0 + 80082de: f000 8559 beq.w 8008d94 <_dtoa_r+0xb84> + 80082e2: 4888 ldr r0, [pc, #544] ; (8008504 <_dtoa_r+0x2f4>) + 80082e4: 6018 str r0, [r3, #0] + 80082e6: 1e43 subs r3, r0, #1 + 80082e8: 9308 str r3, [sp, #32] + 80082ea: e7df b.n 80082ac <_dtoa_r+0x9c> + 80082ec: ab16 add r3, sp, #88 ; 0x58 + 80082ee: 9301 str r3, [sp, #4] + 80082f0: ab17 add r3, sp, #92 ; 0x5c + 80082f2: 9300 str r3, [sp, #0] + 80082f4: 4628 mov r0, r5 + 80082f6: e9dd 230c ldrd r2, r3, [sp, #48] ; 0x30 + 80082fa: f001 f8c9 bl 8009490 <__d2b> + 80082fe: f3c9 540a ubfx r4, r9, #20, #11 + 8008302: 4682 mov sl, r0 + 8008304: 2c00 cmp r4, #0 + 8008306: d07e beq.n 8008406 <_dtoa_r+0x1f6> + 8008308: e9dd 010c ldrd r0, r1, [sp, #48] ; 0x30 + 800830c: 9b0d ldr r3, [sp, #52] ; 0x34 + 800830e: f2a4 34ff subw r4, r4, #1023 ; 0x3ff + 8008312: f3c3 0313 ubfx r3, r3, #0, #20 + 8008316: f043 517f orr.w r1, r3, #1069547520 ; 0x3fc00000 + 800831a: f441 1140 orr.w r1, r1, #3145728 ; 0x300000 + 800831e: f8cd 804c str.w r8, [sp, #76] ; 0x4c + 8008322: 2200 movs r2, #0 + 8008324: 4b78 ldr r3, [pc, #480] ; (8008508 <_dtoa_r+0x2f8>) + 8008326: f7f7 ff8b bl 8000240 <__aeabi_dsub> + 800832a: a36b add r3, pc, #428 ; (adr r3, 80084d8 <_dtoa_r+0x2c8>) + 800832c: e9d3 2300 ldrd r2, r3, [r3] + 8008330: f7f8 f93e bl 80005b0 <__aeabi_dmul> + 8008334: a36a add r3, pc, #424 ; (adr r3, 80084e0 <_dtoa_r+0x2d0>) + 8008336: e9d3 2300 ldrd r2, r3, [r3] + 800833a: f7f7 ff83 bl 8000244 <__adddf3> + 800833e: 4606 mov r6, r0 + 8008340: 4620 mov r0, r4 + 8008342: 460f mov r7, r1 + 8008344: f7f8 f8ca bl 80004dc <__aeabi_i2d> + 8008348: a367 add r3, pc, #412 ; (adr r3, 80084e8 <_dtoa_r+0x2d8>) + 800834a: e9d3 2300 ldrd r2, r3, [r3] + 800834e: f7f8 f92f bl 80005b0 <__aeabi_dmul> + 8008352: 4602 mov r2, r0 + 8008354: 460b mov r3, r1 + 8008356: 4630 mov r0, r6 + 8008358: 4639 mov r1, r7 + 800835a: f7f7 ff73 bl 8000244 <__adddf3> + 800835e: 4606 mov r6, r0 + 8008360: 460f mov r7, r1 + 8008362: f7f8 fbd5 bl 8000b10 <__aeabi_d2iz> + 8008366: 2200 movs r2, #0 + 8008368: 4681 mov r9, r0 + 800836a: 2300 movs r3, #0 + 800836c: 4630 mov r0, r6 + 800836e: 4639 mov r1, r7 + 8008370: f7f8 fb90 bl 8000a94 <__aeabi_dcmplt> + 8008374: b148 cbz r0, 800838a <_dtoa_r+0x17a> + 8008376: 4648 mov r0, r9 + 8008378: f7f8 f8b0 bl 80004dc <__aeabi_i2d> + 800837c: 4632 mov r2, r6 + 800837e: 463b mov r3, r7 + 8008380: f7f8 fb7e bl 8000a80 <__aeabi_dcmpeq> + 8008384: b908 cbnz r0, 800838a <_dtoa_r+0x17a> + 8008386: f109 39ff add.w r9, r9, #4294967295 ; 0xffffffff + 800838a: f1b9 0f16 cmp.w r9, #22 + 800838e: d857 bhi.n 8008440 <_dtoa_r+0x230> + 8008390: e9dd 010c ldrd r0, r1, [sp, #48] ; 0x30 + 8008394: 4b5d ldr r3, [pc, #372] ; (800850c <_dtoa_r+0x2fc>) + 8008396: eb03 03c9 add.w r3, r3, r9, lsl #3 + 800839a: e9d3 2300 ldrd r2, r3, [r3] + 800839e: f7f8 fb79 bl 8000a94 <__aeabi_dcmplt> + 80083a2: 2800 cmp r0, #0 + 80083a4: d04e beq.n 8008444 <_dtoa_r+0x234> + 80083a6: 2300 movs r3, #0 + 80083a8: f109 39ff add.w r9, r9, #4294967295 ; 0xffffffff + 80083ac: 930f str r3, [sp, #60] ; 0x3c + 80083ae: 9b16 ldr r3, [sp, #88] ; 0x58 + 80083b0: 1b1c subs r4, r3, r4 + 80083b2: 1e63 subs r3, r4, #1 + 80083b4: 9309 str r3, [sp, #36] ; 0x24 + 80083b6: bf49 itett mi + 80083b8: f1c4 0301 rsbmi r3, r4, #1 + 80083bc: 2300 movpl r3, #0 + 80083be: 9306 strmi r3, [sp, #24] + 80083c0: 2300 movmi r3, #0 + 80083c2: bf54 ite pl + 80083c4: 9306 strpl r3, [sp, #24] + 80083c6: 9309 strmi r3, [sp, #36] ; 0x24 + 80083c8: f1b9 0f00 cmp.w r9, #0 + 80083cc: db3c blt.n 8008448 <_dtoa_r+0x238> + 80083ce: 9b09 ldr r3, [sp, #36] ; 0x24 + 80083d0: f8cd 9038 str.w r9, [sp, #56] ; 0x38 + 80083d4: 444b add r3, r9 + 80083d6: 9309 str r3, [sp, #36] ; 0x24 + 80083d8: 2300 movs r3, #0 + 80083da: 930a str r3, [sp, #40] ; 0x28 + 80083dc: 9b22 ldr r3, [sp, #136] ; 0x88 + 80083de: 2b09 cmp r3, #9 + 80083e0: d86c bhi.n 80084bc <_dtoa_r+0x2ac> + 80083e2: 2b05 cmp r3, #5 + 80083e4: bfc4 itt gt + 80083e6: 3b04 subgt r3, #4 + 80083e8: 9322 strgt r3, [sp, #136] ; 0x88 + 80083ea: 9b22 ldr r3, [sp, #136] ; 0x88 + 80083ec: bfc8 it gt + 80083ee: 2400 movgt r4, #0 + 80083f0: f1a3 0302 sub.w r3, r3, #2 + 80083f4: bfd8 it le + 80083f6: 2401 movle r4, #1 + 80083f8: 2b03 cmp r3, #3 + 80083fa: f200 808b bhi.w 8008514 <_dtoa_r+0x304> + 80083fe: e8df f003 tbb [pc, r3] + 8008402: 4f2d .short 0x4f2d + 8008404: 5b4d .short 0x5b4d + 8008406: e9dd 4316 ldrd r4, r3, [sp, #88] ; 0x58 + 800840a: 441c add r4, r3 + 800840c: f204 4332 addw r3, r4, #1074 ; 0x432 + 8008410: 2b20 cmp r3, #32 + 8008412: bfc3 ittte gt + 8008414: f1c3 0340 rsbgt r3, r3, #64 ; 0x40 + 8008418: f204 4012 addwgt r0, r4, #1042 ; 0x412 + 800841c: fa09 f303 lslgt.w r3, r9, r3 + 8008420: f1c3 0320 rsble r3, r3, #32 + 8008424: bfc6 itte gt + 8008426: fa26 f000 lsrgt.w r0, r6, r0 + 800842a: 4318 orrgt r0, r3 + 800842c: fa06 f003 lslle.w r0, r6, r3 + 8008430: f7f8 f844 bl 80004bc <__aeabi_ui2d> + 8008434: 2301 movs r3, #1 + 8008436: f1a1 71f8 sub.w r1, r1, #32505856 ; 0x1f00000 + 800843a: 3c01 subs r4, #1 + 800843c: 9313 str r3, [sp, #76] ; 0x4c + 800843e: e770 b.n 8008322 <_dtoa_r+0x112> + 8008440: 2301 movs r3, #1 + 8008442: e7b3 b.n 80083ac <_dtoa_r+0x19c> + 8008444: 900f str r0, [sp, #60] ; 0x3c + 8008446: e7b2 b.n 80083ae <_dtoa_r+0x19e> + 8008448: 9b06 ldr r3, [sp, #24] + 800844a: eba3 0309 sub.w r3, r3, r9 + 800844e: 9306 str r3, [sp, #24] + 8008450: f1c9 0300 rsb r3, r9, #0 + 8008454: 930a str r3, [sp, #40] ; 0x28 + 8008456: 2300 movs r3, #0 + 8008458: 930e str r3, [sp, #56] ; 0x38 + 800845a: e7bf b.n 80083dc <_dtoa_r+0x1cc> + 800845c: 2300 movs r3, #0 + 800845e: 930b str r3, [sp, #44] ; 0x2c + 8008460: 9b23 ldr r3, [sp, #140] ; 0x8c + 8008462: 2b00 cmp r3, #0 + 8008464: dc59 bgt.n 800851a <_dtoa_r+0x30a> + 8008466: f04f 0b01 mov.w fp, #1 + 800846a: 465b mov r3, fp + 800846c: f8cd b008 str.w fp, [sp, #8] + 8008470: f8cd b08c str.w fp, [sp, #140] ; 0x8c + 8008474: 2200 movs r2, #0 + 8008476: 6a68 ldr r0, [r5, #36] ; 0x24 + 8008478: 6042 str r2, [r0, #4] + 800847a: 2204 movs r2, #4 + 800847c: f102 0614 add.w r6, r2, #20 + 8008480: 429e cmp r6, r3 + 8008482: 6841 ldr r1, [r0, #4] + 8008484: d94f bls.n 8008526 <_dtoa_r+0x316> + 8008486: 4628 mov r0, r5 + 8008488: f000 fcdc bl 8008e44 <_Balloc> + 800848c: 9008 str r0, [sp, #32] + 800848e: 2800 cmp r0, #0 + 8008490: d14d bne.n 800852e <_dtoa_r+0x31e> + 8008492: 4602 mov r2, r0 + 8008494: f44f 71d5 mov.w r1, #426 ; 0x1aa + 8008498: 4b1d ldr r3, [pc, #116] ; (8008510 <_dtoa_r+0x300>) + 800849a: e6cd b.n 8008238 <_dtoa_r+0x28> + 800849c: 2301 movs r3, #1 + 800849e: e7de b.n 800845e <_dtoa_r+0x24e> + 80084a0: 2300 movs r3, #0 + 80084a2: 930b str r3, [sp, #44] ; 0x2c + 80084a4: 9b23 ldr r3, [sp, #140] ; 0x8c + 80084a6: eb09 0b03 add.w fp, r9, r3 + 80084aa: f10b 0301 add.w r3, fp, #1 + 80084ae: 2b01 cmp r3, #1 + 80084b0: 9302 str r3, [sp, #8] + 80084b2: bfb8 it lt + 80084b4: 2301 movlt r3, #1 + 80084b6: e7dd b.n 8008474 <_dtoa_r+0x264> + 80084b8: 2301 movs r3, #1 + 80084ba: e7f2 b.n 80084a2 <_dtoa_r+0x292> + 80084bc: 2401 movs r4, #1 + 80084be: 2300 movs r3, #0 + 80084c0: 940b str r4, [sp, #44] ; 0x2c + 80084c2: 9322 str r3, [sp, #136] ; 0x88 + 80084c4: f04f 3bff mov.w fp, #4294967295 ; 0xffffffff + 80084c8: 2200 movs r2, #0 + 80084ca: 2312 movs r3, #18 + 80084cc: f8cd b008 str.w fp, [sp, #8] + 80084d0: 9223 str r2, [sp, #140] ; 0x8c + 80084d2: e7cf b.n 8008474 <_dtoa_r+0x264> + 80084d4: f3af 8000 nop.w + 80084d8: 636f4361 .word 0x636f4361 + 80084dc: 3fd287a7 .word 0x3fd287a7 + 80084e0: 8b60c8b3 .word 0x8b60c8b3 + 80084e4: 3fc68a28 .word 0x3fc68a28 + 80084e8: 509f79fb .word 0x509f79fb + 80084ec: 3fd34413 .word 0x3fd34413 + 80084f0: 0800af89 .word 0x0800af89 + 80084f4: 0800afa0 .word 0x0800afa0 + 80084f8: 7ff00000 .word 0x7ff00000 + 80084fc: 0800af85 .word 0x0800af85 + 8008500: 0800af7c .word 0x0800af7c + 8008504: 0800af59 .word 0x0800af59 + 8008508: 3ff80000 .word 0x3ff80000 + 800850c: 0800b098 .word 0x0800b098 + 8008510: 0800afff .word 0x0800afff + 8008514: 2301 movs r3, #1 + 8008516: 930b str r3, [sp, #44] ; 0x2c + 8008518: e7d4 b.n 80084c4 <_dtoa_r+0x2b4> + 800851a: f8dd b08c ldr.w fp, [sp, #140] ; 0x8c + 800851e: 465b mov r3, fp + 8008520: f8cd b008 str.w fp, [sp, #8] + 8008524: e7a6 b.n 8008474 <_dtoa_r+0x264> + 8008526: 3101 adds r1, #1 + 8008528: 6041 str r1, [r0, #4] + 800852a: 0052 lsls r2, r2, #1 + 800852c: e7a6 b.n 800847c <_dtoa_r+0x26c> + 800852e: 6a6b ldr r3, [r5, #36] ; 0x24 + 8008530: 9a08 ldr r2, [sp, #32] + 8008532: 601a str r2, [r3, #0] + 8008534: 9b02 ldr r3, [sp, #8] + 8008536: 2b0e cmp r3, #14 + 8008538: f200 80a8 bhi.w 800868c <_dtoa_r+0x47c> + 800853c: 2c00 cmp r4, #0 + 800853e: f000 80a5 beq.w 800868c <_dtoa_r+0x47c> + 8008542: f1b9 0f00 cmp.w r9, #0 + 8008546: dd34 ble.n 80085b2 <_dtoa_r+0x3a2> + 8008548: 4a9a ldr r2, [pc, #616] ; (80087b4 <_dtoa_r+0x5a4>) + 800854a: f009 030f and.w r3, r9, #15 + 800854e: eb02 03c3 add.w r3, r2, r3, lsl #3 + 8008552: f419 7f80 tst.w r9, #256 ; 0x100 + 8008556: e9d3 3400 ldrd r3, r4, [r3] + 800855a: e9cd 3410 strd r3, r4, [sp, #64] ; 0x40 + 800855e: ea4f 1429 mov.w r4, r9, asr #4 + 8008562: d016 beq.n 8008592 <_dtoa_r+0x382> + 8008564: e9dd 010c ldrd r0, r1, [sp, #48] ; 0x30 + 8008568: 4b93 ldr r3, [pc, #588] ; (80087b8 <_dtoa_r+0x5a8>) + 800856a: 2703 movs r7, #3 + 800856c: e9d3 2308 ldrd r2, r3, [r3, #32] + 8008570: f7f8 f948 bl 8000804 <__aeabi_ddiv> + 8008574: e9cd 0104 strd r0, r1, [sp, #16] + 8008578: f004 040f and.w r4, r4, #15 + 800857c: 4e8e ldr r6, [pc, #568] ; (80087b8 <_dtoa_r+0x5a8>) + 800857e: b954 cbnz r4, 8008596 <_dtoa_r+0x386> + 8008580: e9dd 2310 ldrd r2, r3, [sp, #64] ; 0x40 + 8008584: e9dd 0104 ldrd r0, r1, [sp, #16] + 8008588: f7f8 f93c bl 8000804 <__aeabi_ddiv> + 800858c: e9cd 0104 strd r0, r1, [sp, #16] + 8008590: e029 b.n 80085e6 <_dtoa_r+0x3d6> + 8008592: 2702 movs r7, #2 + 8008594: e7f2 b.n 800857c <_dtoa_r+0x36c> + 8008596: 07e1 lsls r1, r4, #31 + 8008598: d508 bpl.n 80085ac <_dtoa_r+0x39c> + 800859a: e9dd 0110 ldrd r0, r1, [sp, #64] ; 0x40 + 800859e: e9d6 2300 ldrd r2, r3, [r6] + 80085a2: f7f8 f805 bl 80005b0 <__aeabi_dmul> + 80085a6: e9cd 0110 strd r0, r1, [sp, #64] ; 0x40 + 80085aa: 3701 adds r7, #1 + 80085ac: 1064 asrs r4, r4, #1 + 80085ae: 3608 adds r6, #8 + 80085b0: e7e5 b.n 800857e <_dtoa_r+0x36e> + 80085b2: f000 80a5 beq.w 8008700 <_dtoa_r+0x4f0> + 80085b6: e9dd 010c ldrd r0, r1, [sp, #48] ; 0x30 + 80085ba: f1c9 0400 rsb r4, r9, #0 + 80085be: 4b7d ldr r3, [pc, #500] ; (80087b4 <_dtoa_r+0x5a4>) + 80085c0: f004 020f and.w r2, r4, #15 + 80085c4: eb03 03c2 add.w r3, r3, r2, lsl #3 + 80085c8: e9d3 2300 ldrd r2, r3, [r3] + 80085cc: f7f7 fff0 bl 80005b0 <__aeabi_dmul> + 80085d0: 2702 movs r7, #2 + 80085d2: 2300 movs r3, #0 + 80085d4: e9cd 0104 strd r0, r1, [sp, #16] + 80085d8: 4e77 ldr r6, [pc, #476] ; (80087b8 <_dtoa_r+0x5a8>) + 80085da: 1124 asrs r4, r4, #4 + 80085dc: 2c00 cmp r4, #0 + 80085de: f040 8084 bne.w 80086ea <_dtoa_r+0x4da> + 80085e2: 2b00 cmp r3, #0 + 80085e4: d1d2 bne.n 800858c <_dtoa_r+0x37c> + 80085e6: 9b0f ldr r3, [sp, #60] ; 0x3c + 80085e8: 2b00 cmp r3, #0 + 80085ea: f000 808b beq.w 8008704 <_dtoa_r+0x4f4> + 80085ee: e9dd 3404 ldrd r3, r4, [sp, #16] + 80085f2: e9cd 3410 strd r3, r4, [sp, #64] ; 0x40 + 80085f6: e9dd 0110 ldrd r0, r1, [sp, #64] ; 0x40 + 80085fa: 2200 movs r2, #0 + 80085fc: 4b6f ldr r3, [pc, #444] ; (80087bc <_dtoa_r+0x5ac>) + 80085fe: f7f8 fa49 bl 8000a94 <__aeabi_dcmplt> + 8008602: 2800 cmp r0, #0 + 8008604: d07e beq.n 8008704 <_dtoa_r+0x4f4> + 8008606: 9b02 ldr r3, [sp, #8] + 8008608: 2b00 cmp r3, #0 + 800860a: d07b beq.n 8008704 <_dtoa_r+0x4f4> + 800860c: f1bb 0f00 cmp.w fp, #0 + 8008610: dd38 ble.n 8008684 <_dtoa_r+0x474> + 8008612: e9dd 0110 ldrd r0, r1, [sp, #64] ; 0x40 + 8008616: 2200 movs r2, #0 + 8008618: 4b69 ldr r3, [pc, #420] ; (80087c0 <_dtoa_r+0x5b0>) + 800861a: f7f7 ffc9 bl 80005b0 <__aeabi_dmul> + 800861e: 465c mov r4, fp + 8008620: e9cd 0104 strd r0, r1, [sp, #16] + 8008624: f109 38ff add.w r8, r9, #4294967295 ; 0xffffffff + 8008628: 3701 adds r7, #1 + 800862a: 4638 mov r0, r7 + 800862c: f7f7 ff56 bl 80004dc <__aeabi_i2d> + 8008630: e9dd 2304 ldrd r2, r3, [sp, #16] + 8008634: f7f7 ffbc bl 80005b0 <__aeabi_dmul> + 8008638: 2200 movs r2, #0 + 800863a: 4b62 ldr r3, [pc, #392] ; (80087c4 <_dtoa_r+0x5b4>) + 800863c: f7f7 fe02 bl 8000244 <__adddf3> + 8008640: f1a1 7650 sub.w r6, r1, #54525952 ; 0x3400000 + 8008644: e9cd 0110 strd r0, r1, [sp, #64] ; 0x40 + 8008648: 9611 str r6, [sp, #68] ; 0x44 + 800864a: 2c00 cmp r4, #0 + 800864c: d15d bne.n 800870a <_dtoa_r+0x4fa> + 800864e: e9dd 0104 ldrd r0, r1, [sp, #16] + 8008652: 2200 movs r2, #0 + 8008654: 4b5c ldr r3, [pc, #368] ; (80087c8 <_dtoa_r+0x5b8>) + 8008656: f7f7 fdf3 bl 8000240 <__aeabi_dsub> + 800865a: 4602 mov r2, r0 + 800865c: 460b mov r3, r1 + 800865e: e9cd 2304 strd r2, r3, [sp, #16] + 8008662: 4633 mov r3, r6 + 8008664: 9a10 ldr r2, [sp, #64] ; 0x40 + 8008666: f7f8 fa33 bl 8000ad0 <__aeabi_dcmpgt> + 800866a: 2800 cmp r0, #0 + 800866c: f040 829e bne.w 8008bac <_dtoa_r+0x99c> + 8008670: e9dd 0104 ldrd r0, r1, [sp, #16] + 8008674: 9a10 ldr r2, [sp, #64] ; 0x40 + 8008676: f106 4300 add.w r3, r6, #2147483648 ; 0x80000000 + 800867a: f7f8 fa0b bl 8000a94 <__aeabi_dcmplt> + 800867e: 2800 cmp r0, #0 + 8008680: f040 8292 bne.w 8008ba8 <_dtoa_r+0x998> + 8008684: e9dd 340c ldrd r3, r4, [sp, #48] ; 0x30 + 8008688: e9cd 3404 strd r3, r4, [sp, #16] + 800868c: 9b17 ldr r3, [sp, #92] ; 0x5c + 800868e: 2b00 cmp r3, #0 + 8008690: f2c0 8153 blt.w 800893a <_dtoa_r+0x72a> + 8008694: f1b9 0f0e cmp.w r9, #14 + 8008698: f300 814f bgt.w 800893a <_dtoa_r+0x72a> + 800869c: 4b45 ldr r3, [pc, #276] ; (80087b4 <_dtoa_r+0x5a4>) + 800869e: eb03 03c9 add.w r3, r3, r9, lsl #3 + 80086a2: e9d3 3400 ldrd r3, r4, [r3] + 80086a6: e9cd 3406 strd r3, r4, [sp, #24] + 80086aa: 9b23 ldr r3, [sp, #140] ; 0x8c + 80086ac: 2b00 cmp r3, #0 + 80086ae: f280 80db bge.w 8008868 <_dtoa_r+0x658> + 80086b2: 9b02 ldr r3, [sp, #8] + 80086b4: 2b00 cmp r3, #0 + 80086b6: f300 80d7 bgt.w 8008868 <_dtoa_r+0x658> + 80086ba: f040 8274 bne.w 8008ba6 <_dtoa_r+0x996> + 80086be: e9dd 0106 ldrd r0, r1, [sp, #24] + 80086c2: 2200 movs r2, #0 + 80086c4: 4b40 ldr r3, [pc, #256] ; (80087c8 <_dtoa_r+0x5b8>) + 80086c6: f7f7 ff73 bl 80005b0 <__aeabi_dmul> + 80086ca: e9dd 2304 ldrd r2, r3, [sp, #16] + 80086ce: f7f8 f9f5 bl 8000abc <__aeabi_dcmpge> + 80086d2: 9c02 ldr r4, [sp, #8] + 80086d4: 4626 mov r6, r4 + 80086d6: 2800 cmp r0, #0 + 80086d8: f040 824a bne.w 8008b70 <_dtoa_r+0x960> + 80086dc: 2331 movs r3, #49 ; 0x31 + 80086de: 9f08 ldr r7, [sp, #32] + 80086e0: f109 0901 add.w r9, r9, #1 + 80086e4: f807 3b01 strb.w r3, [r7], #1 + 80086e8: e246 b.n 8008b78 <_dtoa_r+0x968> + 80086ea: 07e2 lsls r2, r4, #31 + 80086ec: d505 bpl.n 80086fa <_dtoa_r+0x4ea> + 80086ee: e9d6 2300 ldrd r2, r3, [r6] + 80086f2: f7f7 ff5d bl 80005b0 <__aeabi_dmul> + 80086f6: 2301 movs r3, #1 + 80086f8: 3701 adds r7, #1 + 80086fa: 1064 asrs r4, r4, #1 + 80086fc: 3608 adds r6, #8 + 80086fe: e76d b.n 80085dc <_dtoa_r+0x3cc> + 8008700: 2702 movs r7, #2 + 8008702: e770 b.n 80085e6 <_dtoa_r+0x3d6> + 8008704: 46c8 mov r8, r9 + 8008706: 9c02 ldr r4, [sp, #8] + 8008708: e78f b.n 800862a <_dtoa_r+0x41a> + 800870a: 9908 ldr r1, [sp, #32] + 800870c: 4b29 ldr r3, [pc, #164] ; (80087b4 <_dtoa_r+0x5a4>) + 800870e: 4421 add r1, r4 + 8008710: 9112 str r1, [sp, #72] ; 0x48 + 8008712: 990b ldr r1, [sp, #44] ; 0x2c + 8008714: eb03 03c4 add.w r3, r3, r4, lsl #3 + 8008718: e9dd 6710 ldrd r6, r7, [sp, #64] ; 0x40 + 800871c: e953 2302 ldrd r2, r3, [r3, #-8] + 8008720: 2900 cmp r1, #0 + 8008722: d055 beq.n 80087d0 <_dtoa_r+0x5c0> + 8008724: 2000 movs r0, #0 + 8008726: 4929 ldr r1, [pc, #164] ; (80087cc <_dtoa_r+0x5bc>) + 8008728: f7f8 f86c bl 8000804 <__aeabi_ddiv> + 800872c: 463b mov r3, r7 + 800872e: 4632 mov r2, r6 + 8008730: f7f7 fd86 bl 8000240 <__aeabi_dsub> + 8008734: e9cd 0110 strd r0, r1, [sp, #64] ; 0x40 + 8008738: 9f08 ldr r7, [sp, #32] + 800873a: e9dd 0104 ldrd r0, r1, [sp, #16] + 800873e: f7f8 f9e7 bl 8000b10 <__aeabi_d2iz> + 8008742: 4604 mov r4, r0 + 8008744: f7f7 feca bl 80004dc <__aeabi_i2d> + 8008748: 4602 mov r2, r0 + 800874a: 460b mov r3, r1 + 800874c: e9dd 0104 ldrd r0, r1, [sp, #16] + 8008750: f7f7 fd76 bl 8000240 <__aeabi_dsub> + 8008754: 4602 mov r2, r0 + 8008756: 460b mov r3, r1 + 8008758: 3430 adds r4, #48 ; 0x30 + 800875a: e9cd 2304 strd r2, r3, [sp, #16] + 800875e: e9dd 2310 ldrd r2, r3, [sp, #64] ; 0x40 + 8008762: f807 4b01 strb.w r4, [r7], #1 + 8008766: f7f8 f995 bl 8000a94 <__aeabi_dcmplt> + 800876a: 2800 cmp r0, #0 + 800876c: d174 bne.n 8008858 <_dtoa_r+0x648> + 800876e: e9dd 2304 ldrd r2, r3, [sp, #16] + 8008772: 2000 movs r0, #0 + 8008774: 4911 ldr r1, [pc, #68] ; (80087bc <_dtoa_r+0x5ac>) + 8008776: f7f7 fd63 bl 8000240 <__aeabi_dsub> + 800877a: e9dd 2310 ldrd r2, r3, [sp, #64] ; 0x40 + 800877e: f7f8 f989 bl 8000a94 <__aeabi_dcmplt> + 8008782: 2800 cmp r0, #0 + 8008784: f040 80b6 bne.w 80088f4 <_dtoa_r+0x6e4> + 8008788: 9b12 ldr r3, [sp, #72] ; 0x48 + 800878a: 429f cmp r7, r3 + 800878c: f43f af7a beq.w 8008684 <_dtoa_r+0x474> + 8008790: e9dd 0110 ldrd r0, r1, [sp, #64] ; 0x40 + 8008794: 2200 movs r2, #0 + 8008796: 4b0a ldr r3, [pc, #40] ; (80087c0 <_dtoa_r+0x5b0>) + 8008798: f7f7 ff0a bl 80005b0 <__aeabi_dmul> + 800879c: 2200 movs r2, #0 + 800879e: e9cd 0110 strd r0, r1, [sp, #64] ; 0x40 + 80087a2: e9dd 0104 ldrd r0, r1, [sp, #16] + 80087a6: 4b06 ldr r3, [pc, #24] ; (80087c0 <_dtoa_r+0x5b0>) + 80087a8: f7f7 ff02 bl 80005b0 <__aeabi_dmul> + 80087ac: e9cd 0104 strd r0, r1, [sp, #16] + 80087b0: e7c3 b.n 800873a <_dtoa_r+0x52a> + 80087b2: bf00 nop + 80087b4: 0800b098 .word 0x0800b098 + 80087b8: 0800b070 .word 0x0800b070 + 80087bc: 3ff00000 .word 0x3ff00000 + 80087c0: 40240000 .word 0x40240000 + 80087c4: 401c0000 .word 0x401c0000 + 80087c8: 40140000 .word 0x40140000 + 80087cc: 3fe00000 .word 0x3fe00000 + 80087d0: 4630 mov r0, r6 + 80087d2: 4639 mov r1, r7 + 80087d4: f7f7 feec bl 80005b0 <__aeabi_dmul> + 80087d8: 9b12 ldr r3, [sp, #72] ; 0x48 + 80087da: e9cd 0110 strd r0, r1, [sp, #64] ; 0x40 + 80087de: 9c08 ldr r4, [sp, #32] + 80087e0: 9314 str r3, [sp, #80] ; 0x50 + 80087e2: e9dd 0104 ldrd r0, r1, [sp, #16] + 80087e6: f7f8 f993 bl 8000b10 <__aeabi_d2iz> + 80087ea: 9015 str r0, [sp, #84] ; 0x54 + 80087ec: f7f7 fe76 bl 80004dc <__aeabi_i2d> + 80087f0: 4602 mov r2, r0 + 80087f2: 460b mov r3, r1 + 80087f4: e9dd 0104 ldrd r0, r1, [sp, #16] + 80087f8: f7f7 fd22 bl 8000240 <__aeabi_dsub> + 80087fc: 9b15 ldr r3, [sp, #84] ; 0x54 + 80087fe: 4606 mov r6, r0 + 8008800: 3330 adds r3, #48 ; 0x30 + 8008802: f804 3b01 strb.w r3, [r4], #1 + 8008806: 9b12 ldr r3, [sp, #72] ; 0x48 + 8008808: 460f mov r7, r1 + 800880a: 429c cmp r4, r3 + 800880c: f04f 0200 mov.w r2, #0 + 8008810: d124 bne.n 800885c <_dtoa_r+0x64c> + 8008812: e9dd 0110 ldrd r0, r1, [sp, #64] ; 0x40 + 8008816: 4bb3 ldr r3, [pc, #716] ; (8008ae4 <_dtoa_r+0x8d4>) + 8008818: f7f7 fd14 bl 8000244 <__adddf3> + 800881c: 4602 mov r2, r0 + 800881e: 460b mov r3, r1 + 8008820: 4630 mov r0, r6 + 8008822: 4639 mov r1, r7 + 8008824: f7f8 f954 bl 8000ad0 <__aeabi_dcmpgt> + 8008828: 2800 cmp r0, #0 + 800882a: d162 bne.n 80088f2 <_dtoa_r+0x6e2> + 800882c: e9dd 2310 ldrd r2, r3, [sp, #64] ; 0x40 + 8008830: 2000 movs r0, #0 + 8008832: 49ac ldr r1, [pc, #688] ; (8008ae4 <_dtoa_r+0x8d4>) + 8008834: f7f7 fd04 bl 8000240 <__aeabi_dsub> + 8008838: 4602 mov r2, r0 + 800883a: 460b mov r3, r1 + 800883c: 4630 mov r0, r6 + 800883e: 4639 mov r1, r7 + 8008840: f7f8 f928 bl 8000a94 <__aeabi_dcmplt> + 8008844: 2800 cmp r0, #0 + 8008846: f43f af1d beq.w 8008684 <_dtoa_r+0x474> + 800884a: 9f14 ldr r7, [sp, #80] ; 0x50 + 800884c: 1e7b subs r3, r7, #1 + 800884e: 9314 str r3, [sp, #80] ; 0x50 + 8008850: f817 3c01 ldrb.w r3, [r7, #-1] + 8008854: 2b30 cmp r3, #48 ; 0x30 + 8008856: d0f8 beq.n 800884a <_dtoa_r+0x63a> + 8008858: 46c1 mov r9, r8 + 800885a: e03a b.n 80088d2 <_dtoa_r+0x6c2> + 800885c: 4ba2 ldr r3, [pc, #648] ; (8008ae8 <_dtoa_r+0x8d8>) + 800885e: f7f7 fea7 bl 80005b0 <__aeabi_dmul> + 8008862: e9cd 0104 strd r0, r1, [sp, #16] + 8008866: e7bc b.n 80087e2 <_dtoa_r+0x5d2> + 8008868: 9f08 ldr r7, [sp, #32] + 800886a: e9dd 2306 ldrd r2, r3, [sp, #24] + 800886e: e9dd 0104 ldrd r0, r1, [sp, #16] + 8008872: f7f7 ffc7 bl 8000804 <__aeabi_ddiv> + 8008876: f7f8 f94b bl 8000b10 <__aeabi_d2iz> + 800887a: 4604 mov r4, r0 + 800887c: f7f7 fe2e bl 80004dc <__aeabi_i2d> + 8008880: e9dd 2306 ldrd r2, r3, [sp, #24] + 8008884: f7f7 fe94 bl 80005b0 <__aeabi_dmul> + 8008888: f104 0630 add.w r6, r4, #48 ; 0x30 + 800888c: 460b mov r3, r1 + 800888e: 4602 mov r2, r0 + 8008890: e9dd 0104 ldrd r0, r1, [sp, #16] + 8008894: f7f7 fcd4 bl 8000240 <__aeabi_dsub> + 8008898: f807 6b01 strb.w r6, [r7], #1 + 800889c: 9e08 ldr r6, [sp, #32] + 800889e: 9b02 ldr r3, [sp, #8] + 80088a0: 1bbe subs r6, r7, r6 + 80088a2: 42b3 cmp r3, r6 + 80088a4: d13a bne.n 800891c <_dtoa_r+0x70c> + 80088a6: 4602 mov r2, r0 + 80088a8: 460b mov r3, r1 + 80088aa: f7f7 fccb bl 8000244 <__adddf3> + 80088ae: 4602 mov r2, r0 + 80088b0: 460b mov r3, r1 + 80088b2: e9cd 2302 strd r2, r3, [sp, #8] + 80088b6: e9dd 2306 ldrd r2, r3, [sp, #24] + 80088ba: f7f8 f909 bl 8000ad0 <__aeabi_dcmpgt> + 80088be: bb58 cbnz r0, 8008918 <_dtoa_r+0x708> + 80088c0: e9dd 2306 ldrd r2, r3, [sp, #24] + 80088c4: e9dd 0102 ldrd r0, r1, [sp, #8] + 80088c8: f7f8 f8da bl 8000a80 <__aeabi_dcmpeq> + 80088cc: b108 cbz r0, 80088d2 <_dtoa_r+0x6c2> + 80088ce: 07e1 lsls r1, r4, #31 + 80088d0: d422 bmi.n 8008918 <_dtoa_r+0x708> + 80088d2: 4628 mov r0, r5 + 80088d4: 4651 mov r1, sl + 80088d6: f000 faf5 bl 8008ec4 <_Bfree> + 80088da: 2300 movs r3, #0 + 80088dc: 703b strb r3, [r7, #0] + 80088de: 9b24 ldr r3, [sp, #144] ; 0x90 + 80088e0: f109 0001 add.w r0, r9, #1 + 80088e4: 6018 str r0, [r3, #0] + 80088e6: 9b26 ldr r3, [sp, #152] ; 0x98 + 80088e8: 2b00 cmp r3, #0 + 80088ea: f43f acdf beq.w 80082ac <_dtoa_r+0x9c> + 80088ee: 601f str r7, [r3, #0] + 80088f0: e4dc b.n 80082ac <_dtoa_r+0x9c> + 80088f2: 4627 mov r7, r4 + 80088f4: 463b mov r3, r7 + 80088f6: 461f mov r7, r3 + 80088f8: f813 2d01 ldrb.w r2, [r3, #-1]! + 80088fc: 2a39 cmp r2, #57 ; 0x39 + 80088fe: d107 bne.n 8008910 <_dtoa_r+0x700> + 8008900: 9a08 ldr r2, [sp, #32] + 8008902: 429a cmp r2, r3 + 8008904: d1f7 bne.n 80088f6 <_dtoa_r+0x6e6> + 8008906: 2230 movs r2, #48 ; 0x30 + 8008908: 9908 ldr r1, [sp, #32] + 800890a: f108 0801 add.w r8, r8, #1 + 800890e: 700a strb r2, [r1, #0] + 8008910: 781a ldrb r2, [r3, #0] + 8008912: 3201 adds r2, #1 + 8008914: 701a strb r2, [r3, #0] + 8008916: e79f b.n 8008858 <_dtoa_r+0x648> + 8008918: 46c8 mov r8, r9 + 800891a: e7eb b.n 80088f4 <_dtoa_r+0x6e4> + 800891c: 2200 movs r2, #0 + 800891e: 4b72 ldr r3, [pc, #456] ; (8008ae8 <_dtoa_r+0x8d8>) + 8008920: f7f7 fe46 bl 80005b0 <__aeabi_dmul> + 8008924: 4602 mov r2, r0 + 8008926: 460b mov r3, r1 + 8008928: e9cd 2304 strd r2, r3, [sp, #16] + 800892c: 2200 movs r2, #0 + 800892e: 2300 movs r3, #0 + 8008930: f7f8 f8a6 bl 8000a80 <__aeabi_dcmpeq> + 8008934: 2800 cmp r0, #0 + 8008936: d098 beq.n 800886a <_dtoa_r+0x65a> + 8008938: e7cb b.n 80088d2 <_dtoa_r+0x6c2> + 800893a: 9a0b ldr r2, [sp, #44] ; 0x2c + 800893c: 2a00 cmp r2, #0 + 800893e: f000 80cd beq.w 8008adc <_dtoa_r+0x8cc> + 8008942: 9a22 ldr r2, [sp, #136] ; 0x88 + 8008944: 2a01 cmp r2, #1 + 8008946: f300 80af bgt.w 8008aa8 <_dtoa_r+0x898> + 800894a: 9a13 ldr r2, [sp, #76] ; 0x4c + 800894c: 2a00 cmp r2, #0 + 800894e: f000 80a7 beq.w 8008aa0 <_dtoa_r+0x890> + 8008952: f203 4333 addw r3, r3, #1075 ; 0x433 + 8008956: 9c0a ldr r4, [sp, #40] ; 0x28 + 8008958: 9f06 ldr r7, [sp, #24] + 800895a: 9a06 ldr r2, [sp, #24] + 800895c: 2101 movs r1, #1 + 800895e: 441a add r2, r3 + 8008960: 9206 str r2, [sp, #24] + 8008962: 9a09 ldr r2, [sp, #36] ; 0x24 + 8008964: 4628 mov r0, r5 + 8008966: 441a add r2, r3 + 8008968: 9209 str r2, [sp, #36] ; 0x24 + 800896a: f000 fb65 bl 8009038 <__i2b> + 800896e: 4606 mov r6, r0 + 8008970: 2f00 cmp r7, #0 + 8008972: dd0c ble.n 800898e <_dtoa_r+0x77e> + 8008974: 9b09 ldr r3, [sp, #36] ; 0x24 + 8008976: 2b00 cmp r3, #0 + 8008978: dd09 ble.n 800898e <_dtoa_r+0x77e> + 800897a: 42bb cmp r3, r7 + 800897c: bfa8 it ge + 800897e: 463b movge r3, r7 + 8008980: 9a06 ldr r2, [sp, #24] + 8008982: 1aff subs r7, r7, r3 + 8008984: 1ad2 subs r2, r2, r3 + 8008986: 9206 str r2, [sp, #24] + 8008988: 9a09 ldr r2, [sp, #36] ; 0x24 + 800898a: 1ad3 subs r3, r2, r3 + 800898c: 9309 str r3, [sp, #36] ; 0x24 + 800898e: 9b0a ldr r3, [sp, #40] ; 0x28 + 8008990: b1f3 cbz r3, 80089d0 <_dtoa_r+0x7c0> + 8008992: 9b0b ldr r3, [sp, #44] ; 0x2c + 8008994: 2b00 cmp r3, #0 + 8008996: f000 80a9 beq.w 8008aec <_dtoa_r+0x8dc> + 800899a: 2c00 cmp r4, #0 + 800899c: dd10 ble.n 80089c0 <_dtoa_r+0x7b0> + 800899e: 4631 mov r1, r6 + 80089a0: 4622 mov r2, r4 + 80089a2: 4628 mov r0, r5 + 80089a4: f000 fc02 bl 80091ac <__pow5mult> + 80089a8: 4652 mov r2, sl + 80089aa: 4601 mov r1, r0 + 80089ac: 4606 mov r6, r0 + 80089ae: 4628 mov r0, r5 + 80089b0: f000 fb58 bl 8009064 <__multiply> + 80089b4: 4680 mov r8, r0 + 80089b6: 4651 mov r1, sl + 80089b8: 4628 mov r0, r5 + 80089ba: f000 fa83 bl 8008ec4 <_Bfree> + 80089be: 46c2 mov sl, r8 + 80089c0: 9b0a ldr r3, [sp, #40] ; 0x28 + 80089c2: 1b1a subs r2, r3, r4 + 80089c4: d004 beq.n 80089d0 <_dtoa_r+0x7c0> + 80089c6: 4651 mov r1, sl + 80089c8: 4628 mov r0, r5 + 80089ca: f000 fbef bl 80091ac <__pow5mult> + 80089ce: 4682 mov sl, r0 + 80089d0: 2101 movs r1, #1 + 80089d2: 4628 mov r0, r5 + 80089d4: f000 fb30 bl 8009038 <__i2b> + 80089d8: 9b0e ldr r3, [sp, #56] ; 0x38 + 80089da: 4604 mov r4, r0 + 80089dc: 2b00 cmp r3, #0 + 80089de: f340 8087 ble.w 8008af0 <_dtoa_r+0x8e0> + 80089e2: 461a mov r2, r3 + 80089e4: 4601 mov r1, r0 + 80089e6: 4628 mov r0, r5 + 80089e8: f000 fbe0 bl 80091ac <__pow5mult> + 80089ec: 9b22 ldr r3, [sp, #136] ; 0x88 + 80089ee: 4604 mov r4, r0 + 80089f0: 2b01 cmp r3, #1 + 80089f2: f340 8080 ble.w 8008af6 <_dtoa_r+0x8e6> + 80089f6: f04f 0800 mov.w r8, #0 + 80089fa: 6923 ldr r3, [r4, #16] + 80089fc: eb04 0383 add.w r3, r4, r3, lsl #2 + 8008a00: 6918 ldr r0, [r3, #16] + 8008a02: f000 facb bl 8008f9c <__hi0bits> + 8008a06: f1c0 0020 rsb r0, r0, #32 + 8008a0a: 9b09 ldr r3, [sp, #36] ; 0x24 + 8008a0c: 4418 add r0, r3 + 8008a0e: f010 001f ands.w r0, r0, #31 + 8008a12: f000 8092 beq.w 8008b3a <_dtoa_r+0x92a> + 8008a16: f1c0 0320 rsb r3, r0, #32 + 8008a1a: 2b04 cmp r3, #4 + 8008a1c: f340 808a ble.w 8008b34 <_dtoa_r+0x924> + 8008a20: f1c0 001c rsb r0, r0, #28 + 8008a24: 9b06 ldr r3, [sp, #24] + 8008a26: 4407 add r7, r0 + 8008a28: 4403 add r3, r0 + 8008a2a: 9306 str r3, [sp, #24] + 8008a2c: 9b09 ldr r3, [sp, #36] ; 0x24 + 8008a2e: 4403 add r3, r0 + 8008a30: 9309 str r3, [sp, #36] ; 0x24 + 8008a32: 9b06 ldr r3, [sp, #24] + 8008a34: 2b00 cmp r3, #0 + 8008a36: dd05 ble.n 8008a44 <_dtoa_r+0x834> + 8008a38: 4651 mov r1, sl + 8008a3a: 461a mov r2, r3 + 8008a3c: 4628 mov r0, r5 + 8008a3e: f000 fc0f bl 8009260 <__lshift> + 8008a42: 4682 mov sl, r0 + 8008a44: 9b09 ldr r3, [sp, #36] ; 0x24 + 8008a46: 2b00 cmp r3, #0 + 8008a48: dd05 ble.n 8008a56 <_dtoa_r+0x846> + 8008a4a: 4621 mov r1, r4 + 8008a4c: 461a mov r2, r3 + 8008a4e: 4628 mov r0, r5 + 8008a50: f000 fc06 bl 8009260 <__lshift> + 8008a54: 4604 mov r4, r0 + 8008a56: 9b0f ldr r3, [sp, #60] ; 0x3c + 8008a58: 2b00 cmp r3, #0 + 8008a5a: d070 beq.n 8008b3e <_dtoa_r+0x92e> + 8008a5c: 4621 mov r1, r4 + 8008a5e: 4650 mov r0, sl + 8008a60: f000 fc6a bl 8009338 <__mcmp> + 8008a64: 2800 cmp r0, #0 + 8008a66: da6a bge.n 8008b3e <_dtoa_r+0x92e> + 8008a68: 2300 movs r3, #0 + 8008a6a: 4651 mov r1, sl + 8008a6c: 220a movs r2, #10 + 8008a6e: 4628 mov r0, r5 + 8008a70: f000 fa4a bl 8008f08 <__multadd> + 8008a74: 9b0b ldr r3, [sp, #44] ; 0x2c + 8008a76: 4682 mov sl, r0 + 8008a78: f109 39ff add.w r9, r9, #4294967295 ; 0xffffffff + 8008a7c: 2b00 cmp r3, #0 + 8008a7e: f000 8193 beq.w 8008da8 <_dtoa_r+0xb98> + 8008a82: 4631 mov r1, r6 + 8008a84: 2300 movs r3, #0 + 8008a86: 220a movs r2, #10 + 8008a88: 4628 mov r0, r5 + 8008a8a: f000 fa3d bl 8008f08 <__multadd> + 8008a8e: f1bb 0f00 cmp.w fp, #0 + 8008a92: 4606 mov r6, r0 + 8008a94: f300 8093 bgt.w 8008bbe <_dtoa_r+0x9ae> + 8008a98: 9b22 ldr r3, [sp, #136] ; 0x88 + 8008a9a: 2b02 cmp r3, #2 + 8008a9c: dc57 bgt.n 8008b4e <_dtoa_r+0x93e> + 8008a9e: e08e b.n 8008bbe <_dtoa_r+0x9ae> + 8008aa0: 9b16 ldr r3, [sp, #88] ; 0x58 + 8008aa2: f1c3 0336 rsb r3, r3, #54 ; 0x36 + 8008aa6: e756 b.n 8008956 <_dtoa_r+0x746> + 8008aa8: 9b02 ldr r3, [sp, #8] + 8008aaa: 1e5c subs r4, r3, #1 + 8008aac: 9b0a ldr r3, [sp, #40] ; 0x28 + 8008aae: 42a3 cmp r3, r4 + 8008ab0: bfb7 itett lt + 8008ab2: 9b0a ldrlt r3, [sp, #40] ; 0x28 + 8008ab4: 1b1c subge r4, r3, r4 + 8008ab6: 1ae2 sublt r2, r4, r3 + 8008ab8: 9b0e ldrlt r3, [sp, #56] ; 0x38 + 8008aba: bfbe ittt lt + 8008abc: 940a strlt r4, [sp, #40] ; 0x28 + 8008abe: 189b addlt r3, r3, r2 + 8008ac0: 930e strlt r3, [sp, #56] ; 0x38 + 8008ac2: 9b02 ldr r3, [sp, #8] + 8008ac4: bfb8 it lt + 8008ac6: 2400 movlt r4, #0 + 8008ac8: 2b00 cmp r3, #0 + 8008aca: bfbb ittet lt + 8008acc: 9b06 ldrlt r3, [sp, #24] + 8008ace: 9a02 ldrlt r2, [sp, #8] + 8008ad0: 9f06 ldrge r7, [sp, #24] + 8008ad2: 1a9f sublt r7, r3, r2 + 8008ad4: bfac ite ge + 8008ad6: 9b02 ldrge r3, [sp, #8] + 8008ad8: 2300 movlt r3, #0 + 8008ada: e73e b.n 800895a <_dtoa_r+0x74a> + 8008adc: 9c0a ldr r4, [sp, #40] ; 0x28 + 8008ade: 9f06 ldr r7, [sp, #24] + 8008ae0: 9e0b ldr r6, [sp, #44] ; 0x2c + 8008ae2: e745 b.n 8008970 <_dtoa_r+0x760> + 8008ae4: 3fe00000 .word 0x3fe00000 + 8008ae8: 40240000 .word 0x40240000 + 8008aec: 9a0a ldr r2, [sp, #40] ; 0x28 + 8008aee: e76a b.n 80089c6 <_dtoa_r+0x7b6> + 8008af0: 9b22 ldr r3, [sp, #136] ; 0x88 + 8008af2: 2b01 cmp r3, #1 + 8008af4: dc19 bgt.n 8008b2a <_dtoa_r+0x91a> + 8008af6: 9b04 ldr r3, [sp, #16] + 8008af8: b9bb cbnz r3, 8008b2a <_dtoa_r+0x91a> + 8008afa: 9b05 ldr r3, [sp, #20] + 8008afc: f3c3 0313 ubfx r3, r3, #0, #20 + 8008b00: b99b cbnz r3, 8008b2a <_dtoa_r+0x91a> + 8008b02: 9b05 ldr r3, [sp, #20] + 8008b04: f023 4300 bic.w r3, r3, #2147483648 ; 0x80000000 + 8008b08: 0d1b lsrs r3, r3, #20 + 8008b0a: 051b lsls r3, r3, #20 + 8008b0c: b183 cbz r3, 8008b30 <_dtoa_r+0x920> + 8008b0e: f04f 0801 mov.w r8, #1 + 8008b12: 9b06 ldr r3, [sp, #24] + 8008b14: 3301 adds r3, #1 + 8008b16: 9306 str r3, [sp, #24] + 8008b18: 9b09 ldr r3, [sp, #36] ; 0x24 + 8008b1a: 3301 adds r3, #1 + 8008b1c: 9309 str r3, [sp, #36] ; 0x24 + 8008b1e: 9b0e ldr r3, [sp, #56] ; 0x38 + 8008b20: 2b00 cmp r3, #0 + 8008b22: f47f af6a bne.w 80089fa <_dtoa_r+0x7ea> + 8008b26: 2001 movs r0, #1 + 8008b28: e76f b.n 8008a0a <_dtoa_r+0x7fa> + 8008b2a: f04f 0800 mov.w r8, #0 + 8008b2e: e7f6 b.n 8008b1e <_dtoa_r+0x90e> + 8008b30: 4698 mov r8, r3 + 8008b32: e7f4 b.n 8008b1e <_dtoa_r+0x90e> + 8008b34: f43f af7d beq.w 8008a32 <_dtoa_r+0x822> + 8008b38: 4618 mov r0, r3 + 8008b3a: 301c adds r0, #28 + 8008b3c: e772 b.n 8008a24 <_dtoa_r+0x814> + 8008b3e: 9b02 ldr r3, [sp, #8] + 8008b40: 2b00 cmp r3, #0 + 8008b42: dc36 bgt.n 8008bb2 <_dtoa_r+0x9a2> + 8008b44: 9b22 ldr r3, [sp, #136] ; 0x88 + 8008b46: 2b02 cmp r3, #2 + 8008b48: dd33 ble.n 8008bb2 <_dtoa_r+0x9a2> + 8008b4a: f8dd b008 ldr.w fp, [sp, #8] + 8008b4e: f1bb 0f00 cmp.w fp, #0 + 8008b52: d10d bne.n 8008b70 <_dtoa_r+0x960> + 8008b54: 4621 mov r1, r4 + 8008b56: 465b mov r3, fp + 8008b58: 2205 movs r2, #5 + 8008b5a: 4628 mov r0, r5 + 8008b5c: f000 f9d4 bl 8008f08 <__multadd> + 8008b60: 4601 mov r1, r0 + 8008b62: 4604 mov r4, r0 + 8008b64: 4650 mov r0, sl + 8008b66: f000 fbe7 bl 8009338 <__mcmp> + 8008b6a: 2800 cmp r0, #0 + 8008b6c: f73f adb6 bgt.w 80086dc <_dtoa_r+0x4cc> + 8008b70: 9b23 ldr r3, [sp, #140] ; 0x8c + 8008b72: 9f08 ldr r7, [sp, #32] + 8008b74: ea6f 0903 mvn.w r9, r3 + 8008b78: f04f 0800 mov.w r8, #0 + 8008b7c: 4621 mov r1, r4 + 8008b7e: 4628 mov r0, r5 + 8008b80: f000 f9a0 bl 8008ec4 <_Bfree> + 8008b84: 2e00 cmp r6, #0 + 8008b86: f43f aea4 beq.w 80088d2 <_dtoa_r+0x6c2> + 8008b8a: f1b8 0f00 cmp.w r8, #0 + 8008b8e: d005 beq.n 8008b9c <_dtoa_r+0x98c> + 8008b90: 45b0 cmp r8, r6 + 8008b92: d003 beq.n 8008b9c <_dtoa_r+0x98c> + 8008b94: 4641 mov r1, r8 + 8008b96: 4628 mov r0, r5 + 8008b98: f000 f994 bl 8008ec4 <_Bfree> + 8008b9c: 4631 mov r1, r6 + 8008b9e: 4628 mov r0, r5 + 8008ba0: f000 f990 bl 8008ec4 <_Bfree> + 8008ba4: e695 b.n 80088d2 <_dtoa_r+0x6c2> + 8008ba6: 2400 movs r4, #0 + 8008ba8: 4626 mov r6, r4 + 8008baa: e7e1 b.n 8008b70 <_dtoa_r+0x960> + 8008bac: 46c1 mov r9, r8 + 8008bae: 4626 mov r6, r4 + 8008bb0: e594 b.n 80086dc <_dtoa_r+0x4cc> + 8008bb2: 9b0b ldr r3, [sp, #44] ; 0x2c + 8008bb4: f8dd b008 ldr.w fp, [sp, #8] + 8008bb8: 2b00 cmp r3, #0 + 8008bba: f000 80fc beq.w 8008db6 <_dtoa_r+0xba6> + 8008bbe: 2f00 cmp r7, #0 + 8008bc0: dd05 ble.n 8008bce <_dtoa_r+0x9be> + 8008bc2: 4631 mov r1, r6 + 8008bc4: 463a mov r2, r7 + 8008bc6: 4628 mov r0, r5 + 8008bc8: f000 fb4a bl 8009260 <__lshift> + 8008bcc: 4606 mov r6, r0 + 8008bce: f1b8 0f00 cmp.w r8, #0 + 8008bd2: d05c beq.n 8008c8e <_dtoa_r+0xa7e> + 8008bd4: 4628 mov r0, r5 + 8008bd6: 6871 ldr r1, [r6, #4] + 8008bd8: f000 f934 bl 8008e44 <_Balloc> + 8008bdc: 4607 mov r7, r0 + 8008bde: b928 cbnz r0, 8008bec <_dtoa_r+0x9dc> + 8008be0: 4602 mov r2, r0 + 8008be2: f240 21ea movw r1, #746 ; 0x2ea + 8008be6: 4b7e ldr r3, [pc, #504] ; (8008de0 <_dtoa_r+0xbd0>) + 8008be8: f7ff bb26 b.w 8008238 <_dtoa_r+0x28> + 8008bec: 6932 ldr r2, [r6, #16] + 8008bee: f106 010c add.w r1, r6, #12 + 8008bf2: 3202 adds r2, #2 + 8008bf4: 0092 lsls r2, r2, #2 + 8008bf6: 300c adds r0, #12 + 8008bf8: f000 f90a bl 8008e10 + 8008bfc: 2201 movs r2, #1 + 8008bfe: 4639 mov r1, r7 + 8008c00: 4628 mov r0, r5 + 8008c02: f000 fb2d bl 8009260 <__lshift> + 8008c06: 46b0 mov r8, r6 + 8008c08: 4606 mov r6, r0 + 8008c0a: 9b08 ldr r3, [sp, #32] + 8008c0c: 3301 adds r3, #1 + 8008c0e: 9302 str r3, [sp, #8] + 8008c10: 9b08 ldr r3, [sp, #32] + 8008c12: 445b add r3, fp + 8008c14: 930a str r3, [sp, #40] ; 0x28 + 8008c16: 9b04 ldr r3, [sp, #16] + 8008c18: f003 0301 and.w r3, r3, #1 + 8008c1c: 9309 str r3, [sp, #36] ; 0x24 + 8008c1e: 9b02 ldr r3, [sp, #8] + 8008c20: 4621 mov r1, r4 + 8008c22: 4650 mov r0, sl + 8008c24: f103 3bff add.w fp, r3, #4294967295 ; 0xffffffff + 8008c28: f7ff fa64 bl 80080f4 + 8008c2c: 4603 mov r3, r0 + 8008c2e: 4641 mov r1, r8 + 8008c30: 3330 adds r3, #48 ; 0x30 + 8008c32: 9004 str r0, [sp, #16] + 8008c34: 4650 mov r0, sl + 8008c36: 930b str r3, [sp, #44] ; 0x2c + 8008c38: f000 fb7e bl 8009338 <__mcmp> + 8008c3c: 4632 mov r2, r6 + 8008c3e: 9006 str r0, [sp, #24] + 8008c40: 4621 mov r1, r4 + 8008c42: 4628 mov r0, r5 + 8008c44: f000 fb94 bl 8009370 <__mdiff> + 8008c48: 68c2 ldr r2, [r0, #12] + 8008c4a: 4607 mov r7, r0 + 8008c4c: 9b0b ldr r3, [sp, #44] ; 0x2c + 8008c4e: bb02 cbnz r2, 8008c92 <_dtoa_r+0xa82> + 8008c50: 4601 mov r1, r0 + 8008c52: 4650 mov r0, sl + 8008c54: f000 fb70 bl 8009338 <__mcmp> + 8008c58: 4602 mov r2, r0 + 8008c5a: 9b0b ldr r3, [sp, #44] ; 0x2c + 8008c5c: 4639 mov r1, r7 + 8008c5e: 4628 mov r0, r5 + 8008c60: e9cd 320b strd r3, r2, [sp, #44] ; 0x2c + 8008c64: f000 f92e bl 8008ec4 <_Bfree> + 8008c68: 9b22 ldr r3, [sp, #136] ; 0x88 + 8008c6a: 9a0c ldr r2, [sp, #48] ; 0x30 + 8008c6c: 9f02 ldr r7, [sp, #8] + 8008c6e: ea43 0102 orr.w r1, r3, r2 + 8008c72: 9b09 ldr r3, [sp, #36] ; 0x24 + 8008c74: 430b orrs r3, r1 + 8008c76: 9b0b ldr r3, [sp, #44] ; 0x2c + 8008c78: d10d bne.n 8008c96 <_dtoa_r+0xa86> + 8008c7a: 2b39 cmp r3, #57 ; 0x39 + 8008c7c: d027 beq.n 8008cce <_dtoa_r+0xabe> + 8008c7e: 9a06 ldr r2, [sp, #24] + 8008c80: 2a00 cmp r2, #0 + 8008c82: dd01 ble.n 8008c88 <_dtoa_r+0xa78> + 8008c84: 9b04 ldr r3, [sp, #16] + 8008c86: 3331 adds r3, #49 ; 0x31 + 8008c88: f88b 3000 strb.w r3, [fp] + 8008c8c: e776 b.n 8008b7c <_dtoa_r+0x96c> + 8008c8e: 4630 mov r0, r6 + 8008c90: e7b9 b.n 8008c06 <_dtoa_r+0x9f6> + 8008c92: 2201 movs r2, #1 + 8008c94: e7e2 b.n 8008c5c <_dtoa_r+0xa4c> + 8008c96: 9906 ldr r1, [sp, #24] + 8008c98: 2900 cmp r1, #0 + 8008c9a: db04 blt.n 8008ca6 <_dtoa_r+0xa96> + 8008c9c: 9822 ldr r0, [sp, #136] ; 0x88 + 8008c9e: 4301 orrs r1, r0 + 8008ca0: 9809 ldr r0, [sp, #36] ; 0x24 + 8008ca2: 4301 orrs r1, r0 + 8008ca4: d120 bne.n 8008ce8 <_dtoa_r+0xad8> + 8008ca6: 2a00 cmp r2, #0 + 8008ca8: ddee ble.n 8008c88 <_dtoa_r+0xa78> + 8008caa: 4651 mov r1, sl + 8008cac: 2201 movs r2, #1 + 8008cae: 4628 mov r0, r5 + 8008cb0: 9302 str r3, [sp, #8] + 8008cb2: f000 fad5 bl 8009260 <__lshift> + 8008cb6: 4621 mov r1, r4 + 8008cb8: 4682 mov sl, r0 + 8008cba: f000 fb3d bl 8009338 <__mcmp> + 8008cbe: 2800 cmp r0, #0 + 8008cc0: 9b02 ldr r3, [sp, #8] + 8008cc2: dc02 bgt.n 8008cca <_dtoa_r+0xaba> + 8008cc4: d1e0 bne.n 8008c88 <_dtoa_r+0xa78> + 8008cc6: 07da lsls r2, r3, #31 + 8008cc8: d5de bpl.n 8008c88 <_dtoa_r+0xa78> + 8008cca: 2b39 cmp r3, #57 ; 0x39 + 8008ccc: d1da bne.n 8008c84 <_dtoa_r+0xa74> + 8008cce: 2339 movs r3, #57 ; 0x39 + 8008cd0: f88b 3000 strb.w r3, [fp] + 8008cd4: 463b mov r3, r7 + 8008cd6: 461f mov r7, r3 + 8008cd8: f817 2c01 ldrb.w r2, [r7, #-1] + 8008cdc: 3b01 subs r3, #1 + 8008cde: 2a39 cmp r2, #57 ; 0x39 + 8008ce0: d050 beq.n 8008d84 <_dtoa_r+0xb74> + 8008ce2: 3201 adds r2, #1 + 8008ce4: 701a strb r2, [r3, #0] + 8008ce6: e749 b.n 8008b7c <_dtoa_r+0x96c> + 8008ce8: 2a00 cmp r2, #0 + 8008cea: dd03 ble.n 8008cf4 <_dtoa_r+0xae4> + 8008cec: 2b39 cmp r3, #57 ; 0x39 + 8008cee: d0ee beq.n 8008cce <_dtoa_r+0xabe> + 8008cf0: 3301 adds r3, #1 + 8008cf2: e7c9 b.n 8008c88 <_dtoa_r+0xa78> + 8008cf4: 9a02 ldr r2, [sp, #8] + 8008cf6: 990a ldr r1, [sp, #40] ; 0x28 + 8008cf8: f802 3c01 strb.w r3, [r2, #-1] + 8008cfc: 428a cmp r2, r1 + 8008cfe: d02a beq.n 8008d56 <_dtoa_r+0xb46> + 8008d00: 4651 mov r1, sl + 8008d02: 2300 movs r3, #0 + 8008d04: 220a movs r2, #10 + 8008d06: 4628 mov r0, r5 + 8008d08: f000 f8fe bl 8008f08 <__multadd> + 8008d0c: 45b0 cmp r8, r6 + 8008d0e: 4682 mov sl, r0 + 8008d10: f04f 0300 mov.w r3, #0 + 8008d14: f04f 020a mov.w r2, #10 + 8008d18: 4641 mov r1, r8 + 8008d1a: 4628 mov r0, r5 + 8008d1c: d107 bne.n 8008d2e <_dtoa_r+0xb1e> + 8008d1e: f000 f8f3 bl 8008f08 <__multadd> + 8008d22: 4680 mov r8, r0 + 8008d24: 4606 mov r6, r0 + 8008d26: 9b02 ldr r3, [sp, #8] + 8008d28: 3301 adds r3, #1 + 8008d2a: 9302 str r3, [sp, #8] + 8008d2c: e777 b.n 8008c1e <_dtoa_r+0xa0e> + 8008d2e: f000 f8eb bl 8008f08 <__multadd> + 8008d32: 4631 mov r1, r6 + 8008d34: 4680 mov r8, r0 + 8008d36: 2300 movs r3, #0 + 8008d38: 220a movs r2, #10 + 8008d3a: 4628 mov r0, r5 + 8008d3c: f000 f8e4 bl 8008f08 <__multadd> + 8008d40: 4606 mov r6, r0 + 8008d42: e7f0 b.n 8008d26 <_dtoa_r+0xb16> + 8008d44: f1bb 0f00 cmp.w fp, #0 + 8008d48: bfcc ite gt + 8008d4a: 465f movgt r7, fp + 8008d4c: 2701 movle r7, #1 + 8008d4e: f04f 0800 mov.w r8, #0 + 8008d52: 9a08 ldr r2, [sp, #32] + 8008d54: 4417 add r7, r2 + 8008d56: 4651 mov r1, sl + 8008d58: 2201 movs r2, #1 + 8008d5a: 4628 mov r0, r5 + 8008d5c: 9302 str r3, [sp, #8] + 8008d5e: f000 fa7f bl 8009260 <__lshift> + 8008d62: 4621 mov r1, r4 + 8008d64: 4682 mov sl, r0 + 8008d66: f000 fae7 bl 8009338 <__mcmp> + 8008d6a: 2800 cmp r0, #0 + 8008d6c: dcb2 bgt.n 8008cd4 <_dtoa_r+0xac4> + 8008d6e: d102 bne.n 8008d76 <_dtoa_r+0xb66> + 8008d70: 9b02 ldr r3, [sp, #8] + 8008d72: 07db lsls r3, r3, #31 + 8008d74: d4ae bmi.n 8008cd4 <_dtoa_r+0xac4> + 8008d76: 463b mov r3, r7 + 8008d78: 461f mov r7, r3 + 8008d7a: f813 2d01 ldrb.w r2, [r3, #-1]! + 8008d7e: 2a30 cmp r2, #48 ; 0x30 + 8008d80: d0fa beq.n 8008d78 <_dtoa_r+0xb68> + 8008d82: e6fb b.n 8008b7c <_dtoa_r+0x96c> + 8008d84: 9a08 ldr r2, [sp, #32] + 8008d86: 429a cmp r2, r3 + 8008d88: d1a5 bne.n 8008cd6 <_dtoa_r+0xac6> + 8008d8a: 2331 movs r3, #49 ; 0x31 + 8008d8c: f109 0901 add.w r9, r9, #1 + 8008d90: 7013 strb r3, [r2, #0] + 8008d92: e6f3 b.n 8008b7c <_dtoa_r+0x96c> + 8008d94: 4b13 ldr r3, [pc, #76] ; (8008de4 <_dtoa_r+0xbd4>) + 8008d96: f7ff baa7 b.w 80082e8 <_dtoa_r+0xd8> + 8008d9a: 9b26 ldr r3, [sp, #152] ; 0x98 + 8008d9c: 2b00 cmp r3, #0 + 8008d9e: f47f aa80 bne.w 80082a2 <_dtoa_r+0x92> + 8008da2: 4b11 ldr r3, [pc, #68] ; (8008de8 <_dtoa_r+0xbd8>) + 8008da4: f7ff baa0 b.w 80082e8 <_dtoa_r+0xd8> + 8008da8: f1bb 0f00 cmp.w fp, #0 + 8008dac: dc03 bgt.n 8008db6 <_dtoa_r+0xba6> + 8008dae: 9b22 ldr r3, [sp, #136] ; 0x88 + 8008db0: 2b02 cmp r3, #2 + 8008db2: f73f aecc bgt.w 8008b4e <_dtoa_r+0x93e> + 8008db6: 9f08 ldr r7, [sp, #32] + 8008db8: 4621 mov r1, r4 + 8008dba: 4650 mov r0, sl + 8008dbc: f7ff f99a bl 80080f4 + 8008dc0: 9a08 ldr r2, [sp, #32] + 8008dc2: f100 0330 add.w r3, r0, #48 ; 0x30 + 8008dc6: f807 3b01 strb.w r3, [r7], #1 + 8008dca: 1aba subs r2, r7, r2 + 8008dcc: 4593 cmp fp, r2 + 8008dce: ddb9 ble.n 8008d44 <_dtoa_r+0xb34> + 8008dd0: 4651 mov r1, sl + 8008dd2: 2300 movs r3, #0 + 8008dd4: 220a movs r2, #10 + 8008dd6: 4628 mov r0, r5 + 8008dd8: f000 f896 bl 8008f08 <__multadd> + 8008ddc: 4682 mov sl, r0 + 8008dde: e7eb b.n 8008db8 <_dtoa_r+0xba8> + 8008de0: 0800afff .word 0x0800afff + 8008de4: 0800af58 .word 0x0800af58 + 8008de8: 0800af7c .word 0x0800af7c -08008754 <_localeconv_r>: - 8008754: 4800 ldr r0, [pc, #0] ; (8008758 <_localeconv_r+0x4>) - 8008756: 4770 bx lr - 8008758: 20000160 .word 0x20000160 +08008dec <_localeconv_r>: + 8008dec: 4800 ldr r0, [pc, #0] ; (8008df0 <_localeconv_r+0x4>) + 8008dee: 4770 bx lr + 8008df0: 20000168 .word 0x20000168 -0800875c : - 800875c: 4603 mov r3, r0 - 800875e: b510 push {r4, lr} - 8008760: b2c9 uxtb r1, r1 - 8008762: 4402 add r2, r0 - 8008764: 4293 cmp r3, r2 - 8008766: 4618 mov r0, r3 - 8008768: d101 bne.n 800876e - 800876a: 2000 movs r0, #0 - 800876c: e003 b.n 8008776 - 800876e: 7804 ldrb r4, [r0, #0] - 8008770: 3301 adds r3, #1 - 8008772: 428c cmp r4, r1 - 8008774: d1f6 bne.n 8008764 - 8008776: bd10 pop {r4, pc} +08008df4 : + 8008df4: 4603 mov r3, r0 + 8008df6: b510 push {r4, lr} + 8008df8: b2c9 uxtb r1, r1 + 8008dfa: 4402 add r2, r0 + 8008dfc: 4293 cmp r3, r2 + 8008dfe: 4618 mov r0, r3 + 8008e00: d101 bne.n 8008e06 + 8008e02: 2000 movs r0, #0 + 8008e04: e003 b.n 8008e0e + 8008e06: 7804 ldrb r4, [r0, #0] + 8008e08: 3301 adds r3, #1 + 8008e0a: 428c cmp r4, r1 + 8008e0c: d1f6 bne.n 8008dfc + 8008e0e: bd10 pop {r4, pc} -08008778 : - 8008778: 440a add r2, r1 - 800877a: 4291 cmp r1, r2 - 800877c: f100 33ff add.w r3, r0, #4294967295 ; 0xffffffff - 8008780: d100 bne.n 8008784 - 8008782: 4770 bx lr - 8008784: b510 push {r4, lr} - 8008786: f811 4b01 ldrb.w r4, [r1], #1 - 800878a: 4291 cmp r1, r2 - 800878c: f803 4f01 strb.w r4, [r3, #1]! - 8008790: d1f9 bne.n 8008786 - 8008792: bd10 pop {r4, pc} +08008e10 : + 8008e10: 440a add r2, r1 + 8008e12: 4291 cmp r1, r2 + 8008e14: f100 33ff add.w r3, r0, #4294967295 ; 0xffffffff + 8008e18: d100 bne.n 8008e1c + 8008e1a: 4770 bx lr + 8008e1c: b510 push {r4, lr} + 8008e1e: f811 4b01 ldrb.w r4, [r1], #1 + 8008e22: 4291 cmp r1, r2 + 8008e24: f803 4f01 strb.w r4, [r3, #1]! + 8008e28: d1f9 bne.n 8008e1e + 8008e2a: bd10 pop {r4, pc} -08008794 <__malloc_lock>: - 8008794: 4801 ldr r0, [pc, #4] ; (800879c <__malloc_lock+0x8>) - 8008796: f000 bd26 b.w 80091e6 <__retarget_lock_acquire_recursive> - 800879a: bf00 nop - 800879c: 200024f4 .word 0x200024f4 +08008e2c <__malloc_lock>: + 8008e2c: 4801 ldr r0, [pc, #4] ; (8008e34 <__malloc_lock+0x8>) + 8008e2e: f000 bd26 b.w 800987e <__retarget_lock_acquire_recursive> + 8008e32: bf00 nop + 8008e34: 2000253c .word 0x2000253c -080087a0 <__malloc_unlock>: - 80087a0: 4801 ldr r0, [pc, #4] ; (80087a8 <__malloc_unlock+0x8>) - 80087a2: f000 bd21 b.w 80091e8 <__retarget_lock_release_recursive> - 80087a6: bf00 nop - 80087a8: 200024f4 .word 0x200024f4 +08008e38 <__malloc_unlock>: + 8008e38: 4801 ldr r0, [pc, #4] ; (8008e40 <__malloc_unlock+0x8>) + 8008e3a: f000 bd21 b.w 8009880 <__retarget_lock_release_recursive> + 8008e3e: bf00 nop + 8008e40: 2000253c .word 0x2000253c -080087ac <_Balloc>: - 80087ac: b570 push {r4, r5, r6, lr} - 80087ae: 6a46 ldr r6, [r0, #36] ; 0x24 - 80087b0: 4604 mov r4, r0 - 80087b2: 460d mov r5, r1 - 80087b4: b976 cbnz r6, 80087d4 <_Balloc+0x28> - 80087b6: 2010 movs r0, #16 - 80087b8: f7fe fc00 bl 8006fbc - 80087bc: 4602 mov r2, r0 - 80087be: 6260 str r0, [r4, #36] ; 0x24 - 80087c0: b920 cbnz r0, 80087cc <_Balloc+0x20> - 80087c2: 2166 movs r1, #102 ; 0x66 - 80087c4: 4b17 ldr r3, [pc, #92] ; (8008824 <_Balloc+0x78>) - 80087c6: 4818 ldr r0, [pc, #96] ; (8008828 <_Balloc+0x7c>) - 80087c8: f000 fcdc bl 8009184 <__assert_func> - 80087cc: e9c0 6601 strd r6, r6, [r0, #4] - 80087d0: 6006 str r6, [r0, #0] - 80087d2: 60c6 str r6, [r0, #12] - 80087d4: 6a66 ldr r6, [r4, #36] ; 0x24 - 80087d6: 68f3 ldr r3, [r6, #12] - 80087d8: b183 cbz r3, 80087fc <_Balloc+0x50> - 80087da: 6a63 ldr r3, [r4, #36] ; 0x24 - 80087dc: 68db ldr r3, [r3, #12] - 80087de: f853 0025 ldr.w r0, [r3, r5, lsl #2] - 80087e2: b9b8 cbnz r0, 8008814 <_Balloc+0x68> - 80087e4: 2101 movs r1, #1 - 80087e6: fa01 f605 lsl.w r6, r1, r5 - 80087ea: 1d72 adds r2, r6, #5 - 80087ec: 4620 mov r0, r4 - 80087ee: 0092 lsls r2, r2, #2 - 80087f0: f000 fb5e bl 8008eb0 <_calloc_r> - 80087f4: b160 cbz r0, 8008810 <_Balloc+0x64> - 80087f6: e9c0 5601 strd r5, r6, [r0, #4] - 80087fa: e00e b.n 800881a <_Balloc+0x6e> - 80087fc: 2221 movs r2, #33 ; 0x21 - 80087fe: 2104 movs r1, #4 - 8008800: 4620 mov r0, r4 - 8008802: f000 fb55 bl 8008eb0 <_calloc_r> - 8008806: 6a63 ldr r3, [r4, #36] ; 0x24 - 8008808: 60f0 str r0, [r6, #12] - 800880a: 68db ldr r3, [r3, #12] - 800880c: 2b00 cmp r3, #0 - 800880e: d1e4 bne.n 80087da <_Balloc+0x2e> - 8008810: 2000 movs r0, #0 - 8008812: bd70 pop {r4, r5, r6, pc} - 8008814: 6802 ldr r2, [r0, #0] - 8008816: f843 2025 str.w r2, [r3, r5, lsl #2] - 800881a: 2300 movs r3, #0 - 800881c: e9c0 3303 strd r3, r3, [r0, #12] - 8008820: e7f7 b.n 8008812 <_Balloc+0x66> - 8008822: bf00 nop - 8008824: 0800a8b9 .word 0x0800a8b9 - 8008828: 0800a940 .word 0x0800a940 +08008e44 <_Balloc>: + 8008e44: b570 push {r4, r5, r6, lr} + 8008e46: 6a46 ldr r6, [r0, #36] ; 0x24 + 8008e48: 4604 mov r4, r0 + 8008e4a: 460d mov r5, r1 + 8008e4c: b976 cbnz r6, 8008e6c <_Balloc+0x28> + 8008e4e: 2010 movs r0, #16 + 8008e50: f7fe fc02 bl 8007658 + 8008e54: 4602 mov r2, r0 + 8008e56: 6260 str r0, [r4, #36] ; 0x24 + 8008e58: b920 cbnz r0, 8008e64 <_Balloc+0x20> + 8008e5a: 2166 movs r1, #102 ; 0x66 + 8008e5c: 4b17 ldr r3, [pc, #92] ; (8008ebc <_Balloc+0x78>) + 8008e5e: 4818 ldr r0, [pc, #96] ; (8008ec0 <_Balloc+0x7c>) + 8008e60: f000 fcdc bl 800981c <__assert_func> + 8008e64: e9c0 6601 strd r6, r6, [r0, #4] + 8008e68: 6006 str r6, [r0, #0] + 8008e6a: 60c6 str r6, [r0, #12] + 8008e6c: 6a66 ldr r6, [r4, #36] ; 0x24 + 8008e6e: 68f3 ldr r3, [r6, #12] + 8008e70: b183 cbz r3, 8008e94 <_Balloc+0x50> + 8008e72: 6a63 ldr r3, [r4, #36] ; 0x24 + 8008e74: 68db ldr r3, [r3, #12] + 8008e76: f853 0025 ldr.w r0, [r3, r5, lsl #2] + 8008e7a: b9b8 cbnz r0, 8008eac <_Balloc+0x68> + 8008e7c: 2101 movs r1, #1 + 8008e7e: fa01 f605 lsl.w r6, r1, r5 + 8008e82: 1d72 adds r2, r6, #5 + 8008e84: 4620 mov r0, r4 + 8008e86: 0092 lsls r2, r2, #2 + 8008e88: f000 fb5e bl 8009548 <_calloc_r> + 8008e8c: b160 cbz r0, 8008ea8 <_Balloc+0x64> + 8008e8e: e9c0 5601 strd r5, r6, [r0, #4] + 8008e92: e00e b.n 8008eb2 <_Balloc+0x6e> + 8008e94: 2221 movs r2, #33 ; 0x21 + 8008e96: 2104 movs r1, #4 + 8008e98: 4620 mov r0, r4 + 8008e9a: f000 fb55 bl 8009548 <_calloc_r> + 8008e9e: 6a63 ldr r3, [r4, #36] ; 0x24 + 8008ea0: 60f0 str r0, [r6, #12] + 8008ea2: 68db ldr r3, [r3, #12] + 8008ea4: 2b00 cmp r3, #0 + 8008ea6: d1e4 bne.n 8008e72 <_Balloc+0x2e> + 8008ea8: 2000 movs r0, #0 + 8008eaa: bd70 pop {r4, r5, r6, pc} + 8008eac: 6802 ldr r2, [r0, #0] + 8008eae: f843 2025 str.w r2, [r3, r5, lsl #2] + 8008eb2: 2300 movs r3, #0 + 8008eb4: e9c0 3303 strd r3, r3, [r0, #12] + 8008eb8: e7f7 b.n 8008eaa <_Balloc+0x66> + 8008eba: bf00 nop + 8008ebc: 0800af89 .word 0x0800af89 + 8008ec0: 0800b010 .word 0x0800b010 -0800882c <_Bfree>: - 800882c: b570 push {r4, r5, r6, lr} - 800882e: 6a46 ldr r6, [r0, #36] ; 0x24 - 8008830: 4605 mov r5, r0 - 8008832: 460c mov r4, r1 - 8008834: b976 cbnz r6, 8008854 <_Bfree+0x28> - 8008836: 2010 movs r0, #16 - 8008838: f7fe fbc0 bl 8006fbc - 800883c: 4602 mov r2, r0 - 800883e: 6268 str r0, [r5, #36] ; 0x24 - 8008840: b920 cbnz r0, 800884c <_Bfree+0x20> - 8008842: 218a movs r1, #138 ; 0x8a - 8008844: 4b08 ldr r3, [pc, #32] ; (8008868 <_Bfree+0x3c>) - 8008846: 4809 ldr r0, [pc, #36] ; (800886c <_Bfree+0x40>) - 8008848: f000 fc9c bl 8009184 <__assert_func> - 800884c: e9c0 6601 strd r6, r6, [r0, #4] - 8008850: 6006 str r6, [r0, #0] - 8008852: 60c6 str r6, [r0, #12] - 8008854: b13c cbz r4, 8008866 <_Bfree+0x3a> - 8008856: 6a6b ldr r3, [r5, #36] ; 0x24 - 8008858: 6862 ldr r2, [r4, #4] - 800885a: 68db ldr r3, [r3, #12] - 800885c: f853 1022 ldr.w r1, [r3, r2, lsl #2] - 8008860: 6021 str r1, [r4, #0] - 8008862: f843 4022 str.w r4, [r3, r2, lsl #2] - 8008866: bd70 pop {r4, r5, r6, pc} - 8008868: 0800a8b9 .word 0x0800a8b9 - 800886c: 0800a940 .word 0x0800a940 +08008ec4 <_Bfree>: + 8008ec4: b570 push {r4, r5, r6, lr} + 8008ec6: 6a46 ldr r6, [r0, #36] ; 0x24 + 8008ec8: 4605 mov r5, r0 + 8008eca: 460c mov r4, r1 + 8008ecc: b976 cbnz r6, 8008eec <_Bfree+0x28> + 8008ece: 2010 movs r0, #16 + 8008ed0: f7fe fbc2 bl 8007658 + 8008ed4: 4602 mov r2, r0 + 8008ed6: 6268 str r0, [r5, #36] ; 0x24 + 8008ed8: b920 cbnz r0, 8008ee4 <_Bfree+0x20> + 8008eda: 218a movs r1, #138 ; 0x8a + 8008edc: 4b08 ldr r3, [pc, #32] ; (8008f00 <_Bfree+0x3c>) + 8008ede: 4809 ldr r0, [pc, #36] ; (8008f04 <_Bfree+0x40>) + 8008ee0: f000 fc9c bl 800981c <__assert_func> + 8008ee4: e9c0 6601 strd r6, r6, [r0, #4] + 8008ee8: 6006 str r6, [r0, #0] + 8008eea: 60c6 str r6, [r0, #12] + 8008eec: b13c cbz r4, 8008efe <_Bfree+0x3a> + 8008eee: 6a6b ldr r3, [r5, #36] ; 0x24 + 8008ef0: 6862 ldr r2, [r4, #4] + 8008ef2: 68db ldr r3, [r3, #12] + 8008ef4: f853 1022 ldr.w r1, [r3, r2, lsl #2] + 8008ef8: 6021 str r1, [r4, #0] + 8008efa: f843 4022 str.w r4, [r3, r2, lsl #2] + 8008efe: bd70 pop {r4, r5, r6, pc} + 8008f00: 0800af89 .word 0x0800af89 + 8008f04: 0800b010 .word 0x0800b010 -08008870 <__multadd>: - 8008870: e92d 41f0 stmdb sp!, {r4, r5, r6, r7, r8, lr} - 8008874: 4698 mov r8, r3 - 8008876: 460c mov r4, r1 - 8008878: 2300 movs r3, #0 - 800887a: 690e ldr r6, [r1, #16] - 800887c: 4607 mov r7, r0 - 800887e: f101 0014 add.w r0, r1, #20 - 8008882: 6805 ldr r5, [r0, #0] - 8008884: 3301 adds r3, #1 - 8008886: b2a9 uxth r1, r5 - 8008888: fb02 8101 mla r1, r2, r1, r8 - 800888c: 0c2d lsrs r5, r5, #16 - 800888e: ea4f 4c11 mov.w ip, r1, lsr #16 - 8008892: fb02 c505 mla r5, r2, r5, ip - 8008896: b289 uxth r1, r1 - 8008898: eb01 4105 add.w r1, r1, r5, lsl #16 - 800889c: 429e cmp r6, r3 - 800889e: ea4f 4815 mov.w r8, r5, lsr #16 - 80088a2: f840 1b04 str.w r1, [r0], #4 - 80088a6: dcec bgt.n 8008882 <__multadd+0x12> - 80088a8: f1b8 0f00 cmp.w r8, #0 - 80088ac: d022 beq.n 80088f4 <__multadd+0x84> - 80088ae: 68a3 ldr r3, [r4, #8] - 80088b0: 42b3 cmp r3, r6 - 80088b2: dc19 bgt.n 80088e8 <__multadd+0x78> - 80088b4: 6861 ldr r1, [r4, #4] - 80088b6: 4638 mov r0, r7 - 80088b8: 3101 adds r1, #1 - 80088ba: f7ff ff77 bl 80087ac <_Balloc> - 80088be: 4605 mov r5, r0 - 80088c0: b928 cbnz r0, 80088ce <__multadd+0x5e> - 80088c2: 4602 mov r2, r0 - 80088c4: 21b5 movs r1, #181 ; 0xb5 - 80088c6: 4b0d ldr r3, [pc, #52] ; (80088fc <__multadd+0x8c>) - 80088c8: 480d ldr r0, [pc, #52] ; (8008900 <__multadd+0x90>) - 80088ca: f000 fc5b bl 8009184 <__assert_func> - 80088ce: 6922 ldr r2, [r4, #16] - 80088d0: f104 010c add.w r1, r4, #12 - 80088d4: 3202 adds r2, #2 - 80088d6: 0092 lsls r2, r2, #2 - 80088d8: 300c adds r0, #12 - 80088da: f7ff ff4d bl 8008778 - 80088de: 4621 mov r1, r4 - 80088e0: 4638 mov r0, r7 - 80088e2: f7ff ffa3 bl 800882c <_Bfree> - 80088e6: 462c mov r4, r5 - 80088e8: eb04 0386 add.w r3, r4, r6, lsl #2 - 80088ec: 3601 adds r6, #1 - 80088ee: f8c3 8014 str.w r8, [r3, #20] - 80088f2: 6126 str r6, [r4, #16] - 80088f4: 4620 mov r0, r4 - 80088f6: e8bd 81f0 ldmia.w sp!, {r4, r5, r6, r7, r8, pc} - 80088fa: bf00 nop - 80088fc: 0800a92f .word 0x0800a92f - 8008900: 0800a940 .word 0x0800a940 +08008f08 <__multadd>: + 8008f08: e92d 41f0 stmdb sp!, {r4, r5, r6, r7, r8, lr} + 8008f0c: 4698 mov r8, r3 + 8008f0e: 460c mov r4, r1 + 8008f10: 2300 movs r3, #0 + 8008f12: 690e ldr r6, [r1, #16] + 8008f14: 4607 mov r7, r0 + 8008f16: f101 0014 add.w r0, r1, #20 + 8008f1a: 6805 ldr r5, [r0, #0] + 8008f1c: 3301 adds r3, #1 + 8008f1e: b2a9 uxth r1, r5 + 8008f20: fb02 8101 mla r1, r2, r1, r8 + 8008f24: 0c2d lsrs r5, r5, #16 + 8008f26: ea4f 4c11 mov.w ip, r1, lsr #16 + 8008f2a: fb02 c505 mla r5, r2, r5, ip + 8008f2e: b289 uxth r1, r1 + 8008f30: eb01 4105 add.w r1, r1, r5, lsl #16 + 8008f34: 429e cmp r6, r3 + 8008f36: ea4f 4815 mov.w r8, r5, lsr #16 + 8008f3a: f840 1b04 str.w r1, [r0], #4 + 8008f3e: dcec bgt.n 8008f1a <__multadd+0x12> + 8008f40: f1b8 0f00 cmp.w r8, #0 + 8008f44: d022 beq.n 8008f8c <__multadd+0x84> + 8008f46: 68a3 ldr r3, [r4, #8] + 8008f48: 42b3 cmp r3, r6 + 8008f4a: dc19 bgt.n 8008f80 <__multadd+0x78> + 8008f4c: 6861 ldr r1, [r4, #4] + 8008f4e: 4638 mov r0, r7 + 8008f50: 3101 adds r1, #1 + 8008f52: f7ff ff77 bl 8008e44 <_Balloc> + 8008f56: 4605 mov r5, r0 + 8008f58: b928 cbnz r0, 8008f66 <__multadd+0x5e> + 8008f5a: 4602 mov r2, r0 + 8008f5c: 21b5 movs r1, #181 ; 0xb5 + 8008f5e: 4b0d ldr r3, [pc, #52] ; (8008f94 <__multadd+0x8c>) + 8008f60: 480d ldr r0, [pc, #52] ; (8008f98 <__multadd+0x90>) + 8008f62: f000 fc5b bl 800981c <__assert_func> + 8008f66: 6922 ldr r2, [r4, #16] + 8008f68: f104 010c add.w r1, r4, #12 + 8008f6c: 3202 adds r2, #2 + 8008f6e: 0092 lsls r2, r2, #2 + 8008f70: 300c adds r0, #12 + 8008f72: f7ff ff4d bl 8008e10 + 8008f76: 4621 mov r1, r4 + 8008f78: 4638 mov r0, r7 + 8008f7a: f7ff ffa3 bl 8008ec4 <_Bfree> + 8008f7e: 462c mov r4, r5 + 8008f80: eb04 0386 add.w r3, r4, r6, lsl #2 + 8008f84: 3601 adds r6, #1 + 8008f86: f8c3 8014 str.w r8, [r3, #20] + 8008f8a: 6126 str r6, [r4, #16] + 8008f8c: 4620 mov r0, r4 + 8008f8e: e8bd 81f0 ldmia.w sp!, {r4, r5, r6, r7, r8, pc} + 8008f92: bf00 nop + 8008f94: 0800afff .word 0x0800afff + 8008f98: 0800b010 .word 0x0800b010 -08008904 <__hi0bits>: - 8008904: 0c02 lsrs r2, r0, #16 - 8008906: 0412 lsls r2, r2, #16 - 8008908: 4603 mov r3, r0 - 800890a: b9ca cbnz r2, 8008940 <__hi0bits+0x3c> - 800890c: 0403 lsls r3, r0, #16 - 800890e: 2010 movs r0, #16 - 8008910: f013 4f7f tst.w r3, #4278190080 ; 0xff000000 - 8008914: bf04 itt eq - 8008916: 021b lsleq r3, r3, #8 - 8008918: 3008 addeq r0, #8 - 800891a: f013 4f70 tst.w r3, #4026531840 ; 0xf0000000 - 800891e: bf04 itt eq - 8008920: 011b lsleq r3, r3, #4 - 8008922: 3004 addeq r0, #4 - 8008924: f013 4f40 tst.w r3, #3221225472 ; 0xc0000000 - 8008928: bf04 itt eq - 800892a: 009b lsleq r3, r3, #2 - 800892c: 3002 addeq r0, #2 - 800892e: 2b00 cmp r3, #0 - 8008930: db05 blt.n 800893e <__hi0bits+0x3a> - 8008932: f013 4f80 tst.w r3, #1073741824 ; 0x40000000 - 8008936: f100 0001 add.w r0, r0, #1 - 800893a: bf08 it eq - 800893c: 2020 moveq r0, #32 - 800893e: 4770 bx lr - 8008940: 2000 movs r0, #0 - 8008942: e7e5 b.n 8008910 <__hi0bits+0xc> +08008f9c <__hi0bits>: + 8008f9c: 0c02 lsrs r2, r0, #16 + 8008f9e: 0412 lsls r2, r2, #16 + 8008fa0: 4603 mov r3, r0 + 8008fa2: b9ca cbnz r2, 8008fd8 <__hi0bits+0x3c> + 8008fa4: 0403 lsls r3, r0, #16 + 8008fa6: 2010 movs r0, #16 + 8008fa8: f013 4f7f tst.w r3, #4278190080 ; 0xff000000 + 8008fac: bf04 itt eq + 8008fae: 021b lsleq r3, r3, #8 + 8008fb0: 3008 addeq r0, #8 + 8008fb2: f013 4f70 tst.w r3, #4026531840 ; 0xf0000000 + 8008fb6: bf04 itt eq + 8008fb8: 011b lsleq r3, r3, #4 + 8008fba: 3004 addeq r0, #4 + 8008fbc: f013 4f40 tst.w r3, #3221225472 ; 0xc0000000 + 8008fc0: bf04 itt eq + 8008fc2: 009b lsleq r3, r3, #2 + 8008fc4: 3002 addeq r0, #2 + 8008fc6: 2b00 cmp r3, #0 + 8008fc8: db05 blt.n 8008fd6 <__hi0bits+0x3a> + 8008fca: f013 4f80 tst.w r3, #1073741824 ; 0x40000000 + 8008fce: f100 0001 add.w r0, r0, #1 + 8008fd2: bf08 it eq + 8008fd4: 2020 moveq r0, #32 + 8008fd6: 4770 bx lr + 8008fd8: 2000 movs r0, #0 + 8008fda: e7e5 b.n 8008fa8 <__hi0bits+0xc> -08008944 <__lo0bits>: - 8008944: 6803 ldr r3, [r0, #0] - 8008946: 4602 mov r2, r0 - 8008948: f013 0007 ands.w r0, r3, #7 - 800894c: d00b beq.n 8008966 <__lo0bits+0x22> - 800894e: 07d9 lsls r1, r3, #31 - 8008950: d422 bmi.n 8008998 <__lo0bits+0x54> - 8008952: 0798 lsls r0, r3, #30 - 8008954: bf49 itett mi - 8008956: 085b lsrmi r3, r3, #1 - 8008958: 089b lsrpl r3, r3, #2 - 800895a: 2001 movmi r0, #1 - 800895c: 6013 strmi r3, [r2, #0] - 800895e: bf5c itt pl - 8008960: 2002 movpl r0, #2 - 8008962: 6013 strpl r3, [r2, #0] - 8008964: 4770 bx lr - 8008966: b299 uxth r1, r3 - 8008968: b909 cbnz r1, 800896e <__lo0bits+0x2a> - 800896a: 2010 movs r0, #16 - 800896c: 0c1b lsrs r3, r3, #16 - 800896e: f013 0fff tst.w r3, #255 ; 0xff - 8008972: bf04 itt eq - 8008974: 0a1b lsreq r3, r3, #8 - 8008976: 3008 addeq r0, #8 - 8008978: 0719 lsls r1, r3, #28 - 800897a: bf04 itt eq - 800897c: 091b lsreq r3, r3, #4 - 800897e: 3004 addeq r0, #4 - 8008980: 0799 lsls r1, r3, #30 - 8008982: bf04 itt eq - 8008984: 089b lsreq r3, r3, #2 - 8008986: 3002 addeq r0, #2 - 8008988: 07d9 lsls r1, r3, #31 - 800898a: d403 bmi.n 8008994 <__lo0bits+0x50> - 800898c: 085b lsrs r3, r3, #1 - 800898e: f100 0001 add.w r0, r0, #1 - 8008992: d003 beq.n 800899c <__lo0bits+0x58> - 8008994: 6013 str r3, [r2, #0] - 8008996: 4770 bx lr - 8008998: 2000 movs r0, #0 - 800899a: 4770 bx lr - 800899c: 2020 movs r0, #32 - 800899e: 4770 bx lr +08008fdc <__lo0bits>: + 8008fdc: 6803 ldr r3, [r0, #0] + 8008fde: 4602 mov r2, r0 + 8008fe0: f013 0007 ands.w r0, r3, #7 + 8008fe4: d00b beq.n 8008ffe <__lo0bits+0x22> + 8008fe6: 07d9 lsls r1, r3, #31 + 8008fe8: d422 bmi.n 8009030 <__lo0bits+0x54> + 8008fea: 0798 lsls r0, r3, #30 + 8008fec: bf49 itett mi + 8008fee: 085b lsrmi r3, r3, #1 + 8008ff0: 089b lsrpl r3, r3, #2 + 8008ff2: 2001 movmi r0, #1 + 8008ff4: 6013 strmi r3, [r2, #0] + 8008ff6: bf5c itt pl + 8008ff8: 2002 movpl r0, #2 + 8008ffa: 6013 strpl r3, [r2, #0] + 8008ffc: 4770 bx lr + 8008ffe: b299 uxth r1, r3 + 8009000: b909 cbnz r1, 8009006 <__lo0bits+0x2a> + 8009002: 2010 movs r0, #16 + 8009004: 0c1b lsrs r3, r3, #16 + 8009006: f013 0fff tst.w r3, #255 ; 0xff + 800900a: bf04 itt eq + 800900c: 0a1b lsreq r3, r3, #8 + 800900e: 3008 addeq r0, #8 + 8009010: 0719 lsls r1, r3, #28 + 8009012: bf04 itt eq + 8009014: 091b lsreq r3, r3, #4 + 8009016: 3004 addeq r0, #4 + 8009018: 0799 lsls r1, r3, #30 + 800901a: bf04 itt eq + 800901c: 089b lsreq r3, r3, #2 + 800901e: 3002 addeq r0, #2 + 8009020: 07d9 lsls r1, r3, #31 + 8009022: d403 bmi.n 800902c <__lo0bits+0x50> + 8009024: 085b lsrs r3, r3, #1 + 8009026: f100 0001 add.w r0, r0, #1 + 800902a: d003 beq.n 8009034 <__lo0bits+0x58> + 800902c: 6013 str r3, [r2, #0] + 800902e: 4770 bx lr + 8009030: 2000 movs r0, #0 + 8009032: 4770 bx lr + 8009034: 2020 movs r0, #32 + 8009036: 4770 bx lr -080089a0 <__i2b>: - 80089a0: b510 push {r4, lr} - 80089a2: 460c mov r4, r1 - 80089a4: 2101 movs r1, #1 - 80089a6: f7ff ff01 bl 80087ac <_Balloc> - 80089aa: 4602 mov r2, r0 - 80089ac: b928 cbnz r0, 80089ba <__i2b+0x1a> - 80089ae: f44f 71a0 mov.w r1, #320 ; 0x140 - 80089b2: 4b04 ldr r3, [pc, #16] ; (80089c4 <__i2b+0x24>) - 80089b4: 4804 ldr r0, [pc, #16] ; (80089c8 <__i2b+0x28>) - 80089b6: f000 fbe5 bl 8009184 <__assert_func> - 80089ba: 2301 movs r3, #1 - 80089bc: 6144 str r4, [r0, #20] - 80089be: 6103 str r3, [r0, #16] - 80089c0: bd10 pop {r4, pc} - 80089c2: bf00 nop - 80089c4: 0800a92f .word 0x0800a92f - 80089c8: 0800a940 .word 0x0800a940 +08009038 <__i2b>: + 8009038: b510 push {r4, lr} + 800903a: 460c mov r4, r1 + 800903c: 2101 movs r1, #1 + 800903e: f7ff ff01 bl 8008e44 <_Balloc> + 8009042: 4602 mov r2, r0 + 8009044: b928 cbnz r0, 8009052 <__i2b+0x1a> + 8009046: f44f 71a0 mov.w r1, #320 ; 0x140 + 800904a: 4b04 ldr r3, [pc, #16] ; (800905c <__i2b+0x24>) + 800904c: 4804 ldr r0, [pc, #16] ; (8009060 <__i2b+0x28>) + 800904e: f000 fbe5 bl 800981c <__assert_func> + 8009052: 2301 movs r3, #1 + 8009054: 6144 str r4, [r0, #20] + 8009056: 6103 str r3, [r0, #16] + 8009058: bd10 pop {r4, pc} + 800905a: bf00 nop + 800905c: 0800afff .word 0x0800afff + 8009060: 0800b010 .word 0x0800b010 -080089cc <__multiply>: - 80089cc: e92d 4ff0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} - 80089d0: 4614 mov r4, r2 - 80089d2: 690a ldr r2, [r1, #16] - 80089d4: 6923 ldr r3, [r4, #16] - 80089d6: 460d mov r5, r1 - 80089d8: 429a cmp r2, r3 - 80089da: bfbe ittt lt - 80089dc: 460b movlt r3, r1 - 80089de: 4625 movlt r5, r4 - 80089e0: 461c movlt r4, r3 - 80089e2: f8d5 a010 ldr.w sl, [r5, #16] - 80089e6: f8d4 9010 ldr.w r9, [r4, #16] - 80089ea: 68ab ldr r3, [r5, #8] - 80089ec: 6869 ldr r1, [r5, #4] - 80089ee: eb0a 0709 add.w r7, sl, r9 - 80089f2: 42bb cmp r3, r7 - 80089f4: b085 sub sp, #20 - 80089f6: bfb8 it lt - 80089f8: 3101 addlt r1, #1 - 80089fa: f7ff fed7 bl 80087ac <_Balloc> - 80089fe: b930 cbnz r0, 8008a0e <__multiply+0x42> - 8008a00: 4602 mov r2, r0 - 8008a02: f240 115d movw r1, #349 ; 0x15d - 8008a06: 4b41 ldr r3, [pc, #260] ; (8008b0c <__multiply+0x140>) - 8008a08: 4841 ldr r0, [pc, #260] ; (8008b10 <__multiply+0x144>) - 8008a0a: f000 fbbb bl 8009184 <__assert_func> - 8008a0e: f100 0614 add.w r6, r0, #20 - 8008a12: 4633 mov r3, r6 - 8008a14: 2200 movs r2, #0 - 8008a16: eb06 0887 add.w r8, r6, r7, lsl #2 - 8008a1a: 4543 cmp r3, r8 - 8008a1c: d31e bcc.n 8008a5c <__multiply+0x90> - 8008a1e: f105 0c14 add.w ip, r5, #20 - 8008a22: f104 0314 add.w r3, r4, #20 - 8008a26: eb0c 0c8a add.w ip, ip, sl, lsl #2 - 8008a2a: eb03 0289 add.w r2, r3, r9, lsl #2 - 8008a2e: 9202 str r2, [sp, #8] - 8008a30: ebac 0205 sub.w r2, ip, r5 - 8008a34: 3a15 subs r2, #21 - 8008a36: f022 0203 bic.w r2, r2, #3 - 8008a3a: 3204 adds r2, #4 - 8008a3c: f105 0115 add.w r1, r5, #21 - 8008a40: 458c cmp ip, r1 - 8008a42: bf38 it cc - 8008a44: 2204 movcc r2, #4 - 8008a46: 9201 str r2, [sp, #4] - 8008a48: 9a02 ldr r2, [sp, #8] - 8008a4a: 9303 str r3, [sp, #12] - 8008a4c: 429a cmp r2, r3 - 8008a4e: d808 bhi.n 8008a62 <__multiply+0x96> - 8008a50: 2f00 cmp r7, #0 - 8008a52: dc55 bgt.n 8008b00 <__multiply+0x134> - 8008a54: 6107 str r7, [r0, #16] - 8008a56: b005 add sp, #20 - 8008a58: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc} - 8008a5c: f843 2b04 str.w r2, [r3], #4 - 8008a60: e7db b.n 8008a1a <__multiply+0x4e> - 8008a62: f8b3 a000 ldrh.w sl, [r3] - 8008a66: f1ba 0f00 cmp.w sl, #0 - 8008a6a: d020 beq.n 8008aae <__multiply+0xe2> - 8008a6c: 46b1 mov r9, r6 - 8008a6e: 2200 movs r2, #0 - 8008a70: f105 0e14 add.w lr, r5, #20 - 8008a74: f85e 4b04 ldr.w r4, [lr], #4 - 8008a78: f8d9 b000 ldr.w fp, [r9] - 8008a7c: b2a1 uxth r1, r4 - 8008a7e: fa1f fb8b uxth.w fp, fp - 8008a82: fb0a b101 mla r1, sl, r1, fp - 8008a86: 4411 add r1, r2 - 8008a88: f8d9 2000 ldr.w r2, [r9] - 8008a8c: 0c24 lsrs r4, r4, #16 - 8008a8e: 0c12 lsrs r2, r2, #16 - 8008a90: fb0a 2404 mla r4, sl, r4, r2 - 8008a94: eb04 4411 add.w r4, r4, r1, lsr #16 - 8008a98: b289 uxth r1, r1 - 8008a9a: ea41 4104 orr.w r1, r1, r4, lsl #16 - 8008a9e: 45f4 cmp ip, lr - 8008aa0: ea4f 4214 mov.w r2, r4, lsr #16 - 8008aa4: f849 1b04 str.w r1, [r9], #4 - 8008aa8: d8e4 bhi.n 8008a74 <__multiply+0xa8> - 8008aaa: 9901 ldr r1, [sp, #4] - 8008aac: 5072 str r2, [r6, r1] - 8008aae: 9a03 ldr r2, [sp, #12] - 8008ab0: 3304 adds r3, #4 - 8008ab2: f8b2 9002 ldrh.w r9, [r2, #2] - 8008ab6: f1b9 0f00 cmp.w r9, #0 - 8008aba: d01f beq.n 8008afc <__multiply+0x130> - 8008abc: 46b6 mov lr, r6 - 8008abe: f04f 0a00 mov.w sl, #0 - 8008ac2: 6834 ldr r4, [r6, #0] - 8008ac4: f105 0114 add.w r1, r5, #20 - 8008ac8: 880a ldrh r2, [r1, #0] - 8008aca: f8be b002 ldrh.w fp, [lr, #2] - 8008ace: b2a4 uxth r4, r4 - 8008ad0: fb09 b202 mla r2, r9, r2, fp - 8008ad4: 4492 add sl, r2 - 8008ad6: ea44 440a orr.w r4, r4, sl, lsl #16 - 8008ada: f84e 4b04 str.w r4, [lr], #4 - 8008ade: f851 4b04 ldr.w r4, [r1], #4 - 8008ae2: f8be 2000 ldrh.w r2, [lr] - 8008ae6: 0c24 lsrs r4, r4, #16 - 8008ae8: fb09 2404 mla r4, r9, r4, r2 - 8008aec: 458c cmp ip, r1 - 8008aee: eb04 441a add.w r4, r4, sl, lsr #16 - 8008af2: ea4f 4a14 mov.w sl, r4, lsr #16 - 8008af6: d8e7 bhi.n 8008ac8 <__multiply+0xfc> - 8008af8: 9a01 ldr r2, [sp, #4] - 8008afa: 50b4 str r4, [r6, r2] - 8008afc: 3604 adds r6, #4 - 8008afe: e7a3 b.n 8008a48 <__multiply+0x7c> - 8008b00: f858 3d04 ldr.w r3, [r8, #-4]! - 8008b04: 2b00 cmp r3, #0 - 8008b06: d1a5 bne.n 8008a54 <__multiply+0x88> - 8008b08: 3f01 subs r7, #1 - 8008b0a: e7a1 b.n 8008a50 <__multiply+0x84> - 8008b0c: 0800a92f .word 0x0800a92f - 8008b10: 0800a940 .word 0x0800a940 +08009064 <__multiply>: + 8009064: e92d 4ff0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} + 8009068: 4614 mov r4, r2 + 800906a: 690a ldr r2, [r1, #16] + 800906c: 6923 ldr r3, [r4, #16] + 800906e: 460d mov r5, r1 + 8009070: 429a cmp r2, r3 + 8009072: bfbe ittt lt + 8009074: 460b movlt r3, r1 + 8009076: 4625 movlt r5, r4 + 8009078: 461c movlt r4, r3 + 800907a: f8d5 a010 ldr.w sl, [r5, #16] + 800907e: f8d4 9010 ldr.w r9, [r4, #16] + 8009082: 68ab ldr r3, [r5, #8] + 8009084: 6869 ldr r1, [r5, #4] + 8009086: eb0a 0709 add.w r7, sl, r9 + 800908a: 42bb cmp r3, r7 + 800908c: b085 sub sp, #20 + 800908e: bfb8 it lt + 8009090: 3101 addlt r1, #1 + 8009092: f7ff fed7 bl 8008e44 <_Balloc> + 8009096: b930 cbnz r0, 80090a6 <__multiply+0x42> + 8009098: 4602 mov r2, r0 + 800909a: f240 115d movw r1, #349 ; 0x15d + 800909e: 4b41 ldr r3, [pc, #260] ; (80091a4 <__multiply+0x140>) + 80090a0: 4841 ldr r0, [pc, #260] ; (80091a8 <__multiply+0x144>) + 80090a2: f000 fbbb bl 800981c <__assert_func> + 80090a6: f100 0614 add.w r6, r0, #20 + 80090aa: 4633 mov r3, r6 + 80090ac: 2200 movs r2, #0 + 80090ae: eb06 0887 add.w r8, r6, r7, lsl #2 + 80090b2: 4543 cmp r3, r8 + 80090b4: d31e bcc.n 80090f4 <__multiply+0x90> + 80090b6: f105 0c14 add.w ip, r5, #20 + 80090ba: f104 0314 add.w r3, r4, #20 + 80090be: eb0c 0c8a add.w ip, ip, sl, lsl #2 + 80090c2: eb03 0289 add.w r2, r3, r9, lsl #2 + 80090c6: 9202 str r2, [sp, #8] + 80090c8: ebac 0205 sub.w r2, ip, r5 + 80090cc: 3a15 subs r2, #21 + 80090ce: f022 0203 bic.w r2, r2, #3 + 80090d2: 3204 adds r2, #4 + 80090d4: f105 0115 add.w r1, r5, #21 + 80090d8: 458c cmp ip, r1 + 80090da: bf38 it cc + 80090dc: 2204 movcc r2, #4 + 80090de: 9201 str r2, [sp, #4] + 80090e0: 9a02 ldr r2, [sp, #8] + 80090e2: 9303 str r3, [sp, #12] + 80090e4: 429a cmp r2, r3 + 80090e6: d808 bhi.n 80090fa <__multiply+0x96> + 80090e8: 2f00 cmp r7, #0 + 80090ea: dc55 bgt.n 8009198 <__multiply+0x134> + 80090ec: 6107 str r7, [r0, #16] + 80090ee: b005 add sp, #20 + 80090f0: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc} + 80090f4: f843 2b04 str.w r2, [r3], #4 + 80090f8: e7db b.n 80090b2 <__multiply+0x4e> + 80090fa: f8b3 a000 ldrh.w sl, [r3] + 80090fe: f1ba 0f00 cmp.w sl, #0 + 8009102: d020 beq.n 8009146 <__multiply+0xe2> + 8009104: 46b1 mov r9, r6 + 8009106: 2200 movs r2, #0 + 8009108: f105 0e14 add.w lr, r5, #20 + 800910c: f85e 4b04 ldr.w r4, [lr], #4 + 8009110: f8d9 b000 ldr.w fp, [r9] + 8009114: b2a1 uxth r1, r4 + 8009116: fa1f fb8b uxth.w fp, fp + 800911a: fb0a b101 mla r1, sl, r1, fp + 800911e: 4411 add r1, r2 + 8009120: f8d9 2000 ldr.w r2, [r9] + 8009124: 0c24 lsrs r4, r4, #16 + 8009126: 0c12 lsrs r2, r2, #16 + 8009128: fb0a 2404 mla r4, sl, r4, r2 + 800912c: eb04 4411 add.w r4, r4, r1, lsr #16 + 8009130: b289 uxth r1, r1 + 8009132: ea41 4104 orr.w r1, r1, r4, lsl #16 + 8009136: 45f4 cmp ip, lr + 8009138: ea4f 4214 mov.w r2, r4, lsr #16 + 800913c: f849 1b04 str.w r1, [r9], #4 + 8009140: d8e4 bhi.n 800910c <__multiply+0xa8> + 8009142: 9901 ldr r1, [sp, #4] + 8009144: 5072 str r2, [r6, r1] + 8009146: 9a03 ldr r2, [sp, #12] + 8009148: 3304 adds r3, #4 + 800914a: f8b2 9002 ldrh.w r9, [r2, #2] + 800914e: f1b9 0f00 cmp.w r9, #0 + 8009152: d01f beq.n 8009194 <__multiply+0x130> + 8009154: 46b6 mov lr, r6 + 8009156: f04f 0a00 mov.w sl, #0 + 800915a: 6834 ldr r4, [r6, #0] + 800915c: f105 0114 add.w r1, r5, #20 + 8009160: 880a ldrh r2, [r1, #0] + 8009162: f8be b002 ldrh.w fp, [lr, #2] + 8009166: b2a4 uxth r4, r4 + 8009168: fb09 b202 mla r2, r9, r2, fp + 800916c: 4492 add sl, r2 + 800916e: ea44 440a orr.w r4, r4, sl, lsl #16 + 8009172: f84e 4b04 str.w r4, [lr], #4 + 8009176: f851 4b04 ldr.w r4, [r1], #4 + 800917a: f8be 2000 ldrh.w r2, [lr] + 800917e: 0c24 lsrs r4, r4, #16 + 8009180: fb09 2404 mla r4, r9, r4, r2 + 8009184: 458c cmp ip, r1 + 8009186: eb04 441a add.w r4, r4, sl, lsr #16 + 800918a: ea4f 4a14 mov.w sl, r4, lsr #16 + 800918e: d8e7 bhi.n 8009160 <__multiply+0xfc> + 8009190: 9a01 ldr r2, [sp, #4] + 8009192: 50b4 str r4, [r6, r2] + 8009194: 3604 adds r6, #4 + 8009196: e7a3 b.n 80090e0 <__multiply+0x7c> + 8009198: f858 3d04 ldr.w r3, [r8, #-4]! + 800919c: 2b00 cmp r3, #0 + 800919e: d1a5 bne.n 80090ec <__multiply+0x88> + 80091a0: 3f01 subs r7, #1 + 80091a2: e7a1 b.n 80090e8 <__multiply+0x84> + 80091a4: 0800afff .word 0x0800afff + 80091a8: 0800b010 .word 0x0800b010 -08008b14 <__pow5mult>: - 8008b14: e92d 43f8 stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr} - 8008b18: 4615 mov r5, r2 - 8008b1a: f012 0203 ands.w r2, r2, #3 - 8008b1e: 4606 mov r6, r0 - 8008b20: 460f mov r7, r1 - 8008b22: d007 beq.n 8008b34 <__pow5mult+0x20> - 8008b24: 4c25 ldr r4, [pc, #148] ; (8008bbc <__pow5mult+0xa8>) - 8008b26: 3a01 subs r2, #1 - 8008b28: 2300 movs r3, #0 - 8008b2a: f854 2022 ldr.w r2, [r4, r2, lsl #2] - 8008b2e: f7ff fe9f bl 8008870 <__multadd> - 8008b32: 4607 mov r7, r0 - 8008b34: 10ad asrs r5, r5, #2 - 8008b36: d03d beq.n 8008bb4 <__pow5mult+0xa0> - 8008b38: 6a74 ldr r4, [r6, #36] ; 0x24 - 8008b3a: b97c cbnz r4, 8008b5c <__pow5mult+0x48> - 8008b3c: 2010 movs r0, #16 - 8008b3e: f7fe fa3d bl 8006fbc - 8008b42: 4602 mov r2, r0 - 8008b44: 6270 str r0, [r6, #36] ; 0x24 - 8008b46: b928 cbnz r0, 8008b54 <__pow5mult+0x40> - 8008b48: f44f 71d7 mov.w r1, #430 ; 0x1ae - 8008b4c: 4b1c ldr r3, [pc, #112] ; (8008bc0 <__pow5mult+0xac>) - 8008b4e: 481d ldr r0, [pc, #116] ; (8008bc4 <__pow5mult+0xb0>) - 8008b50: f000 fb18 bl 8009184 <__assert_func> - 8008b54: e9c0 4401 strd r4, r4, [r0, #4] - 8008b58: 6004 str r4, [r0, #0] - 8008b5a: 60c4 str r4, [r0, #12] - 8008b5c: f8d6 8024 ldr.w r8, [r6, #36] ; 0x24 - 8008b60: f8d8 4008 ldr.w r4, [r8, #8] - 8008b64: b94c cbnz r4, 8008b7a <__pow5mult+0x66> - 8008b66: f240 2171 movw r1, #625 ; 0x271 - 8008b6a: 4630 mov r0, r6 - 8008b6c: f7ff ff18 bl 80089a0 <__i2b> - 8008b70: 2300 movs r3, #0 - 8008b72: 4604 mov r4, r0 - 8008b74: f8c8 0008 str.w r0, [r8, #8] - 8008b78: 6003 str r3, [r0, #0] - 8008b7a: f04f 0900 mov.w r9, #0 - 8008b7e: 07eb lsls r3, r5, #31 - 8008b80: d50a bpl.n 8008b98 <__pow5mult+0x84> - 8008b82: 4639 mov r1, r7 - 8008b84: 4622 mov r2, r4 - 8008b86: 4630 mov r0, r6 - 8008b88: f7ff ff20 bl 80089cc <__multiply> - 8008b8c: 4680 mov r8, r0 - 8008b8e: 4639 mov r1, r7 - 8008b90: 4630 mov r0, r6 - 8008b92: f7ff fe4b bl 800882c <_Bfree> - 8008b96: 4647 mov r7, r8 - 8008b98: 106d asrs r5, r5, #1 - 8008b9a: d00b beq.n 8008bb4 <__pow5mult+0xa0> - 8008b9c: 6820 ldr r0, [r4, #0] - 8008b9e: b938 cbnz r0, 8008bb0 <__pow5mult+0x9c> - 8008ba0: 4622 mov r2, r4 - 8008ba2: 4621 mov r1, r4 - 8008ba4: 4630 mov r0, r6 - 8008ba6: f7ff ff11 bl 80089cc <__multiply> - 8008baa: 6020 str r0, [r4, #0] - 8008bac: f8c0 9000 str.w r9, [r0] - 8008bb0: 4604 mov r4, r0 - 8008bb2: e7e4 b.n 8008b7e <__pow5mult+0x6a> - 8008bb4: 4638 mov r0, r7 - 8008bb6: e8bd 83f8 ldmia.w sp!, {r3, r4, r5, r6, r7, r8, r9, pc} - 8008bba: bf00 nop - 8008bbc: 0800aa90 .word 0x0800aa90 - 8008bc0: 0800a8b9 .word 0x0800a8b9 - 8008bc4: 0800a940 .word 0x0800a940 +080091ac <__pow5mult>: + 80091ac: e92d 43f8 stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr} + 80091b0: 4615 mov r5, r2 + 80091b2: f012 0203 ands.w r2, r2, #3 + 80091b6: 4606 mov r6, r0 + 80091b8: 460f mov r7, r1 + 80091ba: d007 beq.n 80091cc <__pow5mult+0x20> + 80091bc: 4c25 ldr r4, [pc, #148] ; (8009254 <__pow5mult+0xa8>) + 80091be: 3a01 subs r2, #1 + 80091c0: 2300 movs r3, #0 + 80091c2: f854 2022 ldr.w r2, [r4, r2, lsl #2] + 80091c6: f7ff fe9f bl 8008f08 <__multadd> + 80091ca: 4607 mov r7, r0 + 80091cc: 10ad asrs r5, r5, #2 + 80091ce: d03d beq.n 800924c <__pow5mult+0xa0> + 80091d0: 6a74 ldr r4, [r6, #36] ; 0x24 + 80091d2: b97c cbnz r4, 80091f4 <__pow5mult+0x48> + 80091d4: 2010 movs r0, #16 + 80091d6: f7fe fa3f bl 8007658 + 80091da: 4602 mov r2, r0 + 80091dc: 6270 str r0, [r6, #36] ; 0x24 + 80091de: b928 cbnz r0, 80091ec <__pow5mult+0x40> + 80091e0: f44f 71d7 mov.w r1, #430 ; 0x1ae + 80091e4: 4b1c ldr r3, [pc, #112] ; (8009258 <__pow5mult+0xac>) + 80091e6: 481d ldr r0, [pc, #116] ; (800925c <__pow5mult+0xb0>) + 80091e8: f000 fb18 bl 800981c <__assert_func> + 80091ec: e9c0 4401 strd r4, r4, [r0, #4] + 80091f0: 6004 str r4, [r0, #0] + 80091f2: 60c4 str r4, [r0, #12] + 80091f4: f8d6 8024 ldr.w r8, [r6, #36] ; 0x24 + 80091f8: f8d8 4008 ldr.w r4, [r8, #8] + 80091fc: b94c cbnz r4, 8009212 <__pow5mult+0x66> + 80091fe: f240 2171 movw r1, #625 ; 0x271 + 8009202: 4630 mov r0, r6 + 8009204: f7ff ff18 bl 8009038 <__i2b> + 8009208: 2300 movs r3, #0 + 800920a: 4604 mov r4, r0 + 800920c: f8c8 0008 str.w r0, [r8, #8] + 8009210: 6003 str r3, [r0, #0] + 8009212: f04f 0900 mov.w r9, #0 + 8009216: 07eb lsls r3, r5, #31 + 8009218: d50a bpl.n 8009230 <__pow5mult+0x84> + 800921a: 4639 mov r1, r7 + 800921c: 4622 mov r2, r4 + 800921e: 4630 mov r0, r6 + 8009220: f7ff ff20 bl 8009064 <__multiply> + 8009224: 4680 mov r8, r0 + 8009226: 4639 mov r1, r7 + 8009228: 4630 mov r0, r6 + 800922a: f7ff fe4b bl 8008ec4 <_Bfree> + 800922e: 4647 mov r7, r8 + 8009230: 106d asrs r5, r5, #1 + 8009232: d00b beq.n 800924c <__pow5mult+0xa0> + 8009234: 6820 ldr r0, [r4, #0] + 8009236: b938 cbnz r0, 8009248 <__pow5mult+0x9c> + 8009238: 4622 mov r2, r4 + 800923a: 4621 mov r1, r4 + 800923c: 4630 mov r0, r6 + 800923e: f7ff ff11 bl 8009064 <__multiply> + 8009242: 6020 str r0, [r4, #0] + 8009244: f8c0 9000 str.w r9, [r0] + 8009248: 4604 mov r4, r0 + 800924a: e7e4 b.n 8009216 <__pow5mult+0x6a> + 800924c: 4638 mov r0, r7 + 800924e: e8bd 83f8 ldmia.w sp!, {r3, r4, r5, r6, r7, r8, r9, pc} + 8009252: bf00 nop + 8009254: 0800b160 .word 0x0800b160 + 8009258: 0800af89 .word 0x0800af89 + 800925c: 0800b010 .word 0x0800b010 -08008bc8 <__lshift>: - 8008bc8: e92d 47f0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, lr} - 8008bcc: 460c mov r4, r1 - 8008bce: 4607 mov r7, r0 - 8008bd0: 4691 mov r9, r2 - 8008bd2: 6923 ldr r3, [r4, #16] - 8008bd4: 6849 ldr r1, [r1, #4] - 8008bd6: eb03 1862 add.w r8, r3, r2, asr #5 - 8008bda: 68a3 ldr r3, [r4, #8] - 8008bdc: ea4f 1a62 mov.w sl, r2, asr #5 - 8008be0: f108 0601 add.w r6, r8, #1 - 8008be4: 42b3 cmp r3, r6 - 8008be6: db0b blt.n 8008c00 <__lshift+0x38> - 8008be8: 4638 mov r0, r7 - 8008bea: f7ff fddf bl 80087ac <_Balloc> - 8008bee: 4605 mov r5, r0 - 8008bf0: b948 cbnz r0, 8008c06 <__lshift+0x3e> - 8008bf2: 4602 mov r2, r0 - 8008bf4: f240 11d9 movw r1, #473 ; 0x1d9 - 8008bf8: 4b27 ldr r3, [pc, #156] ; (8008c98 <__lshift+0xd0>) - 8008bfa: 4828 ldr r0, [pc, #160] ; (8008c9c <__lshift+0xd4>) - 8008bfc: f000 fac2 bl 8009184 <__assert_func> - 8008c00: 3101 adds r1, #1 - 8008c02: 005b lsls r3, r3, #1 - 8008c04: e7ee b.n 8008be4 <__lshift+0x1c> - 8008c06: 2300 movs r3, #0 - 8008c08: f100 0114 add.w r1, r0, #20 - 8008c0c: f100 0210 add.w r2, r0, #16 - 8008c10: 4618 mov r0, r3 - 8008c12: 4553 cmp r3, sl - 8008c14: db33 blt.n 8008c7e <__lshift+0xb6> - 8008c16: 6920 ldr r0, [r4, #16] - 8008c18: ea2a 7aea bic.w sl, sl, sl, asr #31 - 8008c1c: f104 0314 add.w r3, r4, #20 - 8008c20: f019 091f ands.w r9, r9, #31 - 8008c24: eb01 018a add.w r1, r1, sl, lsl #2 - 8008c28: eb03 0c80 add.w ip, r3, r0, lsl #2 - 8008c2c: d02b beq.n 8008c86 <__lshift+0xbe> - 8008c2e: 468a mov sl, r1 - 8008c30: 2200 movs r2, #0 - 8008c32: f1c9 0e20 rsb lr, r9, #32 - 8008c36: 6818 ldr r0, [r3, #0] - 8008c38: fa00 f009 lsl.w r0, r0, r9 - 8008c3c: 4302 orrs r2, r0 - 8008c3e: f84a 2b04 str.w r2, [sl], #4 - 8008c42: f853 2b04 ldr.w r2, [r3], #4 - 8008c46: 459c cmp ip, r3 - 8008c48: fa22 f20e lsr.w r2, r2, lr - 8008c4c: d8f3 bhi.n 8008c36 <__lshift+0x6e> - 8008c4e: ebac 0304 sub.w r3, ip, r4 - 8008c52: 3b15 subs r3, #21 - 8008c54: f023 0303 bic.w r3, r3, #3 - 8008c58: 3304 adds r3, #4 - 8008c5a: f104 0015 add.w r0, r4, #21 - 8008c5e: 4584 cmp ip, r0 - 8008c60: bf38 it cc - 8008c62: 2304 movcc r3, #4 - 8008c64: 50ca str r2, [r1, r3] - 8008c66: b10a cbz r2, 8008c6c <__lshift+0xa4> - 8008c68: f108 0602 add.w r6, r8, #2 - 8008c6c: 3e01 subs r6, #1 - 8008c6e: 4638 mov r0, r7 - 8008c70: 4621 mov r1, r4 - 8008c72: 612e str r6, [r5, #16] - 8008c74: f7ff fdda bl 800882c <_Bfree> - 8008c78: 4628 mov r0, r5 - 8008c7a: e8bd 87f0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, pc} - 8008c7e: f842 0f04 str.w r0, [r2, #4]! - 8008c82: 3301 adds r3, #1 - 8008c84: e7c5 b.n 8008c12 <__lshift+0x4a> - 8008c86: 3904 subs r1, #4 - 8008c88: f853 2b04 ldr.w r2, [r3], #4 - 8008c8c: 459c cmp ip, r3 - 8008c8e: f841 2f04 str.w r2, [r1, #4]! - 8008c92: d8f9 bhi.n 8008c88 <__lshift+0xc0> - 8008c94: e7ea b.n 8008c6c <__lshift+0xa4> - 8008c96: bf00 nop - 8008c98: 0800a92f .word 0x0800a92f - 8008c9c: 0800a940 .word 0x0800a940 +08009260 <__lshift>: + 8009260: e92d 47f0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, lr} + 8009264: 460c mov r4, r1 + 8009266: 4607 mov r7, r0 + 8009268: 4691 mov r9, r2 + 800926a: 6923 ldr r3, [r4, #16] + 800926c: 6849 ldr r1, [r1, #4] + 800926e: eb03 1862 add.w r8, r3, r2, asr #5 + 8009272: 68a3 ldr r3, [r4, #8] + 8009274: ea4f 1a62 mov.w sl, r2, asr #5 + 8009278: f108 0601 add.w r6, r8, #1 + 800927c: 42b3 cmp r3, r6 + 800927e: db0b blt.n 8009298 <__lshift+0x38> + 8009280: 4638 mov r0, r7 + 8009282: f7ff fddf bl 8008e44 <_Balloc> + 8009286: 4605 mov r5, r0 + 8009288: b948 cbnz r0, 800929e <__lshift+0x3e> + 800928a: 4602 mov r2, r0 + 800928c: f240 11d9 movw r1, #473 ; 0x1d9 + 8009290: 4b27 ldr r3, [pc, #156] ; (8009330 <__lshift+0xd0>) + 8009292: 4828 ldr r0, [pc, #160] ; (8009334 <__lshift+0xd4>) + 8009294: f000 fac2 bl 800981c <__assert_func> + 8009298: 3101 adds r1, #1 + 800929a: 005b lsls r3, r3, #1 + 800929c: e7ee b.n 800927c <__lshift+0x1c> + 800929e: 2300 movs r3, #0 + 80092a0: f100 0114 add.w r1, r0, #20 + 80092a4: f100 0210 add.w r2, r0, #16 + 80092a8: 4618 mov r0, r3 + 80092aa: 4553 cmp r3, sl + 80092ac: db33 blt.n 8009316 <__lshift+0xb6> + 80092ae: 6920 ldr r0, [r4, #16] + 80092b0: ea2a 7aea bic.w sl, sl, sl, asr #31 + 80092b4: f104 0314 add.w r3, r4, #20 + 80092b8: f019 091f ands.w r9, r9, #31 + 80092bc: eb01 018a add.w r1, r1, sl, lsl #2 + 80092c0: eb03 0c80 add.w ip, r3, r0, lsl #2 + 80092c4: d02b beq.n 800931e <__lshift+0xbe> + 80092c6: 468a mov sl, r1 + 80092c8: 2200 movs r2, #0 + 80092ca: f1c9 0e20 rsb lr, r9, #32 + 80092ce: 6818 ldr r0, [r3, #0] + 80092d0: fa00 f009 lsl.w r0, r0, r9 + 80092d4: 4302 orrs r2, r0 + 80092d6: f84a 2b04 str.w r2, [sl], #4 + 80092da: f853 2b04 ldr.w r2, [r3], #4 + 80092de: 459c cmp ip, r3 + 80092e0: fa22 f20e lsr.w r2, r2, lr + 80092e4: d8f3 bhi.n 80092ce <__lshift+0x6e> + 80092e6: ebac 0304 sub.w r3, ip, r4 + 80092ea: 3b15 subs r3, #21 + 80092ec: f023 0303 bic.w r3, r3, #3 + 80092f0: 3304 adds r3, #4 + 80092f2: f104 0015 add.w r0, r4, #21 + 80092f6: 4584 cmp ip, r0 + 80092f8: bf38 it cc + 80092fa: 2304 movcc r3, #4 + 80092fc: 50ca str r2, [r1, r3] + 80092fe: b10a cbz r2, 8009304 <__lshift+0xa4> + 8009300: f108 0602 add.w r6, r8, #2 + 8009304: 3e01 subs r6, #1 + 8009306: 4638 mov r0, r7 + 8009308: 4621 mov r1, r4 + 800930a: 612e str r6, [r5, #16] + 800930c: f7ff fdda bl 8008ec4 <_Bfree> + 8009310: 4628 mov r0, r5 + 8009312: e8bd 87f0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, pc} + 8009316: f842 0f04 str.w r0, [r2, #4]! + 800931a: 3301 adds r3, #1 + 800931c: e7c5 b.n 80092aa <__lshift+0x4a> + 800931e: 3904 subs r1, #4 + 8009320: f853 2b04 ldr.w r2, [r3], #4 + 8009324: 459c cmp ip, r3 + 8009326: f841 2f04 str.w r2, [r1, #4]! + 800932a: d8f9 bhi.n 8009320 <__lshift+0xc0> + 800932c: e7ea b.n 8009304 <__lshift+0xa4> + 800932e: bf00 nop + 8009330: 0800afff .word 0x0800afff + 8009334: 0800b010 .word 0x0800b010 -08008ca0 <__mcmp>: - 8008ca0: 4603 mov r3, r0 - 8008ca2: 690a ldr r2, [r1, #16] - 8008ca4: 6900 ldr r0, [r0, #16] - 8008ca6: b530 push {r4, r5, lr} - 8008ca8: 1a80 subs r0, r0, r2 - 8008caa: d10d bne.n 8008cc8 <__mcmp+0x28> - 8008cac: 3314 adds r3, #20 - 8008cae: 3114 adds r1, #20 - 8008cb0: eb03 0482 add.w r4, r3, r2, lsl #2 - 8008cb4: eb01 0182 add.w r1, r1, r2, lsl #2 - 8008cb8: f854 5d04 ldr.w r5, [r4, #-4]! - 8008cbc: f851 2d04 ldr.w r2, [r1, #-4]! - 8008cc0: 4295 cmp r5, r2 - 8008cc2: d002 beq.n 8008cca <__mcmp+0x2a> - 8008cc4: d304 bcc.n 8008cd0 <__mcmp+0x30> - 8008cc6: 2001 movs r0, #1 - 8008cc8: bd30 pop {r4, r5, pc} - 8008cca: 42a3 cmp r3, r4 - 8008ccc: d3f4 bcc.n 8008cb8 <__mcmp+0x18> - 8008cce: e7fb b.n 8008cc8 <__mcmp+0x28> - 8008cd0: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff - 8008cd4: e7f8 b.n 8008cc8 <__mcmp+0x28> +08009338 <__mcmp>: + 8009338: 4603 mov r3, r0 + 800933a: 690a ldr r2, [r1, #16] + 800933c: 6900 ldr r0, [r0, #16] + 800933e: b530 push {r4, r5, lr} + 8009340: 1a80 subs r0, r0, r2 + 8009342: d10d bne.n 8009360 <__mcmp+0x28> + 8009344: 3314 adds r3, #20 + 8009346: 3114 adds r1, #20 + 8009348: eb03 0482 add.w r4, r3, r2, lsl #2 + 800934c: eb01 0182 add.w r1, r1, r2, lsl #2 + 8009350: f854 5d04 ldr.w r5, [r4, #-4]! + 8009354: f851 2d04 ldr.w r2, [r1, #-4]! + 8009358: 4295 cmp r5, r2 + 800935a: d002 beq.n 8009362 <__mcmp+0x2a> + 800935c: d304 bcc.n 8009368 <__mcmp+0x30> + 800935e: 2001 movs r0, #1 + 8009360: bd30 pop {r4, r5, pc} + 8009362: 42a3 cmp r3, r4 + 8009364: d3f4 bcc.n 8009350 <__mcmp+0x18> + 8009366: e7fb b.n 8009360 <__mcmp+0x28> + 8009368: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff + 800936c: e7f8 b.n 8009360 <__mcmp+0x28> ... -08008cd8 <__mdiff>: - 8008cd8: e92d 4ff8 stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, sl, fp, lr} - 8008cdc: 460c mov r4, r1 - 8008cde: 4606 mov r6, r0 - 8008ce0: 4611 mov r1, r2 - 8008ce2: 4620 mov r0, r4 - 8008ce4: 4692 mov sl, r2 - 8008ce6: f7ff ffdb bl 8008ca0 <__mcmp> - 8008cea: 1e05 subs r5, r0, #0 - 8008cec: d111 bne.n 8008d12 <__mdiff+0x3a> - 8008cee: 4629 mov r1, r5 - 8008cf0: 4630 mov r0, r6 - 8008cf2: f7ff fd5b bl 80087ac <_Balloc> - 8008cf6: 4602 mov r2, r0 - 8008cf8: b928 cbnz r0, 8008d06 <__mdiff+0x2e> - 8008cfa: f240 2132 movw r1, #562 ; 0x232 - 8008cfe: 4b3c ldr r3, [pc, #240] ; (8008df0 <__mdiff+0x118>) - 8008d00: 483c ldr r0, [pc, #240] ; (8008df4 <__mdiff+0x11c>) - 8008d02: f000 fa3f bl 8009184 <__assert_func> - 8008d06: 2301 movs r3, #1 - 8008d08: e9c0 3504 strd r3, r5, [r0, #16] - 8008d0c: 4610 mov r0, r2 - 8008d0e: e8bd 8ff8 ldmia.w sp!, {r3, r4, r5, r6, r7, r8, r9, sl, fp, pc} - 8008d12: bfa4 itt ge - 8008d14: 4653 movge r3, sl - 8008d16: 46a2 movge sl, r4 - 8008d18: 4630 mov r0, r6 - 8008d1a: f8da 1004 ldr.w r1, [sl, #4] - 8008d1e: bfa6 itte ge - 8008d20: 461c movge r4, r3 - 8008d22: 2500 movge r5, #0 - 8008d24: 2501 movlt r5, #1 - 8008d26: f7ff fd41 bl 80087ac <_Balloc> - 8008d2a: 4602 mov r2, r0 - 8008d2c: b918 cbnz r0, 8008d36 <__mdiff+0x5e> - 8008d2e: f44f 7110 mov.w r1, #576 ; 0x240 - 8008d32: 4b2f ldr r3, [pc, #188] ; (8008df0 <__mdiff+0x118>) - 8008d34: e7e4 b.n 8008d00 <__mdiff+0x28> - 8008d36: f100 0814 add.w r8, r0, #20 - 8008d3a: f8da 7010 ldr.w r7, [sl, #16] - 8008d3e: 60c5 str r5, [r0, #12] - 8008d40: f04f 0c00 mov.w ip, #0 - 8008d44: f10a 0514 add.w r5, sl, #20 - 8008d48: f10a 0010 add.w r0, sl, #16 - 8008d4c: 46c2 mov sl, r8 - 8008d4e: 6926 ldr r6, [r4, #16] - 8008d50: f104 0914 add.w r9, r4, #20 - 8008d54: eb05 0e87 add.w lr, r5, r7, lsl #2 - 8008d58: eb09 0686 add.w r6, r9, r6, lsl #2 - 8008d5c: f850 bf04 ldr.w fp, [r0, #4]! - 8008d60: f859 3b04 ldr.w r3, [r9], #4 - 8008d64: fa1f f18b uxth.w r1, fp - 8008d68: 4461 add r1, ip - 8008d6a: fa1f fc83 uxth.w ip, r3 - 8008d6e: 0c1b lsrs r3, r3, #16 - 8008d70: eba1 010c sub.w r1, r1, ip - 8008d74: ebc3 431b rsb r3, r3, fp, lsr #16 - 8008d78: eb03 4321 add.w r3, r3, r1, asr #16 - 8008d7c: b289 uxth r1, r1 - 8008d7e: ea4f 4c23 mov.w ip, r3, asr #16 - 8008d82: 454e cmp r6, r9 - 8008d84: ea41 4303 orr.w r3, r1, r3, lsl #16 - 8008d88: f84a 3b04 str.w r3, [sl], #4 - 8008d8c: d8e6 bhi.n 8008d5c <__mdiff+0x84> - 8008d8e: 1b33 subs r3, r6, r4 - 8008d90: 3b15 subs r3, #21 - 8008d92: f023 0303 bic.w r3, r3, #3 - 8008d96: 3415 adds r4, #21 - 8008d98: 3304 adds r3, #4 - 8008d9a: 42a6 cmp r6, r4 - 8008d9c: bf38 it cc - 8008d9e: 2304 movcc r3, #4 - 8008da0: 441d add r5, r3 - 8008da2: 4443 add r3, r8 - 8008da4: 461e mov r6, r3 - 8008da6: 462c mov r4, r5 - 8008da8: 4574 cmp r4, lr - 8008daa: d30e bcc.n 8008dca <__mdiff+0xf2> - 8008dac: f10e 0103 add.w r1, lr, #3 - 8008db0: 1b49 subs r1, r1, r5 - 8008db2: f021 0103 bic.w r1, r1, #3 - 8008db6: 3d03 subs r5, #3 - 8008db8: 45ae cmp lr, r5 - 8008dba: bf38 it cc - 8008dbc: 2100 movcc r1, #0 - 8008dbe: 4419 add r1, r3 - 8008dc0: f851 3d04 ldr.w r3, [r1, #-4]! - 8008dc4: b18b cbz r3, 8008dea <__mdiff+0x112> - 8008dc6: 6117 str r7, [r2, #16] - 8008dc8: e7a0 b.n 8008d0c <__mdiff+0x34> - 8008dca: f854 8b04 ldr.w r8, [r4], #4 - 8008dce: fa1f f188 uxth.w r1, r8 - 8008dd2: 4461 add r1, ip - 8008dd4: 1408 asrs r0, r1, #16 - 8008dd6: eb00 4018 add.w r0, r0, r8, lsr #16 - 8008dda: b289 uxth r1, r1 - 8008ddc: ea41 4100 orr.w r1, r1, r0, lsl #16 - 8008de0: ea4f 4c20 mov.w ip, r0, asr #16 - 8008de4: f846 1b04 str.w r1, [r6], #4 - 8008de8: e7de b.n 8008da8 <__mdiff+0xd0> - 8008dea: 3f01 subs r7, #1 - 8008dec: e7e8 b.n 8008dc0 <__mdiff+0xe8> - 8008dee: bf00 nop - 8008df0: 0800a92f .word 0x0800a92f - 8008df4: 0800a940 .word 0x0800a940 +08009370 <__mdiff>: + 8009370: e92d 4ff8 stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, sl, fp, lr} + 8009374: 460c mov r4, r1 + 8009376: 4606 mov r6, r0 + 8009378: 4611 mov r1, r2 + 800937a: 4620 mov r0, r4 + 800937c: 4692 mov sl, r2 + 800937e: f7ff ffdb bl 8009338 <__mcmp> + 8009382: 1e05 subs r5, r0, #0 + 8009384: d111 bne.n 80093aa <__mdiff+0x3a> + 8009386: 4629 mov r1, r5 + 8009388: 4630 mov r0, r6 + 800938a: f7ff fd5b bl 8008e44 <_Balloc> + 800938e: 4602 mov r2, r0 + 8009390: b928 cbnz r0, 800939e <__mdiff+0x2e> + 8009392: f240 2132 movw r1, #562 ; 0x232 + 8009396: 4b3c ldr r3, [pc, #240] ; (8009488 <__mdiff+0x118>) + 8009398: 483c ldr r0, [pc, #240] ; (800948c <__mdiff+0x11c>) + 800939a: f000 fa3f bl 800981c <__assert_func> + 800939e: 2301 movs r3, #1 + 80093a0: e9c0 3504 strd r3, r5, [r0, #16] + 80093a4: 4610 mov r0, r2 + 80093a6: e8bd 8ff8 ldmia.w sp!, {r3, r4, r5, r6, r7, r8, r9, sl, fp, pc} + 80093aa: bfa4 itt ge + 80093ac: 4653 movge r3, sl + 80093ae: 46a2 movge sl, r4 + 80093b0: 4630 mov r0, r6 + 80093b2: f8da 1004 ldr.w r1, [sl, #4] + 80093b6: bfa6 itte ge + 80093b8: 461c movge r4, r3 + 80093ba: 2500 movge r5, #0 + 80093bc: 2501 movlt r5, #1 + 80093be: f7ff fd41 bl 8008e44 <_Balloc> + 80093c2: 4602 mov r2, r0 + 80093c4: b918 cbnz r0, 80093ce <__mdiff+0x5e> + 80093c6: f44f 7110 mov.w r1, #576 ; 0x240 + 80093ca: 4b2f ldr r3, [pc, #188] ; (8009488 <__mdiff+0x118>) + 80093cc: e7e4 b.n 8009398 <__mdiff+0x28> + 80093ce: f100 0814 add.w r8, r0, #20 + 80093d2: f8da 7010 ldr.w r7, [sl, #16] + 80093d6: 60c5 str r5, [r0, #12] + 80093d8: f04f 0c00 mov.w ip, #0 + 80093dc: f10a 0514 add.w r5, sl, #20 + 80093e0: f10a 0010 add.w r0, sl, #16 + 80093e4: 46c2 mov sl, r8 + 80093e6: 6926 ldr r6, [r4, #16] + 80093e8: f104 0914 add.w r9, r4, #20 + 80093ec: eb05 0e87 add.w lr, r5, r7, lsl #2 + 80093f0: eb09 0686 add.w r6, r9, r6, lsl #2 + 80093f4: f850 bf04 ldr.w fp, [r0, #4]! + 80093f8: f859 3b04 ldr.w r3, [r9], #4 + 80093fc: fa1f f18b uxth.w r1, fp + 8009400: 4461 add r1, ip + 8009402: fa1f fc83 uxth.w ip, r3 + 8009406: 0c1b lsrs r3, r3, #16 + 8009408: eba1 010c sub.w r1, r1, ip + 800940c: ebc3 431b rsb r3, r3, fp, lsr #16 + 8009410: eb03 4321 add.w r3, r3, r1, asr #16 + 8009414: b289 uxth r1, r1 + 8009416: ea4f 4c23 mov.w ip, r3, asr #16 + 800941a: 454e cmp r6, r9 + 800941c: ea41 4303 orr.w r3, r1, r3, lsl #16 + 8009420: f84a 3b04 str.w r3, [sl], #4 + 8009424: d8e6 bhi.n 80093f4 <__mdiff+0x84> + 8009426: 1b33 subs r3, r6, r4 + 8009428: 3b15 subs r3, #21 + 800942a: f023 0303 bic.w r3, r3, #3 + 800942e: 3415 adds r4, #21 + 8009430: 3304 adds r3, #4 + 8009432: 42a6 cmp r6, r4 + 8009434: bf38 it cc + 8009436: 2304 movcc r3, #4 + 8009438: 441d add r5, r3 + 800943a: 4443 add r3, r8 + 800943c: 461e mov r6, r3 + 800943e: 462c mov r4, r5 + 8009440: 4574 cmp r4, lr + 8009442: d30e bcc.n 8009462 <__mdiff+0xf2> + 8009444: f10e 0103 add.w r1, lr, #3 + 8009448: 1b49 subs r1, r1, r5 + 800944a: f021 0103 bic.w r1, r1, #3 + 800944e: 3d03 subs r5, #3 + 8009450: 45ae cmp lr, r5 + 8009452: bf38 it cc + 8009454: 2100 movcc r1, #0 + 8009456: 4419 add r1, r3 + 8009458: f851 3d04 ldr.w r3, [r1, #-4]! + 800945c: b18b cbz r3, 8009482 <__mdiff+0x112> + 800945e: 6117 str r7, [r2, #16] + 8009460: e7a0 b.n 80093a4 <__mdiff+0x34> + 8009462: f854 8b04 ldr.w r8, [r4], #4 + 8009466: fa1f f188 uxth.w r1, r8 + 800946a: 4461 add r1, ip + 800946c: 1408 asrs r0, r1, #16 + 800946e: eb00 4018 add.w r0, r0, r8, lsr #16 + 8009472: b289 uxth r1, r1 + 8009474: ea41 4100 orr.w r1, r1, r0, lsl #16 + 8009478: ea4f 4c20 mov.w ip, r0, asr #16 + 800947c: f846 1b04 str.w r1, [r6], #4 + 8009480: e7de b.n 8009440 <__mdiff+0xd0> + 8009482: 3f01 subs r7, #1 + 8009484: e7e8 b.n 8009458 <__mdiff+0xe8> + 8009486: bf00 nop + 8009488: 0800afff .word 0x0800afff + 800948c: 0800b010 .word 0x0800b010 -08008df8 <__d2b>: - 8008df8: e92d 41f3 stmdb sp!, {r0, r1, r4, r5, r6, r7, r8, lr} - 8008dfc: 2101 movs r1, #1 - 8008dfe: e9dd 7608 ldrd r7, r6, [sp, #32] - 8008e02: 4690 mov r8, r2 - 8008e04: 461d mov r5, r3 - 8008e06: f7ff fcd1 bl 80087ac <_Balloc> - 8008e0a: 4604 mov r4, r0 - 8008e0c: b930 cbnz r0, 8008e1c <__d2b+0x24> - 8008e0e: 4602 mov r2, r0 - 8008e10: f240 310a movw r1, #778 ; 0x30a - 8008e14: 4b24 ldr r3, [pc, #144] ; (8008ea8 <__d2b+0xb0>) - 8008e16: 4825 ldr r0, [pc, #148] ; (8008eac <__d2b+0xb4>) - 8008e18: f000 f9b4 bl 8009184 <__assert_func> - 8008e1c: f3c5 0313 ubfx r3, r5, #0, #20 - 8008e20: f3c5 550a ubfx r5, r5, #20, #11 - 8008e24: bb2d cbnz r5, 8008e72 <__d2b+0x7a> - 8008e26: 9301 str r3, [sp, #4] - 8008e28: f1b8 0300 subs.w r3, r8, #0 - 8008e2c: d026 beq.n 8008e7c <__d2b+0x84> - 8008e2e: 4668 mov r0, sp - 8008e30: 9300 str r3, [sp, #0] - 8008e32: f7ff fd87 bl 8008944 <__lo0bits> - 8008e36: 9900 ldr r1, [sp, #0] - 8008e38: b1f0 cbz r0, 8008e78 <__d2b+0x80> - 8008e3a: 9a01 ldr r2, [sp, #4] - 8008e3c: f1c0 0320 rsb r3, r0, #32 - 8008e40: fa02 f303 lsl.w r3, r2, r3 - 8008e44: 430b orrs r3, r1 - 8008e46: 40c2 lsrs r2, r0 - 8008e48: 6163 str r3, [r4, #20] - 8008e4a: 9201 str r2, [sp, #4] - 8008e4c: 9b01 ldr r3, [sp, #4] - 8008e4e: 2b00 cmp r3, #0 - 8008e50: bf14 ite ne - 8008e52: 2102 movne r1, #2 - 8008e54: 2101 moveq r1, #1 - 8008e56: 61a3 str r3, [r4, #24] - 8008e58: 6121 str r1, [r4, #16] - 8008e5a: b1c5 cbz r5, 8008e8e <__d2b+0x96> - 8008e5c: f2a5 4533 subw r5, r5, #1075 ; 0x433 - 8008e60: 4405 add r5, r0 - 8008e62: f1c0 0035 rsb r0, r0, #53 ; 0x35 - 8008e66: 603d str r5, [r7, #0] - 8008e68: 6030 str r0, [r6, #0] - 8008e6a: 4620 mov r0, r4 - 8008e6c: b002 add sp, #8 - 8008e6e: e8bd 81f0 ldmia.w sp!, {r4, r5, r6, r7, r8, pc} - 8008e72: f443 1380 orr.w r3, r3, #1048576 ; 0x100000 - 8008e76: e7d6 b.n 8008e26 <__d2b+0x2e> - 8008e78: 6161 str r1, [r4, #20] - 8008e7a: e7e7 b.n 8008e4c <__d2b+0x54> - 8008e7c: a801 add r0, sp, #4 - 8008e7e: f7ff fd61 bl 8008944 <__lo0bits> - 8008e82: 2101 movs r1, #1 - 8008e84: 9b01 ldr r3, [sp, #4] - 8008e86: 6121 str r1, [r4, #16] - 8008e88: 6163 str r3, [r4, #20] - 8008e8a: 3020 adds r0, #32 - 8008e8c: e7e5 b.n 8008e5a <__d2b+0x62> - 8008e8e: eb04 0381 add.w r3, r4, r1, lsl #2 - 8008e92: f2a0 4032 subw r0, r0, #1074 ; 0x432 - 8008e96: 6038 str r0, [r7, #0] - 8008e98: 6918 ldr r0, [r3, #16] - 8008e9a: f7ff fd33 bl 8008904 <__hi0bits> - 8008e9e: ebc0 1141 rsb r1, r0, r1, lsl #5 - 8008ea2: 6031 str r1, [r6, #0] - 8008ea4: e7e1 b.n 8008e6a <__d2b+0x72> - 8008ea6: bf00 nop - 8008ea8: 0800a92f .word 0x0800a92f - 8008eac: 0800a940 .word 0x0800a940 +08009490 <__d2b>: + 8009490: e92d 41f3 stmdb sp!, {r0, r1, r4, r5, r6, r7, r8, lr} + 8009494: 2101 movs r1, #1 + 8009496: e9dd 7608 ldrd r7, r6, [sp, #32] + 800949a: 4690 mov r8, r2 + 800949c: 461d mov r5, r3 + 800949e: f7ff fcd1 bl 8008e44 <_Balloc> + 80094a2: 4604 mov r4, r0 + 80094a4: b930 cbnz r0, 80094b4 <__d2b+0x24> + 80094a6: 4602 mov r2, r0 + 80094a8: f240 310a movw r1, #778 ; 0x30a + 80094ac: 4b24 ldr r3, [pc, #144] ; (8009540 <__d2b+0xb0>) + 80094ae: 4825 ldr r0, [pc, #148] ; (8009544 <__d2b+0xb4>) + 80094b0: f000 f9b4 bl 800981c <__assert_func> + 80094b4: f3c5 0313 ubfx r3, r5, #0, #20 + 80094b8: f3c5 550a ubfx r5, r5, #20, #11 + 80094bc: bb2d cbnz r5, 800950a <__d2b+0x7a> + 80094be: 9301 str r3, [sp, #4] + 80094c0: f1b8 0300 subs.w r3, r8, #0 + 80094c4: d026 beq.n 8009514 <__d2b+0x84> + 80094c6: 4668 mov r0, sp + 80094c8: 9300 str r3, [sp, #0] + 80094ca: f7ff fd87 bl 8008fdc <__lo0bits> + 80094ce: 9900 ldr r1, [sp, #0] + 80094d0: b1f0 cbz r0, 8009510 <__d2b+0x80> + 80094d2: 9a01 ldr r2, [sp, #4] + 80094d4: f1c0 0320 rsb r3, r0, #32 + 80094d8: fa02 f303 lsl.w r3, r2, r3 + 80094dc: 430b orrs r3, r1 + 80094de: 40c2 lsrs r2, r0 + 80094e0: 6163 str r3, [r4, #20] + 80094e2: 9201 str r2, [sp, #4] + 80094e4: 9b01 ldr r3, [sp, #4] + 80094e6: 2b00 cmp r3, #0 + 80094e8: bf14 ite ne + 80094ea: 2102 movne r1, #2 + 80094ec: 2101 moveq r1, #1 + 80094ee: 61a3 str r3, [r4, #24] + 80094f0: 6121 str r1, [r4, #16] + 80094f2: b1c5 cbz r5, 8009526 <__d2b+0x96> + 80094f4: f2a5 4533 subw r5, r5, #1075 ; 0x433 + 80094f8: 4405 add r5, r0 + 80094fa: f1c0 0035 rsb r0, r0, #53 ; 0x35 + 80094fe: 603d str r5, [r7, #0] + 8009500: 6030 str r0, [r6, #0] + 8009502: 4620 mov r0, r4 + 8009504: b002 add sp, #8 + 8009506: e8bd 81f0 ldmia.w sp!, {r4, r5, r6, r7, r8, pc} + 800950a: f443 1380 orr.w r3, r3, #1048576 ; 0x100000 + 800950e: e7d6 b.n 80094be <__d2b+0x2e> + 8009510: 6161 str r1, [r4, #20] + 8009512: e7e7 b.n 80094e4 <__d2b+0x54> + 8009514: a801 add r0, sp, #4 + 8009516: f7ff fd61 bl 8008fdc <__lo0bits> + 800951a: 2101 movs r1, #1 + 800951c: 9b01 ldr r3, [sp, #4] + 800951e: 6121 str r1, [r4, #16] + 8009520: 6163 str r3, [r4, #20] + 8009522: 3020 adds r0, #32 + 8009524: e7e5 b.n 80094f2 <__d2b+0x62> + 8009526: eb04 0381 add.w r3, r4, r1, lsl #2 + 800952a: f2a0 4032 subw r0, r0, #1074 ; 0x432 + 800952e: 6038 str r0, [r7, #0] + 8009530: 6918 ldr r0, [r3, #16] + 8009532: f7ff fd33 bl 8008f9c <__hi0bits> + 8009536: ebc0 1141 rsb r1, r0, r1, lsl #5 + 800953a: 6031 str r1, [r6, #0] + 800953c: e7e1 b.n 8009502 <__d2b+0x72> + 800953e: bf00 nop + 8009540: 0800afff .word 0x0800afff + 8009544: 0800b010 .word 0x0800b010 -08008eb0 <_calloc_r>: - 8008eb0: b538 push {r3, r4, r5, lr} - 8008eb2: fb02 f501 mul.w r5, r2, r1 - 8008eb6: 4629 mov r1, r5 - 8008eb8: f7fe f8e4 bl 8007084 <_malloc_r> - 8008ebc: 4604 mov r4, r0 - 8008ebe: b118 cbz r0, 8008ec8 <_calloc_r+0x18> - 8008ec0: 462a mov r2, r5 - 8008ec2: 2100 movs r1, #0 - 8008ec4: f7fe f88a bl 8006fdc - 8008ec8: 4620 mov r0, r4 - 8008eca: bd38 pop {r3, r4, r5, pc} +08009548 <_calloc_r>: + 8009548: b538 push {r3, r4, r5, lr} + 800954a: fb02 f501 mul.w r5, r2, r1 + 800954e: 4629 mov r1, r5 + 8009550: f7fe f8e6 bl 8007720 <_malloc_r> + 8009554: 4604 mov r4, r0 + 8009556: b118 cbz r0, 8009560 <_calloc_r+0x18> + 8009558: 462a mov r2, r5 + 800955a: 2100 movs r1, #0 + 800955c: f7fe f88c bl 8007678 + 8009560: 4620 mov r0, r4 + 8009562: bd38 pop {r3, r4, r5, pc} -08008ecc <__ssputs_r>: - 8008ecc: e92d 47f0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, lr} - 8008ed0: 688e ldr r6, [r1, #8] - 8008ed2: 4682 mov sl, r0 - 8008ed4: 429e cmp r6, r3 - 8008ed6: 460c mov r4, r1 - 8008ed8: 4690 mov r8, r2 - 8008eda: 461f mov r7, r3 - 8008edc: d838 bhi.n 8008f50 <__ssputs_r+0x84> - 8008ede: 898a ldrh r2, [r1, #12] - 8008ee0: f412 6f90 tst.w r2, #1152 ; 0x480 - 8008ee4: d032 beq.n 8008f4c <__ssputs_r+0x80> - 8008ee6: 6825 ldr r5, [r4, #0] - 8008ee8: 6909 ldr r1, [r1, #16] - 8008eea: 3301 adds r3, #1 - 8008eec: eba5 0901 sub.w r9, r5, r1 - 8008ef0: 6965 ldr r5, [r4, #20] - 8008ef2: 444b add r3, r9 - 8008ef4: eb05 0545 add.w r5, r5, r5, lsl #1 - 8008ef8: eb05 75d5 add.w r5, r5, r5, lsr #31 - 8008efc: 106d asrs r5, r5, #1 - 8008efe: 429d cmp r5, r3 - 8008f00: bf38 it cc - 8008f02: 461d movcc r5, r3 - 8008f04: 0553 lsls r3, r2, #21 - 8008f06: d531 bpl.n 8008f6c <__ssputs_r+0xa0> - 8008f08: 4629 mov r1, r5 - 8008f0a: f7fe f8bb bl 8007084 <_malloc_r> - 8008f0e: 4606 mov r6, r0 - 8008f10: b950 cbnz r0, 8008f28 <__ssputs_r+0x5c> - 8008f12: 230c movs r3, #12 - 8008f14: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff - 8008f18: f8ca 3000 str.w r3, [sl] - 8008f1c: 89a3 ldrh r3, [r4, #12] - 8008f1e: f043 0340 orr.w r3, r3, #64 ; 0x40 - 8008f22: 81a3 strh r3, [r4, #12] - 8008f24: e8bd 87f0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, pc} - 8008f28: 464a mov r2, r9 - 8008f2a: 6921 ldr r1, [r4, #16] - 8008f2c: f7ff fc24 bl 8008778 - 8008f30: 89a3 ldrh r3, [r4, #12] - 8008f32: f423 6390 bic.w r3, r3, #1152 ; 0x480 - 8008f36: f043 0380 orr.w r3, r3, #128 ; 0x80 - 8008f3a: 81a3 strh r3, [r4, #12] - 8008f3c: 6126 str r6, [r4, #16] - 8008f3e: 444e add r6, r9 - 8008f40: 6026 str r6, [r4, #0] - 8008f42: 463e mov r6, r7 - 8008f44: 6165 str r5, [r4, #20] - 8008f46: eba5 0509 sub.w r5, r5, r9 - 8008f4a: 60a5 str r5, [r4, #8] - 8008f4c: 42be cmp r6, r7 - 8008f4e: d900 bls.n 8008f52 <__ssputs_r+0x86> - 8008f50: 463e mov r6, r7 - 8008f52: 4632 mov r2, r6 - 8008f54: 4641 mov r1, r8 - 8008f56: 6820 ldr r0, [r4, #0] - 8008f58: f000 f959 bl 800920e - 8008f5c: 68a3 ldr r3, [r4, #8] - 8008f5e: 6822 ldr r2, [r4, #0] - 8008f60: 1b9b subs r3, r3, r6 - 8008f62: 4432 add r2, r6 - 8008f64: 2000 movs r0, #0 - 8008f66: 60a3 str r3, [r4, #8] - 8008f68: 6022 str r2, [r4, #0] - 8008f6a: e7db b.n 8008f24 <__ssputs_r+0x58> - 8008f6c: 462a mov r2, r5 - 8008f6e: f000 f968 bl 8009242 <_realloc_r> - 8008f72: 4606 mov r6, r0 - 8008f74: 2800 cmp r0, #0 - 8008f76: d1e1 bne.n 8008f3c <__ssputs_r+0x70> - 8008f78: 4650 mov r0, sl - 8008f7a: 6921 ldr r1, [r4, #16] - 8008f7c: f7fe f836 bl 8006fec <_free_r> - 8008f80: e7c7 b.n 8008f12 <__ssputs_r+0x46> +08009564 <__ssputs_r>: + 8009564: e92d 47f0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, lr} + 8009568: 688e ldr r6, [r1, #8] + 800956a: 4682 mov sl, r0 + 800956c: 429e cmp r6, r3 + 800956e: 460c mov r4, r1 + 8009570: 4690 mov r8, r2 + 8009572: 461f mov r7, r3 + 8009574: d838 bhi.n 80095e8 <__ssputs_r+0x84> + 8009576: 898a ldrh r2, [r1, #12] + 8009578: f412 6f90 tst.w r2, #1152 ; 0x480 + 800957c: d032 beq.n 80095e4 <__ssputs_r+0x80> + 800957e: 6825 ldr r5, [r4, #0] + 8009580: 6909 ldr r1, [r1, #16] + 8009582: 3301 adds r3, #1 + 8009584: eba5 0901 sub.w r9, r5, r1 + 8009588: 6965 ldr r5, [r4, #20] + 800958a: 444b add r3, r9 + 800958c: eb05 0545 add.w r5, r5, r5, lsl #1 + 8009590: eb05 75d5 add.w r5, r5, r5, lsr #31 + 8009594: 106d asrs r5, r5, #1 + 8009596: 429d cmp r5, r3 + 8009598: bf38 it cc + 800959a: 461d movcc r5, r3 + 800959c: 0553 lsls r3, r2, #21 + 800959e: d531 bpl.n 8009604 <__ssputs_r+0xa0> + 80095a0: 4629 mov r1, r5 + 80095a2: f7fe f8bd bl 8007720 <_malloc_r> + 80095a6: 4606 mov r6, r0 + 80095a8: b950 cbnz r0, 80095c0 <__ssputs_r+0x5c> + 80095aa: 230c movs r3, #12 + 80095ac: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff + 80095b0: f8ca 3000 str.w r3, [sl] + 80095b4: 89a3 ldrh r3, [r4, #12] + 80095b6: f043 0340 orr.w r3, r3, #64 ; 0x40 + 80095ba: 81a3 strh r3, [r4, #12] + 80095bc: e8bd 87f0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, pc} + 80095c0: 464a mov r2, r9 + 80095c2: 6921 ldr r1, [r4, #16] + 80095c4: f7ff fc24 bl 8008e10 + 80095c8: 89a3 ldrh r3, [r4, #12] + 80095ca: f423 6390 bic.w r3, r3, #1152 ; 0x480 + 80095ce: f043 0380 orr.w r3, r3, #128 ; 0x80 + 80095d2: 81a3 strh r3, [r4, #12] + 80095d4: 6126 str r6, [r4, #16] + 80095d6: 444e add r6, r9 + 80095d8: 6026 str r6, [r4, #0] + 80095da: 463e mov r6, r7 + 80095dc: 6165 str r5, [r4, #20] + 80095de: eba5 0509 sub.w r5, r5, r9 + 80095e2: 60a5 str r5, [r4, #8] + 80095e4: 42be cmp r6, r7 + 80095e6: d900 bls.n 80095ea <__ssputs_r+0x86> + 80095e8: 463e mov r6, r7 + 80095ea: 4632 mov r2, r6 + 80095ec: 4641 mov r1, r8 + 80095ee: 6820 ldr r0, [r4, #0] + 80095f0: f000 f959 bl 80098a6 + 80095f4: 68a3 ldr r3, [r4, #8] + 80095f6: 6822 ldr r2, [r4, #0] + 80095f8: 1b9b subs r3, r3, r6 + 80095fa: 4432 add r2, r6 + 80095fc: 2000 movs r0, #0 + 80095fe: 60a3 str r3, [r4, #8] + 8009600: 6022 str r2, [r4, #0] + 8009602: e7db b.n 80095bc <__ssputs_r+0x58> + 8009604: 462a mov r2, r5 + 8009606: f000 f968 bl 80098da <_realloc_r> + 800960a: 4606 mov r6, r0 + 800960c: 2800 cmp r0, #0 + 800960e: d1e1 bne.n 80095d4 <__ssputs_r+0x70> + 8009610: 4650 mov r0, sl + 8009612: 6921 ldr r1, [r4, #16] + 8009614: f7fe f838 bl 8007688 <_free_r> + 8009618: e7c7 b.n 80095aa <__ssputs_r+0x46> ... -08008f84 <_svfiprintf_r>: - 8008f84: e92d 4ff0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} - 8008f88: 4698 mov r8, r3 - 8008f8a: 898b ldrh r3, [r1, #12] - 8008f8c: 4607 mov r7, r0 - 8008f8e: 061b lsls r3, r3, #24 - 8008f90: 460d mov r5, r1 - 8008f92: 4614 mov r4, r2 - 8008f94: b09d sub sp, #116 ; 0x74 - 8008f96: d50e bpl.n 8008fb6 <_svfiprintf_r+0x32> - 8008f98: 690b ldr r3, [r1, #16] - 8008f9a: b963 cbnz r3, 8008fb6 <_svfiprintf_r+0x32> - 8008f9c: 2140 movs r1, #64 ; 0x40 - 8008f9e: f7fe f871 bl 8007084 <_malloc_r> - 8008fa2: 6028 str r0, [r5, #0] - 8008fa4: 6128 str r0, [r5, #16] - 8008fa6: b920 cbnz r0, 8008fb2 <_svfiprintf_r+0x2e> - 8008fa8: 230c movs r3, #12 - 8008faa: 603b str r3, [r7, #0] - 8008fac: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff - 8008fb0: e0d1 b.n 8009156 <_svfiprintf_r+0x1d2> - 8008fb2: 2340 movs r3, #64 ; 0x40 - 8008fb4: 616b str r3, [r5, #20] - 8008fb6: 2300 movs r3, #0 - 8008fb8: 9309 str r3, [sp, #36] ; 0x24 - 8008fba: 2320 movs r3, #32 - 8008fbc: f88d 3029 strb.w r3, [sp, #41] ; 0x29 - 8008fc0: 2330 movs r3, #48 ; 0x30 - 8008fc2: f04f 0901 mov.w r9, #1 - 8008fc6: f8cd 800c str.w r8, [sp, #12] - 8008fca: f8df 81a4 ldr.w r8, [pc, #420] ; 8009170 <_svfiprintf_r+0x1ec> - 8008fce: f88d 302a strb.w r3, [sp, #42] ; 0x2a - 8008fd2: 4623 mov r3, r4 - 8008fd4: 469a mov sl, r3 - 8008fd6: f813 2b01 ldrb.w r2, [r3], #1 - 8008fda: b10a cbz r2, 8008fe0 <_svfiprintf_r+0x5c> - 8008fdc: 2a25 cmp r2, #37 ; 0x25 - 8008fde: d1f9 bne.n 8008fd4 <_svfiprintf_r+0x50> - 8008fe0: ebba 0b04 subs.w fp, sl, r4 - 8008fe4: d00b beq.n 8008ffe <_svfiprintf_r+0x7a> - 8008fe6: 465b mov r3, fp - 8008fe8: 4622 mov r2, r4 - 8008fea: 4629 mov r1, r5 - 8008fec: 4638 mov r0, r7 - 8008fee: f7ff ff6d bl 8008ecc <__ssputs_r> - 8008ff2: 3001 adds r0, #1 - 8008ff4: f000 80aa beq.w 800914c <_svfiprintf_r+0x1c8> - 8008ff8: 9a09 ldr r2, [sp, #36] ; 0x24 - 8008ffa: 445a add r2, fp - 8008ffc: 9209 str r2, [sp, #36] ; 0x24 - 8008ffe: f89a 3000 ldrb.w r3, [sl] - 8009002: 2b00 cmp r3, #0 - 8009004: f000 80a2 beq.w 800914c <_svfiprintf_r+0x1c8> - 8009008: 2300 movs r3, #0 - 800900a: f04f 32ff mov.w r2, #4294967295 ; 0xffffffff - 800900e: e9cd 2305 strd r2, r3, [sp, #20] - 8009012: f10a 0a01 add.w sl, sl, #1 - 8009016: 9304 str r3, [sp, #16] - 8009018: 9307 str r3, [sp, #28] - 800901a: f88d 3053 strb.w r3, [sp, #83] ; 0x53 - 800901e: 931a str r3, [sp, #104] ; 0x68 - 8009020: 4654 mov r4, sl - 8009022: 2205 movs r2, #5 - 8009024: f814 1b01 ldrb.w r1, [r4], #1 - 8009028: 4851 ldr r0, [pc, #324] ; (8009170 <_svfiprintf_r+0x1ec>) - 800902a: f7ff fb97 bl 800875c - 800902e: 9a04 ldr r2, [sp, #16] - 8009030: b9d8 cbnz r0, 800906a <_svfiprintf_r+0xe6> - 8009032: 06d0 lsls r0, r2, #27 - 8009034: bf44 itt mi - 8009036: 2320 movmi r3, #32 - 8009038: f88d 3053 strbmi.w r3, [sp, #83] ; 0x53 - 800903c: 0711 lsls r1, r2, #28 - 800903e: bf44 itt mi - 8009040: 232b movmi r3, #43 ; 0x2b - 8009042: f88d 3053 strbmi.w r3, [sp, #83] ; 0x53 - 8009046: f89a 3000 ldrb.w r3, [sl] - 800904a: 2b2a cmp r3, #42 ; 0x2a - 800904c: d015 beq.n 800907a <_svfiprintf_r+0xf6> - 800904e: 4654 mov r4, sl - 8009050: 2000 movs r0, #0 - 8009052: f04f 0c0a mov.w ip, #10 - 8009056: 9a07 ldr r2, [sp, #28] - 8009058: 4621 mov r1, r4 - 800905a: f811 3b01 ldrb.w r3, [r1], #1 - 800905e: 3b30 subs r3, #48 ; 0x30 - 8009060: 2b09 cmp r3, #9 - 8009062: d94e bls.n 8009102 <_svfiprintf_r+0x17e> - 8009064: b1b0 cbz r0, 8009094 <_svfiprintf_r+0x110> - 8009066: 9207 str r2, [sp, #28] - 8009068: e014 b.n 8009094 <_svfiprintf_r+0x110> - 800906a: eba0 0308 sub.w r3, r0, r8 - 800906e: fa09 f303 lsl.w r3, r9, r3 - 8009072: 4313 orrs r3, r2 - 8009074: 46a2 mov sl, r4 - 8009076: 9304 str r3, [sp, #16] - 8009078: e7d2 b.n 8009020 <_svfiprintf_r+0x9c> - 800907a: 9b03 ldr r3, [sp, #12] - 800907c: 1d19 adds r1, r3, #4 - 800907e: 681b ldr r3, [r3, #0] - 8009080: 9103 str r1, [sp, #12] - 8009082: 2b00 cmp r3, #0 - 8009084: bfbb ittet lt - 8009086: 425b neglt r3, r3 - 8009088: f042 0202 orrlt.w r2, r2, #2 - 800908c: 9307 strge r3, [sp, #28] - 800908e: 9307 strlt r3, [sp, #28] - 8009090: bfb8 it lt - 8009092: 9204 strlt r2, [sp, #16] - 8009094: 7823 ldrb r3, [r4, #0] - 8009096: 2b2e cmp r3, #46 ; 0x2e - 8009098: d10c bne.n 80090b4 <_svfiprintf_r+0x130> - 800909a: 7863 ldrb r3, [r4, #1] - 800909c: 2b2a cmp r3, #42 ; 0x2a - 800909e: d135 bne.n 800910c <_svfiprintf_r+0x188> - 80090a0: 9b03 ldr r3, [sp, #12] - 80090a2: 3402 adds r4, #2 - 80090a4: 1d1a adds r2, r3, #4 - 80090a6: 681b ldr r3, [r3, #0] - 80090a8: 9203 str r2, [sp, #12] - 80090aa: 2b00 cmp r3, #0 - 80090ac: bfb8 it lt - 80090ae: f04f 33ff movlt.w r3, #4294967295 ; 0xffffffff - 80090b2: 9305 str r3, [sp, #20] - 80090b4: f8df a0c8 ldr.w sl, [pc, #200] ; 8009180 <_svfiprintf_r+0x1fc> - 80090b8: 2203 movs r2, #3 - 80090ba: 4650 mov r0, sl - 80090bc: 7821 ldrb r1, [r4, #0] - 80090be: f7ff fb4d bl 800875c - 80090c2: b140 cbz r0, 80090d6 <_svfiprintf_r+0x152> - 80090c4: 2340 movs r3, #64 ; 0x40 - 80090c6: eba0 000a sub.w r0, r0, sl - 80090ca: fa03 f000 lsl.w r0, r3, r0 - 80090ce: 9b04 ldr r3, [sp, #16] - 80090d0: 3401 adds r4, #1 - 80090d2: 4303 orrs r3, r0 - 80090d4: 9304 str r3, [sp, #16] - 80090d6: f814 1b01 ldrb.w r1, [r4], #1 - 80090da: 2206 movs r2, #6 - 80090dc: 4825 ldr r0, [pc, #148] ; (8009174 <_svfiprintf_r+0x1f0>) - 80090de: f88d 1028 strb.w r1, [sp, #40] ; 0x28 - 80090e2: f7ff fb3b bl 800875c - 80090e6: 2800 cmp r0, #0 - 80090e8: d038 beq.n 800915c <_svfiprintf_r+0x1d8> - 80090ea: 4b23 ldr r3, [pc, #140] ; (8009178 <_svfiprintf_r+0x1f4>) - 80090ec: bb1b cbnz r3, 8009136 <_svfiprintf_r+0x1b2> - 80090ee: 9b03 ldr r3, [sp, #12] - 80090f0: 3307 adds r3, #7 - 80090f2: f023 0307 bic.w r3, r3, #7 - 80090f6: 3308 adds r3, #8 - 80090f8: 9303 str r3, [sp, #12] - 80090fa: 9b09 ldr r3, [sp, #36] ; 0x24 - 80090fc: 4433 add r3, r6 - 80090fe: 9309 str r3, [sp, #36] ; 0x24 - 8009100: e767 b.n 8008fd2 <_svfiprintf_r+0x4e> - 8009102: 460c mov r4, r1 - 8009104: 2001 movs r0, #1 - 8009106: fb0c 3202 mla r2, ip, r2, r3 - 800910a: e7a5 b.n 8009058 <_svfiprintf_r+0xd4> - 800910c: 2300 movs r3, #0 - 800910e: f04f 0c0a mov.w ip, #10 - 8009112: 4619 mov r1, r3 - 8009114: 3401 adds r4, #1 - 8009116: 9305 str r3, [sp, #20] - 8009118: 4620 mov r0, r4 - 800911a: f810 2b01 ldrb.w r2, [r0], #1 - 800911e: 3a30 subs r2, #48 ; 0x30 - 8009120: 2a09 cmp r2, #9 - 8009122: d903 bls.n 800912c <_svfiprintf_r+0x1a8> - 8009124: 2b00 cmp r3, #0 - 8009126: d0c5 beq.n 80090b4 <_svfiprintf_r+0x130> - 8009128: 9105 str r1, [sp, #20] - 800912a: e7c3 b.n 80090b4 <_svfiprintf_r+0x130> - 800912c: 4604 mov r4, r0 - 800912e: 2301 movs r3, #1 - 8009130: fb0c 2101 mla r1, ip, r1, r2 - 8009134: e7f0 b.n 8009118 <_svfiprintf_r+0x194> - 8009136: ab03 add r3, sp, #12 - 8009138: 9300 str r3, [sp, #0] - 800913a: 462a mov r2, r5 - 800913c: 4638 mov r0, r7 - 800913e: 4b0f ldr r3, [pc, #60] ; (800917c <_svfiprintf_r+0x1f8>) - 8009140: a904 add r1, sp, #16 - 8009142: f7fe f897 bl 8007274 <_printf_float> - 8009146: 1c42 adds r2, r0, #1 - 8009148: 4606 mov r6, r0 - 800914a: d1d6 bne.n 80090fa <_svfiprintf_r+0x176> - 800914c: 89ab ldrh r3, [r5, #12] - 800914e: 065b lsls r3, r3, #25 - 8009150: f53f af2c bmi.w 8008fac <_svfiprintf_r+0x28> - 8009154: 9809 ldr r0, [sp, #36] ; 0x24 - 8009156: b01d add sp, #116 ; 0x74 - 8009158: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc} - 800915c: ab03 add r3, sp, #12 - 800915e: 9300 str r3, [sp, #0] - 8009160: 462a mov r2, r5 - 8009162: 4638 mov r0, r7 - 8009164: 4b05 ldr r3, [pc, #20] ; (800917c <_svfiprintf_r+0x1f8>) - 8009166: a904 add r1, sp, #16 - 8009168: f7fe fb20 bl 80077ac <_printf_i> - 800916c: e7eb b.n 8009146 <_svfiprintf_r+0x1c2> - 800916e: bf00 nop - 8009170: 0800aa9c .word 0x0800aa9c - 8009174: 0800aaa6 .word 0x0800aaa6 - 8009178: 08007275 .word 0x08007275 - 800917c: 08008ecd .word 0x08008ecd - 8009180: 0800aaa2 .word 0x0800aaa2 +0800961c <_svfiprintf_r>: + 800961c: e92d 4ff0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} + 8009620: 4698 mov r8, r3 + 8009622: 898b ldrh r3, [r1, #12] + 8009624: 4607 mov r7, r0 + 8009626: 061b lsls r3, r3, #24 + 8009628: 460d mov r5, r1 + 800962a: 4614 mov r4, r2 + 800962c: b09d sub sp, #116 ; 0x74 + 800962e: d50e bpl.n 800964e <_svfiprintf_r+0x32> + 8009630: 690b ldr r3, [r1, #16] + 8009632: b963 cbnz r3, 800964e <_svfiprintf_r+0x32> + 8009634: 2140 movs r1, #64 ; 0x40 + 8009636: f7fe f873 bl 8007720 <_malloc_r> + 800963a: 6028 str r0, [r5, #0] + 800963c: 6128 str r0, [r5, #16] + 800963e: b920 cbnz r0, 800964a <_svfiprintf_r+0x2e> + 8009640: 230c movs r3, #12 + 8009642: 603b str r3, [r7, #0] + 8009644: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff + 8009648: e0d1 b.n 80097ee <_svfiprintf_r+0x1d2> + 800964a: 2340 movs r3, #64 ; 0x40 + 800964c: 616b str r3, [r5, #20] + 800964e: 2300 movs r3, #0 + 8009650: 9309 str r3, [sp, #36] ; 0x24 + 8009652: 2320 movs r3, #32 + 8009654: f88d 3029 strb.w r3, [sp, #41] ; 0x29 + 8009658: 2330 movs r3, #48 ; 0x30 + 800965a: f04f 0901 mov.w r9, #1 + 800965e: f8cd 800c str.w r8, [sp, #12] + 8009662: f8df 81a4 ldr.w r8, [pc, #420] ; 8009808 <_svfiprintf_r+0x1ec> + 8009666: f88d 302a strb.w r3, [sp, #42] ; 0x2a + 800966a: 4623 mov r3, r4 + 800966c: 469a mov sl, r3 + 800966e: f813 2b01 ldrb.w r2, [r3], #1 + 8009672: b10a cbz r2, 8009678 <_svfiprintf_r+0x5c> + 8009674: 2a25 cmp r2, #37 ; 0x25 + 8009676: d1f9 bne.n 800966c <_svfiprintf_r+0x50> + 8009678: ebba 0b04 subs.w fp, sl, r4 + 800967c: d00b beq.n 8009696 <_svfiprintf_r+0x7a> + 800967e: 465b mov r3, fp + 8009680: 4622 mov r2, r4 + 8009682: 4629 mov r1, r5 + 8009684: 4638 mov r0, r7 + 8009686: f7ff ff6d bl 8009564 <__ssputs_r> + 800968a: 3001 adds r0, #1 + 800968c: f000 80aa beq.w 80097e4 <_svfiprintf_r+0x1c8> + 8009690: 9a09 ldr r2, [sp, #36] ; 0x24 + 8009692: 445a add r2, fp + 8009694: 9209 str r2, [sp, #36] ; 0x24 + 8009696: f89a 3000 ldrb.w r3, [sl] + 800969a: 2b00 cmp r3, #0 + 800969c: f000 80a2 beq.w 80097e4 <_svfiprintf_r+0x1c8> + 80096a0: 2300 movs r3, #0 + 80096a2: f04f 32ff mov.w r2, #4294967295 ; 0xffffffff + 80096a6: e9cd 2305 strd r2, r3, [sp, #20] + 80096aa: f10a 0a01 add.w sl, sl, #1 + 80096ae: 9304 str r3, [sp, #16] + 80096b0: 9307 str r3, [sp, #28] + 80096b2: f88d 3053 strb.w r3, [sp, #83] ; 0x53 + 80096b6: 931a str r3, [sp, #104] ; 0x68 + 80096b8: 4654 mov r4, sl + 80096ba: 2205 movs r2, #5 + 80096bc: f814 1b01 ldrb.w r1, [r4], #1 + 80096c0: 4851 ldr r0, [pc, #324] ; (8009808 <_svfiprintf_r+0x1ec>) + 80096c2: f7ff fb97 bl 8008df4 + 80096c6: 9a04 ldr r2, [sp, #16] + 80096c8: b9d8 cbnz r0, 8009702 <_svfiprintf_r+0xe6> + 80096ca: 06d0 lsls r0, r2, #27 + 80096cc: bf44 itt mi + 80096ce: 2320 movmi r3, #32 + 80096d0: f88d 3053 strbmi.w r3, [sp, #83] ; 0x53 + 80096d4: 0711 lsls r1, r2, #28 + 80096d6: bf44 itt mi + 80096d8: 232b movmi r3, #43 ; 0x2b + 80096da: f88d 3053 strbmi.w r3, [sp, #83] ; 0x53 + 80096de: f89a 3000 ldrb.w r3, [sl] + 80096e2: 2b2a cmp r3, #42 ; 0x2a + 80096e4: d015 beq.n 8009712 <_svfiprintf_r+0xf6> + 80096e6: 4654 mov r4, sl + 80096e8: 2000 movs r0, #0 + 80096ea: f04f 0c0a mov.w ip, #10 + 80096ee: 9a07 ldr r2, [sp, #28] + 80096f0: 4621 mov r1, r4 + 80096f2: f811 3b01 ldrb.w r3, [r1], #1 + 80096f6: 3b30 subs r3, #48 ; 0x30 + 80096f8: 2b09 cmp r3, #9 + 80096fa: d94e bls.n 800979a <_svfiprintf_r+0x17e> + 80096fc: b1b0 cbz r0, 800972c <_svfiprintf_r+0x110> + 80096fe: 9207 str r2, [sp, #28] + 8009700: e014 b.n 800972c <_svfiprintf_r+0x110> + 8009702: eba0 0308 sub.w r3, r0, r8 + 8009706: fa09 f303 lsl.w r3, r9, r3 + 800970a: 4313 orrs r3, r2 + 800970c: 46a2 mov sl, r4 + 800970e: 9304 str r3, [sp, #16] + 8009710: e7d2 b.n 80096b8 <_svfiprintf_r+0x9c> + 8009712: 9b03 ldr r3, [sp, #12] + 8009714: 1d19 adds r1, r3, #4 + 8009716: 681b ldr r3, [r3, #0] + 8009718: 9103 str r1, [sp, #12] + 800971a: 2b00 cmp r3, #0 + 800971c: bfbb ittet lt + 800971e: 425b neglt r3, r3 + 8009720: f042 0202 orrlt.w r2, r2, #2 + 8009724: 9307 strge r3, [sp, #28] + 8009726: 9307 strlt r3, [sp, #28] + 8009728: bfb8 it lt + 800972a: 9204 strlt r2, [sp, #16] + 800972c: 7823 ldrb r3, [r4, #0] + 800972e: 2b2e cmp r3, #46 ; 0x2e + 8009730: d10c bne.n 800974c <_svfiprintf_r+0x130> + 8009732: 7863 ldrb r3, [r4, #1] + 8009734: 2b2a cmp r3, #42 ; 0x2a + 8009736: d135 bne.n 80097a4 <_svfiprintf_r+0x188> + 8009738: 9b03 ldr r3, [sp, #12] + 800973a: 3402 adds r4, #2 + 800973c: 1d1a adds r2, r3, #4 + 800973e: 681b ldr r3, [r3, #0] + 8009740: 9203 str r2, [sp, #12] + 8009742: 2b00 cmp r3, #0 + 8009744: bfb8 it lt + 8009746: f04f 33ff movlt.w r3, #4294967295 ; 0xffffffff + 800974a: 9305 str r3, [sp, #20] + 800974c: f8df a0c8 ldr.w sl, [pc, #200] ; 8009818 <_svfiprintf_r+0x1fc> + 8009750: 2203 movs r2, #3 + 8009752: 4650 mov r0, sl + 8009754: 7821 ldrb r1, [r4, #0] + 8009756: f7ff fb4d bl 8008df4 + 800975a: b140 cbz r0, 800976e <_svfiprintf_r+0x152> + 800975c: 2340 movs r3, #64 ; 0x40 + 800975e: eba0 000a sub.w r0, r0, sl + 8009762: fa03 f000 lsl.w r0, r3, r0 + 8009766: 9b04 ldr r3, [sp, #16] + 8009768: 3401 adds r4, #1 + 800976a: 4303 orrs r3, r0 + 800976c: 9304 str r3, [sp, #16] + 800976e: f814 1b01 ldrb.w r1, [r4], #1 + 8009772: 2206 movs r2, #6 + 8009774: 4825 ldr r0, [pc, #148] ; (800980c <_svfiprintf_r+0x1f0>) + 8009776: f88d 1028 strb.w r1, [sp, #40] ; 0x28 + 800977a: f7ff fb3b bl 8008df4 + 800977e: 2800 cmp r0, #0 + 8009780: d038 beq.n 80097f4 <_svfiprintf_r+0x1d8> + 8009782: 4b23 ldr r3, [pc, #140] ; (8009810 <_svfiprintf_r+0x1f4>) + 8009784: bb1b cbnz r3, 80097ce <_svfiprintf_r+0x1b2> + 8009786: 9b03 ldr r3, [sp, #12] + 8009788: 3307 adds r3, #7 + 800978a: f023 0307 bic.w r3, r3, #7 + 800978e: 3308 adds r3, #8 + 8009790: 9303 str r3, [sp, #12] + 8009792: 9b09 ldr r3, [sp, #36] ; 0x24 + 8009794: 4433 add r3, r6 + 8009796: 9309 str r3, [sp, #36] ; 0x24 + 8009798: e767 b.n 800966a <_svfiprintf_r+0x4e> + 800979a: 460c mov r4, r1 + 800979c: 2001 movs r0, #1 + 800979e: fb0c 3202 mla r2, ip, r2, r3 + 80097a2: e7a5 b.n 80096f0 <_svfiprintf_r+0xd4> + 80097a4: 2300 movs r3, #0 + 80097a6: f04f 0c0a mov.w ip, #10 + 80097aa: 4619 mov r1, r3 + 80097ac: 3401 adds r4, #1 + 80097ae: 9305 str r3, [sp, #20] + 80097b0: 4620 mov r0, r4 + 80097b2: f810 2b01 ldrb.w r2, [r0], #1 + 80097b6: 3a30 subs r2, #48 ; 0x30 + 80097b8: 2a09 cmp r2, #9 + 80097ba: d903 bls.n 80097c4 <_svfiprintf_r+0x1a8> + 80097bc: 2b00 cmp r3, #0 + 80097be: d0c5 beq.n 800974c <_svfiprintf_r+0x130> + 80097c0: 9105 str r1, [sp, #20] + 80097c2: e7c3 b.n 800974c <_svfiprintf_r+0x130> + 80097c4: 4604 mov r4, r0 + 80097c6: 2301 movs r3, #1 + 80097c8: fb0c 2101 mla r1, ip, r1, r2 + 80097cc: e7f0 b.n 80097b0 <_svfiprintf_r+0x194> + 80097ce: ab03 add r3, sp, #12 + 80097d0: 9300 str r3, [sp, #0] + 80097d2: 462a mov r2, r5 + 80097d4: 4638 mov r0, r7 + 80097d6: 4b0f ldr r3, [pc, #60] ; (8009814 <_svfiprintf_r+0x1f8>) + 80097d8: a904 add r1, sp, #16 + 80097da: f7fe f899 bl 8007910 <_printf_float> + 80097de: 1c42 adds r2, r0, #1 + 80097e0: 4606 mov r6, r0 + 80097e2: d1d6 bne.n 8009792 <_svfiprintf_r+0x176> + 80097e4: 89ab ldrh r3, [r5, #12] + 80097e6: 065b lsls r3, r3, #25 + 80097e8: f53f af2c bmi.w 8009644 <_svfiprintf_r+0x28> + 80097ec: 9809 ldr r0, [sp, #36] ; 0x24 + 80097ee: b01d add sp, #116 ; 0x74 + 80097f0: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc} + 80097f4: ab03 add r3, sp, #12 + 80097f6: 9300 str r3, [sp, #0] + 80097f8: 462a mov r2, r5 + 80097fa: 4638 mov r0, r7 + 80097fc: 4b05 ldr r3, [pc, #20] ; (8009814 <_svfiprintf_r+0x1f8>) + 80097fe: a904 add r1, sp, #16 + 8009800: f7fe fb22 bl 8007e48 <_printf_i> + 8009804: e7eb b.n 80097de <_svfiprintf_r+0x1c2> + 8009806: bf00 nop + 8009808: 0800b16c .word 0x0800b16c + 800980c: 0800b176 .word 0x0800b176 + 8009810: 08007911 .word 0x08007911 + 8009814: 08009565 .word 0x08009565 + 8009818: 0800b172 .word 0x0800b172 -08009184 <__assert_func>: - 8009184: b51f push {r0, r1, r2, r3, r4, lr} - 8009186: 4614 mov r4, r2 - 8009188: 461a mov r2, r3 - 800918a: 4b09 ldr r3, [pc, #36] ; (80091b0 <__assert_func+0x2c>) - 800918c: 4605 mov r5, r0 - 800918e: 681b ldr r3, [r3, #0] - 8009190: 68d8 ldr r0, [r3, #12] - 8009192: b14c cbz r4, 80091a8 <__assert_func+0x24> - 8009194: 4b07 ldr r3, [pc, #28] ; (80091b4 <__assert_func+0x30>) - 8009196: e9cd 3401 strd r3, r4, [sp, #4] - 800919a: 9100 str r1, [sp, #0] - 800919c: 462b mov r3, r5 - 800919e: 4906 ldr r1, [pc, #24] ; (80091b8 <__assert_func+0x34>) - 80091a0: f000 f80e bl 80091c0 - 80091a4: f000 fa98 bl 80096d8 - 80091a8: 4b04 ldr r3, [pc, #16] ; (80091bc <__assert_func+0x38>) - 80091aa: 461c mov r4, r3 - 80091ac: e7f3 b.n 8009196 <__assert_func+0x12> - 80091ae: bf00 nop - 80091b0: 2000000c .word 0x2000000c - 80091b4: 0800aaad .word 0x0800aaad - 80091b8: 0800aaba .word 0x0800aaba - 80091bc: 0800aae8 .word 0x0800aae8 +0800981c <__assert_func>: + 800981c: b51f push {r0, r1, r2, r3, r4, lr} + 800981e: 4614 mov r4, r2 + 8009820: 461a mov r2, r3 + 8009822: 4b09 ldr r3, [pc, #36] ; (8009848 <__assert_func+0x2c>) + 8009824: 4605 mov r5, r0 + 8009826: 681b ldr r3, [r3, #0] + 8009828: 68d8 ldr r0, [r3, #12] + 800982a: b14c cbz r4, 8009840 <__assert_func+0x24> + 800982c: 4b07 ldr r3, [pc, #28] ; (800984c <__assert_func+0x30>) + 800982e: e9cd 3401 strd r3, r4, [sp, #4] + 8009832: 9100 str r1, [sp, #0] + 8009834: 462b mov r3, r5 + 8009836: 4906 ldr r1, [pc, #24] ; (8009850 <__assert_func+0x34>) + 8009838: f000 f80e bl 8009858 + 800983c: f000 fa98 bl 8009d70 + 8009840: 4b04 ldr r3, [pc, #16] ; (8009854 <__assert_func+0x38>) + 8009842: 461c mov r4, r3 + 8009844: e7f3 b.n 800982e <__assert_func+0x12> + 8009846: bf00 nop + 8009848: 20000014 .word 0x20000014 + 800984c: 0800b17d .word 0x0800b17d + 8009850: 0800b18a .word 0x0800b18a + 8009854: 0800b1b8 .word 0x0800b1b8 -080091c0 : - 80091c0: b40e push {r1, r2, r3} - 80091c2: b503 push {r0, r1, lr} - 80091c4: 4601 mov r1, r0 - 80091c6: ab03 add r3, sp, #12 - 80091c8: 4805 ldr r0, [pc, #20] ; (80091e0 ) - 80091ca: f853 2b04 ldr.w r2, [r3], #4 - 80091ce: 6800 ldr r0, [r0, #0] - 80091d0: 9301 str r3, [sp, #4] - 80091d2: f000 f883 bl 80092dc <_vfiprintf_r> - 80091d6: b002 add sp, #8 - 80091d8: f85d eb04 ldr.w lr, [sp], #4 - 80091dc: b003 add sp, #12 - 80091de: 4770 bx lr - 80091e0: 2000000c .word 0x2000000c +08009858 : + 8009858: b40e push {r1, r2, r3} + 800985a: b503 push {r0, r1, lr} + 800985c: 4601 mov r1, r0 + 800985e: ab03 add r3, sp, #12 + 8009860: 4805 ldr r0, [pc, #20] ; (8009878 ) + 8009862: f853 2b04 ldr.w r2, [r3], #4 + 8009866: 6800 ldr r0, [r0, #0] + 8009868: 9301 str r3, [sp, #4] + 800986a: f000 f883 bl 8009974 <_vfiprintf_r> + 800986e: b002 add sp, #8 + 8009870: f85d eb04 ldr.w lr, [sp], #4 + 8009874: b003 add sp, #12 + 8009876: 4770 bx lr + 8009878: 20000014 .word 0x20000014 -080091e4 <__retarget_lock_init_recursive>: - 80091e4: 4770 bx lr +0800987c <__retarget_lock_init_recursive>: + 800987c: 4770 bx lr -080091e6 <__retarget_lock_acquire_recursive>: - 80091e6: 4770 bx lr +0800987e <__retarget_lock_acquire_recursive>: + 800987e: 4770 bx lr -080091e8 <__retarget_lock_release_recursive>: - 80091e8: 4770 bx lr +08009880 <__retarget_lock_release_recursive>: + 8009880: 4770 bx lr -080091ea <__ascii_mbtowc>: - 80091ea: b082 sub sp, #8 - 80091ec: b901 cbnz r1, 80091f0 <__ascii_mbtowc+0x6> - 80091ee: a901 add r1, sp, #4 - 80091f0: b142 cbz r2, 8009204 <__ascii_mbtowc+0x1a> - 80091f2: b14b cbz r3, 8009208 <__ascii_mbtowc+0x1e> - 80091f4: 7813 ldrb r3, [r2, #0] - 80091f6: 600b str r3, [r1, #0] - 80091f8: 7812 ldrb r2, [r2, #0] - 80091fa: 1e10 subs r0, r2, #0 - 80091fc: bf18 it ne - 80091fe: 2001 movne r0, #1 - 8009200: b002 add sp, #8 - 8009202: 4770 bx lr - 8009204: 4610 mov r0, r2 - 8009206: e7fb b.n 8009200 <__ascii_mbtowc+0x16> - 8009208: f06f 0001 mvn.w r0, #1 - 800920c: e7f8 b.n 8009200 <__ascii_mbtowc+0x16> +08009882 <__ascii_mbtowc>: + 8009882: b082 sub sp, #8 + 8009884: b901 cbnz r1, 8009888 <__ascii_mbtowc+0x6> + 8009886: a901 add r1, sp, #4 + 8009888: b142 cbz r2, 800989c <__ascii_mbtowc+0x1a> + 800988a: b14b cbz r3, 80098a0 <__ascii_mbtowc+0x1e> + 800988c: 7813 ldrb r3, [r2, #0] + 800988e: 600b str r3, [r1, #0] + 8009890: 7812 ldrb r2, [r2, #0] + 8009892: 1e10 subs r0, r2, #0 + 8009894: bf18 it ne + 8009896: 2001 movne r0, #1 + 8009898: b002 add sp, #8 + 800989a: 4770 bx lr + 800989c: 4610 mov r0, r2 + 800989e: e7fb b.n 8009898 <__ascii_mbtowc+0x16> + 80098a0: f06f 0001 mvn.w r0, #1 + 80098a4: e7f8 b.n 8009898 <__ascii_mbtowc+0x16> -0800920e : - 800920e: 4288 cmp r0, r1 - 8009210: b510 push {r4, lr} - 8009212: eb01 0402 add.w r4, r1, r2 - 8009216: d902 bls.n 800921e - 8009218: 4284 cmp r4, r0 - 800921a: 4623 mov r3, r4 - 800921c: d807 bhi.n 800922e - 800921e: 1e43 subs r3, r0, #1 - 8009220: 42a1 cmp r1, r4 - 8009222: d008 beq.n 8009236 - 8009224: f811 2b01 ldrb.w r2, [r1], #1 - 8009228: f803 2f01 strb.w r2, [r3, #1]! - 800922c: e7f8 b.n 8009220 - 800922e: 4601 mov r1, r0 - 8009230: 4402 add r2, r0 - 8009232: 428a cmp r2, r1 - 8009234: d100 bne.n 8009238 - 8009236: bd10 pop {r4, pc} - 8009238: f813 4d01 ldrb.w r4, [r3, #-1]! - 800923c: f802 4d01 strb.w r4, [r2, #-1]! - 8009240: e7f7 b.n 8009232 +080098a6 : + 80098a6: 4288 cmp r0, r1 + 80098a8: b510 push {r4, lr} + 80098aa: eb01 0402 add.w r4, r1, r2 + 80098ae: d902 bls.n 80098b6 + 80098b0: 4284 cmp r4, r0 + 80098b2: 4623 mov r3, r4 + 80098b4: d807 bhi.n 80098c6 + 80098b6: 1e43 subs r3, r0, #1 + 80098b8: 42a1 cmp r1, r4 + 80098ba: d008 beq.n 80098ce + 80098bc: f811 2b01 ldrb.w r2, [r1], #1 + 80098c0: f803 2f01 strb.w r2, [r3, #1]! + 80098c4: e7f8 b.n 80098b8 + 80098c6: 4601 mov r1, r0 + 80098c8: 4402 add r2, r0 + 80098ca: 428a cmp r2, r1 + 80098cc: d100 bne.n 80098d0 + 80098ce: bd10 pop {r4, pc} + 80098d0: f813 4d01 ldrb.w r4, [r3, #-1]! + 80098d4: f802 4d01 strb.w r4, [r2, #-1]! + 80098d8: e7f7 b.n 80098ca -08009242 <_realloc_r>: - 8009242: b5f8 push {r3, r4, r5, r6, r7, lr} - 8009244: 4607 mov r7, r0 - 8009246: 4614 mov r4, r2 - 8009248: 460e mov r6, r1 - 800924a: b921 cbnz r1, 8009256 <_realloc_r+0x14> - 800924c: 4611 mov r1, r2 - 800924e: e8bd 40f8 ldmia.w sp!, {r3, r4, r5, r6, r7, lr} - 8009252: f7fd bf17 b.w 8007084 <_malloc_r> - 8009256: b922 cbnz r2, 8009262 <_realloc_r+0x20> - 8009258: f7fd fec8 bl 8006fec <_free_r> - 800925c: 4625 mov r5, r4 - 800925e: 4628 mov r0, r5 - 8009260: bdf8 pop {r3, r4, r5, r6, r7, pc} - 8009262: f000 fc5d bl 8009b20 <_malloc_usable_size_r> - 8009266: 42a0 cmp r0, r4 - 8009268: d20f bcs.n 800928a <_realloc_r+0x48> - 800926a: 4621 mov r1, r4 - 800926c: 4638 mov r0, r7 - 800926e: f7fd ff09 bl 8007084 <_malloc_r> - 8009272: 4605 mov r5, r0 - 8009274: 2800 cmp r0, #0 - 8009276: d0f2 beq.n 800925e <_realloc_r+0x1c> - 8009278: 4631 mov r1, r6 - 800927a: 4622 mov r2, r4 - 800927c: f7ff fa7c bl 8008778 - 8009280: 4631 mov r1, r6 - 8009282: 4638 mov r0, r7 - 8009284: f7fd feb2 bl 8006fec <_free_r> - 8009288: e7e9 b.n 800925e <_realloc_r+0x1c> - 800928a: 4635 mov r5, r6 - 800928c: e7e7 b.n 800925e <_realloc_r+0x1c> +080098da <_realloc_r>: + 80098da: b5f8 push {r3, r4, r5, r6, r7, lr} + 80098dc: 4607 mov r7, r0 + 80098de: 4614 mov r4, r2 + 80098e0: 460e mov r6, r1 + 80098e2: b921 cbnz r1, 80098ee <_realloc_r+0x14> + 80098e4: 4611 mov r1, r2 + 80098e6: e8bd 40f8 ldmia.w sp!, {r3, r4, r5, r6, r7, lr} + 80098ea: f7fd bf19 b.w 8007720 <_malloc_r> + 80098ee: b922 cbnz r2, 80098fa <_realloc_r+0x20> + 80098f0: f7fd feca bl 8007688 <_free_r> + 80098f4: 4625 mov r5, r4 + 80098f6: 4628 mov r0, r5 + 80098f8: bdf8 pop {r3, r4, r5, r6, r7, pc} + 80098fa: f000 fc5d bl 800a1b8 <_malloc_usable_size_r> + 80098fe: 42a0 cmp r0, r4 + 8009900: d20f bcs.n 8009922 <_realloc_r+0x48> + 8009902: 4621 mov r1, r4 + 8009904: 4638 mov r0, r7 + 8009906: f7fd ff0b bl 8007720 <_malloc_r> + 800990a: 4605 mov r5, r0 + 800990c: 2800 cmp r0, #0 + 800990e: d0f2 beq.n 80098f6 <_realloc_r+0x1c> + 8009910: 4631 mov r1, r6 + 8009912: 4622 mov r2, r4 + 8009914: f7ff fa7c bl 8008e10 + 8009918: 4631 mov r1, r6 + 800991a: 4638 mov r0, r7 + 800991c: f7fd feb4 bl 8007688 <_free_r> + 8009920: e7e9 b.n 80098f6 <_realloc_r+0x1c> + 8009922: 4635 mov r5, r6 + 8009924: e7e7 b.n 80098f6 <_realloc_r+0x1c> -0800928e <__sfputc_r>: - 800928e: 6893 ldr r3, [r2, #8] - 8009290: b410 push {r4} - 8009292: 3b01 subs r3, #1 - 8009294: 2b00 cmp r3, #0 - 8009296: 6093 str r3, [r2, #8] - 8009298: da07 bge.n 80092aa <__sfputc_r+0x1c> - 800929a: 6994 ldr r4, [r2, #24] - 800929c: 42a3 cmp r3, r4 - 800929e: db01 blt.n 80092a4 <__sfputc_r+0x16> - 80092a0: 290a cmp r1, #10 - 80092a2: d102 bne.n 80092aa <__sfputc_r+0x1c> - 80092a4: bc10 pop {r4} - 80092a6: f000 b949 b.w 800953c <__swbuf_r> - 80092aa: 6813 ldr r3, [r2, #0] - 80092ac: 1c58 adds r0, r3, #1 - 80092ae: 6010 str r0, [r2, #0] - 80092b0: 7019 strb r1, [r3, #0] - 80092b2: 4608 mov r0, r1 - 80092b4: bc10 pop {r4} - 80092b6: 4770 bx lr +08009926 <__sfputc_r>: + 8009926: 6893 ldr r3, [r2, #8] + 8009928: b410 push {r4} + 800992a: 3b01 subs r3, #1 + 800992c: 2b00 cmp r3, #0 + 800992e: 6093 str r3, [r2, #8] + 8009930: da07 bge.n 8009942 <__sfputc_r+0x1c> + 8009932: 6994 ldr r4, [r2, #24] + 8009934: 42a3 cmp r3, r4 + 8009936: db01 blt.n 800993c <__sfputc_r+0x16> + 8009938: 290a cmp r1, #10 + 800993a: d102 bne.n 8009942 <__sfputc_r+0x1c> + 800993c: bc10 pop {r4} + 800993e: f000 b949 b.w 8009bd4 <__swbuf_r> + 8009942: 6813 ldr r3, [r2, #0] + 8009944: 1c58 adds r0, r3, #1 + 8009946: 6010 str r0, [r2, #0] + 8009948: 7019 strb r1, [r3, #0] + 800994a: 4608 mov r0, r1 + 800994c: bc10 pop {r4} + 800994e: 4770 bx lr -080092b8 <__sfputs_r>: - 80092b8: b5f8 push {r3, r4, r5, r6, r7, lr} - 80092ba: 4606 mov r6, r0 - 80092bc: 460f mov r7, r1 - 80092be: 4614 mov r4, r2 - 80092c0: 18d5 adds r5, r2, r3 - 80092c2: 42ac cmp r4, r5 - 80092c4: d101 bne.n 80092ca <__sfputs_r+0x12> - 80092c6: 2000 movs r0, #0 - 80092c8: e007 b.n 80092da <__sfputs_r+0x22> - 80092ca: 463a mov r2, r7 - 80092cc: 4630 mov r0, r6 - 80092ce: f814 1b01 ldrb.w r1, [r4], #1 - 80092d2: f7ff ffdc bl 800928e <__sfputc_r> - 80092d6: 1c43 adds r3, r0, #1 - 80092d8: d1f3 bne.n 80092c2 <__sfputs_r+0xa> - 80092da: bdf8 pop {r3, r4, r5, r6, r7, pc} +08009950 <__sfputs_r>: + 8009950: b5f8 push {r3, r4, r5, r6, r7, lr} + 8009952: 4606 mov r6, r0 + 8009954: 460f mov r7, r1 + 8009956: 4614 mov r4, r2 + 8009958: 18d5 adds r5, r2, r3 + 800995a: 42ac cmp r4, r5 + 800995c: d101 bne.n 8009962 <__sfputs_r+0x12> + 800995e: 2000 movs r0, #0 + 8009960: e007 b.n 8009972 <__sfputs_r+0x22> + 8009962: 463a mov r2, r7 + 8009964: 4630 mov r0, r6 + 8009966: f814 1b01 ldrb.w r1, [r4], #1 + 800996a: f7ff ffdc bl 8009926 <__sfputc_r> + 800996e: 1c43 adds r3, r0, #1 + 8009970: d1f3 bne.n 800995a <__sfputs_r+0xa> + 8009972: bdf8 pop {r3, r4, r5, r6, r7, pc} -080092dc <_vfiprintf_r>: - 80092dc: e92d 4ff0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} - 80092e0: 460d mov r5, r1 - 80092e2: 4614 mov r4, r2 - 80092e4: 4698 mov r8, r3 - 80092e6: 4606 mov r6, r0 - 80092e8: b09d sub sp, #116 ; 0x74 - 80092ea: b118 cbz r0, 80092f4 <_vfiprintf_r+0x18> - 80092ec: 6983 ldr r3, [r0, #24] - 80092ee: b90b cbnz r3, 80092f4 <_vfiprintf_r+0x18> - 80092f0: f000 fb14 bl 800991c <__sinit> - 80092f4: 4b89 ldr r3, [pc, #548] ; (800951c <_vfiprintf_r+0x240>) - 80092f6: 429d cmp r5, r3 - 80092f8: d11b bne.n 8009332 <_vfiprintf_r+0x56> - 80092fa: 6875 ldr r5, [r6, #4] - 80092fc: 6e6b ldr r3, [r5, #100] ; 0x64 - 80092fe: 07d9 lsls r1, r3, #31 - 8009300: d405 bmi.n 800930e <_vfiprintf_r+0x32> - 8009302: 89ab ldrh r3, [r5, #12] - 8009304: 059a lsls r2, r3, #22 - 8009306: d402 bmi.n 800930e <_vfiprintf_r+0x32> - 8009308: 6da8 ldr r0, [r5, #88] ; 0x58 - 800930a: f7ff ff6c bl 80091e6 <__retarget_lock_acquire_recursive> - 800930e: 89ab ldrh r3, [r5, #12] - 8009310: 071b lsls r3, r3, #28 - 8009312: d501 bpl.n 8009318 <_vfiprintf_r+0x3c> - 8009314: 692b ldr r3, [r5, #16] - 8009316: b9eb cbnz r3, 8009354 <_vfiprintf_r+0x78> - 8009318: 4629 mov r1, r5 - 800931a: 4630 mov r0, r6 - 800931c: f000 f96e bl 80095fc <__swsetup_r> - 8009320: b1c0 cbz r0, 8009354 <_vfiprintf_r+0x78> - 8009322: 6e6b ldr r3, [r5, #100] ; 0x64 - 8009324: 07dc lsls r4, r3, #31 - 8009326: d50e bpl.n 8009346 <_vfiprintf_r+0x6a> - 8009328: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff - 800932c: b01d add sp, #116 ; 0x74 - 800932e: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc} - 8009332: 4b7b ldr r3, [pc, #492] ; (8009520 <_vfiprintf_r+0x244>) - 8009334: 429d cmp r5, r3 - 8009336: d101 bne.n 800933c <_vfiprintf_r+0x60> - 8009338: 68b5 ldr r5, [r6, #8] - 800933a: e7df b.n 80092fc <_vfiprintf_r+0x20> - 800933c: 4b79 ldr r3, [pc, #484] ; (8009524 <_vfiprintf_r+0x248>) - 800933e: 429d cmp r5, r3 - 8009340: bf08 it eq - 8009342: 68f5 ldreq r5, [r6, #12] - 8009344: e7da b.n 80092fc <_vfiprintf_r+0x20> - 8009346: 89ab ldrh r3, [r5, #12] - 8009348: 0598 lsls r0, r3, #22 - 800934a: d4ed bmi.n 8009328 <_vfiprintf_r+0x4c> - 800934c: 6da8 ldr r0, [r5, #88] ; 0x58 - 800934e: f7ff ff4b bl 80091e8 <__retarget_lock_release_recursive> - 8009352: e7e9 b.n 8009328 <_vfiprintf_r+0x4c> - 8009354: 2300 movs r3, #0 - 8009356: 9309 str r3, [sp, #36] ; 0x24 - 8009358: 2320 movs r3, #32 - 800935a: f88d 3029 strb.w r3, [sp, #41] ; 0x29 - 800935e: 2330 movs r3, #48 ; 0x30 - 8009360: f04f 0901 mov.w r9, #1 - 8009364: f8cd 800c str.w r8, [sp, #12] - 8009368: f8df 81bc ldr.w r8, [pc, #444] ; 8009528 <_vfiprintf_r+0x24c> - 800936c: f88d 302a strb.w r3, [sp, #42] ; 0x2a - 8009370: 4623 mov r3, r4 - 8009372: 469a mov sl, r3 - 8009374: f813 2b01 ldrb.w r2, [r3], #1 - 8009378: b10a cbz r2, 800937e <_vfiprintf_r+0xa2> - 800937a: 2a25 cmp r2, #37 ; 0x25 - 800937c: d1f9 bne.n 8009372 <_vfiprintf_r+0x96> - 800937e: ebba 0b04 subs.w fp, sl, r4 - 8009382: d00b beq.n 800939c <_vfiprintf_r+0xc0> - 8009384: 465b mov r3, fp - 8009386: 4622 mov r2, r4 - 8009388: 4629 mov r1, r5 - 800938a: 4630 mov r0, r6 - 800938c: f7ff ff94 bl 80092b8 <__sfputs_r> - 8009390: 3001 adds r0, #1 - 8009392: f000 80aa beq.w 80094ea <_vfiprintf_r+0x20e> - 8009396: 9a09 ldr r2, [sp, #36] ; 0x24 - 8009398: 445a add r2, fp - 800939a: 9209 str r2, [sp, #36] ; 0x24 - 800939c: f89a 3000 ldrb.w r3, [sl] - 80093a0: 2b00 cmp r3, #0 - 80093a2: f000 80a2 beq.w 80094ea <_vfiprintf_r+0x20e> - 80093a6: 2300 movs r3, #0 - 80093a8: f04f 32ff mov.w r2, #4294967295 ; 0xffffffff - 80093ac: e9cd 2305 strd r2, r3, [sp, #20] - 80093b0: f10a 0a01 add.w sl, sl, #1 - 80093b4: 9304 str r3, [sp, #16] - 80093b6: 9307 str r3, [sp, #28] - 80093b8: f88d 3053 strb.w r3, [sp, #83] ; 0x53 - 80093bc: 931a str r3, [sp, #104] ; 0x68 - 80093be: 4654 mov r4, sl - 80093c0: 2205 movs r2, #5 - 80093c2: f814 1b01 ldrb.w r1, [r4], #1 - 80093c6: 4858 ldr r0, [pc, #352] ; (8009528 <_vfiprintf_r+0x24c>) - 80093c8: f7ff f9c8 bl 800875c - 80093cc: 9a04 ldr r2, [sp, #16] - 80093ce: b9d8 cbnz r0, 8009408 <_vfiprintf_r+0x12c> - 80093d0: 06d1 lsls r1, r2, #27 - 80093d2: bf44 itt mi - 80093d4: 2320 movmi r3, #32 - 80093d6: f88d 3053 strbmi.w r3, [sp, #83] ; 0x53 - 80093da: 0713 lsls r3, r2, #28 - 80093dc: bf44 itt mi - 80093de: 232b movmi r3, #43 ; 0x2b - 80093e0: f88d 3053 strbmi.w r3, [sp, #83] ; 0x53 - 80093e4: f89a 3000 ldrb.w r3, [sl] - 80093e8: 2b2a cmp r3, #42 ; 0x2a - 80093ea: d015 beq.n 8009418 <_vfiprintf_r+0x13c> - 80093ec: 4654 mov r4, sl - 80093ee: 2000 movs r0, #0 - 80093f0: f04f 0c0a mov.w ip, #10 - 80093f4: 9a07 ldr r2, [sp, #28] - 80093f6: 4621 mov r1, r4 - 80093f8: f811 3b01 ldrb.w r3, [r1], #1 - 80093fc: 3b30 subs r3, #48 ; 0x30 - 80093fe: 2b09 cmp r3, #9 - 8009400: d94e bls.n 80094a0 <_vfiprintf_r+0x1c4> - 8009402: b1b0 cbz r0, 8009432 <_vfiprintf_r+0x156> - 8009404: 9207 str r2, [sp, #28] - 8009406: e014 b.n 8009432 <_vfiprintf_r+0x156> - 8009408: eba0 0308 sub.w r3, r0, r8 - 800940c: fa09 f303 lsl.w r3, r9, r3 - 8009410: 4313 orrs r3, r2 - 8009412: 46a2 mov sl, r4 - 8009414: 9304 str r3, [sp, #16] - 8009416: e7d2 b.n 80093be <_vfiprintf_r+0xe2> - 8009418: 9b03 ldr r3, [sp, #12] - 800941a: 1d19 adds r1, r3, #4 - 800941c: 681b ldr r3, [r3, #0] - 800941e: 9103 str r1, [sp, #12] - 8009420: 2b00 cmp r3, #0 - 8009422: bfbb ittet lt - 8009424: 425b neglt r3, r3 - 8009426: f042 0202 orrlt.w r2, r2, #2 - 800942a: 9307 strge r3, [sp, #28] - 800942c: 9307 strlt r3, [sp, #28] - 800942e: bfb8 it lt - 8009430: 9204 strlt r2, [sp, #16] - 8009432: 7823 ldrb r3, [r4, #0] - 8009434: 2b2e cmp r3, #46 ; 0x2e - 8009436: d10c bne.n 8009452 <_vfiprintf_r+0x176> - 8009438: 7863 ldrb r3, [r4, #1] - 800943a: 2b2a cmp r3, #42 ; 0x2a - 800943c: d135 bne.n 80094aa <_vfiprintf_r+0x1ce> - 800943e: 9b03 ldr r3, [sp, #12] - 8009440: 3402 adds r4, #2 - 8009442: 1d1a adds r2, r3, #4 - 8009444: 681b ldr r3, [r3, #0] - 8009446: 9203 str r2, [sp, #12] - 8009448: 2b00 cmp r3, #0 - 800944a: bfb8 it lt - 800944c: f04f 33ff movlt.w r3, #4294967295 ; 0xffffffff - 8009450: 9305 str r3, [sp, #20] - 8009452: f8df a0e4 ldr.w sl, [pc, #228] ; 8009538 <_vfiprintf_r+0x25c> - 8009456: 2203 movs r2, #3 - 8009458: 4650 mov r0, sl - 800945a: 7821 ldrb r1, [r4, #0] - 800945c: f7ff f97e bl 800875c - 8009460: b140 cbz r0, 8009474 <_vfiprintf_r+0x198> - 8009462: 2340 movs r3, #64 ; 0x40 - 8009464: eba0 000a sub.w r0, r0, sl - 8009468: fa03 f000 lsl.w r0, r3, r0 - 800946c: 9b04 ldr r3, [sp, #16] - 800946e: 3401 adds r4, #1 - 8009470: 4303 orrs r3, r0 - 8009472: 9304 str r3, [sp, #16] - 8009474: f814 1b01 ldrb.w r1, [r4], #1 - 8009478: 2206 movs r2, #6 - 800947a: 482c ldr r0, [pc, #176] ; (800952c <_vfiprintf_r+0x250>) - 800947c: f88d 1028 strb.w r1, [sp, #40] ; 0x28 - 8009480: f7ff f96c bl 800875c - 8009484: 2800 cmp r0, #0 - 8009486: d03f beq.n 8009508 <_vfiprintf_r+0x22c> - 8009488: 4b29 ldr r3, [pc, #164] ; (8009530 <_vfiprintf_r+0x254>) - 800948a: bb1b cbnz r3, 80094d4 <_vfiprintf_r+0x1f8> - 800948c: 9b03 ldr r3, [sp, #12] - 800948e: 3307 adds r3, #7 - 8009490: f023 0307 bic.w r3, r3, #7 - 8009494: 3308 adds r3, #8 - 8009496: 9303 str r3, [sp, #12] - 8009498: 9b09 ldr r3, [sp, #36] ; 0x24 - 800949a: 443b add r3, r7 - 800949c: 9309 str r3, [sp, #36] ; 0x24 - 800949e: e767 b.n 8009370 <_vfiprintf_r+0x94> - 80094a0: 460c mov r4, r1 - 80094a2: 2001 movs r0, #1 - 80094a4: fb0c 3202 mla r2, ip, r2, r3 - 80094a8: e7a5 b.n 80093f6 <_vfiprintf_r+0x11a> - 80094aa: 2300 movs r3, #0 - 80094ac: f04f 0c0a mov.w ip, #10 - 80094b0: 4619 mov r1, r3 - 80094b2: 3401 adds r4, #1 - 80094b4: 9305 str r3, [sp, #20] - 80094b6: 4620 mov r0, r4 - 80094b8: f810 2b01 ldrb.w r2, [r0], #1 - 80094bc: 3a30 subs r2, #48 ; 0x30 - 80094be: 2a09 cmp r2, #9 - 80094c0: d903 bls.n 80094ca <_vfiprintf_r+0x1ee> - 80094c2: 2b00 cmp r3, #0 - 80094c4: d0c5 beq.n 8009452 <_vfiprintf_r+0x176> - 80094c6: 9105 str r1, [sp, #20] - 80094c8: e7c3 b.n 8009452 <_vfiprintf_r+0x176> - 80094ca: 4604 mov r4, r0 - 80094cc: 2301 movs r3, #1 - 80094ce: fb0c 2101 mla r1, ip, r1, r2 - 80094d2: e7f0 b.n 80094b6 <_vfiprintf_r+0x1da> - 80094d4: ab03 add r3, sp, #12 - 80094d6: 9300 str r3, [sp, #0] - 80094d8: 462a mov r2, r5 - 80094da: 4630 mov r0, r6 - 80094dc: 4b15 ldr r3, [pc, #84] ; (8009534 <_vfiprintf_r+0x258>) - 80094de: a904 add r1, sp, #16 - 80094e0: f7fd fec8 bl 8007274 <_printf_float> - 80094e4: 4607 mov r7, r0 - 80094e6: 1c78 adds r0, r7, #1 - 80094e8: d1d6 bne.n 8009498 <_vfiprintf_r+0x1bc> - 80094ea: 6e6b ldr r3, [r5, #100] ; 0x64 - 80094ec: 07d9 lsls r1, r3, #31 - 80094ee: d405 bmi.n 80094fc <_vfiprintf_r+0x220> - 80094f0: 89ab ldrh r3, [r5, #12] - 80094f2: 059a lsls r2, r3, #22 - 80094f4: d402 bmi.n 80094fc <_vfiprintf_r+0x220> - 80094f6: 6da8 ldr r0, [r5, #88] ; 0x58 - 80094f8: f7ff fe76 bl 80091e8 <__retarget_lock_release_recursive> - 80094fc: 89ab ldrh r3, [r5, #12] - 80094fe: 065b lsls r3, r3, #25 - 8009500: f53f af12 bmi.w 8009328 <_vfiprintf_r+0x4c> - 8009504: 9809 ldr r0, [sp, #36] ; 0x24 - 8009506: e711 b.n 800932c <_vfiprintf_r+0x50> - 8009508: ab03 add r3, sp, #12 - 800950a: 9300 str r3, [sp, #0] - 800950c: 462a mov r2, r5 - 800950e: 4630 mov r0, r6 - 8009510: 4b08 ldr r3, [pc, #32] ; (8009534 <_vfiprintf_r+0x258>) - 8009512: a904 add r1, sp, #16 - 8009514: f7fe f94a bl 80077ac <_printf_i> - 8009518: e7e4 b.n 80094e4 <_vfiprintf_r+0x208> - 800951a: bf00 nop - 800951c: 0800ac14 .word 0x0800ac14 - 8009520: 0800ac34 .word 0x0800ac34 - 8009524: 0800abf4 .word 0x0800abf4 - 8009528: 0800aa9c .word 0x0800aa9c - 800952c: 0800aaa6 .word 0x0800aaa6 - 8009530: 08007275 .word 0x08007275 - 8009534: 080092b9 .word 0x080092b9 - 8009538: 0800aaa2 .word 0x0800aaa2 - -0800953c <__swbuf_r>: - 800953c: b5f8 push {r3, r4, r5, r6, r7, lr} - 800953e: 460e mov r6, r1 - 8009540: 4614 mov r4, r2 - 8009542: 4605 mov r5, r0 - 8009544: b118 cbz r0, 800954e <__swbuf_r+0x12> - 8009546: 6983 ldr r3, [r0, #24] - 8009548: b90b cbnz r3, 800954e <__swbuf_r+0x12> - 800954a: f000 f9e7 bl 800991c <__sinit> - 800954e: 4b21 ldr r3, [pc, #132] ; (80095d4 <__swbuf_r+0x98>) - 8009550: 429c cmp r4, r3 - 8009552: d12b bne.n 80095ac <__swbuf_r+0x70> - 8009554: 686c ldr r4, [r5, #4] - 8009556: 69a3 ldr r3, [r4, #24] - 8009558: 60a3 str r3, [r4, #8] - 800955a: 89a3 ldrh r3, [r4, #12] - 800955c: 071a lsls r2, r3, #28 - 800955e: d52f bpl.n 80095c0 <__swbuf_r+0x84> - 8009560: 6923 ldr r3, [r4, #16] - 8009562: b36b cbz r3, 80095c0 <__swbuf_r+0x84> - 8009564: 6923 ldr r3, [r4, #16] - 8009566: 6820 ldr r0, [r4, #0] - 8009568: b2f6 uxtb r6, r6 - 800956a: 1ac0 subs r0, r0, r3 - 800956c: 6963 ldr r3, [r4, #20] - 800956e: 4637 mov r7, r6 - 8009570: 4283 cmp r3, r0 - 8009572: dc04 bgt.n 800957e <__swbuf_r+0x42> - 8009574: 4621 mov r1, r4 - 8009576: 4628 mov r0, r5 - 8009578: f000 f93c bl 80097f4 <_fflush_r> - 800957c: bb30 cbnz r0, 80095cc <__swbuf_r+0x90> - 800957e: 68a3 ldr r3, [r4, #8] - 8009580: 3001 adds r0, #1 - 8009582: 3b01 subs r3, #1 - 8009584: 60a3 str r3, [r4, #8] - 8009586: 6823 ldr r3, [r4, #0] - 8009588: 1c5a adds r2, r3, #1 - 800958a: 6022 str r2, [r4, #0] - 800958c: 701e strb r6, [r3, #0] - 800958e: 6963 ldr r3, [r4, #20] - 8009590: 4283 cmp r3, r0 - 8009592: d004 beq.n 800959e <__swbuf_r+0x62> - 8009594: 89a3 ldrh r3, [r4, #12] - 8009596: 07db lsls r3, r3, #31 - 8009598: d506 bpl.n 80095a8 <__swbuf_r+0x6c> - 800959a: 2e0a cmp r6, #10 - 800959c: d104 bne.n 80095a8 <__swbuf_r+0x6c> - 800959e: 4621 mov r1, r4 - 80095a0: 4628 mov r0, r5 - 80095a2: f000 f927 bl 80097f4 <_fflush_r> - 80095a6: b988 cbnz r0, 80095cc <__swbuf_r+0x90> - 80095a8: 4638 mov r0, r7 - 80095aa: bdf8 pop {r3, r4, r5, r6, r7, pc} - 80095ac: 4b0a ldr r3, [pc, #40] ; (80095d8 <__swbuf_r+0x9c>) - 80095ae: 429c cmp r4, r3 - 80095b0: d101 bne.n 80095b6 <__swbuf_r+0x7a> - 80095b2: 68ac ldr r4, [r5, #8] - 80095b4: e7cf b.n 8009556 <__swbuf_r+0x1a> - 80095b6: 4b09 ldr r3, [pc, #36] ; (80095dc <__swbuf_r+0xa0>) - 80095b8: 429c cmp r4, r3 - 80095ba: bf08 it eq - 80095bc: 68ec ldreq r4, [r5, #12] - 80095be: e7ca b.n 8009556 <__swbuf_r+0x1a> - 80095c0: 4621 mov r1, r4 - 80095c2: 4628 mov r0, r5 - 80095c4: f000 f81a bl 80095fc <__swsetup_r> - 80095c8: 2800 cmp r0, #0 - 80095ca: d0cb beq.n 8009564 <__swbuf_r+0x28> - 80095cc: f04f 37ff mov.w r7, #4294967295 ; 0xffffffff - 80095d0: e7ea b.n 80095a8 <__swbuf_r+0x6c> - 80095d2: bf00 nop - 80095d4: 0800ac14 .word 0x0800ac14 - 80095d8: 0800ac34 .word 0x0800ac34 - 80095dc: 0800abf4 .word 0x0800abf4 - -080095e0 <__ascii_wctomb>: - 80095e0: 4603 mov r3, r0 - 80095e2: 4608 mov r0, r1 - 80095e4: b141 cbz r1, 80095f8 <__ascii_wctomb+0x18> - 80095e6: 2aff cmp r2, #255 ; 0xff - 80095e8: d904 bls.n 80095f4 <__ascii_wctomb+0x14> - 80095ea: 228a movs r2, #138 ; 0x8a - 80095ec: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff - 80095f0: 601a str r2, [r3, #0] - 80095f2: 4770 bx lr - 80095f4: 2001 movs r0, #1 - 80095f6: 700a strb r2, [r1, #0] - 80095f8: 4770 bx lr - ... - -080095fc <__swsetup_r>: - 80095fc: 4b32 ldr r3, [pc, #200] ; (80096c8 <__swsetup_r+0xcc>) - 80095fe: b570 push {r4, r5, r6, lr} - 8009600: 681d ldr r5, [r3, #0] - 8009602: 4606 mov r6, r0 - 8009604: 460c mov r4, r1 - 8009606: b125 cbz r5, 8009612 <__swsetup_r+0x16> - 8009608: 69ab ldr r3, [r5, #24] - 800960a: b913 cbnz r3, 8009612 <__swsetup_r+0x16> - 800960c: 4628 mov r0, r5 - 800960e: f000 f985 bl 800991c <__sinit> - 8009612: 4b2e ldr r3, [pc, #184] ; (80096cc <__swsetup_r+0xd0>) - 8009614: 429c cmp r4, r3 - 8009616: d10f bne.n 8009638 <__swsetup_r+0x3c> - 8009618: 686c ldr r4, [r5, #4] - 800961a: 89a3 ldrh r3, [r4, #12] - 800961c: f9b4 200c ldrsh.w r2, [r4, #12] - 8009620: 0719 lsls r1, r3, #28 - 8009622: d42c bmi.n 800967e <__swsetup_r+0x82> - 8009624: 06dd lsls r5, r3, #27 - 8009626: d411 bmi.n 800964c <__swsetup_r+0x50> - 8009628: 2309 movs r3, #9 - 800962a: 6033 str r3, [r6, #0] - 800962c: f042 0340 orr.w r3, r2, #64 ; 0x40 - 8009630: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff - 8009634: 81a3 strh r3, [r4, #12] - 8009636: e03e b.n 80096b6 <__swsetup_r+0xba> - 8009638: 4b25 ldr r3, [pc, #148] ; (80096d0 <__swsetup_r+0xd4>) - 800963a: 429c cmp r4, r3 - 800963c: d101 bne.n 8009642 <__swsetup_r+0x46> - 800963e: 68ac ldr r4, [r5, #8] - 8009640: e7eb b.n 800961a <__swsetup_r+0x1e> - 8009642: 4b24 ldr r3, [pc, #144] ; (80096d4 <__swsetup_r+0xd8>) - 8009644: 429c cmp r4, r3 - 8009646: bf08 it eq - 8009648: 68ec ldreq r4, [r5, #12] - 800964a: e7e6 b.n 800961a <__swsetup_r+0x1e> - 800964c: 0758 lsls r0, r3, #29 - 800964e: d512 bpl.n 8009676 <__swsetup_r+0x7a> - 8009650: 6b61 ldr r1, [r4, #52] ; 0x34 - 8009652: b141 cbz r1, 8009666 <__swsetup_r+0x6a> - 8009654: f104 0344 add.w r3, r4, #68 ; 0x44 - 8009658: 4299 cmp r1, r3 - 800965a: d002 beq.n 8009662 <__swsetup_r+0x66> - 800965c: 4630 mov r0, r6 - 800965e: f7fd fcc5 bl 8006fec <_free_r> - 8009662: 2300 movs r3, #0 - 8009664: 6363 str r3, [r4, #52] ; 0x34 - 8009666: 89a3 ldrh r3, [r4, #12] - 8009668: f023 0324 bic.w r3, r3, #36 ; 0x24 - 800966c: 81a3 strh r3, [r4, #12] - 800966e: 2300 movs r3, #0 - 8009670: 6063 str r3, [r4, #4] - 8009672: 6923 ldr r3, [r4, #16] - 8009674: 6023 str r3, [r4, #0] - 8009676: 89a3 ldrh r3, [r4, #12] - 8009678: f043 0308 orr.w r3, r3, #8 - 800967c: 81a3 strh r3, [r4, #12] - 800967e: 6923 ldr r3, [r4, #16] - 8009680: b94b cbnz r3, 8009696 <__swsetup_r+0x9a> - 8009682: 89a3 ldrh r3, [r4, #12] - 8009684: f403 7320 and.w r3, r3, #640 ; 0x280 - 8009688: f5b3 7f00 cmp.w r3, #512 ; 0x200 - 800968c: d003 beq.n 8009696 <__swsetup_r+0x9a> - 800968e: 4621 mov r1, r4 - 8009690: 4630 mov r0, r6 - 8009692: f000 fa05 bl 8009aa0 <__smakebuf_r> - 8009696: 89a0 ldrh r0, [r4, #12] - 8009698: f9b4 200c ldrsh.w r2, [r4, #12] - 800969c: f010 0301 ands.w r3, r0, #1 - 80096a0: d00a beq.n 80096b8 <__swsetup_r+0xbc> - 80096a2: 2300 movs r3, #0 - 80096a4: 60a3 str r3, [r4, #8] - 80096a6: 6963 ldr r3, [r4, #20] - 80096a8: 425b negs r3, r3 - 80096aa: 61a3 str r3, [r4, #24] - 80096ac: 6923 ldr r3, [r4, #16] - 80096ae: b943 cbnz r3, 80096c2 <__swsetup_r+0xc6> - 80096b0: f010 0080 ands.w r0, r0, #128 ; 0x80 - 80096b4: d1ba bne.n 800962c <__swsetup_r+0x30> - 80096b6: bd70 pop {r4, r5, r6, pc} - 80096b8: 0781 lsls r1, r0, #30 - 80096ba: bf58 it pl - 80096bc: 6963 ldrpl r3, [r4, #20] - 80096be: 60a3 str r3, [r4, #8] - 80096c0: e7f4 b.n 80096ac <__swsetup_r+0xb0> - 80096c2: 2000 movs r0, #0 - 80096c4: e7f7 b.n 80096b6 <__swsetup_r+0xba> - 80096c6: bf00 nop - 80096c8: 2000000c .word 0x2000000c - 80096cc: 0800ac14 .word 0x0800ac14 - 80096d0: 0800ac34 .word 0x0800ac34 - 80096d4: 0800abf4 .word 0x0800abf4 - -080096d8 : - 80096d8: 2006 movs r0, #6 - 80096da: b508 push {r3, lr} - 80096dc: f000 fa50 bl 8009b80 - 80096e0: 2001 movs r0, #1 - 80096e2: f7f8 f8f4 bl 80018ce <_exit> - ... - -080096e8 <__sflush_r>: - 80096e8: 898a ldrh r2, [r1, #12] - 80096ea: e92d 41f0 stmdb sp!, {r4, r5, r6, r7, r8, lr} - 80096ee: 4605 mov r5, r0 - 80096f0: 0710 lsls r0, r2, #28 - 80096f2: 460c mov r4, r1 - 80096f4: d458 bmi.n 80097a8 <__sflush_r+0xc0> - 80096f6: 684b ldr r3, [r1, #4] - 80096f8: 2b00 cmp r3, #0 - 80096fa: dc05 bgt.n 8009708 <__sflush_r+0x20> - 80096fc: 6c0b ldr r3, [r1, #64] ; 0x40 - 80096fe: 2b00 cmp r3, #0 - 8009700: dc02 bgt.n 8009708 <__sflush_r+0x20> - 8009702: 2000 movs r0, #0 - 8009704: e8bd 81f0 ldmia.w sp!, {r4, r5, r6, r7, r8, pc} - 8009708: 6ae6 ldr r6, [r4, #44] ; 0x2c - 800970a: 2e00 cmp r6, #0 - 800970c: d0f9 beq.n 8009702 <__sflush_r+0x1a> - 800970e: 2300 movs r3, #0 - 8009710: f412 5280 ands.w r2, r2, #4096 ; 0x1000 - 8009714: 682f ldr r7, [r5, #0] - 8009716: 602b str r3, [r5, #0] - 8009718: d032 beq.n 8009780 <__sflush_r+0x98> - 800971a: 6d60 ldr r0, [r4, #84] ; 0x54 - 800971c: 89a3 ldrh r3, [r4, #12] - 800971e: 075a lsls r2, r3, #29 - 8009720: d505 bpl.n 800972e <__sflush_r+0x46> - 8009722: 6863 ldr r3, [r4, #4] - 8009724: 1ac0 subs r0, r0, r3 - 8009726: 6b63 ldr r3, [r4, #52] ; 0x34 - 8009728: b10b cbz r3, 800972e <__sflush_r+0x46> - 800972a: 6c23 ldr r3, [r4, #64] ; 0x40 - 800972c: 1ac0 subs r0, r0, r3 - 800972e: 2300 movs r3, #0 - 8009730: 4602 mov r2, r0 - 8009732: 6ae6 ldr r6, [r4, #44] ; 0x2c - 8009734: 4628 mov r0, r5 - 8009736: 6a21 ldr r1, [r4, #32] - 8009738: 47b0 blx r6 - 800973a: 1c43 adds r3, r0, #1 - 800973c: 89a3 ldrh r3, [r4, #12] - 800973e: d106 bne.n 800974e <__sflush_r+0x66> - 8009740: 6829 ldr r1, [r5, #0] - 8009742: 291d cmp r1, #29 - 8009744: d82c bhi.n 80097a0 <__sflush_r+0xb8> - 8009746: 4a2a ldr r2, [pc, #168] ; (80097f0 <__sflush_r+0x108>) - 8009748: 40ca lsrs r2, r1 - 800974a: 07d6 lsls r6, r2, #31 - 800974c: d528 bpl.n 80097a0 <__sflush_r+0xb8> - 800974e: 2200 movs r2, #0 - 8009750: 6062 str r2, [r4, #4] - 8009752: 6922 ldr r2, [r4, #16] - 8009754: 04d9 lsls r1, r3, #19 - 8009756: 6022 str r2, [r4, #0] - 8009758: d504 bpl.n 8009764 <__sflush_r+0x7c> - 800975a: 1c42 adds r2, r0, #1 - 800975c: d101 bne.n 8009762 <__sflush_r+0x7a> - 800975e: 682b ldr r3, [r5, #0] - 8009760: b903 cbnz r3, 8009764 <__sflush_r+0x7c> - 8009762: 6560 str r0, [r4, #84] ; 0x54 - 8009764: 6b61 ldr r1, [r4, #52] ; 0x34 - 8009766: 602f str r7, [r5, #0] - 8009768: 2900 cmp r1, #0 - 800976a: d0ca beq.n 8009702 <__sflush_r+0x1a> - 800976c: f104 0344 add.w r3, r4, #68 ; 0x44 - 8009770: 4299 cmp r1, r3 - 8009772: d002 beq.n 800977a <__sflush_r+0x92> - 8009774: 4628 mov r0, r5 - 8009776: f7fd fc39 bl 8006fec <_free_r> - 800977a: 2000 movs r0, #0 - 800977c: 6360 str r0, [r4, #52] ; 0x34 - 800977e: e7c1 b.n 8009704 <__sflush_r+0x1c> - 8009780: 6a21 ldr r1, [r4, #32] - 8009782: 2301 movs r3, #1 - 8009784: 4628 mov r0, r5 - 8009786: 47b0 blx r6 - 8009788: 1c41 adds r1, r0, #1 - 800978a: d1c7 bne.n 800971c <__sflush_r+0x34> - 800978c: 682b ldr r3, [r5, #0] - 800978e: 2b00 cmp r3, #0 - 8009790: d0c4 beq.n 800971c <__sflush_r+0x34> - 8009792: 2b1d cmp r3, #29 - 8009794: d001 beq.n 800979a <__sflush_r+0xb2> - 8009796: 2b16 cmp r3, #22 - 8009798: d101 bne.n 800979e <__sflush_r+0xb6> - 800979a: 602f str r7, [r5, #0] - 800979c: e7b1 b.n 8009702 <__sflush_r+0x1a> - 800979e: 89a3 ldrh r3, [r4, #12] - 80097a0: f043 0340 orr.w r3, r3, #64 ; 0x40 - 80097a4: 81a3 strh r3, [r4, #12] - 80097a6: e7ad b.n 8009704 <__sflush_r+0x1c> - 80097a8: 690f ldr r7, [r1, #16] - 80097aa: 2f00 cmp r7, #0 - 80097ac: d0a9 beq.n 8009702 <__sflush_r+0x1a> - 80097ae: 0793 lsls r3, r2, #30 - 80097b0: bf18 it ne - 80097b2: 2300 movne r3, #0 - 80097b4: 680e ldr r6, [r1, #0] - 80097b6: bf08 it eq - 80097b8: 694b ldreq r3, [r1, #20] - 80097ba: eba6 0807 sub.w r8, r6, r7 - 80097be: 600f str r7, [r1, #0] - 80097c0: 608b str r3, [r1, #8] - 80097c2: f1b8 0f00 cmp.w r8, #0 - 80097c6: dd9c ble.n 8009702 <__sflush_r+0x1a> - 80097c8: 4643 mov r3, r8 - 80097ca: 463a mov r2, r7 - 80097cc: 4628 mov r0, r5 - 80097ce: 6a21 ldr r1, [r4, #32] - 80097d0: 6aa6 ldr r6, [r4, #40] ; 0x28 - 80097d2: 47b0 blx r6 - 80097d4: 2800 cmp r0, #0 - 80097d6: dc06 bgt.n 80097e6 <__sflush_r+0xfe> - 80097d8: 89a3 ldrh r3, [r4, #12] - 80097da: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff - 80097de: f043 0340 orr.w r3, r3, #64 ; 0x40 - 80097e2: 81a3 strh r3, [r4, #12] - 80097e4: e78e b.n 8009704 <__sflush_r+0x1c> - 80097e6: 4407 add r7, r0 - 80097e8: eba8 0800 sub.w r8, r8, r0 - 80097ec: e7e9 b.n 80097c2 <__sflush_r+0xda> - 80097ee: bf00 nop - 80097f0: 20400001 .word 0x20400001 - -080097f4 <_fflush_r>: - 80097f4: b538 push {r3, r4, r5, lr} - 80097f6: 690b ldr r3, [r1, #16] - 80097f8: 4605 mov r5, r0 - 80097fa: 460c mov r4, r1 - 80097fc: b913 cbnz r3, 8009804 <_fflush_r+0x10> - 80097fe: 2500 movs r5, #0 - 8009800: 4628 mov r0, r5 - 8009802: bd38 pop {r3, r4, r5, pc} - 8009804: b118 cbz r0, 800980e <_fflush_r+0x1a> - 8009806: 6983 ldr r3, [r0, #24] - 8009808: b90b cbnz r3, 800980e <_fflush_r+0x1a> - 800980a: f000 f887 bl 800991c <__sinit> - 800980e: 4b14 ldr r3, [pc, #80] ; (8009860 <_fflush_r+0x6c>) - 8009810: 429c cmp r4, r3 - 8009812: d11b bne.n 800984c <_fflush_r+0x58> - 8009814: 686c ldr r4, [r5, #4] - 8009816: f9b4 300c ldrsh.w r3, [r4, #12] - 800981a: 2b00 cmp r3, #0 - 800981c: d0ef beq.n 80097fe <_fflush_r+0xa> - 800981e: 6e62 ldr r2, [r4, #100] ; 0x64 - 8009820: 07d0 lsls r0, r2, #31 - 8009822: d404 bmi.n 800982e <_fflush_r+0x3a> - 8009824: 0599 lsls r1, r3, #22 - 8009826: d402 bmi.n 800982e <_fflush_r+0x3a> - 8009828: 6da0 ldr r0, [r4, #88] ; 0x58 - 800982a: f7ff fcdc bl 80091e6 <__retarget_lock_acquire_recursive> - 800982e: 4628 mov r0, r5 - 8009830: 4621 mov r1, r4 - 8009832: f7ff ff59 bl 80096e8 <__sflush_r> - 8009836: 6e63 ldr r3, [r4, #100] ; 0x64 - 8009838: 4605 mov r5, r0 - 800983a: 07da lsls r2, r3, #31 - 800983c: d4e0 bmi.n 8009800 <_fflush_r+0xc> - 800983e: 89a3 ldrh r3, [r4, #12] - 8009840: 059b lsls r3, r3, #22 - 8009842: d4dd bmi.n 8009800 <_fflush_r+0xc> - 8009844: 6da0 ldr r0, [r4, #88] ; 0x58 - 8009846: f7ff fccf bl 80091e8 <__retarget_lock_release_recursive> - 800984a: e7d9 b.n 8009800 <_fflush_r+0xc> - 800984c: 4b05 ldr r3, [pc, #20] ; (8009864 <_fflush_r+0x70>) - 800984e: 429c cmp r4, r3 - 8009850: d101 bne.n 8009856 <_fflush_r+0x62> - 8009852: 68ac ldr r4, [r5, #8] - 8009854: e7df b.n 8009816 <_fflush_r+0x22> - 8009856: 4b04 ldr r3, [pc, #16] ; (8009868 <_fflush_r+0x74>) - 8009858: 429c cmp r4, r3 - 800985a: bf08 it eq - 800985c: 68ec ldreq r4, [r5, #12] - 800985e: e7da b.n 8009816 <_fflush_r+0x22> - 8009860: 0800ac14 .word 0x0800ac14 - 8009864: 0800ac34 .word 0x0800ac34 - 8009868: 0800abf4 .word 0x0800abf4 - -0800986c : - 800986c: 2300 movs r3, #0 - 800986e: b510 push {r4, lr} - 8009870: 4604 mov r4, r0 - 8009872: e9c0 3300 strd r3, r3, [r0] - 8009876: e9c0 3304 strd r3, r3, [r0, #16] - 800987a: 6083 str r3, [r0, #8] - 800987c: 8181 strh r1, [r0, #12] - 800987e: 6643 str r3, [r0, #100] ; 0x64 - 8009880: 81c2 strh r2, [r0, #14] - 8009882: 6183 str r3, [r0, #24] - 8009884: 4619 mov r1, r3 - 8009886: 2208 movs r2, #8 - 8009888: 305c adds r0, #92 ; 0x5c - 800988a: f7fd fba7 bl 8006fdc - 800988e: 4b05 ldr r3, [pc, #20] ; (80098a4 ) - 8009890: 6224 str r4, [r4, #32] - 8009892: 6263 str r3, [r4, #36] ; 0x24 - 8009894: 4b04 ldr r3, [pc, #16] ; (80098a8 ) - 8009896: 62a3 str r3, [r4, #40] ; 0x28 - 8009898: 4b04 ldr r3, [pc, #16] ; (80098ac ) - 800989a: 62e3 str r3, [r4, #44] ; 0x2c - 800989c: 4b04 ldr r3, [pc, #16] ; (80098b0 ) - 800989e: 6323 str r3, [r4, #48] ; 0x30 - 80098a0: bd10 pop {r4, pc} - 80098a2: bf00 nop - 80098a4: 08009bb9 .word 0x08009bb9 - 80098a8: 08009bdb .word 0x08009bdb - 80098ac: 08009c13 .word 0x08009c13 - 80098b0: 08009c37 .word 0x08009c37 - -080098b4 <_cleanup_r>: - 80098b4: 4901 ldr r1, [pc, #4] ; (80098bc <_cleanup_r+0x8>) - 80098b6: f000 b8af b.w 8009a18 <_fwalk_reent> - 80098ba: bf00 nop - 80098bc: 080097f5 .word 0x080097f5 - -080098c0 <__sfmoreglue>: - 80098c0: b570 push {r4, r5, r6, lr} - 80098c2: 2568 movs r5, #104 ; 0x68 - 80098c4: 1e4a subs r2, r1, #1 - 80098c6: 4355 muls r5, r2 - 80098c8: 460e mov r6, r1 - 80098ca: f105 0174 add.w r1, r5, #116 ; 0x74 - 80098ce: f7fd fbd9 bl 8007084 <_malloc_r> - 80098d2: 4604 mov r4, r0 - 80098d4: b140 cbz r0, 80098e8 <__sfmoreglue+0x28> - 80098d6: 2100 movs r1, #0 - 80098d8: e9c0 1600 strd r1, r6, [r0] - 80098dc: 300c adds r0, #12 - 80098de: 60a0 str r0, [r4, #8] - 80098e0: f105 0268 add.w r2, r5, #104 ; 0x68 - 80098e4: f7fd fb7a bl 8006fdc - 80098e8: 4620 mov r0, r4 - 80098ea: bd70 pop {r4, r5, r6, pc} - -080098ec <__sfp_lock_acquire>: - 80098ec: 4801 ldr r0, [pc, #4] ; (80098f4 <__sfp_lock_acquire+0x8>) - 80098ee: f7ff bc7a b.w 80091e6 <__retarget_lock_acquire_recursive> - 80098f2: bf00 nop - 80098f4: 200024f8 .word 0x200024f8 - -080098f8 <__sfp_lock_release>: - 80098f8: 4801 ldr r0, [pc, #4] ; (8009900 <__sfp_lock_release+0x8>) - 80098fa: f7ff bc75 b.w 80091e8 <__retarget_lock_release_recursive> - 80098fe: bf00 nop - 8009900: 200024f8 .word 0x200024f8 - -08009904 <__sinit_lock_acquire>: - 8009904: 4801 ldr r0, [pc, #4] ; (800990c <__sinit_lock_acquire+0x8>) - 8009906: f7ff bc6e b.w 80091e6 <__retarget_lock_acquire_recursive> - 800990a: bf00 nop - 800990c: 200024f3 .word 0x200024f3 - -08009910 <__sinit_lock_release>: - 8009910: 4801 ldr r0, [pc, #4] ; (8009918 <__sinit_lock_release+0x8>) - 8009912: f7ff bc69 b.w 80091e8 <__retarget_lock_release_recursive> - 8009916: bf00 nop - 8009918: 200024f3 .word 0x200024f3 - -0800991c <__sinit>: - 800991c: b510 push {r4, lr} - 800991e: 4604 mov r4, r0 - 8009920: f7ff fff0 bl 8009904 <__sinit_lock_acquire> - 8009924: 69a3 ldr r3, [r4, #24] - 8009926: b11b cbz r3, 8009930 <__sinit+0x14> - 8009928: e8bd 4010 ldmia.w sp!, {r4, lr} - 800992c: f7ff bff0 b.w 8009910 <__sinit_lock_release> - 8009930: e9c4 3312 strd r3, r3, [r4, #72] ; 0x48 - 8009934: 6523 str r3, [r4, #80] ; 0x50 - 8009936: 4b13 ldr r3, [pc, #76] ; (8009984 <__sinit+0x68>) - 8009938: 4a13 ldr r2, [pc, #76] ; (8009988 <__sinit+0x6c>) - 800993a: 681b ldr r3, [r3, #0] - 800993c: 62a2 str r2, [r4, #40] ; 0x28 - 800993e: 42a3 cmp r3, r4 - 8009940: bf08 it eq - 8009942: 2301 moveq r3, #1 - 8009944: 4620 mov r0, r4 - 8009946: bf08 it eq - 8009948: 61a3 streq r3, [r4, #24] - 800994a: f000 f81f bl 800998c <__sfp> - 800994e: 6060 str r0, [r4, #4] - 8009950: 4620 mov r0, r4 - 8009952: f000 f81b bl 800998c <__sfp> - 8009956: 60a0 str r0, [r4, #8] - 8009958: 4620 mov r0, r4 - 800995a: f000 f817 bl 800998c <__sfp> - 800995e: 2200 movs r2, #0 - 8009960: 2104 movs r1, #4 - 8009962: 60e0 str r0, [r4, #12] - 8009964: 6860 ldr r0, [r4, #4] - 8009966: f7ff ff81 bl 800986c - 800996a: 2201 movs r2, #1 - 800996c: 2109 movs r1, #9 - 800996e: 68a0 ldr r0, [r4, #8] - 8009970: f7ff ff7c bl 800986c - 8009974: 2202 movs r2, #2 - 8009976: 2112 movs r1, #18 - 8009978: 68e0 ldr r0, [r4, #12] - 800997a: f7ff ff77 bl 800986c - 800997e: 2301 movs r3, #1 - 8009980: 61a3 str r3, [r4, #24] - 8009982: e7d1 b.n 8009928 <__sinit+0xc> - 8009984: 0800a874 .word 0x0800a874 - 8009988: 080098b5 .word 0x080098b5 - -0800998c <__sfp>: - 800998c: b5f8 push {r3, r4, r5, r6, r7, lr} - 800998e: 4607 mov r7, r0 - 8009990: f7ff ffac bl 80098ec <__sfp_lock_acquire> - 8009994: 4b1e ldr r3, [pc, #120] ; (8009a10 <__sfp+0x84>) - 8009996: 681e ldr r6, [r3, #0] - 8009998: 69b3 ldr r3, [r6, #24] - 800999a: b913 cbnz r3, 80099a2 <__sfp+0x16> - 800999c: 4630 mov r0, r6 - 800999e: f7ff ffbd bl 800991c <__sinit> - 80099a2: 3648 adds r6, #72 ; 0x48 - 80099a4: e9d6 3401 ldrd r3, r4, [r6, #4] - 80099a8: 3b01 subs r3, #1 - 80099aa: d503 bpl.n 80099b4 <__sfp+0x28> - 80099ac: 6833 ldr r3, [r6, #0] - 80099ae: b30b cbz r3, 80099f4 <__sfp+0x68> - 80099b0: 6836 ldr r6, [r6, #0] - 80099b2: e7f7 b.n 80099a4 <__sfp+0x18> - 80099b4: f9b4 500c ldrsh.w r5, [r4, #12] - 80099b8: b9d5 cbnz r5, 80099f0 <__sfp+0x64> - 80099ba: 4b16 ldr r3, [pc, #88] ; (8009a14 <__sfp+0x88>) - 80099bc: f104 0058 add.w r0, r4, #88 ; 0x58 - 80099c0: 60e3 str r3, [r4, #12] - 80099c2: 6665 str r5, [r4, #100] ; 0x64 - 80099c4: f7ff fc0e bl 80091e4 <__retarget_lock_init_recursive> - 80099c8: f7ff ff96 bl 80098f8 <__sfp_lock_release> - 80099cc: 2208 movs r2, #8 - 80099ce: 4629 mov r1, r5 - 80099d0: e9c4 5501 strd r5, r5, [r4, #4] - 80099d4: e9c4 5504 strd r5, r5, [r4, #16] - 80099d8: 6025 str r5, [r4, #0] - 80099da: 61a5 str r5, [r4, #24] - 80099dc: f104 005c add.w r0, r4, #92 ; 0x5c - 80099e0: f7fd fafc bl 8006fdc - 80099e4: e9c4 550d strd r5, r5, [r4, #52] ; 0x34 - 80099e8: e9c4 5512 strd r5, r5, [r4, #72] ; 0x48 - 80099ec: 4620 mov r0, r4 - 80099ee: bdf8 pop {r3, r4, r5, r6, r7, pc} - 80099f0: 3468 adds r4, #104 ; 0x68 - 80099f2: e7d9 b.n 80099a8 <__sfp+0x1c> - 80099f4: 2104 movs r1, #4 - 80099f6: 4638 mov r0, r7 - 80099f8: f7ff ff62 bl 80098c0 <__sfmoreglue> - 80099fc: 4604 mov r4, r0 - 80099fe: 6030 str r0, [r6, #0] - 8009a00: 2800 cmp r0, #0 - 8009a02: d1d5 bne.n 80099b0 <__sfp+0x24> - 8009a04: f7ff ff78 bl 80098f8 <__sfp_lock_release> - 8009a08: 230c movs r3, #12 - 8009a0a: 603b str r3, [r7, #0] - 8009a0c: e7ee b.n 80099ec <__sfp+0x60> - 8009a0e: bf00 nop - 8009a10: 0800a874 .word 0x0800a874 - 8009a14: ffff0001 .word 0xffff0001 - -08009a18 <_fwalk_reent>: - 8009a18: e92d 43f8 stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr} - 8009a1c: 4606 mov r6, r0 - 8009a1e: 4688 mov r8, r1 - 8009a20: 2700 movs r7, #0 - 8009a22: f100 0448 add.w r4, r0, #72 ; 0x48 - 8009a26: e9d4 9501 ldrd r9, r5, [r4, #4] - 8009a2a: f1b9 0901 subs.w r9, r9, #1 - 8009a2e: d505 bpl.n 8009a3c <_fwalk_reent+0x24> - 8009a30: 6824 ldr r4, [r4, #0] - 8009a32: 2c00 cmp r4, #0 - 8009a34: d1f7 bne.n 8009a26 <_fwalk_reent+0xe> - 8009a36: 4638 mov r0, r7 - 8009a38: e8bd 83f8 ldmia.w sp!, {r3, r4, r5, r6, r7, r8, r9, pc} - 8009a3c: 89ab ldrh r3, [r5, #12] - 8009a3e: 2b01 cmp r3, #1 - 8009a40: d907 bls.n 8009a52 <_fwalk_reent+0x3a> - 8009a42: f9b5 300e ldrsh.w r3, [r5, #14] - 8009a46: 3301 adds r3, #1 - 8009a48: d003 beq.n 8009a52 <_fwalk_reent+0x3a> - 8009a4a: 4629 mov r1, r5 - 8009a4c: 4630 mov r0, r6 - 8009a4e: 47c0 blx r8 - 8009a50: 4307 orrs r7, r0 - 8009a52: 3568 adds r5, #104 ; 0x68 - 8009a54: e7e9 b.n 8009a2a <_fwalk_reent+0x12> - -08009a56 <__swhatbuf_r>: - 8009a56: b570 push {r4, r5, r6, lr} - 8009a58: 460e mov r6, r1 - 8009a5a: f9b1 100e ldrsh.w r1, [r1, #14] - 8009a5e: 4614 mov r4, r2 - 8009a60: 2900 cmp r1, #0 - 8009a62: 461d mov r5, r3 - 8009a64: b096 sub sp, #88 ; 0x58 - 8009a66: da07 bge.n 8009a78 <__swhatbuf_r+0x22> - 8009a68: 2300 movs r3, #0 - 8009a6a: 602b str r3, [r5, #0] - 8009a6c: 89b3 ldrh r3, [r6, #12] - 8009a6e: 061a lsls r2, r3, #24 - 8009a70: d410 bmi.n 8009a94 <__swhatbuf_r+0x3e> - 8009a72: f44f 6380 mov.w r3, #1024 ; 0x400 - 8009a76: e00e b.n 8009a96 <__swhatbuf_r+0x40> - 8009a78: 466a mov r2, sp - 8009a7a: f000 f903 bl 8009c84 <_fstat_r> - 8009a7e: 2800 cmp r0, #0 - 8009a80: dbf2 blt.n 8009a68 <__swhatbuf_r+0x12> - 8009a82: 9a01 ldr r2, [sp, #4] - 8009a84: f402 4270 and.w r2, r2, #61440 ; 0xf000 - 8009a88: f5a2 5300 sub.w r3, r2, #8192 ; 0x2000 - 8009a8c: 425a negs r2, r3 - 8009a8e: 415a adcs r2, r3 - 8009a90: 602a str r2, [r5, #0] - 8009a92: e7ee b.n 8009a72 <__swhatbuf_r+0x1c> - 8009a94: 2340 movs r3, #64 ; 0x40 - 8009a96: 2000 movs r0, #0 - 8009a98: 6023 str r3, [r4, #0] - 8009a9a: b016 add sp, #88 ; 0x58 - 8009a9c: bd70 pop {r4, r5, r6, pc} - ... - -08009aa0 <__smakebuf_r>: - 8009aa0: 898b ldrh r3, [r1, #12] - 8009aa2: b573 push {r0, r1, r4, r5, r6, lr} - 8009aa4: 079d lsls r5, r3, #30 - 8009aa6: 4606 mov r6, r0 - 8009aa8: 460c mov r4, r1 - 8009aaa: d507 bpl.n 8009abc <__smakebuf_r+0x1c> - 8009aac: f104 0347 add.w r3, r4, #71 ; 0x47 - 8009ab0: 6023 str r3, [r4, #0] - 8009ab2: 6123 str r3, [r4, #16] - 8009ab4: 2301 movs r3, #1 - 8009ab6: 6163 str r3, [r4, #20] - 8009ab8: b002 add sp, #8 - 8009aba: bd70 pop {r4, r5, r6, pc} - 8009abc: 466a mov r2, sp - 8009abe: ab01 add r3, sp, #4 - 8009ac0: f7ff ffc9 bl 8009a56 <__swhatbuf_r> - 8009ac4: 9900 ldr r1, [sp, #0] - 8009ac6: 4605 mov r5, r0 - 8009ac8: 4630 mov r0, r6 - 8009aca: f7fd fadb bl 8007084 <_malloc_r> - 8009ace: b948 cbnz r0, 8009ae4 <__smakebuf_r+0x44> - 8009ad0: f9b4 300c ldrsh.w r3, [r4, #12] - 8009ad4: 059a lsls r2, r3, #22 - 8009ad6: d4ef bmi.n 8009ab8 <__smakebuf_r+0x18> - 8009ad8: f023 0303 bic.w r3, r3, #3 - 8009adc: f043 0302 orr.w r3, r3, #2 - 8009ae0: 81a3 strh r3, [r4, #12] - 8009ae2: e7e3 b.n 8009aac <__smakebuf_r+0xc> - 8009ae4: 4b0d ldr r3, [pc, #52] ; (8009b1c <__smakebuf_r+0x7c>) - 8009ae6: 62b3 str r3, [r6, #40] ; 0x28 - 8009ae8: 89a3 ldrh r3, [r4, #12] - 8009aea: 6020 str r0, [r4, #0] - 8009aec: f043 0380 orr.w r3, r3, #128 ; 0x80 - 8009af0: 81a3 strh r3, [r4, #12] - 8009af2: 9b00 ldr r3, [sp, #0] - 8009af4: 6120 str r0, [r4, #16] - 8009af6: 6163 str r3, [r4, #20] - 8009af8: 9b01 ldr r3, [sp, #4] - 8009afa: b15b cbz r3, 8009b14 <__smakebuf_r+0x74> - 8009afc: 4630 mov r0, r6 - 8009afe: f9b4 100e ldrsh.w r1, [r4, #14] - 8009b02: f000 f8d1 bl 8009ca8 <_isatty_r> - 8009b06: b128 cbz r0, 8009b14 <__smakebuf_r+0x74> - 8009b08: 89a3 ldrh r3, [r4, #12] - 8009b0a: f023 0303 bic.w r3, r3, #3 - 8009b0e: f043 0301 orr.w r3, r3, #1 - 8009b12: 81a3 strh r3, [r4, #12] - 8009b14: 89a0 ldrh r0, [r4, #12] - 8009b16: 4305 orrs r5, r0 - 8009b18: 81a5 strh r5, [r4, #12] - 8009b1a: e7cd b.n 8009ab8 <__smakebuf_r+0x18> - 8009b1c: 080098b5 .word 0x080098b5 - -08009b20 <_malloc_usable_size_r>: - 8009b20: f851 3c04 ldr.w r3, [r1, #-4] - 8009b24: 1f18 subs r0, r3, #4 - 8009b26: 2b00 cmp r3, #0 - 8009b28: bfbc itt lt - 8009b2a: 580b ldrlt r3, [r1, r0] - 8009b2c: 18c0 addlt r0, r0, r3 - 8009b2e: 4770 bx lr - -08009b30 <_raise_r>: - 8009b30: 291f cmp r1, #31 - 8009b32: b538 push {r3, r4, r5, lr} - 8009b34: 4604 mov r4, r0 - 8009b36: 460d mov r5, r1 - 8009b38: d904 bls.n 8009b44 <_raise_r+0x14> - 8009b3a: 2316 movs r3, #22 - 8009b3c: 6003 str r3, [r0, #0] - 8009b3e: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff - 8009b42: bd38 pop {r3, r4, r5, pc} - 8009b44: 6c42 ldr r2, [r0, #68] ; 0x44 - 8009b46: b112 cbz r2, 8009b4e <_raise_r+0x1e> - 8009b48: f852 3021 ldr.w r3, [r2, r1, lsl #2] - 8009b4c: b94b cbnz r3, 8009b62 <_raise_r+0x32> +08009974 <_vfiprintf_r>: + 8009974: e92d 4ff0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} + 8009978: 460d mov r5, r1 + 800997a: 4614 mov r4, r2 + 800997c: 4698 mov r8, r3 + 800997e: 4606 mov r6, r0 + 8009980: b09d sub sp, #116 ; 0x74 + 8009982: b118 cbz r0, 800998c <_vfiprintf_r+0x18> + 8009984: 6983 ldr r3, [r0, #24] + 8009986: b90b cbnz r3, 800998c <_vfiprintf_r+0x18> + 8009988: f000 fb14 bl 8009fb4 <__sinit> + 800998c: 4b89 ldr r3, [pc, #548] ; (8009bb4 <_vfiprintf_r+0x240>) + 800998e: 429d cmp r5, r3 + 8009990: d11b bne.n 80099ca <_vfiprintf_r+0x56> + 8009992: 6875 ldr r5, [r6, #4] + 8009994: 6e6b ldr r3, [r5, #100] ; 0x64 + 8009996: 07d9 lsls r1, r3, #31 + 8009998: d405 bmi.n 80099a6 <_vfiprintf_r+0x32> + 800999a: 89ab ldrh r3, [r5, #12] + 800999c: 059a lsls r2, r3, #22 + 800999e: d402 bmi.n 80099a6 <_vfiprintf_r+0x32> + 80099a0: 6da8 ldr r0, [r5, #88] ; 0x58 + 80099a2: f7ff ff6c bl 800987e <__retarget_lock_acquire_recursive> + 80099a6: 89ab ldrh r3, [r5, #12] + 80099a8: 071b lsls r3, r3, #28 + 80099aa: d501 bpl.n 80099b0 <_vfiprintf_r+0x3c> + 80099ac: 692b ldr r3, [r5, #16] + 80099ae: b9eb cbnz r3, 80099ec <_vfiprintf_r+0x78> + 80099b0: 4629 mov r1, r5 + 80099b2: 4630 mov r0, r6 + 80099b4: f000 f96e bl 8009c94 <__swsetup_r> + 80099b8: b1c0 cbz r0, 80099ec <_vfiprintf_r+0x78> + 80099ba: 6e6b ldr r3, [r5, #100] ; 0x64 + 80099bc: 07dc lsls r4, r3, #31 + 80099be: d50e bpl.n 80099de <_vfiprintf_r+0x6a> + 80099c0: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff + 80099c4: b01d add sp, #116 ; 0x74 + 80099c6: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc} + 80099ca: 4b7b ldr r3, [pc, #492] ; (8009bb8 <_vfiprintf_r+0x244>) + 80099cc: 429d cmp r5, r3 + 80099ce: d101 bne.n 80099d4 <_vfiprintf_r+0x60> + 80099d0: 68b5 ldr r5, [r6, #8] + 80099d2: e7df b.n 8009994 <_vfiprintf_r+0x20> + 80099d4: 4b79 ldr r3, [pc, #484] ; (8009bbc <_vfiprintf_r+0x248>) + 80099d6: 429d cmp r5, r3 + 80099d8: bf08 it eq + 80099da: 68f5 ldreq r5, [r6, #12] + 80099dc: e7da b.n 8009994 <_vfiprintf_r+0x20> + 80099de: 89ab ldrh r3, [r5, #12] + 80099e0: 0598 lsls r0, r3, #22 + 80099e2: d4ed bmi.n 80099c0 <_vfiprintf_r+0x4c> + 80099e4: 6da8 ldr r0, [r5, #88] ; 0x58 + 80099e6: f7ff ff4b bl 8009880 <__retarget_lock_release_recursive> + 80099ea: e7e9 b.n 80099c0 <_vfiprintf_r+0x4c> + 80099ec: 2300 movs r3, #0 + 80099ee: 9309 str r3, [sp, #36] ; 0x24 + 80099f0: 2320 movs r3, #32 + 80099f2: f88d 3029 strb.w r3, [sp, #41] ; 0x29 + 80099f6: 2330 movs r3, #48 ; 0x30 + 80099f8: f04f 0901 mov.w r9, #1 + 80099fc: f8cd 800c str.w r8, [sp, #12] + 8009a00: f8df 81bc ldr.w r8, [pc, #444] ; 8009bc0 <_vfiprintf_r+0x24c> + 8009a04: f88d 302a strb.w r3, [sp, #42] ; 0x2a + 8009a08: 4623 mov r3, r4 + 8009a0a: 469a mov sl, r3 + 8009a0c: f813 2b01 ldrb.w r2, [r3], #1 + 8009a10: b10a cbz r2, 8009a16 <_vfiprintf_r+0xa2> + 8009a12: 2a25 cmp r2, #37 ; 0x25 + 8009a14: d1f9 bne.n 8009a0a <_vfiprintf_r+0x96> + 8009a16: ebba 0b04 subs.w fp, sl, r4 + 8009a1a: d00b beq.n 8009a34 <_vfiprintf_r+0xc0> + 8009a1c: 465b mov r3, fp + 8009a1e: 4622 mov r2, r4 + 8009a20: 4629 mov r1, r5 + 8009a22: 4630 mov r0, r6 + 8009a24: f7ff ff94 bl 8009950 <__sfputs_r> + 8009a28: 3001 adds r0, #1 + 8009a2a: f000 80aa beq.w 8009b82 <_vfiprintf_r+0x20e> + 8009a2e: 9a09 ldr r2, [sp, #36] ; 0x24 + 8009a30: 445a add r2, fp + 8009a32: 9209 str r2, [sp, #36] ; 0x24 + 8009a34: f89a 3000 ldrb.w r3, [sl] + 8009a38: 2b00 cmp r3, #0 + 8009a3a: f000 80a2 beq.w 8009b82 <_vfiprintf_r+0x20e> + 8009a3e: 2300 movs r3, #0 + 8009a40: f04f 32ff mov.w r2, #4294967295 ; 0xffffffff + 8009a44: e9cd 2305 strd r2, r3, [sp, #20] + 8009a48: f10a 0a01 add.w sl, sl, #1 + 8009a4c: 9304 str r3, [sp, #16] + 8009a4e: 9307 str r3, [sp, #28] + 8009a50: f88d 3053 strb.w r3, [sp, #83] ; 0x53 + 8009a54: 931a str r3, [sp, #104] ; 0x68 + 8009a56: 4654 mov r4, sl + 8009a58: 2205 movs r2, #5 + 8009a5a: f814 1b01 ldrb.w r1, [r4], #1 + 8009a5e: 4858 ldr r0, [pc, #352] ; (8009bc0 <_vfiprintf_r+0x24c>) + 8009a60: f7ff f9c8 bl 8008df4 + 8009a64: 9a04 ldr r2, [sp, #16] + 8009a66: b9d8 cbnz r0, 8009aa0 <_vfiprintf_r+0x12c> + 8009a68: 06d1 lsls r1, r2, #27 + 8009a6a: bf44 itt mi + 8009a6c: 2320 movmi r3, #32 + 8009a6e: f88d 3053 strbmi.w r3, [sp, #83] ; 0x53 + 8009a72: 0713 lsls r3, r2, #28 + 8009a74: bf44 itt mi + 8009a76: 232b movmi r3, #43 ; 0x2b + 8009a78: f88d 3053 strbmi.w r3, [sp, #83] ; 0x53 + 8009a7c: f89a 3000 ldrb.w r3, [sl] + 8009a80: 2b2a cmp r3, #42 ; 0x2a + 8009a82: d015 beq.n 8009ab0 <_vfiprintf_r+0x13c> + 8009a84: 4654 mov r4, sl + 8009a86: 2000 movs r0, #0 + 8009a88: f04f 0c0a mov.w ip, #10 + 8009a8c: 9a07 ldr r2, [sp, #28] + 8009a8e: 4621 mov r1, r4 + 8009a90: f811 3b01 ldrb.w r3, [r1], #1 + 8009a94: 3b30 subs r3, #48 ; 0x30 + 8009a96: 2b09 cmp r3, #9 + 8009a98: d94e bls.n 8009b38 <_vfiprintf_r+0x1c4> + 8009a9a: b1b0 cbz r0, 8009aca <_vfiprintf_r+0x156> + 8009a9c: 9207 str r2, [sp, #28] + 8009a9e: e014 b.n 8009aca <_vfiprintf_r+0x156> + 8009aa0: eba0 0308 sub.w r3, r0, r8 + 8009aa4: fa09 f303 lsl.w r3, r9, r3 + 8009aa8: 4313 orrs r3, r2 + 8009aaa: 46a2 mov sl, r4 + 8009aac: 9304 str r3, [sp, #16] + 8009aae: e7d2 b.n 8009a56 <_vfiprintf_r+0xe2> + 8009ab0: 9b03 ldr r3, [sp, #12] + 8009ab2: 1d19 adds r1, r3, #4 + 8009ab4: 681b ldr r3, [r3, #0] + 8009ab6: 9103 str r1, [sp, #12] + 8009ab8: 2b00 cmp r3, #0 + 8009aba: bfbb ittet lt + 8009abc: 425b neglt r3, r3 + 8009abe: f042 0202 orrlt.w r2, r2, #2 + 8009ac2: 9307 strge r3, [sp, #28] + 8009ac4: 9307 strlt r3, [sp, #28] + 8009ac6: bfb8 it lt + 8009ac8: 9204 strlt r2, [sp, #16] + 8009aca: 7823 ldrb r3, [r4, #0] + 8009acc: 2b2e cmp r3, #46 ; 0x2e + 8009ace: d10c bne.n 8009aea <_vfiprintf_r+0x176> + 8009ad0: 7863 ldrb r3, [r4, #1] + 8009ad2: 2b2a cmp r3, #42 ; 0x2a + 8009ad4: d135 bne.n 8009b42 <_vfiprintf_r+0x1ce> + 8009ad6: 9b03 ldr r3, [sp, #12] + 8009ad8: 3402 adds r4, #2 + 8009ada: 1d1a adds r2, r3, #4 + 8009adc: 681b ldr r3, [r3, #0] + 8009ade: 9203 str r2, [sp, #12] + 8009ae0: 2b00 cmp r3, #0 + 8009ae2: bfb8 it lt + 8009ae4: f04f 33ff movlt.w r3, #4294967295 ; 0xffffffff + 8009ae8: 9305 str r3, [sp, #20] + 8009aea: f8df a0e4 ldr.w sl, [pc, #228] ; 8009bd0 <_vfiprintf_r+0x25c> + 8009aee: 2203 movs r2, #3 + 8009af0: 4650 mov r0, sl + 8009af2: 7821 ldrb r1, [r4, #0] + 8009af4: f7ff f97e bl 8008df4 + 8009af8: b140 cbz r0, 8009b0c <_vfiprintf_r+0x198> + 8009afa: 2340 movs r3, #64 ; 0x40 + 8009afc: eba0 000a sub.w r0, r0, sl + 8009b00: fa03 f000 lsl.w r0, r3, r0 + 8009b04: 9b04 ldr r3, [sp, #16] + 8009b06: 3401 adds r4, #1 + 8009b08: 4303 orrs r3, r0 + 8009b0a: 9304 str r3, [sp, #16] + 8009b0c: f814 1b01 ldrb.w r1, [r4], #1 + 8009b10: 2206 movs r2, #6 + 8009b12: 482c ldr r0, [pc, #176] ; (8009bc4 <_vfiprintf_r+0x250>) + 8009b14: f88d 1028 strb.w r1, [sp, #40] ; 0x28 + 8009b18: f7ff f96c bl 8008df4 + 8009b1c: 2800 cmp r0, #0 + 8009b1e: d03f beq.n 8009ba0 <_vfiprintf_r+0x22c> + 8009b20: 4b29 ldr r3, [pc, #164] ; (8009bc8 <_vfiprintf_r+0x254>) + 8009b22: bb1b cbnz r3, 8009b6c <_vfiprintf_r+0x1f8> + 8009b24: 9b03 ldr r3, [sp, #12] + 8009b26: 3307 adds r3, #7 + 8009b28: f023 0307 bic.w r3, r3, #7 + 8009b2c: 3308 adds r3, #8 + 8009b2e: 9303 str r3, [sp, #12] + 8009b30: 9b09 ldr r3, [sp, #36] ; 0x24 + 8009b32: 443b add r3, r7 + 8009b34: 9309 str r3, [sp, #36] ; 0x24 + 8009b36: e767 b.n 8009a08 <_vfiprintf_r+0x94> + 8009b38: 460c mov r4, r1 + 8009b3a: 2001 movs r0, #1 + 8009b3c: fb0c 3202 mla r2, ip, r2, r3 + 8009b40: e7a5 b.n 8009a8e <_vfiprintf_r+0x11a> + 8009b42: 2300 movs r3, #0 + 8009b44: f04f 0c0a mov.w ip, #10 + 8009b48: 4619 mov r1, r3 + 8009b4a: 3401 adds r4, #1 + 8009b4c: 9305 str r3, [sp, #20] 8009b4e: 4620 mov r0, r4 - 8009b50: f000 f830 bl 8009bb4 <_getpid_r> - 8009b54: 462a mov r2, r5 - 8009b56: 4601 mov r1, r0 - 8009b58: 4620 mov r0, r4 - 8009b5a: e8bd 4038 ldmia.w sp!, {r3, r4, r5, lr} - 8009b5e: f000 b817 b.w 8009b90 <_kill_r> - 8009b62: 2b01 cmp r3, #1 - 8009b64: d00a beq.n 8009b7c <_raise_r+0x4c> - 8009b66: 1c59 adds r1, r3, #1 - 8009b68: d103 bne.n 8009b72 <_raise_r+0x42> - 8009b6a: 2316 movs r3, #22 - 8009b6c: 6003 str r3, [r0, #0] - 8009b6e: 2001 movs r0, #1 - 8009b70: e7e7 b.n 8009b42 <_raise_r+0x12> - 8009b72: 2400 movs r4, #0 - 8009b74: 4628 mov r0, r5 - 8009b76: f842 4025 str.w r4, [r2, r5, lsl #2] - 8009b7a: 4798 blx r3 - 8009b7c: 2000 movs r0, #0 - 8009b7e: e7e0 b.n 8009b42 <_raise_r+0x12> + 8009b50: f810 2b01 ldrb.w r2, [r0], #1 + 8009b54: 3a30 subs r2, #48 ; 0x30 + 8009b56: 2a09 cmp r2, #9 + 8009b58: d903 bls.n 8009b62 <_vfiprintf_r+0x1ee> + 8009b5a: 2b00 cmp r3, #0 + 8009b5c: d0c5 beq.n 8009aea <_vfiprintf_r+0x176> + 8009b5e: 9105 str r1, [sp, #20] + 8009b60: e7c3 b.n 8009aea <_vfiprintf_r+0x176> + 8009b62: 4604 mov r4, r0 + 8009b64: 2301 movs r3, #1 + 8009b66: fb0c 2101 mla r1, ip, r1, r2 + 8009b6a: e7f0 b.n 8009b4e <_vfiprintf_r+0x1da> + 8009b6c: ab03 add r3, sp, #12 + 8009b6e: 9300 str r3, [sp, #0] + 8009b70: 462a mov r2, r5 + 8009b72: 4630 mov r0, r6 + 8009b74: 4b15 ldr r3, [pc, #84] ; (8009bcc <_vfiprintf_r+0x258>) + 8009b76: a904 add r1, sp, #16 + 8009b78: f7fd feca bl 8007910 <_printf_float> + 8009b7c: 4607 mov r7, r0 + 8009b7e: 1c78 adds r0, r7, #1 + 8009b80: d1d6 bne.n 8009b30 <_vfiprintf_r+0x1bc> + 8009b82: 6e6b ldr r3, [r5, #100] ; 0x64 + 8009b84: 07d9 lsls r1, r3, #31 + 8009b86: d405 bmi.n 8009b94 <_vfiprintf_r+0x220> + 8009b88: 89ab ldrh r3, [r5, #12] + 8009b8a: 059a lsls r2, r3, #22 + 8009b8c: d402 bmi.n 8009b94 <_vfiprintf_r+0x220> + 8009b8e: 6da8 ldr r0, [r5, #88] ; 0x58 + 8009b90: f7ff fe76 bl 8009880 <__retarget_lock_release_recursive> + 8009b94: 89ab ldrh r3, [r5, #12] + 8009b96: 065b lsls r3, r3, #25 + 8009b98: f53f af12 bmi.w 80099c0 <_vfiprintf_r+0x4c> + 8009b9c: 9809 ldr r0, [sp, #36] ; 0x24 + 8009b9e: e711 b.n 80099c4 <_vfiprintf_r+0x50> + 8009ba0: ab03 add r3, sp, #12 + 8009ba2: 9300 str r3, [sp, #0] + 8009ba4: 462a mov r2, r5 + 8009ba6: 4630 mov r0, r6 + 8009ba8: 4b08 ldr r3, [pc, #32] ; (8009bcc <_vfiprintf_r+0x258>) + 8009baa: a904 add r1, sp, #16 + 8009bac: f7fe f94c bl 8007e48 <_printf_i> + 8009bb0: e7e4 b.n 8009b7c <_vfiprintf_r+0x208> + 8009bb2: bf00 nop + 8009bb4: 0800b2e4 .word 0x0800b2e4 + 8009bb8: 0800b304 .word 0x0800b304 + 8009bbc: 0800b2c4 .word 0x0800b2c4 + 8009bc0: 0800b16c .word 0x0800b16c + 8009bc4: 0800b176 .word 0x0800b176 + 8009bc8: 08007911 .word 0x08007911 + 8009bcc: 08009951 .word 0x08009951 + 8009bd0: 0800b172 .word 0x0800b172 -08009b80 : - 8009b80: 4b02 ldr r3, [pc, #8] ; (8009b8c ) - 8009b82: 4601 mov r1, r0 - 8009b84: 6818 ldr r0, [r3, #0] - 8009b86: f7ff bfd3 b.w 8009b30 <_raise_r> - 8009b8a: bf00 nop - 8009b8c: 2000000c .word 0x2000000c +08009bd4 <__swbuf_r>: + 8009bd4: b5f8 push {r3, r4, r5, r6, r7, lr} + 8009bd6: 460e mov r6, r1 + 8009bd8: 4614 mov r4, r2 + 8009bda: 4605 mov r5, r0 + 8009bdc: b118 cbz r0, 8009be6 <__swbuf_r+0x12> + 8009bde: 6983 ldr r3, [r0, #24] + 8009be0: b90b cbnz r3, 8009be6 <__swbuf_r+0x12> + 8009be2: f000 f9e7 bl 8009fb4 <__sinit> + 8009be6: 4b21 ldr r3, [pc, #132] ; (8009c6c <__swbuf_r+0x98>) + 8009be8: 429c cmp r4, r3 + 8009bea: d12b bne.n 8009c44 <__swbuf_r+0x70> + 8009bec: 686c ldr r4, [r5, #4] + 8009bee: 69a3 ldr r3, [r4, #24] + 8009bf0: 60a3 str r3, [r4, #8] + 8009bf2: 89a3 ldrh r3, [r4, #12] + 8009bf4: 071a lsls r2, r3, #28 + 8009bf6: d52f bpl.n 8009c58 <__swbuf_r+0x84> + 8009bf8: 6923 ldr r3, [r4, #16] + 8009bfa: b36b cbz r3, 8009c58 <__swbuf_r+0x84> + 8009bfc: 6923 ldr r3, [r4, #16] + 8009bfe: 6820 ldr r0, [r4, #0] + 8009c00: b2f6 uxtb r6, r6 + 8009c02: 1ac0 subs r0, r0, r3 + 8009c04: 6963 ldr r3, [r4, #20] + 8009c06: 4637 mov r7, r6 + 8009c08: 4283 cmp r3, r0 + 8009c0a: dc04 bgt.n 8009c16 <__swbuf_r+0x42> + 8009c0c: 4621 mov r1, r4 + 8009c0e: 4628 mov r0, r5 + 8009c10: f000 f93c bl 8009e8c <_fflush_r> + 8009c14: bb30 cbnz r0, 8009c64 <__swbuf_r+0x90> + 8009c16: 68a3 ldr r3, [r4, #8] + 8009c18: 3001 adds r0, #1 + 8009c1a: 3b01 subs r3, #1 + 8009c1c: 60a3 str r3, [r4, #8] + 8009c1e: 6823 ldr r3, [r4, #0] + 8009c20: 1c5a adds r2, r3, #1 + 8009c22: 6022 str r2, [r4, #0] + 8009c24: 701e strb r6, [r3, #0] + 8009c26: 6963 ldr r3, [r4, #20] + 8009c28: 4283 cmp r3, r0 + 8009c2a: d004 beq.n 8009c36 <__swbuf_r+0x62> + 8009c2c: 89a3 ldrh r3, [r4, #12] + 8009c2e: 07db lsls r3, r3, #31 + 8009c30: d506 bpl.n 8009c40 <__swbuf_r+0x6c> + 8009c32: 2e0a cmp r6, #10 + 8009c34: d104 bne.n 8009c40 <__swbuf_r+0x6c> + 8009c36: 4621 mov r1, r4 + 8009c38: 4628 mov r0, r5 + 8009c3a: f000 f927 bl 8009e8c <_fflush_r> + 8009c3e: b988 cbnz r0, 8009c64 <__swbuf_r+0x90> + 8009c40: 4638 mov r0, r7 + 8009c42: bdf8 pop {r3, r4, r5, r6, r7, pc} + 8009c44: 4b0a ldr r3, [pc, #40] ; (8009c70 <__swbuf_r+0x9c>) + 8009c46: 429c cmp r4, r3 + 8009c48: d101 bne.n 8009c4e <__swbuf_r+0x7a> + 8009c4a: 68ac ldr r4, [r5, #8] + 8009c4c: e7cf b.n 8009bee <__swbuf_r+0x1a> + 8009c4e: 4b09 ldr r3, [pc, #36] ; (8009c74 <__swbuf_r+0xa0>) + 8009c50: 429c cmp r4, r3 + 8009c52: bf08 it eq + 8009c54: 68ec ldreq r4, [r5, #12] + 8009c56: e7ca b.n 8009bee <__swbuf_r+0x1a> + 8009c58: 4621 mov r1, r4 + 8009c5a: 4628 mov r0, r5 + 8009c5c: f000 f81a bl 8009c94 <__swsetup_r> + 8009c60: 2800 cmp r0, #0 + 8009c62: d0cb beq.n 8009bfc <__swbuf_r+0x28> + 8009c64: f04f 37ff mov.w r7, #4294967295 ; 0xffffffff + 8009c68: e7ea b.n 8009c40 <__swbuf_r+0x6c> + 8009c6a: bf00 nop + 8009c6c: 0800b2e4 .word 0x0800b2e4 + 8009c70: 0800b304 .word 0x0800b304 + 8009c74: 0800b2c4 .word 0x0800b2c4 -08009b90 <_kill_r>: - 8009b90: b538 push {r3, r4, r5, lr} - 8009b92: 2300 movs r3, #0 - 8009b94: 4d06 ldr r5, [pc, #24] ; (8009bb0 <_kill_r+0x20>) - 8009b96: 4604 mov r4, r0 - 8009b98: 4608 mov r0, r1 - 8009b9a: 4611 mov r1, r2 - 8009b9c: 602b str r3, [r5, #0] - 8009b9e: f7f7 fe86 bl 80018ae <_kill> - 8009ba2: 1c43 adds r3, r0, #1 - 8009ba4: d102 bne.n 8009bac <_kill_r+0x1c> - 8009ba6: 682b ldr r3, [r5, #0] - 8009ba8: b103 cbz r3, 8009bac <_kill_r+0x1c> - 8009baa: 6023 str r3, [r4, #0] - 8009bac: bd38 pop {r3, r4, r5, pc} - 8009bae: bf00 nop - 8009bb0: 200024ec .word 0x200024ec - -08009bb4 <_getpid_r>: - 8009bb4: f7f7 be74 b.w 80018a0 <_getpid> - -08009bb8 <__sread>: - 8009bb8: b510 push {r4, lr} - 8009bba: 460c mov r4, r1 - 8009bbc: f9b1 100e ldrsh.w r1, [r1, #14] - 8009bc0: f000 f894 bl 8009cec <_read_r> - 8009bc4: 2800 cmp r0, #0 - 8009bc6: bfab itete ge - 8009bc8: 6d63 ldrge r3, [r4, #84] ; 0x54 - 8009bca: 89a3 ldrhlt r3, [r4, #12] - 8009bcc: 181b addge r3, r3, r0 - 8009bce: f423 5380 biclt.w r3, r3, #4096 ; 0x1000 - 8009bd2: bfac ite ge - 8009bd4: 6563 strge r3, [r4, #84] ; 0x54 - 8009bd6: 81a3 strhlt r3, [r4, #12] - 8009bd8: bd10 pop {r4, pc} - -08009bda <__swrite>: - 8009bda: e92d 41f0 stmdb sp!, {r4, r5, r6, r7, r8, lr} - 8009bde: 461f mov r7, r3 - 8009be0: 898b ldrh r3, [r1, #12] - 8009be2: 4605 mov r5, r0 - 8009be4: 05db lsls r3, r3, #23 - 8009be6: 460c mov r4, r1 - 8009be8: 4616 mov r6, r2 - 8009bea: d505 bpl.n 8009bf8 <__swrite+0x1e> - 8009bec: 2302 movs r3, #2 - 8009bee: 2200 movs r2, #0 - 8009bf0: f9b1 100e ldrsh.w r1, [r1, #14] - 8009bf4: f000 f868 bl 8009cc8 <_lseek_r> - 8009bf8: 89a3 ldrh r3, [r4, #12] - 8009bfa: 4632 mov r2, r6 - 8009bfc: f423 5380 bic.w r3, r3, #4096 ; 0x1000 - 8009c00: 81a3 strh r3, [r4, #12] - 8009c02: 4628 mov r0, r5 - 8009c04: 463b mov r3, r7 - 8009c06: f9b4 100e ldrsh.w r1, [r4, #14] - 8009c0a: e8bd 41f0 ldmia.w sp!, {r4, r5, r6, r7, r8, lr} - 8009c0e: f000 b817 b.w 8009c40 <_write_r> - -08009c12 <__sseek>: - 8009c12: b510 push {r4, lr} - 8009c14: 460c mov r4, r1 - 8009c16: f9b1 100e ldrsh.w r1, [r1, #14] - 8009c1a: f000 f855 bl 8009cc8 <_lseek_r> - 8009c1e: 1c43 adds r3, r0, #1 - 8009c20: 89a3 ldrh r3, [r4, #12] - 8009c22: bf15 itete ne - 8009c24: 6560 strne r0, [r4, #84] ; 0x54 - 8009c26: f423 5380 biceq.w r3, r3, #4096 ; 0x1000 - 8009c2a: f443 5380 orrne.w r3, r3, #4096 ; 0x1000 - 8009c2e: 81a3 strheq r3, [r4, #12] - 8009c30: bf18 it ne - 8009c32: 81a3 strhne r3, [r4, #12] - 8009c34: bd10 pop {r4, pc} - -08009c36 <__sclose>: - 8009c36: f9b1 100e ldrsh.w r1, [r1, #14] - 8009c3a: f000 b813 b.w 8009c64 <_close_r> +08009c78 <__ascii_wctomb>: + 8009c78: 4603 mov r3, r0 + 8009c7a: 4608 mov r0, r1 + 8009c7c: b141 cbz r1, 8009c90 <__ascii_wctomb+0x18> + 8009c7e: 2aff cmp r2, #255 ; 0xff + 8009c80: d904 bls.n 8009c8c <__ascii_wctomb+0x14> + 8009c82: 228a movs r2, #138 ; 0x8a + 8009c84: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff + 8009c88: 601a str r2, [r3, #0] + 8009c8a: 4770 bx lr + 8009c8c: 2001 movs r0, #1 + 8009c8e: 700a strb r2, [r1, #0] + 8009c90: 4770 bx lr ... -08009c40 <_write_r>: - 8009c40: b538 push {r3, r4, r5, lr} - 8009c42: 4604 mov r4, r0 - 8009c44: 4608 mov r0, r1 - 8009c46: 4611 mov r1, r2 - 8009c48: 2200 movs r2, #0 - 8009c4a: 4d05 ldr r5, [pc, #20] ; (8009c60 <_write_r+0x20>) - 8009c4c: 602a str r2, [r5, #0] - 8009c4e: 461a mov r2, r3 - 8009c50: f7f7 fe64 bl 800191c <_write> - 8009c54: 1c43 adds r3, r0, #1 - 8009c56: d102 bne.n 8009c5e <_write_r+0x1e> - 8009c58: 682b ldr r3, [r5, #0] - 8009c5a: b103 cbz r3, 8009c5e <_write_r+0x1e> - 8009c5c: 6023 str r3, [r4, #0] - 8009c5e: bd38 pop {r3, r4, r5, pc} - 8009c60: 200024ec .word 0x200024ec +08009c94 <__swsetup_r>: + 8009c94: 4b32 ldr r3, [pc, #200] ; (8009d60 <__swsetup_r+0xcc>) + 8009c96: b570 push {r4, r5, r6, lr} + 8009c98: 681d ldr r5, [r3, #0] + 8009c9a: 4606 mov r6, r0 + 8009c9c: 460c mov r4, r1 + 8009c9e: b125 cbz r5, 8009caa <__swsetup_r+0x16> + 8009ca0: 69ab ldr r3, [r5, #24] + 8009ca2: b913 cbnz r3, 8009caa <__swsetup_r+0x16> + 8009ca4: 4628 mov r0, r5 + 8009ca6: f000 f985 bl 8009fb4 <__sinit> + 8009caa: 4b2e ldr r3, [pc, #184] ; (8009d64 <__swsetup_r+0xd0>) + 8009cac: 429c cmp r4, r3 + 8009cae: d10f bne.n 8009cd0 <__swsetup_r+0x3c> + 8009cb0: 686c ldr r4, [r5, #4] + 8009cb2: 89a3 ldrh r3, [r4, #12] + 8009cb4: f9b4 200c ldrsh.w r2, [r4, #12] + 8009cb8: 0719 lsls r1, r3, #28 + 8009cba: d42c bmi.n 8009d16 <__swsetup_r+0x82> + 8009cbc: 06dd lsls r5, r3, #27 + 8009cbe: d411 bmi.n 8009ce4 <__swsetup_r+0x50> + 8009cc0: 2309 movs r3, #9 + 8009cc2: 6033 str r3, [r6, #0] + 8009cc4: f042 0340 orr.w r3, r2, #64 ; 0x40 + 8009cc8: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff + 8009ccc: 81a3 strh r3, [r4, #12] + 8009cce: e03e b.n 8009d4e <__swsetup_r+0xba> + 8009cd0: 4b25 ldr r3, [pc, #148] ; (8009d68 <__swsetup_r+0xd4>) + 8009cd2: 429c cmp r4, r3 + 8009cd4: d101 bne.n 8009cda <__swsetup_r+0x46> + 8009cd6: 68ac ldr r4, [r5, #8] + 8009cd8: e7eb b.n 8009cb2 <__swsetup_r+0x1e> + 8009cda: 4b24 ldr r3, [pc, #144] ; (8009d6c <__swsetup_r+0xd8>) + 8009cdc: 429c cmp r4, r3 + 8009cde: bf08 it eq + 8009ce0: 68ec ldreq r4, [r5, #12] + 8009ce2: e7e6 b.n 8009cb2 <__swsetup_r+0x1e> + 8009ce4: 0758 lsls r0, r3, #29 + 8009ce6: d512 bpl.n 8009d0e <__swsetup_r+0x7a> + 8009ce8: 6b61 ldr r1, [r4, #52] ; 0x34 + 8009cea: b141 cbz r1, 8009cfe <__swsetup_r+0x6a> + 8009cec: f104 0344 add.w r3, r4, #68 ; 0x44 + 8009cf0: 4299 cmp r1, r3 + 8009cf2: d002 beq.n 8009cfa <__swsetup_r+0x66> + 8009cf4: 4630 mov r0, r6 + 8009cf6: f7fd fcc7 bl 8007688 <_free_r> + 8009cfa: 2300 movs r3, #0 + 8009cfc: 6363 str r3, [r4, #52] ; 0x34 + 8009cfe: 89a3 ldrh r3, [r4, #12] + 8009d00: f023 0324 bic.w r3, r3, #36 ; 0x24 + 8009d04: 81a3 strh r3, [r4, #12] + 8009d06: 2300 movs r3, #0 + 8009d08: 6063 str r3, [r4, #4] + 8009d0a: 6923 ldr r3, [r4, #16] + 8009d0c: 6023 str r3, [r4, #0] + 8009d0e: 89a3 ldrh r3, [r4, #12] + 8009d10: f043 0308 orr.w r3, r3, #8 + 8009d14: 81a3 strh r3, [r4, #12] + 8009d16: 6923 ldr r3, [r4, #16] + 8009d18: b94b cbnz r3, 8009d2e <__swsetup_r+0x9a> + 8009d1a: 89a3 ldrh r3, [r4, #12] + 8009d1c: f403 7320 and.w r3, r3, #640 ; 0x280 + 8009d20: f5b3 7f00 cmp.w r3, #512 ; 0x200 + 8009d24: d003 beq.n 8009d2e <__swsetup_r+0x9a> + 8009d26: 4621 mov r1, r4 + 8009d28: 4630 mov r0, r6 + 8009d2a: f000 fa05 bl 800a138 <__smakebuf_r> + 8009d2e: 89a0 ldrh r0, [r4, #12] + 8009d30: f9b4 200c ldrsh.w r2, [r4, #12] + 8009d34: f010 0301 ands.w r3, r0, #1 + 8009d38: d00a beq.n 8009d50 <__swsetup_r+0xbc> + 8009d3a: 2300 movs r3, #0 + 8009d3c: 60a3 str r3, [r4, #8] + 8009d3e: 6963 ldr r3, [r4, #20] + 8009d40: 425b negs r3, r3 + 8009d42: 61a3 str r3, [r4, #24] + 8009d44: 6923 ldr r3, [r4, #16] + 8009d46: b943 cbnz r3, 8009d5a <__swsetup_r+0xc6> + 8009d48: f010 0080 ands.w r0, r0, #128 ; 0x80 + 8009d4c: d1ba bne.n 8009cc4 <__swsetup_r+0x30> + 8009d4e: bd70 pop {r4, r5, r6, pc} + 8009d50: 0781 lsls r1, r0, #30 + 8009d52: bf58 it pl + 8009d54: 6963 ldrpl r3, [r4, #20] + 8009d56: 60a3 str r3, [r4, #8] + 8009d58: e7f4 b.n 8009d44 <__swsetup_r+0xb0> + 8009d5a: 2000 movs r0, #0 + 8009d5c: e7f7 b.n 8009d4e <__swsetup_r+0xba> + 8009d5e: bf00 nop + 8009d60: 20000014 .word 0x20000014 + 8009d64: 0800b2e4 .word 0x0800b2e4 + 8009d68: 0800b304 .word 0x0800b304 + 8009d6c: 0800b2c4 .word 0x0800b2c4 -08009c64 <_close_r>: - 8009c64: b538 push {r3, r4, r5, lr} - 8009c66: 2300 movs r3, #0 - 8009c68: 4d05 ldr r5, [pc, #20] ; (8009c80 <_close_r+0x1c>) - 8009c6a: 4604 mov r4, r0 - 8009c6c: 4608 mov r0, r1 - 8009c6e: 602b str r3, [r5, #0] - 8009c70: f7f7 fe70 bl 8001954 <_close> - 8009c74: 1c43 adds r3, r0, #1 - 8009c76: d102 bne.n 8009c7e <_close_r+0x1a> - 8009c78: 682b ldr r3, [r5, #0] - 8009c7a: b103 cbz r3, 8009c7e <_close_r+0x1a> - 8009c7c: 6023 str r3, [r4, #0] - 8009c7e: bd38 pop {r3, r4, r5, pc} - 8009c80: 200024ec .word 0x200024ec +08009d70 : + 8009d70: 2006 movs r0, #6 + 8009d72: b508 push {r3, lr} + 8009d74: f000 fa50 bl 800a218 + 8009d78: 2001 movs r0, #1 + 8009d7a: f7f7 fda8 bl 80018ce <_exit> + ... -08009c84 <_fstat_r>: - 8009c84: b538 push {r3, r4, r5, lr} - 8009c86: 2300 movs r3, #0 - 8009c88: 4d06 ldr r5, [pc, #24] ; (8009ca4 <_fstat_r+0x20>) - 8009c8a: 4604 mov r4, r0 - 8009c8c: 4608 mov r0, r1 - 8009c8e: 4611 mov r1, r2 - 8009c90: 602b str r3, [r5, #0] - 8009c92: f7f7 fe6a bl 800196a <_fstat> - 8009c96: 1c43 adds r3, r0, #1 - 8009c98: d102 bne.n 8009ca0 <_fstat_r+0x1c> - 8009c9a: 682b ldr r3, [r5, #0] - 8009c9c: b103 cbz r3, 8009ca0 <_fstat_r+0x1c> - 8009c9e: 6023 str r3, [r4, #0] - 8009ca0: bd38 pop {r3, r4, r5, pc} - 8009ca2: bf00 nop - 8009ca4: 200024ec .word 0x200024ec +08009d80 <__sflush_r>: + 8009d80: 898a ldrh r2, [r1, #12] + 8009d82: e92d 41f0 stmdb sp!, {r4, r5, r6, r7, r8, lr} + 8009d86: 4605 mov r5, r0 + 8009d88: 0710 lsls r0, r2, #28 + 8009d8a: 460c mov r4, r1 + 8009d8c: d458 bmi.n 8009e40 <__sflush_r+0xc0> + 8009d8e: 684b ldr r3, [r1, #4] + 8009d90: 2b00 cmp r3, #0 + 8009d92: dc05 bgt.n 8009da0 <__sflush_r+0x20> + 8009d94: 6c0b ldr r3, [r1, #64] ; 0x40 + 8009d96: 2b00 cmp r3, #0 + 8009d98: dc02 bgt.n 8009da0 <__sflush_r+0x20> + 8009d9a: 2000 movs r0, #0 + 8009d9c: e8bd 81f0 ldmia.w sp!, {r4, r5, r6, r7, r8, pc} + 8009da0: 6ae6 ldr r6, [r4, #44] ; 0x2c + 8009da2: 2e00 cmp r6, #0 + 8009da4: d0f9 beq.n 8009d9a <__sflush_r+0x1a> + 8009da6: 2300 movs r3, #0 + 8009da8: f412 5280 ands.w r2, r2, #4096 ; 0x1000 + 8009dac: 682f ldr r7, [r5, #0] + 8009dae: 602b str r3, [r5, #0] + 8009db0: d032 beq.n 8009e18 <__sflush_r+0x98> + 8009db2: 6d60 ldr r0, [r4, #84] ; 0x54 + 8009db4: 89a3 ldrh r3, [r4, #12] + 8009db6: 075a lsls r2, r3, #29 + 8009db8: d505 bpl.n 8009dc6 <__sflush_r+0x46> + 8009dba: 6863 ldr r3, [r4, #4] + 8009dbc: 1ac0 subs r0, r0, r3 + 8009dbe: 6b63 ldr r3, [r4, #52] ; 0x34 + 8009dc0: b10b cbz r3, 8009dc6 <__sflush_r+0x46> + 8009dc2: 6c23 ldr r3, [r4, #64] ; 0x40 + 8009dc4: 1ac0 subs r0, r0, r3 + 8009dc6: 2300 movs r3, #0 + 8009dc8: 4602 mov r2, r0 + 8009dca: 6ae6 ldr r6, [r4, #44] ; 0x2c + 8009dcc: 4628 mov r0, r5 + 8009dce: 6a21 ldr r1, [r4, #32] + 8009dd0: 47b0 blx r6 + 8009dd2: 1c43 adds r3, r0, #1 + 8009dd4: 89a3 ldrh r3, [r4, #12] + 8009dd6: d106 bne.n 8009de6 <__sflush_r+0x66> + 8009dd8: 6829 ldr r1, [r5, #0] + 8009dda: 291d cmp r1, #29 + 8009ddc: d82c bhi.n 8009e38 <__sflush_r+0xb8> + 8009dde: 4a2a ldr r2, [pc, #168] ; (8009e88 <__sflush_r+0x108>) + 8009de0: 40ca lsrs r2, r1 + 8009de2: 07d6 lsls r6, r2, #31 + 8009de4: d528 bpl.n 8009e38 <__sflush_r+0xb8> + 8009de6: 2200 movs r2, #0 + 8009de8: 6062 str r2, [r4, #4] + 8009dea: 6922 ldr r2, [r4, #16] + 8009dec: 04d9 lsls r1, r3, #19 + 8009dee: 6022 str r2, [r4, #0] + 8009df0: d504 bpl.n 8009dfc <__sflush_r+0x7c> + 8009df2: 1c42 adds r2, r0, #1 + 8009df4: d101 bne.n 8009dfa <__sflush_r+0x7a> + 8009df6: 682b ldr r3, [r5, #0] + 8009df8: b903 cbnz r3, 8009dfc <__sflush_r+0x7c> + 8009dfa: 6560 str r0, [r4, #84] ; 0x54 + 8009dfc: 6b61 ldr r1, [r4, #52] ; 0x34 + 8009dfe: 602f str r7, [r5, #0] + 8009e00: 2900 cmp r1, #0 + 8009e02: d0ca beq.n 8009d9a <__sflush_r+0x1a> + 8009e04: f104 0344 add.w r3, r4, #68 ; 0x44 + 8009e08: 4299 cmp r1, r3 + 8009e0a: d002 beq.n 8009e12 <__sflush_r+0x92> + 8009e0c: 4628 mov r0, r5 + 8009e0e: f7fd fc3b bl 8007688 <_free_r> + 8009e12: 2000 movs r0, #0 + 8009e14: 6360 str r0, [r4, #52] ; 0x34 + 8009e16: e7c1 b.n 8009d9c <__sflush_r+0x1c> + 8009e18: 6a21 ldr r1, [r4, #32] + 8009e1a: 2301 movs r3, #1 + 8009e1c: 4628 mov r0, r5 + 8009e1e: 47b0 blx r6 + 8009e20: 1c41 adds r1, r0, #1 + 8009e22: d1c7 bne.n 8009db4 <__sflush_r+0x34> + 8009e24: 682b ldr r3, [r5, #0] + 8009e26: 2b00 cmp r3, #0 + 8009e28: d0c4 beq.n 8009db4 <__sflush_r+0x34> + 8009e2a: 2b1d cmp r3, #29 + 8009e2c: d001 beq.n 8009e32 <__sflush_r+0xb2> + 8009e2e: 2b16 cmp r3, #22 + 8009e30: d101 bne.n 8009e36 <__sflush_r+0xb6> + 8009e32: 602f str r7, [r5, #0] + 8009e34: e7b1 b.n 8009d9a <__sflush_r+0x1a> + 8009e36: 89a3 ldrh r3, [r4, #12] + 8009e38: f043 0340 orr.w r3, r3, #64 ; 0x40 + 8009e3c: 81a3 strh r3, [r4, #12] + 8009e3e: e7ad b.n 8009d9c <__sflush_r+0x1c> + 8009e40: 690f ldr r7, [r1, #16] + 8009e42: 2f00 cmp r7, #0 + 8009e44: d0a9 beq.n 8009d9a <__sflush_r+0x1a> + 8009e46: 0793 lsls r3, r2, #30 + 8009e48: bf18 it ne + 8009e4a: 2300 movne r3, #0 + 8009e4c: 680e ldr r6, [r1, #0] + 8009e4e: bf08 it eq + 8009e50: 694b ldreq r3, [r1, #20] + 8009e52: eba6 0807 sub.w r8, r6, r7 + 8009e56: 600f str r7, [r1, #0] + 8009e58: 608b str r3, [r1, #8] + 8009e5a: f1b8 0f00 cmp.w r8, #0 + 8009e5e: dd9c ble.n 8009d9a <__sflush_r+0x1a> + 8009e60: 4643 mov r3, r8 + 8009e62: 463a mov r2, r7 + 8009e64: 4628 mov r0, r5 + 8009e66: 6a21 ldr r1, [r4, #32] + 8009e68: 6aa6 ldr r6, [r4, #40] ; 0x28 + 8009e6a: 47b0 blx r6 + 8009e6c: 2800 cmp r0, #0 + 8009e6e: dc06 bgt.n 8009e7e <__sflush_r+0xfe> + 8009e70: 89a3 ldrh r3, [r4, #12] + 8009e72: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff + 8009e76: f043 0340 orr.w r3, r3, #64 ; 0x40 + 8009e7a: 81a3 strh r3, [r4, #12] + 8009e7c: e78e b.n 8009d9c <__sflush_r+0x1c> + 8009e7e: 4407 add r7, r0 + 8009e80: eba8 0800 sub.w r8, r8, r0 + 8009e84: e7e9 b.n 8009e5a <__sflush_r+0xda> + 8009e86: bf00 nop + 8009e88: 20400001 .word 0x20400001 -08009ca8 <_isatty_r>: - 8009ca8: b538 push {r3, r4, r5, lr} - 8009caa: 2300 movs r3, #0 - 8009cac: 4d05 ldr r5, [pc, #20] ; (8009cc4 <_isatty_r+0x1c>) - 8009cae: 4604 mov r4, r0 - 8009cb0: 4608 mov r0, r1 - 8009cb2: 602b str r3, [r5, #0] - 8009cb4: f7f7 fe68 bl 8001988 <_isatty> - 8009cb8: 1c43 adds r3, r0, #1 - 8009cba: d102 bne.n 8009cc2 <_isatty_r+0x1a> - 8009cbc: 682b ldr r3, [r5, #0] - 8009cbe: b103 cbz r3, 8009cc2 <_isatty_r+0x1a> - 8009cc0: 6023 str r3, [r4, #0] - 8009cc2: bd38 pop {r3, r4, r5, pc} - 8009cc4: 200024ec .word 0x200024ec +08009e8c <_fflush_r>: + 8009e8c: b538 push {r3, r4, r5, lr} + 8009e8e: 690b ldr r3, [r1, #16] + 8009e90: 4605 mov r5, r0 + 8009e92: 460c mov r4, r1 + 8009e94: b913 cbnz r3, 8009e9c <_fflush_r+0x10> + 8009e96: 2500 movs r5, #0 + 8009e98: 4628 mov r0, r5 + 8009e9a: bd38 pop {r3, r4, r5, pc} + 8009e9c: b118 cbz r0, 8009ea6 <_fflush_r+0x1a> + 8009e9e: 6983 ldr r3, [r0, #24] + 8009ea0: b90b cbnz r3, 8009ea6 <_fflush_r+0x1a> + 8009ea2: f000 f887 bl 8009fb4 <__sinit> + 8009ea6: 4b14 ldr r3, [pc, #80] ; (8009ef8 <_fflush_r+0x6c>) + 8009ea8: 429c cmp r4, r3 + 8009eaa: d11b bne.n 8009ee4 <_fflush_r+0x58> + 8009eac: 686c ldr r4, [r5, #4] + 8009eae: f9b4 300c ldrsh.w r3, [r4, #12] + 8009eb2: 2b00 cmp r3, #0 + 8009eb4: d0ef beq.n 8009e96 <_fflush_r+0xa> + 8009eb6: 6e62 ldr r2, [r4, #100] ; 0x64 + 8009eb8: 07d0 lsls r0, r2, #31 + 8009eba: d404 bmi.n 8009ec6 <_fflush_r+0x3a> + 8009ebc: 0599 lsls r1, r3, #22 + 8009ebe: d402 bmi.n 8009ec6 <_fflush_r+0x3a> + 8009ec0: 6da0 ldr r0, [r4, #88] ; 0x58 + 8009ec2: f7ff fcdc bl 800987e <__retarget_lock_acquire_recursive> + 8009ec6: 4628 mov r0, r5 + 8009ec8: 4621 mov r1, r4 + 8009eca: f7ff ff59 bl 8009d80 <__sflush_r> + 8009ece: 6e63 ldr r3, [r4, #100] ; 0x64 + 8009ed0: 4605 mov r5, r0 + 8009ed2: 07da lsls r2, r3, #31 + 8009ed4: d4e0 bmi.n 8009e98 <_fflush_r+0xc> + 8009ed6: 89a3 ldrh r3, [r4, #12] + 8009ed8: 059b lsls r3, r3, #22 + 8009eda: d4dd bmi.n 8009e98 <_fflush_r+0xc> + 8009edc: 6da0 ldr r0, [r4, #88] ; 0x58 + 8009ede: f7ff fccf bl 8009880 <__retarget_lock_release_recursive> + 8009ee2: e7d9 b.n 8009e98 <_fflush_r+0xc> + 8009ee4: 4b05 ldr r3, [pc, #20] ; (8009efc <_fflush_r+0x70>) + 8009ee6: 429c cmp r4, r3 + 8009ee8: d101 bne.n 8009eee <_fflush_r+0x62> + 8009eea: 68ac ldr r4, [r5, #8] + 8009eec: e7df b.n 8009eae <_fflush_r+0x22> + 8009eee: 4b04 ldr r3, [pc, #16] ; (8009f00 <_fflush_r+0x74>) + 8009ef0: 429c cmp r4, r3 + 8009ef2: bf08 it eq + 8009ef4: 68ec ldreq r4, [r5, #12] + 8009ef6: e7da b.n 8009eae <_fflush_r+0x22> + 8009ef8: 0800b2e4 .word 0x0800b2e4 + 8009efc: 0800b304 .word 0x0800b304 + 8009f00: 0800b2c4 .word 0x0800b2c4 -08009cc8 <_lseek_r>: - 8009cc8: b538 push {r3, r4, r5, lr} - 8009cca: 4604 mov r4, r0 - 8009ccc: 4608 mov r0, r1 - 8009cce: 4611 mov r1, r2 - 8009cd0: 2200 movs r2, #0 - 8009cd2: 4d05 ldr r5, [pc, #20] ; (8009ce8 <_lseek_r+0x20>) - 8009cd4: 602a str r2, [r5, #0] - 8009cd6: 461a mov r2, r3 - 8009cd8: f7f7 fe60 bl 800199c <_lseek> - 8009cdc: 1c43 adds r3, r0, #1 - 8009cde: d102 bne.n 8009ce6 <_lseek_r+0x1e> - 8009ce0: 682b ldr r3, [r5, #0] - 8009ce2: b103 cbz r3, 8009ce6 <_lseek_r+0x1e> - 8009ce4: 6023 str r3, [r4, #0] - 8009ce6: bd38 pop {r3, r4, r5, pc} - 8009ce8: 200024ec .word 0x200024ec +08009f04 : + 8009f04: 2300 movs r3, #0 + 8009f06: b510 push {r4, lr} + 8009f08: 4604 mov r4, r0 + 8009f0a: e9c0 3300 strd r3, r3, [r0] + 8009f0e: e9c0 3304 strd r3, r3, [r0, #16] + 8009f12: 6083 str r3, [r0, #8] + 8009f14: 8181 strh r1, [r0, #12] + 8009f16: 6643 str r3, [r0, #100] ; 0x64 + 8009f18: 81c2 strh r2, [r0, #14] + 8009f1a: 6183 str r3, [r0, #24] + 8009f1c: 4619 mov r1, r3 + 8009f1e: 2208 movs r2, #8 + 8009f20: 305c adds r0, #92 ; 0x5c + 8009f22: f7fd fba9 bl 8007678 + 8009f26: 4b05 ldr r3, [pc, #20] ; (8009f3c ) + 8009f28: 6224 str r4, [r4, #32] + 8009f2a: 6263 str r3, [r4, #36] ; 0x24 + 8009f2c: 4b04 ldr r3, [pc, #16] ; (8009f40 ) + 8009f2e: 62a3 str r3, [r4, #40] ; 0x28 + 8009f30: 4b04 ldr r3, [pc, #16] ; (8009f44 ) + 8009f32: 62e3 str r3, [r4, #44] ; 0x2c + 8009f34: 4b04 ldr r3, [pc, #16] ; (8009f48 ) + 8009f36: 6323 str r3, [r4, #48] ; 0x30 + 8009f38: bd10 pop {r4, pc} + 8009f3a: bf00 nop + 8009f3c: 0800a251 .word 0x0800a251 + 8009f40: 0800a273 .word 0x0800a273 + 8009f44: 0800a2ab .word 0x0800a2ab + 8009f48: 0800a2cf .word 0x0800a2cf -08009cec <_read_r>: - 8009cec: b538 push {r3, r4, r5, lr} - 8009cee: 4604 mov r4, r0 - 8009cf0: 4608 mov r0, r1 - 8009cf2: 4611 mov r1, r2 - 8009cf4: 2200 movs r2, #0 - 8009cf6: 4d05 ldr r5, [pc, #20] ; (8009d0c <_read_r+0x20>) - 8009cf8: 602a str r2, [r5, #0] - 8009cfa: 461a mov r2, r3 - 8009cfc: f7f7 fdf1 bl 80018e2 <_read> - 8009d00: 1c43 adds r3, r0, #1 - 8009d02: d102 bne.n 8009d0a <_read_r+0x1e> - 8009d04: 682b ldr r3, [r5, #0] - 8009d06: b103 cbz r3, 8009d0a <_read_r+0x1e> - 8009d08: 6023 str r3, [r4, #0] - 8009d0a: bd38 pop {r3, r4, r5, pc} - 8009d0c: 200024ec .word 0x200024ec +08009f4c <_cleanup_r>: + 8009f4c: 4901 ldr r1, [pc, #4] ; (8009f54 <_cleanup_r+0x8>) + 8009f4e: f000 b8af b.w 800a0b0 <_fwalk_reent> + 8009f52: bf00 nop + 8009f54: 08009e8d .word 0x08009e8d -08009d10 <_init>: - 8009d10: b5f8 push {r3, r4, r5, r6, r7, lr} - 8009d12: bf00 nop - 8009d14: bcf8 pop {r3, r4, r5, r6, r7} - 8009d16: bc08 pop {r3} - 8009d18: 469e mov lr, r3 - 8009d1a: 4770 bx lr +08009f58 <__sfmoreglue>: + 8009f58: b570 push {r4, r5, r6, lr} + 8009f5a: 2568 movs r5, #104 ; 0x68 + 8009f5c: 1e4a subs r2, r1, #1 + 8009f5e: 4355 muls r5, r2 + 8009f60: 460e mov r6, r1 + 8009f62: f105 0174 add.w r1, r5, #116 ; 0x74 + 8009f66: f7fd fbdb bl 8007720 <_malloc_r> + 8009f6a: 4604 mov r4, r0 + 8009f6c: b140 cbz r0, 8009f80 <__sfmoreglue+0x28> + 8009f6e: 2100 movs r1, #0 + 8009f70: e9c0 1600 strd r1, r6, [r0] + 8009f74: 300c adds r0, #12 + 8009f76: 60a0 str r0, [r4, #8] + 8009f78: f105 0268 add.w r2, r5, #104 ; 0x68 + 8009f7c: f7fd fb7c bl 8007678 + 8009f80: 4620 mov r0, r4 + 8009f82: bd70 pop {r4, r5, r6, pc} -08009d1c <_fini>: - 8009d1c: b5f8 push {r3, r4, r5, r6, r7, lr} - 8009d1e: bf00 nop - 8009d20: bcf8 pop {r3, r4, r5, r6, r7} - 8009d22: bc08 pop {r3} - 8009d24: 469e mov lr, r3 - 8009d26: 4770 bx lr +08009f84 <__sfp_lock_acquire>: + 8009f84: 4801 ldr r0, [pc, #4] ; (8009f8c <__sfp_lock_acquire+0x8>) + 8009f86: f7ff bc7a b.w 800987e <__retarget_lock_acquire_recursive> + 8009f8a: bf00 nop + 8009f8c: 20002540 .word 0x20002540 + +08009f90 <__sfp_lock_release>: + 8009f90: 4801 ldr r0, [pc, #4] ; (8009f98 <__sfp_lock_release+0x8>) + 8009f92: f7ff bc75 b.w 8009880 <__retarget_lock_release_recursive> + 8009f96: bf00 nop + 8009f98: 20002540 .word 0x20002540 + +08009f9c <__sinit_lock_acquire>: + 8009f9c: 4801 ldr r0, [pc, #4] ; (8009fa4 <__sinit_lock_acquire+0x8>) + 8009f9e: f7ff bc6e b.w 800987e <__retarget_lock_acquire_recursive> + 8009fa2: bf00 nop + 8009fa4: 2000253b .word 0x2000253b + +08009fa8 <__sinit_lock_release>: + 8009fa8: 4801 ldr r0, [pc, #4] ; (8009fb0 <__sinit_lock_release+0x8>) + 8009faa: f7ff bc69 b.w 8009880 <__retarget_lock_release_recursive> + 8009fae: bf00 nop + 8009fb0: 2000253b .word 0x2000253b + +08009fb4 <__sinit>: + 8009fb4: b510 push {r4, lr} + 8009fb6: 4604 mov r4, r0 + 8009fb8: f7ff fff0 bl 8009f9c <__sinit_lock_acquire> + 8009fbc: 69a3 ldr r3, [r4, #24] + 8009fbe: b11b cbz r3, 8009fc8 <__sinit+0x14> + 8009fc0: e8bd 4010 ldmia.w sp!, {r4, lr} + 8009fc4: f7ff bff0 b.w 8009fa8 <__sinit_lock_release> + 8009fc8: e9c4 3312 strd r3, r3, [r4, #72] ; 0x48 + 8009fcc: 6523 str r3, [r4, #80] ; 0x50 + 8009fce: 4b13 ldr r3, [pc, #76] ; (800a01c <__sinit+0x68>) + 8009fd0: 4a13 ldr r2, [pc, #76] ; (800a020 <__sinit+0x6c>) + 8009fd2: 681b ldr r3, [r3, #0] + 8009fd4: 62a2 str r2, [r4, #40] ; 0x28 + 8009fd6: 42a3 cmp r3, r4 + 8009fd8: bf08 it eq + 8009fda: 2301 moveq r3, #1 + 8009fdc: 4620 mov r0, r4 + 8009fde: bf08 it eq + 8009fe0: 61a3 streq r3, [r4, #24] + 8009fe2: f000 f81f bl 800a024 <__sfp> + 8009fe6: 6060 str r0, [r4, #4] + 8009fe8: 4620 mov r0, r4 + 8009fea: f000 f81b bl 800a024 <__sfp> + 8009fee: 60a0 str r0, [r4, #8] + 8009ff0: 4620 mov r0, r4 + 8009ff2: f000 f817 bl 800a024 <__sfp> + 8009ff6: 2200 movs r2, #0 + 8009ff8: 2104 movs r1, #4 + 8009ffa: 60e0 str r0, [r4, #12] + 8009ffc: 6860 ldr r0, [r4, #4] + 8009ffe: f7ff ff81 bl 8009f04 + 800a002: 2201 movs r2, #1 + 800a004: 2109 movs r1, #9 + 800a006: 68a0 ldr r0, [r4, #8] + 800a008: f7ff ff7c bl 8009f04 + 800a00c: 2202 movs r2, #2 + 800a00e: 2112 movs r1, #18 + 800a010: 68e0 ldr r0, [r4, #12] + 800a012: f7ff ff77 bl 8009f04 + 800a016: 2301 movs r3, #1 + 800a018: 61a3 str r3, [r4, #24] + 800a01a: e7d1 b.n 8009fc0 <__sinit+0xc> + 800a01c: 0800af44 .word 0x0800af44 + 800a020: 08009f4d .word 0x08009f4d + +0800a024 <__sfp>: + 800a024: b5f8 push {r3, r4, r5, r6, r7, lr} + 800a026: 4607 mov r7, r0 + 800a028: f7ff ffac bl 8009f84 <__sfp_lock_acquire> + 800a02c: 4b1e ldr r3, [pc, #120] ; (800a0a8 <__sfp+0x84>) + 800a02e: 681e ldr r6, [r3, #0] + 800a030: 69b3 ldr r3, [r6, #24] + 800a032: b913 cbnz r3, 800a03a <__sfp+0x16> + 800a034: 4630 mov r0, r6 + 800a036: f7ff ffbd bl 8009fb4 <__sinit> + 800a03a: 3648 adds r6, #72 ; 0x48 + 800a03c: e9d6 3401 ldrd r3, r4, [r6, #4] + 800a040: 3b01 subs r3, #1 + 800a042: d503 bpl.n 800a04c <__sfp+0x28> + 800a044: 6833 ldr r3, [r6, #0] + 800a046: b30b cbz r3, 800a08c <__sfp+0x68> + 800a048: 6836 ldr r6, [r6, #0] + 800a04a: e7f7 b.n 800a03c <__sfp+0x18> + 800a04c: f9b4 500c ldrsh.w r5, [r4, #12] + 800a050: b9d5 cbnz r5, 800a088 <__sfp+0x64> + 800a052: 4b16 ldr r3, [pc, #88] ; (800a0ac <__sfp+0x88>) + 800a054: f104 0058 add.w r0, r4, #88 ; 0x58 + 800a058: 60e3 str r3, [r4, #12] + 800a05a: 6665 str r5, [r4, #100] ; 0x64 + 800a05c: f7ff fc0e bl 800987c <__retarget_lock_init_recursive> + 800a060: f7ff ff96 bl 8009f90 <__sfp_lock_release> + 800a064: 2208 movs r2, #8 + 800a066: 4629 mov r1, r5 + 800a068: e9c4 5501 strd r5, r5, [r4, #4] + 800a06c: e9c4 5504 strd r5, r5, [r4, #16] + 800a070: 6025 str r5, [r4, #0] + 800a072: 61a5 str r5, [r4, #24] + 800a074: f104 005c add.w r0, r4, #92 ; 0x5c + 800a078: f7fd fafe bl 8007678 + 800a07c: e9c4 550d strd r5, r5, [r4, #52] ; 0x34 + 800a080: e9c4 5512 strd r5, r5, [r4, #72] ; 0x48 + 800a084: 4620 mov r0, r4 + 800a086: bdf8 pop {r3, r4, r5, r6, r7, pc} + 800a088: 3468 adds r4, #104 ; 0x68 + 800a08a: e7d9 b.n 800a040 <__sfp+0x1c> + 800a08c: 2104 movs r1, #4 + 800a08e: 4638 mov r0, r7 + 800a090: f7ff ff62 bl 8009f58 <__sfmoreglue> + 800a094: 4604 mov r4, r0 + 800a096: 6030 str r0, [r6, #0] + 800a098: 2800 cmp r0, #0 + 800a09a: d1d5 bne.n 800a048 <__sfp+0x24> + 800a09c: f7ff ff78 bl 8009f90 <__sfp_lock_release> + 800a0a0: 230c movs r3, #12 + 800a0a2: 603b str r3, [r7, #0] + 800a0a4: e7ee b.n 800a084 <__sfp+0x60> + 800a0a6: bf00 nop + 800a0a8: 0800af44 .word 0x0800af44 + 800a0ac: ffff0001 .word 0xffff0001 + +0800a0b0 <_fwalk_reent>: + 800a0b0: e92d 43f8 stmdb sp!, {r3, r4, r5, r6, r7, r8, r9, lr} + 800a0b4: 4606 mov r6, r0 + 800a0b6: 4688 mov r8, r1 + 800a0b8: 2700 movs r7, #0 + 800a0ba: f100 0448 add.w r4, r0, #72 ; 0x48 + 800a0be: e9d4 9501 ldrd r9, r5, [r4, #4] + 800a0c2: f1b9 0901 subs.w r9, r9, #1 + 800a0c6: d505 bpl.n 800a0d4 <_fwalk_reent+0x24> + 800a0c8: 6824 ldr r4, [r4, #0] + 800a0ca: 2c00 cmp r4, #0 + 800a0cc: d1f7 bne.n 800a0be <_fwalk_reent+0xe> + 800a0ce: 4638 mov r0, r7 + 800a0d0: e8bd 83f8 ldmia.w sp!, {r3, r4, r5, r6, r7, r8, r9, pc} + 800a0d4: 89ab ldrh r3, [r5, #12] + 800a0d6: 2b01 cmp r3, #1 + 800a0d8: d907 bls.n 800a0ea <_fwalk_reent+0x3a> + 800a0da: f9b5 300e ldrsh.w r3, [r5, #14] + 800a0de: 3301 adds r3, #1 + 800a0e0: d003 beq.n 800a0ea <_fwalk_reent+0x3a> + 800a0e2: 4629 mov r1, r5 + 800a0e4: 4630 mov r0, r6 + 800a0e6: 47c0 blx r8 + 800a0e8: 4307 orrs r7, r0 + 800a0ea: 3568 adds r5, #104 ; 0x68 + 800a0ec: e7e9 b.n 800a0c2 <_fwalk_reent+0x12> + +0800a0ee <__swhatbuf_r>: + 800a0ee: b570 push {r4, r5, r6, lr} + 800a0f0: 460e mov r6, r1 + 800a0f2: f9b1 100e ldrsh.w r1, [r1, #14] + 800a0f6: 4614 mov r4, r2 + 800a0f8: 2900 cmp r1, #0 + 800a0fa: 461d mov r5, r3 + 800a0fc: b096 sub sp, #88 ; 0x58 + 800a0fe: da07 bge.n 800a110 <__swhatbuf_r+0x22> + 800a100: 2300 movs r3, #0 + 800a102: 602b str r3, [r5, #0] + 800a104: 89b3 ldrh r3, [r6, #12] + 800a106: 061a lsls r2, r3, #24 + 800a108: d410 bmi.n 800a12c <__swhatbuf_r+0x3e> + 800a10a: f44f 6380 mov.w r3, #1024 ; 0x400 + 800a10e: e00e b.n 800a12e <__swhatbuf_r+0x40> + 800a110: 466a mov r2, sp + 800a112: f000 f903 bl 800a31c <_fstat_r> + 800a116: 2800 cmp r0, #0 + 800a118: dbf2 blt.n 800a100 <__swhatbuf_r+0x12> + 800a11a: 9a01 ldr r2, [sp, #4] + 800a11c: f402 4270 and.w r2, r2, #61440 ; 0xf000 + 800a120: f5a2 5300 sub.w r3, r2, #8192 ; 0x2000 + 800a124: 425a negs r2, r3 + 800a126: 415a adcs r2, r3 + 800a128: 602a str r2, [r5, #0] + 800a12a: e7ee b.n 800a10a <__swhatbuf_r+0x1c> + 800a12c: 2340 movs r3, #64 ; 0x40 + 800a12e: 2000 movs r0, #0 + 800a130: 6023 str r3, [r4, #0] + 800a132: b016 add sp, #88 ; 0x58 + 800a134: bd70 pop {r4, r5, r6, pc} + ... + +0800a138 <__smakebuf_r>: + 800a138: 898b ldrh r3, [r1, #12] + 800a13a: b573 push {r0, r1, r4, r5, r6, lr} + 800a13c: 079d lsls r5, r3, #30 + 800a13e: 4606 mov r6, r0 + 800a140: 460c mov r4, r1 + 800a142: d507 bpl.n 800a154 <__smakebuf_r+0x1c> + 800a144: f104 0347 add.w r3, r4, #71 ; 0x47 + 800a148: 6023 str r3, [r4, #0] + 800a14a: 6123 str r3, [r4, #16] + 800a14c: 2301 movs r3, #1 + 800a14e: 6163 str r3, [r4, #20] + 800a150: b002 add sp, #8 + 800a152: bd70 pop {r4, r5, r6, pc} + 800a154: 466a mov r2, sp + 800a156: ab01 add r3, sp, #4 + 800a158: f7ff ffc9 bl 800a0ee <__swhatbuf_r> + 800a15c: 9900 ldr r1, [sp, #0] + 800a15e: 4605 mov r5, r0 + 800a160: 4630 mov r0, r6 + 800a162: f7fd fadd bl 8007720 <_malloc_r> + 800a166: b948 cbnz r0, 800a17c <__smakebuf_r+0x44> + 800a168: f9b4 300c ldrsh.w r3, [r4, #12] + 800a16c: 059a lsls r2, r3, #22 + 800a16e: d4ef bmi.n 800a150 <__smakebuf_r+0x18> + 800a170: f023 0303 bic.w r3, r3, #3 + 800a174: f043 0302 orr.w r3, r3, #2 + 800a178: 81a3 strh r3, [r4, #12] + 800a17a: e7e3 b.n 800a144 <__smakebuf_r+0xc> + 800a17c: 4b0d ldr r3, [pc, #52] ; (800a1b4 <__smakebuf_r+0x7c>) + 800a17e: 62b3 str r3, [r6, #40] ; 0x28 + 800a180: 89a3 ldrh r3, [r4, #12] + 800a182: 6020 str r0, [r4, #0] + 800a184: f043 0380 orr.w r3, r3, #128 ; 0x80 + 800a188: 81a3 strh r3, [r4, #12] + 800a18a: 9b00 ldr r3, [sp, #0] + 800a18c: 6120 str r0, [r4, #16] + 800a18e: 6163 str r3, [r4, #20] + 800a190: 9b01 ldr r3, [sp, #4] + 800a192: b15b cbz r3, 800a1ac <__smakebuf_r+0x74> + 800a194: 4630 mov r0, r6 + 800a196: f9b4 100e ldrsh.w r1, [r4, #14] + 800a19a: f000 f8d1 bl 800a340 <_isatty_r> + 800a19e: b128 cbz r0, 800a1ac <__smakebuf_r+0x74> + 800a1a0: 89a3 ldrh r3, [r4, #12] + 800a1a2: f023 0303 bic.w r3, r3, #3 + 800a1a6: f043 0301 orr.w r3, r3, #1 + 800a1aa: 81a3 strh r3, [r4, #12] + 800a1ac: 89a0 ldrh r0, [r4, #12] + 800a1ae: 4305 orrs r5, r0 + 800a1b0: 81a5 strh r5, [r4, #12] + 800a1b2: e7cd b.n 800a150 <__smakebuf_r+0x18> + 800a1b4: 08009f4d .word 0x08009f4d + +0800a1b8 <_malloc_usable_size_r>: + 800a1b8: f851 3c04 ldr.w r3, [r1, #-4] + 800a1bc: 1f18 subs r0, r3, #4 + 800a1be: 2b00 cmp r3, #0 + 800a1c0: bfbc itt lt + 800a1c2: 580b ldrlt r3, [r1, r0] + 800a1c4: 18c0 addlt r0, r0, r3 + 800a1c6: 4770 bx lr + +0800a1c8 <_raise_r>: + 800a1c8: 291f cmp r1, #31 + 800a1ca: b538 push {r3, r4, r5, lr} + 800a1cc: 4604 mov r4, r0 + 800a1ce: 460d mov r5, r1 + 800a1d0: d904 bls.n 800a1dc <_raise_r+0x14> + 800a1d2: 2316 movs r3, #22 + 800a1d4: 6003 str r3, [r0, #0] + 800a1d6: f04f 30ff mov.w r0, #4294967295 ; 0xffffffff + 800a1da: bd38 pop {r3, r4, r5, pc} + 800a1dc: 6c42 ldr r2, [r0, #68] ; 0x44 + 800a1de: b112 cbz r2, 800a1e6 <_raise_r+0x1e> + 800a1e0: f852 3021 ldr.w r3, [r2, r1, lsl #2] + 800a1e4: b94b cbnz r3, 800a1fa <_raise_r+0x32> + 800a1e6: 4620 mov r0, r4 + 800a1e8: f000 f830 bl 800a24c <_getpid_r> + 800a1ec: 462a mov r2, r5 + 800a1ee: 4601 mov r1, r0 + 800a1f0: 4620 mov r0, r4 + 800a1f2: e8bd 4038 ldmia.w sp!, {r3, r4, r5, lr} + 800a1f6: f000 b817 b.w 800a228 <_kill_r> + 800a1fa: 2b01 cmp r3, #1 + 800a1fc: d00a beq.n 800a214 <_raise_r+0x4c> + 800a1fe: 1c59 adds r1, r3, #1 + 800a200: d103 bne.n 800a20a <_raise_r+0x42> + 800a202: 2316 movs r3, #22 + 800a204: 6003 str r3, [r0, #0] + 800a206: 2001 movs r0, #1 + 800a208: e7e7 b.n 800a1da <_raise_r+0x12> + 800a20a: 2400 movs r4, #0 + 800a20c: 4628 mov r0, r5 + 800a20e: f842 4025 str.w r4, [r2, r5, lsl #2] + 800a212: 4798 blx r3 + 800a214: 2000 movs r0, #0 + 800a216: e7e0 b.n 800a1da <_raise_r+0x12> + +0800a218 : + 800a218: 4b02 ldr r3, [pc, #8] ; (800a224 ) + 800a21a: 4601 mov r1, r0 + 800a21c: 6818 ldr r0, [r3, #0] + 800a21e: f7ff bfd3 b.w 800a1c8 <_raise_r> + 800a222: bf00 nop + 800a224: 20000014 .word 0x20000014 + +0800a228 <_kill_r>: + 800a228: b538 push {r3, r4, r5, lr} + 800a22a: 2300 movs r3, #0 + 800a22c: 4d06 ldr r5, [pc, #24] ; (800a248 <_kill_r+0x20>) + 800a22e: 4604 mov r4, r0 + 800a230: 4608 mov r0, r1 + 800a232: 4611 mov r1, r2 + 800a234: 602b str r3, [r5, #0] + 800a236: f7f7 fb3a bl 80018ae <_kill> + 800a23a: 1c43 adds r3, r0, #1 + 800a23c: d102 bne.n 800a244 <_kill_r+0x1c> + 800a23e: 682b ldr r3, [r5, #0] + 800a240: b103 cbz r3, 800a244 <_kill_r+0x1c> + 800a242: 6023 str r3, [r4, #0] + 800a244: bd38 pop {r3, r4, r5, pc} + 800a246: bf00 nop + 800a248: 20002534 .word 0x20002534 + +0800a24c <_getpid_r>: + 800a24c: f7f7 bb28 b.w 80018a0 <_getpid> + +0800a250 <__sread>: + 800a250: b510 push {r4, lr} + 800a252: 460c mov r4, r1 + 800a254: f9b1 100e ldrsh.w r1, [r1, #14] + 800a258: f000 f894 bl 800a384 <_read_r> + 800a25c: 2800 cmp r0, #0 + 800a25e: bfab itete ge + 800a260: 6d63 ldrge r3, [r4, #84] ; 0x54 + 800a262: 89a3 ldrhlt r3, [r4, #12] + 800a264: 181b addge r3, r3, r0 + 800a266: f423 5380 biclt.w r3, r3, #4096 ; 0x1000 + 800a26a: bfac ite ge + 800a26c: 6563 strge r3, [r4, #84] ; 0x54 + 800a26e: 81a3 strhlt r3, [r4, #12] + 800a270: bd10 pop {r4, pc} + +0800a272 <__swrite>: + 800a272: e92d 41f0 stmdb sp!, {r4, r5, r6, r7, r8, lr} + 800a276: 461f mov r7, r3 + 800a278: 898b ldrh r3, [r1, #12] + 800a27a: 4605 mov r5, r0 + 800a27c: 05db lsls r3, r3, #23 + 800a27e: 460c mov r4, r1 + 800a280: 4616 mov r6, r2 + 800a282: d505 bpl.n 800a290 <__swrite+0x1e> + 800a284: 2302 movs r3, #2 + 800a286: 2200 movs r2, #0 + 800a288: f9b1 100e ldrsh.w r1, [r1, #14] + 800a28c: f000 f868 bl 800a360 <_lseek_r> + 800a290: 89a3 ldrh r3, [r4, #12] + 800a292: 4632 mov r2, r6 + 800a294: f423 5380 bic.w r3, r3, #4096 ; 0x1000 + 800a298: 81a3 strh r3, [r4, #12] + 800a29a: 4628 mov r0, r5 + 800a29c: 463b mov r3, r7 + 800a29e: f9b4 100e ldrsh.w r1, [r4, #14] + 800a2a2: e8bd 41f0 ldmia.w sp!, {r4, r5, r6, r7, r8, lr} + 800a2a6: f000 b817 b.w 800a2d8 <_write_r> + +0800a2aa <__sseek>: + 800a2aa: b510 push {r4, lr} + 800a2ac: 460c mov r4, r1 + 800a2ae: f9b1 100e ldrsh.w r1, [r1, #14] + 800a2b2: f000 f855 bl 800a360 <_lseek_r> + 800a2b6: 1c43 adds r3, r0, #1 + 800a2b8: 89a3 ldrh r3, [r4, #12] + 800a2ba: bf15 itete ne + 800a2bc: 6560 strne r0, [r4, #84] ; 0x54 + 800a2be: f423 5380 biceq.w r3, r3, #4096 ; 0x1000 + 800a2c2: f443 5380 orrne.w r3, r3, #4096 ; 0x1000 + 800a2c6: 81a3 strheq r3, [r4, #12] + 800a2c8: bf18 it ne + 800a2ca: 81a3 strhne r3, [r4, #12] + 800a2cc: bd10 pop {r4, pc} + +0800a2ce <__sclose>: + 800a2ce: f9b1 100e ldrsh.w r1, [r1, #14] + 800a2d2: f000 b813 b.w 800a2fc <_close_r> + ... + +0800a2d8 <_write_r>: + 800a2d8: b538 push {r3, r4, r5, lr} + 800a2da: 4604 mov r4, r0 + 800a2dc: 4608 mov r0, r1 + 800a2de: 4611 mov r1, r2 + 800a2e0: 2200 movs r2, #0 + 800a2e2: 4d05 ldr r5, [pc, #20] ; (800a2f8 <_write_r+0x20>) + 800a2e4: 602a str r2, [r5, #0] + 800a2e6: 461a mov r2, r3 + 800a2e8: f7f7 fb18 bl 800191c <_write> + 800a2ec: 1c43 adds r3, r0, #1 + 800a2ee: d102 bne.n 800a2f6 <_write_r+0x1e> + 800a2f0: 682b ldr r3, [r5, #0] + 800a2f2: b103 cbz r3, 800a2f6 <_write_r+0x1e> + 800a2f4: 6023 str r3, [r4, #0] + 800a2f6: bd38 pop {r3, r4, r5, pc} + 800a2f8: 20002534 .word 0x20002534 + +0800a2fc <_close_r>: + 800a2fc: b538 push {r3, r4, r5, lr} + 800a2fe: 2300 movs r3, #0 + 800a300: 4d05 ldr r5, [pc, #20] ; (800a318 <_close_r+0x1c>) + 800a302: 4604 mov r4, r0 + 800a304: 4608 mov r0, r1 + 800a306: 602b str r3, [r5, #0] + 800a308: f7f7 fb24 bl 8001954 <_close> + 800a30c: 1c43 adds r3, r0, #1 + 800a30e: d102 bne.n 800a316 <_close_r+0x1a> + 800a310: 682b ldr r3, [r5, #0] + 800a312: b103 cbz r3, 800a316 <_close_r+0x1a> + 800a314: 6023 str r3, [r4, #0] + 800a316: bd38 pop {r3, r4, r5, pc} + 800a318: 20002534 .word 0x20002534 + +0800a31c <_fstat_r>: + 800a31c: b538 push {r3, r4, r5, lr} + 800a31e: 2300 movs r3, #0 + 800a320: 4d06 ldr r5, [pc, #24] ; (800a33c <_fstat_r+0x20>) + 800a322: 4604 mov r4, r0 + 800a324: 4608 mov r0, r1 + 800a326: 4611 mov r1, r2 + 800a328: 602b str r3, [r5, #0] + 800a32a: f7f7 fb1e bl 800196a <_fstat> + 800a32e: 1c43 adds r3, r0, #1 + 800a330: d102 bne.n 800a338 <_fstat_r+0x1c> + 800a332: 682b ldr r3, [r5, #0] + 800a334: b103 cbz r3, 800a338 <_fstat_r+0x1c> + 800a336: 6023 str r3, [r4, #0] + 800a338: bd38 pop {r3, r4, r5, pc} + 800a33a: bf00 nop + 800a33c: 20002534 .word 0x20002534 + +0800a340 <_isatty_r>: + 800a340: b538 push {r3, r4, r5, lr} + 800a342: 2300 movs r3, #0 + 800a344: 4d05 ldr r5, [pc, #20] ; (800a35c <_isatty_r+0x1c>) + 800a346: 4604 mov r4, r0 + 800a348: 4608 mov r0, r1 + 800a34a: 602b str r3, [r5, #0] + 800a34c: f7f7 fb1c bl 8001988 <_isatty> + 800a350: 1c43 adds r3, r0, #1 + 800a352: d102 bne.n 800a35a <_isatty_r+0x1a> + 800a354: 682b ldr r3, [r5, #0] + 800a356: b103 cbz r3, 800a35a <_isatty_r+0x1a> + 800a358: 6023 str r3, [r4, #0] + 800a35a: bd38 pop {r3, r4, r5, pc} + 800a35c: 20002534 .word 0x20002534 + +0800a360 <_lseek_r>: + 800a360: b538 push {r3, r4, r5, lr} + 800a362: 4604 mov r4, r0 + 800a364: 4608 mov r0, r1 + 800a366: 4611 mov r1, r2 + 800a368: 2200 movs r2, #0 + 800a36a: 4d05 ldr r5, [pc, #20] ; (800a380 <_lseek_r+0x20>) + 800a36c: 602a str r2, [r5, #0] + 800a36e: 461a mov r2, r3 + 800a370: f7f7 fb14 bl 800199c <_lseek> + 800a374: 1c43 adds r3, r0, #1 + 800a376: d102 bne.n 800a37e <_lseek_r+0x1e> + 800a378: 682b ldr r3, [r5, #0] + 800a37a: b103 cbz r3, 800a37e <_lseek_r+0x1e> + 800a37c: 6023 str r3, [r4, #0] + 800a37e: bd38 pop {r3, r4, r5, pc} + 800a380: 20002534 .word 0x20002534 + +0800a384 <_read_r>: + 800a384: b538 push {r3, r4, r5, lr} + 800a386: 4604 mov r4, r0 + 800a388: 4608 mov r0, r1 + 800a38a: 4611 mov r1, r2 + 800a38c: 2200 movs r2, #0 + 800a38e: 4d05 ldr r5, [pc, #20] ; (800a3a4 <_read_r+0x20>) + 800a390: 602a str r2, [r5, #0] + 800a392: 461a mov r2, r3 + 800a394: f7f7 faa5 bl 80018e2 <_read> + 800a398: 1c43 adds r3, r0, #1 + 800a39a: d102 bne.n 800a3a2 <_read_r+0x1e> + 800a39c: 682b ldr r3, [r5, #0] + 800a39e: b103 cbz r3, 800a3a2 <_read_r+0x1e> + 800a3a0: 6023 str r3, [r4, #0] + 800a3a2: bd38 pop {r3, r4, r5, pc} + 800a3a4: 20002534 .word 0x20002534 + +0800a3a8 <_init>: + 800a3a8: b5f8 push {r3, r4, r5, r6, r7, lr} + 800a3aa: bf00 nop + 800a3ac: bcf8 pop {r3, r4, r5, r6, r7} + 800a3ae: bc08 pop {r3} + 800a3b0: 469e mov lr, r3 + 800a3b2: 4770 bx lr + +0800a3b4 <_fini>: + 800a3b4: b5f8 push {r3, r4, r5, r6, r7, lr} + 800a3b6: bf00 nop + 800a3b8: bcf8 pop {r3, r4, r5, r6, r7} + 800a3ba: bc08 pop {r3} + 800a3bc: 469e mov lr, r3 + 800a3be: 4770 bx lr diff --git a/Debug/m3s.map b/Debug/m3s.map index 6c4bc70..8070c5c 100644 --- a/Debug/m3s.map +++ b/Debug/m3s.map @@ -142,6 +142,7 @@ blood_str 0x40 ./SW_APPs/APP_blood.o run_loop 0x8 ./SW_APPs/Main_APP.o __lock___atexit_recursive_mutex 0x1 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) +RFID 0x10 ./SW_APPs/APP_IDcard.o __lock___arc4random_mutex 0x1 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) errno 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-reent.o) @@ -157,13 +158,16 @@ __lock___sinit_recursive_mutex blood_win 0x4 ./SW_APPs/APP_blood.o hsram1 0x48 ./Core/Src/main.o s1 0x1080 ./SW_APPs/APP_blood.o +idcard_str 0x20 ./SW_APPs/APP_IDcard.o __lock___malloc_recursive_mutex 0x1 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) idcard_window 0x4 ./SW_APPs/APP_IDcard.o eeprom_write_buffer 0x14 ./HW_Devices/eeprom.o +CT 0x2 ./SW_APPs/APP_IDcard.o htim6 0x48 ./Core/Src/main.o lcddev 0xa ./HW_Devices/LCD.o +SN 0x4 ./SW_APPs/APP_IDcard.o s2 0x1080 ./SW_APPs/APP_blood.o t0 0x10 ./HW_Devices/touch.o hspi1 0x58 ./Core/Src/main.o @@ -174,6 +178,7 @@ __lock___dd_hash_mutex 0x1 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) __lock___tz_mutex 0x1 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) fifo_red 0x2 ./SW_APPs/APP_blood.o +status 0x1 ./SW_APPs/APP_IDcard.o __lock___sfp_recursive_mutex 0x1 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) @@ -3198,21 +3203,10 @@ Discarded input sections .bss 0x0000000000000000 0x0 ./HW_Devices/rs522.o .text.PcdAntennaOff 0x0000000000000000 0x10 ./HW_Devices/rs522.o - .text.PcdComMF522 - 0x0000000000000000 0x1a2 ./HW_Devices/rs522.o - .text.PcdRequest - 0x0000000000000000 0x6e ./HW_Devices/rs522.o - .text.PcdAnticoll - 0x0000000000000000 0xce ./HW_Devices/rs522.o - .text.CalulateCRC - 0x0000000000000000 0x9a ./HW_Devices/rs522.o .text.PcdSelect 0x0000000000000000 0xa2 ./HW_Devices/rs522.o - .text.PcdAuthState - 0x0000000000000000 0xca ./HW_Devices/rs522.o .text.PcdWrite 0x0000000000000000 0xdc ./HW_Devices/rs522.o - .text.PcdRead 0x0000000000000000 0x84 ./HW_Devices/rs522.o .text.PcdHalt 0x0000000000000000 0x38 ./HW_Devices/rs522.o .text.IC_CMT 0x0000000000000000 0x60 ./HW_Devices/rs522.o .debug_macro 0x0000000000000000 0xa9c ./HW_Devices/rs522.o @@ -3383,6 +3377,7 @@ Discarded input sections .text 0x0000000000000000 0x0 ./SW_APPs/APP_IDcard.o .data 0x0000000000000000 0x0 ./SW_APPs/APP_IDcard.o .bss 0x0000000000000000 0x0 ./SW_APPs/APP_IDcard.o + .data.s 0x0000000000000000 0x1 ./SW_APPs/APP_IDcard.o .debug_macro 0x0000000000000000 0xa9c ./SW_APPs/APP_IDcard.o .debug_macro 0x0000000000000000 0x227 ./SW_APPs/APP_IDcard.o .debug_macro 0x0000000000000000 0x2e ./SW_APPs/APP_IDcard.o @@ -4137,7 +4132,7 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id 0x0000000008000000 g_pfnVectors 0x00000000080001e4 . = ALIGN (0x4) -.text 0x00000000080001e8 0x9b40 +.text 0x00000000080001e8 0xa1d8 0x00000000080001e8 . = ALIGN (0x4) *(.text) .text 0x00000000080001e8 0x40 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o @@ -4605,431 +4600,449 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .text.M500PcdConfigISOType 0x0000000008005bf6 0x62 ./HW_Devices/rs522.o 0x0000000008005bf6 M500PcdConfigISOType + .text.PcdComMF522 + 0x0000000008005c58 0x1a2 ./HW_Devices/rs522.o + 0x0000000008005c58 PcdComMF522 + .text.PcdRequest + 0x0000000008005dfa 0x6e ./HW_Devices/rs522.o + 0x0000000008005dfa PcdRequest + .text.PcdAnticoll + 0x0000000008005e68 0xce ./HW_Devices/rs522.o + 0x0000000008005e68 PcdAnticoll + .text.CalulateCRC + 0x0000000008005f36 0x9a ./HW_Devices/rs522.o + 0x0000000008005f36 CalulateCRC + .text.PcdAuthState + 0x0000000008005fd0 0xca ./HW_Devices/rs522.o + 0x0000000008005fd0 PcdAuthState + .text.PcdRead 0x000000000800609a 0x84 ./HW_Devices/rs522.o + 0x000000000800609a PcdRead .text.RC522_Init - 0x0000000008005c58 0x12 ./HW_Devices/rs522.o - 0x0000000008005c58 RC522_Init - *fill* 0x0000000008005c6a 0x2 + 0x000000000800611e 0x12 ./HW_Devices/rs522.o + 0x000000000800611e RC522_Init .text.TP_Write_Byte - 0x0000000008005c6c 0x6c ./HW_Devices/touch.o - 0x0000000008005c6c TP_Write_Byte + 0x0000000008006130 0x6c ./HW_Devices/touch.o + 0x0000000008006130 TP_Write_Byte .text.TP_Read_AD - 0x0000000008005cd8 0xc8 ./HW_Devices/touch.o - 0x0000000008005cd8 TP_Read_AD + 0x000000000800619c 0xc8 ./HW_Devices/touch.o + 0x000000000800619c TP_Read_AD .text.TP_Read_XOY - 0x0000000008005da0 0x104 ./HW_Devices/touch.o - 0x0000000008005da0 TP_Read_XOY + 0x0000000008006264 0x104 ./HW_Devices/touch.o + 0x0000000008006264 TP_Read_XOY .text.TP_Read_XY_ADC - 0x0000000008005ea4 0x32 ./HW_Devices/touch.o - 0x0000000008005ea4 TP_Read_XY_ADC + 0x0000000008006368 0x32 ./HW_Devices/touch.o + 0x0000000008006368 TP_Read_XY_ADC .text.TP_Read_XY2 - 0x0000000008005ed6 0xd0 ./HW_Devices/touch.o - 0x0000000008005ed6 TP_Read_XY2 - *fill* 0x0000000008005fa6 0x2 + 0x000000000800639a 0xd0 ./HW_Devices/touch.o + 0x000000000800639a TP_Read_XY2 + *fill* 0x000000000800646a 0x2 .text.TP_Server - 0x0000000008005fa8 0xf0 ./HW_Devices/touch.o - 0x0000000008005fa8 TP_Server + 0x000000000800646c 0xf0 ./HW_Devices/touch.o + 0x000000000800646c TP_Server .text.TP_DrwaTrage - 0x0000000008006098 0xb8 ./HW_Devices/touch.o - 0x0000000008006098 TP_DrwaTrage + 0x000000000800655c 0xb8 ./HW_Devices/touch.o + 0x000000000800655c TP_DrwaTrage .text.TP_adjustment - 0x0000000008006150 0x5c4 ./HW_Devices/touch.o - 0x0000000008006150 TP_adjustment + 0x0000000008006614 0x5c4 ./HW_Devices/touch.o + 0x0000000008006614 TP_adjustment .text.APP_IDcard_init - 0x0000000008006714 0x20 ./SW_APPs/APP_IDcard.o - 0x0000000008006714 APP_IDcard_init + 0x0000000008006bd8 0x20 ./SW_APPs/APP_IDcard.o + 0x0000000008006bd8 APP_IDcard_init .text.APP_IDcard_loop - 0x0000000008006734 0xc ./SW_APPs/APP_IDcard.o - 0x0000000008006734 APP_IDcard_loop + 0x0000000008006bf8 0x1e4 ./SW_APPs/APP_IDcard.o + 0x0000000008006bf8 APP_IDcard_loop .text.max30102_read_fifo - 0x0000000008006740 0x100 ./SW_APPs/APP_blood.o - 0x0000000008006740 max30102_read_fifo + 0x0000000008006ddc 0x100 ./SW_APPs/APP_blood.o + 0x0000000008006ddc max30102_read_fifo .text.HAL_TIM_PeriodElapsedCallback - 0x0000000008006840 0xac ./SW_APPs/APP_blood.o - 0x0000000008006840 HAL_TIM_PeriodElapsedCallback + 0x0000000008006edc 0xac ./SW_APPs/APP_blood.o + 0x0000000008006edc HAL_TIM_PeriodElapsedCallback .text.main_app - 0x00000000080068ec 0x80 ./SW_APPs/Main_APP.o - 0x00000000080068ec main_app + 0x0000000008006f88 0x80 ./SW_APPs/Main_APP.o + 0x0000000008006f88 main_app .text.Inteface_SetCursor - 0x000000000800696c 0x34 ./SW_APPs/windows.o - 0x000000000800696c Inteface_SetCursor + 0x0000000008007008 0x34 ./SW_APPs/windows.o + 0x0000000008007008 Inteface_SetCursor .text.Inteface_SetColor - 0x00000000080069a0 0x20 ./SW_APPs/windows.o - 0x00000000080069a0 Inteface_SetColor - .text.UI_Init 0x00000000080069c0 0x66 ./SW_APPs/windows.o - 0x00000000080069c0 UI_Init + 0x000000000800703c 0x20 ./SW_APPs/windows.o + 0x000000000800703c Inteface_SetColor + .text.UI_Init 0x000000000800705c 0x66 ./SW_APPs/windows.o + 0x000000000800705c UI_Init .text.New_Window - 0x0000000008006a26 0xd2 ./SW_APPs/windows.o - 0x0000000008006a26 New_Window + 0x00000000080070c2 0xd2 ./SW_APPs/windows.o + 0x00000000080070c2 New_Window .text.Refresh_Window - 0x0000000008006af8 0x10a ./SW_APPs/windows.o - 0x0000000008006af8 Refresh_Window + 0x0000000008007194 0x10a ./SW_APPs/windows.o + 0x0000000008007194 Refresh_Window .text.Refresh_UI - 0x0000000008006c02 0x94 ./SW_APPs/windows.o - 0x0000000008006c02 Refresh_UI - .text.Chack 0x0000000008006c96 0xdc ./SW_APPs/windows.o - 0x0000000008006c96 Chack - *fill* 0x0000000008006d72 0x2 + 0x000000000800729e 0x94 ./SW_APPs/windows.o + 0x000000000800729e Refresh_UI + .text.Chack 0x0000000008007332 0xdc ./SW_APPs/windows.o + 0x0000000008007332 Chack + *fill* 0x000000000800740e 0x2 .text.UI_Server - 0x0000000008006d74 0x1f4 ./SW_APPs/windows.o - 0x0000000008006d74 UI_Server - .text.__errno 0x0000000008006f68 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-errno.o) - 0x0000000008006f68 __errno + 0x0000000008007410 0x1f4 ./SW_APPs/windows.o + 0x0000000008007410 UI_Server + .text.__errno 0x0000000008007604 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-errno.o) + 0x0000000008007604 __errno .text.__libc_init_array - 0x0000000008006f74 0x48 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-init.o) - 0x0000000008006f74 __libc_init_array - .text.malloc 0x0000000008006fbc 0x10 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-malloc.o) - 0x0000000008006fbc malloc - .text.free 0x0000000008006fcc 0x10 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-malloc.o) - 0x0000000008006fcc free - .text.memset 0x0000000008006fdc 0x10 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memset.o) - 0x0000000008006fdc memset - .text._free_r 0x0000000008006fec 0x98 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-freer.o) - 0x0000000008006fec _free_r + 0x0000000008007610 0x48 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-init.o) + 0x0000000008007610 __libc_init_array + .text.malloc 0x0000000008007658 0x10 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-malloc.o) + 0x0000000008007658 malloc + .text.free 0x0000000008007668 0x10 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-malloc.o) + 0x0000000008007668 free + .text.memset 0x0000000008007678 0x10 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memset.o) + 0x0000000008007678 memset + .text._free_r 0x0000000008007688 0x98 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-freer.o) + 0x0000000008007688 _free_r .text._malloc_r - 0x0000000008007084 0xb4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-mallocr.o) - 0x0000000008007084 _malloc_r - .text.__cvt 0x0000000008007138 0xbe /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_float.o) - 0x0000000008007138 __cvt + 0x0000000008007720 0xb4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-mallocr.o) + 0x0000000008007720 _malloc_r + .text.__cvt 0x00000000080077d4 0xbe /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_float.o) + 0x00000000080077d4 __cvt .text.__exponent - 0x00000000080071f6 0x7c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_float.o) - 0x00000000080071f6 __exponent - *fill* 0x0000000008007272 0x2 + 0x0000000008007892 0x7c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_float.o) + 0x0000000008007892 __exponent + *fill* 0x000000000800790e 0x2 .text._printf_float - 0x0000000008007274 0x458 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_float.o) - 0x0000000008007274 _printf_float + 0x0000000008007910 0x458 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_float.o) + 0x0000000008007910 _printf_float .text._printf_common - 0x00000000080076cc 0xde /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_i.o) - 0x00000000080076cc _printf_common - *fill* 0x00000000080077aa 0x2 + 0x0000000008007d68 0xde /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_i.o) + 0x0000000008007d68 _printf_common + *fill* 0x0000000008007e46 0x2 .text._printf_i - 0x00000000080077ac 0x24c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_i.o) - 0x00000000080077ac _printf_i - .text._sbrk_r 0x00000000080079f8 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-sbrkr.o) - 0x00000000080079f8 _sbrk_r - .text.sprintf 0x0000000008007a18 0x40 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-sprintf.o) - 0x0000000008007a18 sprintf - 0x0000000008007a18 siprintf - .text.quorem 0x0000000008007a58 0x11a /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-dtoa.o) - *fill* 0x0000000008007b72 0x6 - .text._dtoa_r 0x0000000008007b78 0xbdc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-dtoa.o) - 0x0000000008007b78 _dtoa_r + 0x0000000008007e48 0x24c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_i.o) + 0x0000000008007e48 _printf_i + .text._sbrk_r 0x0000000008008094 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-sbrkr.o) + 0x0000000008008094 _sbrk_r + .text.sprintf 0x00000000080080b4 0x40 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-sprintf.o) + 0x00000000080080b4 sprintf + 0x00000000080080b4 siprintf + .text.quorem 0x00000000080080f4 0x11a /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-dtoa.o) + *fill* 0x000000000800820e 0x2 + .text._dtoa_r 0x0000000008008210 0xbdc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-dtoa.o) + 0x0000000008008210 _dtoa_r .text._localeconv_r - 0x0000000008008754 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-localeconv.o) - 0x0000000008008754 _localeconv_r - .text.memchr 0x000000000800875c 0x1c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memchr-stub.o) - 0x000000000800875c memchr - .text.memcpy 0x0000000008008778 0x1c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memcpy-stub.o) - 0x0000000008008778 memcpy + 0x0000000008008dec 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-localeconv.o) + 0x0000000008008dec _localeconv_r + .text.memchr 0x0000000008008df4 0x1c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memchr-stub.o) + 0x0000000008008df4 memchr + .text.memcpy 0x0000000008008e10 0x1c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memcpy-stub.o) + 0x0000000008008e10 memcpy .text.__malloc_lock - 0x0000000008008794 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mlock.o) - 0x0000000008008794 __malloc_lock + 0x0000000008008e2c 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mlock.o) + 0x0000000008008e2c __malloc_lock .text.__malloc_unlock - 0x00000000080087a0 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mlock.o) - 0x00000000080087a0 __malloc_unlock - .text._Balloc 0x00000000080087ac 0x80 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) - 0x00000000080087ac _Balloc - .text._Bfree 0x000000000800882c 0x44 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) - 0x000000000800882c _Bfree + 0x0000000008008e38 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mlock.o) + 0x0000000008008e38 __malloc_unlock + .text._Balloc 0x0000000008008e44 0x80 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x0000000008008e44 _Balloc + .text._Bfree 0x0000000008008ec4 0x44 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x0000000008008ec4 _Bfree .text.__multadd - 0x0000000008008870 0x94 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) - 0x0000000008008870 __multadd + 0x0000000008008f08 0x94 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x0000000008008f08 __multadd .text.__hi0bits - 0x0000000008008904 0x40 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) - 0x0000000008008904 __hi0bits + 0x0000000008008f9c 0x40 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x0000000008008f9c __hi0bits .text.__lo0bits - 0x0000000008008944 0x5c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) - 0x0000000008008944 __lo0bits - .text.__i2b 0x00000000080089a0 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) - 0x00000000080089a0 __i2b + 0x0000000008008fdc 0x5c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x0000000008008fdc __lo0bits + .text.__i2b 0x0000000008009038 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x0000000008009038 __i2b .text.__multiply - 0x00000000080089cc 0x148 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) - 0x00000000080089cc __multiply + 0x0000000008009064 0x148 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x0000000008009064 __multiply .text.__pow5mult - 0x0000000008008b14 0xb4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) - 0x0000000008008b14 __pow5mult + 0x00000000080091ac 0xb4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x00000000080091ac __pow5mult .text.__lshift - 0x0000000008008bc8 0xd8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) - 0x0000000008008bc8 __lshift - .text.__mcmp 0x0000000008008ca0 0x36 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) - 0x0000000008008ca0 __mcmp - *fill* 0x0000000008008cd6 0x2 - .text.__mdiff 0x0000000008008cd8 0x120 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) - 0x0000000008008cd8 __mdiff - .text.__d2b 0x0000000008008df8 0xb8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) - 0x0000000008008df8 __d2b + 0x0000000008009260 0xd8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x0000000008009260 __lshift + .text.__mcmp 0x0000000008009338 0x36 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x0000000008009338 __mcmp + *fill* 0x000000000800936e 0x2 + .text.__mdiff 0x0000000008009370 0x120 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x0000000008009370 __mdiff + .text.__d2b 0x0000000008009490 0xb8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x0000000008009490 __d2b .text._calloc_r - 0x0000000008008eb0 0x1c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-callocr.o) - 0x0000000008008eb0 _calloc_r + 0x0000000008009548 0x1c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-callocr.o) + 0x0000000008009548 _calloc_r .text.__ssputs_r - 0x0000000008008ecc 0xb6 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-svfprintf.o) - 0x0000000008008ecc __ssputs_r - *fill* 0x0000000008008f82 0x2 + 0x0000000008009564 0xb6 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-svfprintf.o) + 0x0000000008009564 __ssputs_r + *fill* 0x000000000800961a 0x2 .text._svfprintf_r - 0x0000000008008f84 0x200 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-svfprintf.o) - 0x0000000008008f84 _svfprintf_r - 0x0000000008008f84 _svfiprintf_r + 0x000000000800961c 0x200 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-svfprintf.o) + 0x000000000800961c _svfprintf_r + 0x000000000800961c _svfiprintf_r .text.__assert_func - 0x0000000008009184 0x3c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-assert.o) - 0x0000000008009184 __assert_func - .text.fprintf 0x00000000080091c0 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fprintf.o) - 0x00000000080091c0 fprintf - 0x00000000080091c0 fiprintf + 0x000000000800981c 0x3c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-assert.o) + 0x000000000800981c __assert_func + .text.fprintf 0x0000000008009858 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fprintf.o) + 0x0000000008009858 fprintf + 0x0000000008009858 fiprintf .text.__retarget_lock_init_recursive - 0x00000000080091e4 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) - 0x00000000080091e4 __retarget_lock_init_recursive + 0x000000000800987c 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) + 0x000000000800987c __retarget_lock_init_recursive .text.__retarget_lock_acquire_recursive - 0x00000000080091e6 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) - 0x00000000080091e6 __retarget_lock_acquire_recursive + 0x000000000800987e 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) + 0x000000000800987e __retarget_lock_acquire_recursive .text.__retarget_lock_release_recursive - 0x00000000080091e8 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) - 0x00000000080091e8 __retarget_lock_release_recursive + 0x0000000008009880 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) + 0x0000000008009880 __retarget_lock_release_recursive .text.__ascii_mbtowc - 0x00000000080091ea 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mbtowc_r.o) - 0x00000000080091ea __ascii_mbtowc - .text.memmove 0x000000000800920e 0x34 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memmove.o) - 0x000000000800920e memmove + 0x0000000008009882 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mbtowc_r.o) + 0x0000000008009882 __ascii_mbtowc + .text.memmove 0x00000000080098a6 0x34 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memmove.o) + 0x00000000080098a6 memmove .text._realloc_r - 0x0000000008009242 0x4c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-reallocr.o) - 0x0000000008009242 _realloc_r + 0x00000000080098da 0x4c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-reallocr.o) + 0x00000000080098da _realloc_r .text.__sfputc_r - 0x000000000800928e 0x2a /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf.o) + 0x0000000008009926 0x2a /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf.o) .text.__sfputs_r - 0x00000000080092b8 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf.o) - 0x00000000080092b8 __sfputs_r + 0x0000000008009950 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf.o) + 0x0000000008009950 __sfputs_r .text._vfprintf_r - 0x00000000080092dc 0x260 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf.o) - 0x00000000080092dc _vfiprintf_r - 0x00000000080092dc _vfprintf_r + 0x0000000008009974 0x260 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf.o) + 0x0000000008009974 _vfiprintf_r + 0x0000000008009974 _vfprintf_r .text.__swbuf_r - 0x000000000800953c 0xa4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-wbuf.o) - 0x000000000800953c __swbuf_r + 0x0000000008009bd4 0xa4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-wbuf.o) + 0x0000000008009bd4 __swbuf_r .text.__ascii_wctomb - 0x00000000080095e0 0x1a /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-wctomb_r.o) - 0x00000000080095e0 __ascii_wctomb - *fill* 0x00000000080095fa 0x2 + 0x0000000008009c78 0x1a /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-wctomb_r.o) + 0x0000000008009c78 __ascii_wctomb + *fill* 0x0000000008009c92 0x2 .text.__swsetup_r - 0x00000000080095fc 0xdc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-wsetup.o) - 0x00000000080095fc __swsetup_r - .text.abort 0x00000000080096d8 0xe /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-abort.o) - 0x00000000080096d8 abort - *fill* 0x00000000080096e6 0x2 + 0x0000000008009c94 0xdc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-wsetup.o) + 0x0000000008009c94 __swsetup_r + .text.abort 0x0000000008009d70 0xe /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-abort.o) + 0x0000000008009d70 abort + *fill* 0x0000000008009d7e 0x2 .text.__sflush_r - 0x00000000080096e8 0x10c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fflush.o) - 0x00000000080096e8 __sflush_r + 0x0000000008009d80 0x10c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fflush.o) + 0x0000000008009d80 __sflush_r .text._fflush_r - 0x00000000080097f4 0x78 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fflush.o) - 0x00000000080097f4 _fflush_r - .text.std 0x000000000800986c 0x48 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) + 0x0000000008009e8c 0x78 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fflush.o) + 0x0000000008009e8c _fflush_r + .text.std 0x0000000008009f04 0x48 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) .text._cleanup_r - 0x00000000080098b4 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) - 0x00000000080098b4 _cleanup_r + 0x0000000008009f4c 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) + 0x0000000008009f4c _cleanup_r .text.__sfmoreglue - 0x00000000080098c0 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) - 0x00000000080098c0 __sfmoreglue + 0x0000000008009f58 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) + 0x0000000008009f58 __sfmoreglue .text.__sfp_lock_acquire - 0x00000000080098ec 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) - 0x00000000080098ec __sfp_lock_acquire + 0x0000000008009f84 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) + 0x0000000008009f84 __sfp_lock_acquire .text.__sfp_lock_release - 0x00000000080098f8 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) - 0x00000000080098f8 __sfp_lock_release + 0x0000000008009f90 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) + 0x0000000008009f90 __sfp_lock_release .text.__sinit_lock_acquire - 0x0000000008009904 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) - 0x0000000008009904 __sinit_lock_acquire + 0x0000000008009f9c 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) + 0x0000000008009f9c __sinit_lock_acquire .text.__sinit_lock_release - 0x0000000008009910 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) - 0x0000000008009910 __sinit_lock_release - .text.__sinit 0x000000000800991c 0x70 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) - 0x000000000800991c __sinit - .text.__sfp 0x000000000800998c 0x8c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) - 0x000000000800998c __sfp + 0x0000000008009fa8 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) + 0x0000000008009fa8 __sinit_lock_release + .text.__sinit 0x0000000008009fb4 0x70 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) + 0x0000000008009fb4 __sinit + .text.__sfp 0x000000000800a024 0x8c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) + 0x000000000800a024 __sfp .text._fwalk_reent - 0x0000000008009a18 0x3e /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fwalk.o) - 0x0000000008009a18 _fwalk_reent + 0x000000000800a0b0 0x3e /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fwalk.o) + 0x000000000800a0b0 _fwalk_reent .text.__swhatbuf_r - 0x0000000008009a56 0x48 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-makebuf.o) - 0x0000000008009a56 __swhatbuf_r - *fill* 0x0000000008009a9e 0x2 + 0x000000000800a0ee 0x48 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-makebuf.o) + 0x000000000800a0ee __swhatbuf_r + *fill* 0x000000000800a136 0x2 .text.__smakebuf_r - 0x0000000008009aa0 0x80 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-makebuf.o) - 0x0000000008009aa0 __smakebuf_r + 0x000000000800a138 0x80 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-makebuf.o) + 0x000000000800a138 __smakebuf_r .text._malloc_usable_size_r - 0x0000000008009b20 0x10 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-msizer.o) - 0x0000000008009b20 _malloc_usable_size_r + 0x000000000800a1b8 0x10 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-msizer.o) + 0x000000000800a1b8 _malloc_usable_size_r .text._raise_r - 0x0000000008009b30 0x50 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-signal.o) - 0x0000000008009b30 _raise_r - .text.raise 0x0000000008009b80 0x10 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-signal.o) - 0x0000000008009b80 raise - .text._kill_r 0x0000000008009b90 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-signalr.o) - 0x0000000008009b90 _kill_r + 0x000000000800a1c8 0x50 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-signal.o) + 0x000000000800a1c8 _raise_r + .text.raise 0x000000000800a218 0x10 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-signal.o) + 0x000000000800a218 raise + .text._kill_r 0x000000000800a228 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-signalr.o) + 0x000000000800a228 _kill_r .text._getpid_r - 0x0000000008009bb4 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-signalr.o) - 0x0000000008009bb4 _getpid_r - .text.__sread 0x0000000008009bb8 0x22 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-stdio.o) - 0x0000000008009bb8 __sread + 0x000000000800a24c 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-signalr.o) + 0x000000000800a24c _getpid_r + .text.__sread 0x000000000800a250 0x22 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-stdio.o) + 0x000000000800a250 __sread .text.__swrite - 0x0000000008009bda 0x38 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-stdio.o) - 0x0000000008009bda __swrite - .text.__sseek 0x0000000008009c12 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-stdio.o) - 0x0000000008009c12 __sseek + 0x000000000800a272 0x38 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-stdio.o) + 0x000000000800a272 __swrite + .text.__sseek 0x000000000800a2aa 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-stdio.o) + 0x000000000800a2aa __sseek .text.__sclose - 0x0000000008009c36 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-stdio.o) - 0x0000000008009c36 __sclose - *fill* 0x0000000008009c3e 0x2 + 0x000000000800a2ce 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-stdio.o) + 0x000000000800a2ce __sclose + *fill* 0x000000000800a2d6 0x2 .text._write_r - 0x0000000008009c40 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-writer.o) - 0x0000000008009c40 _write_r + 0x000000000800a2d8 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-writer.o) + 0x000000000800a2d8 _write_r .text._close_r - 0x0000000008009c64 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-closer.o) - 0x0000000008009c64 _close_r + 0x000000000800a2fc 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-closer.o) + 0x000000000800a2fc _close_r .text._fstat_r - 0x0000000008009c84 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fstatr.o) - 0x0000000008009c84 _fstat_r + 0x000000000800a31c 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fstatr.o) + 0x000000000800a31c _fstat_r .text._isatty_r - 0x0000000008009ca8 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-isattyr.o) - 0x0000000008009ca8 _isatty_r + 0x000000000800a340 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-isattyr.o) + 0x000000000800a340 _isatty_r .text._lseek_r - 0x0000000008009cc8 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lseekr.o) - 0x0000000008009cc8 _lseek_r - .text._read_r 0x0000000008009cec 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-readr.o) - 0x0000000008009cec _read_r + 0x000000000800a360 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lseekr.o) + 0x000000000800a360 _lseek_r + .text._read_r 0x000000000800a384 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-readr.o) + 0x000000000800a384 _read_r *(.glue_7) - .glue_7 0x0000000008009d10 0x0 linker stubs + .glue_7 0x000000000800a3a8 0x0 linker stubs *(.glue_7t) - .glue_7t 0x0000000008009d10 0x0 linker stubs + .glue_7t 0x000000000800a3a8 0x0 linker stubs *(.eh_frame) - .eh_frame 0x0000000008009d10 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o + .eh_frame 0x000000000800a3a8 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o *(.init) - .init 0x0000000008009d10 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crti.o - 0x0000000008009d10 _init - .init 0x0000000008009d14 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtn.o + .init 0x000000000800a3a8 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crti.o + 0x000000000800a3a8 _init + .init 0x000000000800a3ac 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtn.o *(.fini) - .fini 0x0000000008009d1c 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crti.o - 0x0000000008009d1c _fini - .fini 0x0000000008009d20 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtn.o - 0x0000000008009d28 . = ALIGN (0x4) - 0x0000000008009d28 _etext = . + .fini 0x000000000800a3b4 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crti.o + 0x000000000800a3b4 _fini + .fini 0x000000000800a3b8 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtn.o + 0x000000000800a3c0 . = ALIGN (0x4) + 0x000000000800a3c0 _etext = . -.vfp11_veneer 0x0000000008009d28 0x0 - .vfp11_veneer 0x0000000008009d28 0x0 linker stubs +.vfp11_veneer 0x000000000800a3c0 0x0 + .vfp11_veneer 0x000000000800a3c0 0x0 linker stubs -.v4_bx 0x0000000008009d28 0x0 - .v4_bx 0x0000000008009d28 0x0 linker stubs +.v4_bx 0x000000000800a3c0 0x0 + .v4_bx 0x000000000800a3c0 0x0 linker stubs -.iplt 0x0000000008009d28 0x0 - .iplt 0x0000000008009d28 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o +.iplt 0x000000000800a3c0 0x0 + .iplt 0x000000000800a3c0 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o -.rodata 0x0000000008009d28 0xf2c - 0x0000000008009d28 . = ALIGN (0x4) +.rodata 0x000000000800a3c0 0xf64 + 0x000000000800a3c0 . = ALIGN (0x4) *(.rodata) - .rodata 0x0000000008009d28 0x10 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o - .rodata 0x0000000008009d38 0xb8 ./HW_Devices/touch.o - .rodata 0x0000000008009df0 0x7 ./SW_APPs/Main_APP.o + .rodata 0x000000000800a3c0 0x10 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.o + .rodata 0x000000000800a3d0 0xb8 ./HW_Devices/touch.o + .rodata 0x000000000800a488 0x35 ./SW_APPs/APP_IDcard.o + *fill* 0x000000000800a4bd 0x3 + .rodata 0x000000000800a4c0 0x7 ./SW_APPs/Main_APP.o *(.rodata*) - *fill* 0x0000000008009df7 0x1 + *fill* 0x000000000800a4c7 0x1 .rodata.AHBPrescTable - 0x0000000008009df8 0x10 ./Core/Src/system_stm32f1xx.o - 0x0000000008009df8 AHBPrescTable + 0x000000000800a4c8 0x10 ./Core/Src/system_stm32f1xx.o + 0x000000000800a4c8 AHBPrescTable .rodata.APBPrescTable - 0x0000000008009e08 0x8 ./Core/Src/system_stm32f1xx.o - 0x0000000008009e08 APBPrescTable + 0x000000000800a4d8 0x8 ./Core/Src/system_stm32f1xx.o + 0x000000000800a4d8 APBPrescTable .rodata.asc2_1206 - 0x0000000008009e10 0x474 ./HW_Devices/LCD.o - 0x0000000008009e10 asc2_1206 + 0x000000000800a4e0 0x474 ./HW_Devices/LCD.o + 0x000000000800a4e0 asc2_1206 .rodata.asc2_1608 - 0x000000000800a284 0x5f0 ./HW_Devices/LCD.o - 0x000000000800a284 asc2_1608 + 0x000000000800a954 0x5f0 ./HW_Devices/LCD.o + 0x000000000800a954 asc2_1608 .rodata._global_impure_ptr - 0x000000000800a874 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-impure.o) - 0x000000000800a874 _global_impure_ptr + 0x000000000800af44 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-impure.o) + 0x000000000800af44 _global_impure_ptr .rodata._printf_float.str1.1 - 0x000000000800a878 0x12 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_float.o) + 0x000000000800af48 0x12 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_float.o) .rodata._printf_i.str1.1 - 0x000000000800a88a 0x22 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_i.o) + 0x000000000800af5a 0x22 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_i.o) .rodata._dtoa_r.str1.1 - 0x000000000800a8ac 0x94 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-dtoa.o) + 0x000000000800af7c 0x94 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-dtoa.o) 0x96 (size before relaxing) .rodata._Balloc.str1.1 - 0x000000000800a940 0x60 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x000000000800b010 0x60 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) 0x77 (size before relaxing) .rodata.__multadd.str1.1 - 0x000000000800a9a0 0x11 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x000000000800b070 0x11 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) .rodata.__mprec_bigtens - 0x000000000800a9a0 0x28 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) - 0x000000000800a9a0 __mprec_bigtens + 0x000000000800b070 0x28 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x000000000800b070 __mprec_bigtens .rodata.__mprec_tens - 0x000000000800a9c8 0xc8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) - 0x000000000800a9c8 __mprec_tens + 0x000000000800b098 0xc8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x000000000800b098 __mprec_tens .rodata.p05.6150 - 0x000000000800aa90 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + 0x000000000800b160 0xc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) .rodata._svfprintf_r.str1.1 - 0x000000000800aa9c 0x11 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-svfprintf.o) + 0x000000000800b16c 0x11 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-svfprintf.o) .rodata.__assert_func.str1.1 - 0x000000000800aaad 0x3c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-assert.o) + 0x000000000800b17d 0x3c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-assert.o) 0x3d (size before relaxing) .rodata._setlocale_r.str1.1 - 0x000000000800aae9 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-locale.o) + 0x000000000800b1b9 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-locale.o) 0x9 (size before relaxing) .rodata.str1.1 - 0x000000000800aaf1 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-locale.o) + 0x000000000800b1c1 0x2 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-locale.o) .rodata._vfprintf_r.str1.1 - 0x000000000800aaf3 0x11 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf.o) + 0x000000000800b1c3 0x11 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf.o) .rodata._ctype_ - 0x000000000800aaf3 0x101 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-ctype_.o) - 0x000000000800aaf3 _ctype_ + 0x000000000800b1c3 0x101 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-ctype_.o) + 0x000000000800b1c3 _ctype_ .rodata.__sf_fake_stderr - 0x000000000800abf4 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) - 0x000000000800abf4 __sf_fake_stderr + 0x000000000800b2c4 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) + 0x000000000800b2c4 __sf_fake_stderr .rodata.__sf_fake_stdin - 0x000000000800ac14 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) - 0x000000000800ac14 __sf_fake_stdin + 0x000000000800b2e4 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) + 0x000000000800b2e4 __sf_fake_stdin .rodata.__sf_fake_stdout - 0x000000000800ac34 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) - 0x000000000800ac34 __sf_fake_stdout - 0x000000000800ac54 . = ALIGN (0x4) + 0x000000000800b304 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) + 0x000000000800b304 __sf_fake_stdout + 0x000000000800b324 . = ALIGN (0x4) -.rel.dyn 0x000000000800ac54 0x0 - .rel.iplt 0x000000000800ac54 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o +.rel.dyn 0x000000000800b324 0x0 + .rel.iplt 0x000000000800b324 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o -.ARM.extab 0x000000000800ac54 0x0 - 0x000000000800ac54 . = ALIGN (0x4) +.ARM.extab 0x000000000800b324 0x0 + 0x000000000800b324 . = ALIGN (0x4) *(.ARM.extab* .gnu.linkonce.armextab.*) - 0x000000000800ac54 . = ALIGN (0x4) + 0x000000000800b324 . = ALIGN (0x4) -.ARM 0x000000000800ac54 0x0 - 0x000000000800ac54 . = ALIGN (0x4) - 0x000000000800ac54 __exidx_start = . +.ARM 0x000000000800b324 0x0 + 0x000000000800b324 . = ALIGN (0x4) + 0x000000000800b324 __exidx_start = . *(.ARM.exidx*) - 0x000000000800ac54 __exidx_end = . - 0x000000000800ac54 . = ALIGN (0x4) + 0x000000000800b324 __exidx_end = . + 0x000000000800b324 . = ALIGN (0x4) -.preinit_array 0x000000000800ac54 0x0 - 0x000000000800ac54 . = ALIGN (0x4) - 0x000000000800ac54 PROVIDE (__preinit_array_start = .) +.preinit_array 0x000000000800b324 0x0 + 0x000000000800b324 . = ALIGN (0x4) + 0x000000000800b324 PROVIDE (__preinit_array_start = .) *(.preinit_array*) - 0x000000000800ac54 PROVIDE (__preinit_array_end = .) - 0x000000000800ac54 . = ALIGN (0x4) + 0x000000000800b324 PROVIDE (__preinit_array_end = .) + 0x000000000800b324 . = ALIGN (0x4) -.init_array 0x000000000800ac54 0x4 - 0x000000000800ac54 . = ALIGN (0x4) - 0x000000000800ac54 PROVIDE (__init_array_start = .) +.init_array 0x000000000800b324 0x4 + 0x000000000800b324 . = ALIGN (0x4) + 0x000000000800b324 PROVIDE (__init_array_start = .) *(SORT_BY_NAME(.init_array.*)) *(.init_array*) - .init_array 0x000000000800ac54 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o - 0x000000000800ac58 PROVIDE (__init_array_end = .) - 0x000000000800ac58 . = ALIGN (0x4) + .init_array 0x000000000800b324 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o + 0x000000000800b328 PROVIDE (__init_array_end = .) + 0x000000000800b328 . = ALIGN (0x4) -.fini_array 0x000000000800ac58 0x4 - 0x000000000800ac58 . = ALIGN (0x4) +.fini_array 0x000000000800b328 0x4 + 0x000000000800b328 . = ALIGN (0x4) [!provide] PROVIDE (__fini_array_start = .) *(SORT_BY_NAME(.fini_array.*)) *(.fini_array*) - .fini_array 0x000000000800ac58 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o + .fini_array 0x000000000800b328 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o [!provide] PROVIDE (__fini_array_end = .) - 0x000000000800ac5c . = ALIGN (0x4) - 0x000000000800ac5c _sidata = LOADADDR (.data) + 0x000000000800b32c . = ALIGN (0x4) + 0x000000000800b32c _sidata = LOADADDR (.data) -.data 0x0000000020000000 0x1dc load address 0x000000000800ac5c +.data 0x0000000020000000 0x1e4 load address 0x000000000800b32c 0x0000000020000000 . = ALIGN (0x4) 0x0000000020000000 _sdata = . *(.data) @@ -5044,101 +5057,113 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id 0x0000000020000008 0x1 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o 0x0000000020000008 uwTickFreq *fill* 0x0000000020000009 0x3 + .data.KEY 0x000000002000000c 0x6 ./SW_APPs/APP_IDcard.o + 0x000000002000000c KEY + *fill* 0x0000000020000012 0x2 .data._impure_ptr - 0x000000002000000c 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-impure.o) - 0x000000002000000c _impure_ptr + 0x0000000020000014 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-impure.o) + 0x0000000020000014 _impure_ptr .data.impure_data - 0x0000000020000010 0x60 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-impure.o) + 0x0000000020000018 0x60 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-impure.o) .data.__global_locale - 0x0000000020000070 0x16c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-locale.o) - 0x0000000020000070 __global_locale + 0x0000000020000078 0x16c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-locale.o) + 0x0000000020000078 __global_locale *(.RamFunc) *(.RamFunc*) - 0x00000000200001dc . = ALIGN (0x4) - 0x00000000200001dc _edata = . + 0x00000000200001e4 . = ALIGN (0x4) + 0x00000000200001e4 _edata = . -.igot.plt 0x00000000200001dc 0x0 load address 0x000000000800ae38 - .igot.plt 0x00000000200001dc 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o - 0x00000000200001dc . = ALIGN (0x4) +.igot.plt 0x00000000200001e4 0x0 load address 0x000000000800b510 + .igot.plt 0x00000000200001e4 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o + 0x00000000200001e4 . = ALIGN (0x4) -.bss 0x00000000200001dc 0x2320 load address 0x000000000800ae38 - 0x00000000200001dc _sbss = . - 0x00000000200001dc __bss_start__ = _sbss +.bss 0x00000000200001e4 0x2360 load address 0x000000000800b510 + 0x00000000200001e4 _sbss = . + 0x00000000200001e4 __bss_start__ = _sbss *(.bss) - .bss 0x00000000200001dc 0x1c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o + .bss 0x00000000200001e4 0x1c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/crtbegin.o *(.bss*) .bss.FSMC_Initialized - 0x00000000200001f8 0x4 ./Core/Src/stm32f1xx_hal_msp.o + 0x0000000020000200 0x4 ./Core/Src/stm32f1xx_hal_msp.o .bss.__sbrk_heap_end - 0x00000000200001fc 0x4 ./Core/Src/sysmem.o + 0x0000000020000204 0x4 ./Core/Src/sysmem.o + .bss.card_number_D + 0x0000000020000208 0x4 ./SW_APPs/APP_IDcard.o + 0x0000000020000208 card_number_D .bss.get_data_flag - 0x0000000020000200 0x1 ./SW_APPs/APP_blood.o - 0x0000000020000200 get_data_flag - *fill* 0x0000000020000201 0x1 + 0x000000002000020c 0x1 ./SW_APPs/APP_blood.o + 0x000000002000020c get_data_flag + *fill* 0x000000002000020d 0x1 .bss.g_fft_index - 0x0000000020000202 0x2 ./SW_APPs/APP_blood.o - 0x0000000020000202 g_fft_index + 0x000000002000020e 0x2 ./SW_APPs/APP_blood.o + 0x000000002000020e g_fft_index .bss.__malloc_free_list - 0x0000000020000204 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-mallocr.o) - 0x0000000020000204 __malloc_free_list + 0x0000000020000210 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-mallocr.o) + 0x0000000020000210 __malloc_free_list .bss.__malloc_sbrk_start - 0x0000000020000208 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-mallocr.o) - 0x0000000020000208 __malloc_sbrk_start + 0x0000000020000214 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-mallocr.o) + 0x0000000020000214 __malloc_sbrk_start *(COMMON) - COMMON 0x000000002000020c 0x13c ./Core/Src/main.o - 0x000000002000020c hi2c2 - 0x0000000020000260 hsram1 - 0x00000000200002a8 htim6 - 0x00000000200002f0 hspi1 - COMMON 0x0000000020000348 0x4 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o - 0x0000000020000348 uwTick - COMMON 0x000000002000034c 0xa ./HW_Devices/LCD.o - 0x000000002000034c lcddev - *fill* 0x0000000020000356 0x2 - COMMON 0x0000000020000358 0x14 ./HW_Devices/eeprom.o - 0x0000000020000358 eeprom_write_buffer - COMMON 0x000000002000036c 0x28 ./HW_Devices/touch.o - 0x000000002000036c tconfig - 0x0000000020000384 t0 - COMMON 0x0000000020000394 0x4 ./SW_APPs/APP_IDcard.o - 0x0000000020000394 idcard_window - COMMON 0x0000000020000398 0x2152 ./SW_APPs/APP_blood.o - 0x0000000020000398 blood_str - 0x00000000200003d8 fifo_ir - 0x00000000200003dc blood_win - 0x00000000200003e0 s1 - 0x0000000020001460 s2 - 0x00000000200024e0 g_BloodWave - 0x00000000200024e8 fifo_red - *fill* 0x00000000200024ea 0x2 - COMMON 0x00000000200024ec 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-reent.o) - 0x00000000200024ec errno - COMMON 0x00000000200024f0 0x9 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) - 0x00000000200024f0 __lock___atexit_recursive_mutex - 0x00000000200024f1 __lock___arc4random_mutex - 0x00000000200024f2 __lock___env_recursive_mutex - 0x00000000200024f3 __lock___sinit_recursive_mutex - 0x00000000200024f4 __lock___malloc_recursive_mutex - 0x00000000200024f5 __lock___at_quick_exit_mutex - 0x00000000200024f6 __lock___dd_hash_mutex - 0x00000000200024f7 __lock___tz_mutex - 0x00000000200024f8 __lock___sfp_recursive_mutex - 0x00000000200024fc . = ALIGN (0x4) - *fill* 0x00000000200024f9 0x3 - 0x00000000200024fc _ebss = . - 0x00000000200024fc __bss_end__ = _ebss + COMMON 0x0000000020000218 0x13c ./Core/Src/main.o + 0x0000000020000218 hi2c2 + 0x000000002000026c hsram1 + 0x00000000200002b4 htim6 + 0x00000000200002fc hspi1 + COMMON 0x0000000020000354 0x4 ./Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.o + 0x0000000020000354 uwTick + COMMON 0x0000000020000358 0xa ./HW_Devices/LCD.o + 0x0000000020000358 lcddev + *fill* 0x0000000020000362 0x2 + COMMON 0x0000000020000364 0x14 ./HW_Devices/eeprom.o + 0x0000000020000364 eeprom_write_buffer + COMMON 0x0000000020000378 0x28 ./HW_Devices/touch.o + 0x0000000020000378 tconfig + 0x0000000020000390 t0 + COMMON 0x00000000200003a0 0x3d ./SW_APPs/APP_IDcard.o + 0x00000000200003a0 RFID + 0x00000000200003b0 idcard_str + 0x00000000200003d0 idcard_window + 0x00000000200003d4 CT + 0x00000000200003d8 SN + 0x00000000200003dc status + *fill* 0x00000000200003dd 0x3 + COMMON 0x00000000200003e0 0x2152 ./SW_APPs/APP_blood.o + 0x00000000200003e0 blood_str + 0x0000000020000420 fifo_ir + 0x0000000020000424 blood_win + 0x0000000020000428 s1 + 0x00000000200014a8 s2 + 0x0000000020002528 g_BloodWave + 0x0000000020002530 fifo_red + *fill* 0x0000000020002532 0x2 + COMMON 0x0000000020002534 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-reent.o) + 0x0000000020002534 errno + COMMON 0x0000000020002538 0x9 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) + 0x0000000020002538 __lock___atexit_recursive_mutex + 0x0000000020002539 __lock___arc4random_mutex + 0x000000002000253a __lock___env_recursive_mutex + 0x000000002000253b __lock___sinit_recursive_mutex + 0x000000002000253c __lock___malloc_recursive_mutex + 0x000000002000253d __lock___at_quick_exit_mutex + 0x000000002000253e __lock___dd_hash_mutex + 0x000000002000253f __lock___tz_mutex + 0x0000000020002540 __lock___sfp_recursive_mutex + 0x0000000020002544 . = ALIGN (0x4) + *fill* 0x0000000020002541 0x3 + 0x0000000020002544 _ebss = . + 0x0000000020002544 __bss_end__ = _ebss ._user_heap_stack - 0x00000000200024fc 0xc04 load address 0x000000000800ae38 - 0x0000000020002500 . = ALIGN (0x8) - *fill* 0x00000000200024fc 0x4 + 0x0000000020002544 0xc04 load address 0x000000000800b510 + 0x0000000020002548 . = ALIGN (0x8) + *fill* 0x0000000020002544 0x4 [!provide] PROVIDE (end = .) - 0x0000000020002500 PROVIDE (_end = .) - 0x0000000020002900 . = (. + _Min_Heap_Size) - *fill* 0x0000000020002500 0x400 - 0x0000000020003100 . = (. + _Min_Stack_Size) - *fill* 0x0000000020002900 0x800 - 0x0000000020003100 . = ALIGN (0x8) + 0x0000000020002548 PROVIDE (_end = .) + 0x0000000020002948 . = (. + _Min_Heap_Size) + *fill* 0x0000000020002548 0x400 + 0x0000000020003148 . = (. + _Min_Stack_Size) + *fill* 0x0000000020002948 0x800 + 0x0000000020003148 . = ALIGN (0x8) /DISCARD/ libc.a(*) @@ -5326,7 +5351,7 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libm.a LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a -.debug_info 0x0000000000000000 0x159cd +.debug_info 0x0000000000000000 0x15b0b .debug_info 0x0000000000000000 0x141a ./Core/Src/main.o .debug_info 0x000000000000141a 0x1487 ./Core/Src/stm32f1xx_hal_msp.o .debug_info 0x00000000000028a1 0x7b4 ./Core/Src/stm32f1xx_it.o @@ -5347,14 +5372,14 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_info 0x000000000001064a 0xa30 ./HW_Devices/LCD.o .debug_info 0x000000000001107a 0x39b ./HW_Devices/eeprom.o .debug_info 0x0000000000011415 0x734 ./HW_Devices/iic.o - .debug_info 0x0000000000011b49 0xd47 ./HW_Devices/rs522.o - .debug_info 0x0000000000012890 0x8c1 ./HW_Devices/touch.o - .debug_info 0x0000000000013151 0x2d7 ./SW_APPs/APP_IDcard.o - .debug_info 0x0000000000013428 0x17f7 ./SW_APPs/APP_blood.o - .debug_info 0x0000000000014c1f 0x546 ./SW_APPs/Main_APP.o - .debug_info 0x0000000000015165 0x868 ./SW_APPs/windows.o + .debug_info 0x0000000000011b49 0xd4d ./HW_Devices/rs522.o + .debug_info 0x0000000000012896 0x8c1 ./HW_Devices/touch.o + .debug_info 0x0000000000013157 0x40f ./SW_APPs/APP_IDcard.o + .debug_info 0x0000000000013566 0x17f7 ./SW_APPs/APP_blood.o + .debug_info 0x0000000000014d5d 0x546 ./SW_APPs/Main_APP.o + .debug_info 0x00000000000152a3 0x868 ./SW_APPs/windows.o -.debug_abbrev 0x0000000000000000 0x368c +.debug_abbrev 0x0000000000000000 0x36d4 .debug_abbrev 0x0000000000000000 0x25e ./Core/Src/main.o .debug_abbrev 0x000000000000025e 0x238 ./Core/Src/stm32f1xx_hal_msp.o .debug_abbrev 0x0000000000000496 0x176 ./Core/Src/stm32f1xx_it.o @@ -5377,10 +5402,10 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_abbrev 0x00000000000026a7 0x176 ./HW_Devices/iic.o .debug_abbrev 0x000000000000281d 0x27b ./HW_Devices/rs522.o .debug_abbrev 0x0000000000002a98 0x24f ./HW_Devices/touch.o - .debug_abbrev 0x0000000000002ce7 0x12e ./SW_APPs/APP_IDcard.o - .debug_abbrev 0x0000000000002e15 0x3ca ./SW_APPs/APP_blood.o - .debug_abbrev 0x00000000000031df 0x1d8 ./SW_APPs/Main_APP.o - .debug_abbrev 0x00000000000033b7 0x2d5 ./SW_APPs/windows.o + .debug_abbrev 0x0000000000002ce7 0x176 ./SW_APPs/APP_IDcard.o + .debug_abbrev 0x0000000000002e5d 0x3ca ./SW_APPs/APP_blood.o + .debug_abbrev 0x0000000000003227 0x1d8 ./SW_APPs/Main_APP.o + .debug_abbrev 0x00000000000033ff 0x2d5 ./SW_APPs/windows.o .debug_aranges 0x0000000000000000 0x1398 .debug_aranges @@ -5587,7 +5612,7 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_macro 0x000000000001d2e5 0xa0 ./SW_APPs/Main_APP.o .debug_macro 0x000000000001d385 0x207 ./SW_APPs/windows.o -.debug_line 0x0000000000000000 0x17dd7 +.debug_line 0x0000000000000000 0x17ecb .debug_line 0x0000000000000000 0x962 ./Core/Src/main.o .debug_line 0x0000000000000962 0x879 ./Core/Src/stm32f1xx_hal_msp.o .debug_line 0x00000000000011db 0x7cc ./Core/Src/stm32f1xx_it.o @@ -5610,12 +5635,12 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_line 0x0000000000013160 0x704 ./HW_Devices/iic.o .debug_line 0x0000000000013864 0xcdd ./HW_Devices/rs522.o .debug_line 0x0000000000014541 0xb62 ./HW_Devices/touch.o - .debug_line 0x00000000000150a3 0x76b ./SW_APPs/APP_IDcard.o - .debug_line 0x000000000001580e 0x11a6 ./SW_APPs/APP_blood.o - .debug_line 0x00000000000169b4 0x7c4 ./SW_APPs/Main_APP.o - .debug_line 0x0000000000017178 0xc5f ./SW_APPs/windows.o + .debug_line 0x00000000000150a3 0x85f ./SW_APPs/APP_IDcard.o + .debug_line 0x0000000000015902 0x11a6 ./SW_APPs/APP_blood.o + .debug_line 0x0000000000016aa8 0x7c4 ./SW_APPs/Main_APP.o + .debug_line 0x000000000001726c 0xc5f ./SW_APPs/windows.o -.debug_str 0x0000000000000000 0xa0fa1 +.debug_str 0x0000000000000000 0xa0fbf .debug_str 0x0000000000000000 0x956ca ./Core/Src/main.o 0x95c59 (size before relaxing) .debug_str 0x00000000000956ca 0x41e ./Core/Src/stm32f1xx_hal_msp.o @@ -5660,13 +5685,13 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id 0x959c4 (size before relaxing) .debug_str 0x000000000009fe27 0x288 ./HW_Devices/touch.o 0x9575a (size before relaxing) - .debug_str 0x00000000000a00af 0x80 ./SW_APPs/APP_IDcard.o - 0x95ae5 (size before relaxing) - .debug_str 0x00000000000a012f 0xcba ./SW_APPs/APP_blood.o + .debug_str 0x00000000000a00af 0x9e ./SW_APPs/APP_IDcard.o + 0x95b12 (size before relaxing) + .debug_str 0x00000000000a014d 0xcba ./SW_APPs/APP_blood.o 0x99859 (size before relaxing) - .debug_str 0x00000000000a0de9 0x98 ./SW_APPs/Main_APP.o + .debug_str 0x00000000000a0e07 0x98 ./SW_APPs/Main_APP.o 0x95f1a (size before relaxing) - .debug_str 0x00000000000a0e81 0x120 ./SW_APPs/windows.o + .debug_str 0x00000000000a0e9f 0x120 ./SW_APPs/windows.o 0x957ab (size before relaxing) .comment 0x0000000000000000 0x53 @@ -5697,7 +5722,7 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .comment 0x0000000000000053 0x54 ./SW_APPs/Main_APP.o .comment 0x0000000000000053 0x54 ./SW_APPs/windows.o -.debug_frame 0x0000000000000000 0x63c8 +.debug_frame 0x0000000000000000 0x63d4 .debug_frame 0x0000000000000000 0x10c ./Core/Src/main.o .debug_frame 0x000000000000010c 0x198 ./Core/Src/stm32f1xx_hal_msp.o .debug_frame 0x00000000000002a4 0x120 ./Core/Src/stm32f1xx_it.o @@ -5719,61 +5744,61 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_frame 0x00000000000047f4 0x58 ./HW_Devices/iic.o .debug_frame 0x000000000000484c 0x2bc ./HW_Devices/rs522.o .debug_frame 0x0000000000004b08 0x164 ./HW_Devices/touch.o - .debug_frame 0x0000000000004c6c 0x54 ./SW_APPs/APP_IDcard.o - .debug_frame 0x0000000000004cc0 0x260 ./SW_APPs/APP_blood.o - .debug_frame 0x0000000000004f20 0x30 ./SW_APPs/Main_APP.o - .debug_frame 0x0000000000004f50 0x1b0 ./SW_APPs/windows.o - .debug_frame 0x0000000000005100 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-errno.o) - .debug_frame 0x0000000000005120 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-init.o) - .debug_frame 0x000000000000514c 0x30 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-malloc.o) - .debug_frame 0x000000000000517c 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memset.o) - .debug_frame 0x000000000000519c 0x38 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-freer.o) - .debug_frame 0x00000000000051d4 0x30 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-mallocr.o) - .debug_frame 0x0000000000005204 0x94 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_float.o) - .debug_frame 0x0000000000005298 0x60 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_i.o) - .debug_frame 0x00000000000052f8 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-sbrkr.o) - .debug_frame 0x0000000000005324 0x6c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-sprintf.o) - .debug_frame 0x0000000000005390 0x6c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-dtoa.o) - .debug_frame 0x00000000000053fc 0x40 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-localeconv.o) - .debug_frame 0x000000000000543c 0x28 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memchr-stub.o) - .debug_frame 0x0000000000005464 0x28 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memcpy-stub.o) - .debug_frame 0x000000000000548c 0x30 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mlock.o) - .debug_frame 0x00000000000054bc 0x254 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) - .debug_frame 0x0000000000005710 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-callocr.o) - .debug_frame 0x000000000000573c 0x90 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-svfprintf.o) - .debug_frame 0x00000000000057cc 0x5c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-reent.o) - .debug_frame 0x0000000000005828 0x40 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-assert.o) - .debug_frame 0x0000000000005868 0x64 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fprintf.o) - .debug_frame 0x00000000000058cc 0x48 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-locale.o) - .debug_frame 0x0000000000005914 0xb0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) - .debug_frame 0x00000000000059c4 0x48 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mbtowc_r.o) - .debug_frame 0x0000000000005a0c 0x28 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memmove.o) - .debug_frame 0x0000000000005a34 0x3c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-reallocr.o) - .debug_frame 0x0000000000005a70 0xac /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf.o) - .debug_frame 0x0000000000005b1c 0x40 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-wbuf.o) - .debug_frame 0x0000000000005b5c 0x3c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-wctomb_r.o) - .debug_frame 0x0000000000005b98 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-wsetup.o) - .debug_frame 0x0000000000005bc4 0x28 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-abort.o) - .debug_frame 0x0000000000005bec 0x5c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fflush.o) - .debug_frame 0x0000000000005c48 0x14c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) - .debug_frame 0x0000000000005d94 0x54 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fwalk.o) - .debug_frame 0x0000000000005de8 0x58 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-makebuf.o) - .debug_frame 0x0000000000005e40 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-msizer.o) - .debug_frame 0x0000000000005e60 0xcc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-signal.o) - .debug_frame 0x0000000000005f2c 0x3c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-signalr.o) - .debug_frame 0x0000000000005f68 0x88 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-stdio.o) - .debug_frame 0x0000000000005ff0 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-writer.o) - .debug_frame 0x000000000000601c 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-closer.o) - .debug_frame 0x0000000000006048 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fstatr.o) - .debug_frame 0x0000000000006074 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-isattyr.o) - .debug_frame 0x00000000000060a0 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lseekr.o) - .debug_frame 0x00000000000060cc 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-readr.o) - .debug_frame 0x00000000000060f8 0xac /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubdf3.o) - .debug_frame 0x00000000000061a4 0x50 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivdf3.o) - .debug_frame 0x00000000000061f4 0xc4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_cmpdf2.o) - .debug_frame 0x00000000000062b8 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_unorddf2.o) - .debug_frame 0x00000000000062d8 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixdfsi.o) - .debug_frame 0x00000000000062fc 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_truncdfsf2.o) - .debug_frame 0x0000000000006320 0x4c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubsf3.o) - .debug_frame 0x000000000000636c 0x38 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivsf3.o) - .debug_frame 0x00000000000063a4 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixsfsi.o) + .debug_frame 0x0000000000004c6c 0x60 ./SW_APPs/APP_IDcard.o + .debug_frame 0x0000000000004ccc 0x260 ./SW_APPs/APP_blood.o + .debug_frame 0x0000000000004f2c 0x30 ./SW_APPs/Main_APP.o + .debug_frame 0x0000000000004f5c 0x1b0 ./SW_APPs/windows.o + .debug_frame 0x000000000000510c 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-errno.o) + .debug_frame 0x000000000000512c 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-init.o) + .debug_frame 0x0000000000005158 0x30 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-malloc.o) + .debug_frame 0x0000000000005188 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memset.o) + .debug_frame 0x00000000000051a8 0x38 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-freer.o) + .debug_frame 0x00000000000051e0 0x30 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-mallocr.o) + .debug_frame 0x0000000000005210 0x94 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_float.o) + .debug_frame 0x00000000000052a4 0x60 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf_i.o) + .debug_frame 0x0000000000005304 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-sbrkr.o) + .debug_frame 0x0000000000005330 0x6c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-sprintf.o) + .debug_frame 0x000000000000539c 0x6c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-dtoa.o) + .debug_frame 0x0000000000005408 0x40 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-localeconv.o) + .debug_frame 0x0000000000005448 0x28 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memchr-stub.o) + .debug_frame 0x0000000000005470 0x28 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memcpy-stub.o) + .debug_frame 0x0000000000005498 0x30 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mlock.o) + .debug_frame 0x00000000000054c8 0x254 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mprec.o) + .debug_frame 0x000000000000571c 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-callocr.o) + .debug_frame 0x0000000000005748 0x90 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-svfprintf.o) + .debug_frame 0x00000000000057d8 0x5c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-reent.o) + .debug_frame 0x0000000000005834 0x40 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-assert.o) + .debug_frame 0x0000000000005874 0x64 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fprintf.o) + .debug_frame 0x00000000000058d8 0x48 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-locale.o) + .debug_frame 0x0000000000005920 0xb0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lock.o) + .debug_frame 0x00000000000059d0 0x48 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-mbtowc_r.o) + .debug_frame 0x0000000000005a18 0x28 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-memmove.o) + .debug_frame 0x0000000000005a40 0x3c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-reallocr.o) + .debug_frame 0x0000000000005a7c 0xac /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-vfprintf.o) + .debug_frame 0x0000000000005b28 0x40 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-wbuf.o) + .debug_frame 0x0000000000005b68 0x3c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-wctomb_r.o) + .debug_frame 0x0000000000005ba4 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-wsetup.o) + .debug_frame 0x0000000000005bd0 0x28 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-abort.o) + .debug_frame 0x0000000000005bf8 0x5c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fflush.o) + .debug_frame 0x0000000000005c54 0x14c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-findfp.o) + .debug_frame 0x0000000000005da0 0x54 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fwalk.o) + .debug_frame 0x0000000000005df4 0x58 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-makebuf.o) + .debug_frame 0x0000000000005e4c 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-msizer.o) + .debug_frame 0x0000000000005e6c 0xcc /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-signal.o) + .debug_frame 0x0000000000005f38 0x3c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-signalr.o) + .debug_frame 0x0000000000005f74 0x88 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-stdio.o) + .debug_frame 0x0000000000005ffc 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-writer.o) + .debug_frame 0x0000000000006028 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-closer.o) + .debug_frame 0x0000000000006054 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-fstatr.o) + .debug_frame 0x0000000000006080 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-isattyr.o) + .debug_frame 0x00000000000060ac 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-lseekr.o) + .debug_frame 0x00000000000060d8 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-readr.o) + .debug_frame 0x0000000000006104 0xac /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubdf3.o) + .debug_frame 0x00000000000061b0 0x50 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivdf3.o) + .debug_frame 0x0000000000006200 0xc4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_cmpdf2.o) + .debug_frame 0x00000000000062c4 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_unorddf2.o) + .debug_frame 0x00000000000062e4 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixdfsi.o) + .debug_frame 0x0000000000006308 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_truncdfsf2.o) + .debug_frame 0x000000000000632c 0x4c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_addsubsf3.o) + .debug_frame 0x0000000000006378 0x38 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_muldivsf3.o) + .debug_frame 0x00000000000063b0 0x24 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v7-m/nofp/libgcc.a(_arm_fixsfsi.o) diff --git a/HW_Devices/rs522.c b/HW_Devices/rs522.c index 8e7f791..37183dc 100644 --- a/HW_Devices/rs522.c +++ b/HW_Devices/rs522.c @@ -423,7 +423,7 @@ char PcdSelect ( uint8_t * pSnr ) * = MI_OK,成功 * 调用 :外部调用 */ -char PcdAuthState ( uint8_t ucAuth_mode, uint8_t ucAddr, uint8_t * pKey, uint8_t * pSnr ) +char PcdAuthState ( uint8_t ucAuth_mode, uint8_t ucAddr, char * pKey, uint8_t * pSnr ) { char cStatus; uint8_t uc, ucComMF522Buf [ MAXRLEN ]; diff --git a/HW_Devices/rs522.h b/HW_Devices/rs522.h index ec2e81d..fadfa9b 100644 --- a/HW_Devices/rs522.h +++ b/HW_Devices/rs522.h @@ -127,5 +127,9 @@ void RC522_Init( void ); //初始化 +char PcdRequest ( uint8_t ucReq_code, uint8_t * pTagType ); +char PcdAnticoll ( uint8_t * pSnr ); +char PcdRead ( uint8_t ucAddr, uint8_t * pData ); +char PcdAuthState ( uint8_t ucAuth_mode, uint8_t ucAddr, char * pKey, uint8_t * pSnr ); #endif /* RS522_H_ */ diff --git a/SW_APPs/APP_IDcard.c b/SW_APPs/APP_IDcard.c index 7f3e1c1..16c98c7 100644 --- a/SW_APPs/APP_IDcard.c +++ b/SW_APPs/APP_IDcard.c @@ -7,15 +7,52 @@ #include "APP_IDcard.h" window *idcard_window; +char idcard_str[32]; void APP_IDcard_init(window *a_window) { idcard_window=a_window; RC522_Init(); } +unsigned char CT[2]; +unsigned char SN[4]; +unsigned char RFID[16]; +unsigned char status; +unsigned char s=0x08; +char KEY[6]={0xff,0xff,0xff,0xff,0xff,0xff}; +uint32_t card_number_D=0; void APP_IDcard_loop() { + status = PcdRequest(PICC_REQALL,CT); + if(status==MI_OK) + { + status=MI_ERR; + status = PcdAnticoll(SN); + } + if (status==MI_OK) + { + status=MI_ERR; + card_number_D=(SN[2]<<16)+(SN[1]<<8)+(SN[0]); + PcdRead(0,RFID); + sprintf(idcard_str,"CardId:%d",card_number_D); + LCD_ShowString(idcard_window->x, idcard_window->y+16, idcard_str, 16, GREEN, RED); + + status=MI_ERR; + status =PcdAuthState(0,0,KEY,SN); + } + if(status==MI_OK) + { + LCD_ShowString(idcard_window->x, idcard_window->y+32, "KEY_OK", 16, GREEN, RED); + status=MI_ERR; + status=PcdRead(0,RFID); + } + if(status==MI_OK) + { + sprintf(idcard_str,"%x%x%x%x%x%x%x%x%x%x%x%x%x%x%x%x",RFID[0],RFID[1],RFID[2],RFID[3],RFID[4],RFID[5],RFID[6],RFID[7],RFID[8],RFID[9],RFID[10],RFID[11],RFID[12],RFID[13],RFID[14],RFID[15]); + LCD_ShowString(idcard_window->x, idcard_window->y+32, idcard_str, 16, GREEN, RED); + } + }