Component: ARM Compiler 5.05 update 1 (build 106) Tool: armlink [4d0efa] ============================================================================== Section Cross References main.o(.text) refers to delay.o(.text) for delay_init main.o(.text) refers to sys.o(.text) for NVIC_Configuration main.o(.text) refers to oled.o(.text) for OLED_Init main.o(.text) refers to main.o(.data) for BMP1 system_stm32f10x.o(.text) refers to system_stm32f10x.o(.data) for SystemCoreClock oled.o(.text) refers to stm32f10x_gpio.o(.text) for GPIO_SetBits oled.o(.text) refers to oled.o(.constdata) for F8X16 oled.o(.text) refers to stm32f10x_rcc.o(.text) for RCC_APB2PeriphClockCmd oled.o(.text) refers to delay.o(.text) for delay_ms oled.o(.text) refers to oled.o(.data) for Hzk delay.o(.text) refers to misc.o(.text) for SysTick_CLKSourceConfig delay.o(.text) refers to system_stm32f10x.o(.data) for SystemCoreClock delay.o(.text) refers to delay.o(.data) for fac_us sys.o(.text) refers to misc.o(.text) for NVIC_PriorityGroupConfig usart.o(.text) refers (Special) to use_no_semi_2.o(.text) for __use_no_semihosting usart.o(.text) refers to stm32f10x_rcc.o(.text) for RCC_APB2PeriphClockCmd usart.o(.text) refers to stm32f10x_gpio.o(.text) for GPIO_Init usart.o(.text) refers to misc.o(.text) for NVIC_Init usart.o(.text) refers to stm32f10x_usart.o(.text) for USART_Init usart.o(.text) refers to usart.o(.data) for USART_RX_STA usart.o(.text) refers to usart.o(.bss) for USART_RX_BUF usart.o(.bss) refers (Special) to use_no_semi_2.o(.text) for __use_no_semihosting usart.o(.data) refers (Special) to use_no_semi_2.o(.text) for __use_no_semihosting startup_stm32f10x_hd.o(STACK) refers (Special) to heapauxi.o(.text) for __use_two_region_memory startup_stm32f10x_hd.o(HEAP) refers (Special) to heapauxi.o(.text) for __use_two_region_memory startup_stm32f10x_hd.o(RESET) refers (Special) to heapauxi.o(.text) for __use_two_region_memory startup_stm32f10x_hd.o(RESET) refers to startup_stm32f10x_hd.o(STACK) for __initial_sp startup_stm32f10x_hd.o(RESET) refers to startup_stm32f10x_hd.o(.text) for Reset_Handler startup_stm32f10x_hd.o(RESET) refers to stm32f10x_it.o(.text) for NMI_Handler startup_stm32f10x_hd.o(RESET) refers to usart.o(.text) for USART1_IRQHandler startup_stm32f10x_hd.o(.text) refers (Special) to heapauxi.o(.text) for __use_two_region_memory startup_stm32f10x_hd.o(.text) refers to system_stm32f10x.o(.text) for SystemInit startup_stm32f10x_hd.o(.text) refers to __main.o(!!!main) for __main startup_stm32f10x_hd.o(.text) refers to startup_stm32f10x_hd.o(HEAP) for Heap_Mem startup_stm32f10x_hd.o(.text) refers to startup_stm32f10x_hd.o(STACK) for Stack_Mem stm32f10x_gpio.o(.text) refers to stm32f10x_rcc.o(.text) for RCC_APB2PeriphResetCmd stm32f10x_rcc.o(.text) refers to stm32f10x_rcc.o(.data) for APBAHBPrescTable stm32f10x_usart.o(.text) refers to stm32f10x_rcc.o(.text) for RCC_APB2PeriphResetCmd use_no_semi_2.o(.text) refers (Special) to use_no_semi.o(.text) for __use_no_semihosting_swi __main.o(!!!main) refers to __rtentry.o(.ARM.Collect$$rtentry$$00000000) for __rt_entry __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) for __rt_entry_li __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) for __rt_entry_main __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) for __rt_entry_postli_1 __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$00000009) for __rt_entry_postsh_1 __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry2.o(.ARM.Collect$$rtentry$$00000002) for __rt_entry_presh_1 __rtentry.o(.ARM.Collect$$rtentry$$00000000) refers (Special) to __rtentry4.o(.ARM.Collect$$rtentry$$00000004) for __rt_entry_sh __rtentry2.o(.ARM.Collect$$rtentry$$00000008) refers to boardinit2.o(.text) for _platform_post_stackheap_init __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) refers to libinit.o(.ARM.Collect$$libinit$$00000000) for __rt_lib_init __rtentry2.o(.ARM.Collect$$rtentry$$0000000B) refers to boardinit3.o(.text) for _platform_post_lib_init __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) refers to main.o(.text) for main __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) refers to exit.o(.text) for exit __rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$00000001) for .ARM.Collect$$rtentry$$00000001 __rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$00000008) for .ARM.Collect$$rtentry$$00000008 __rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) for .ARM.Collect$$rtentry$$0000000A __rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$0000000B) for .ARM.Collect$$rtentry$$0000000B __rtentry2.o(.ARM.exidx) refers to __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) for .ARM.Collect$$rtentry$$0000000D __rtentry4.o(.ARM.Collect$$rtentry$$00000004) refers to sys_stackheap_outer.o(.text) for __user_setup_stackheap __rtentry4.o(.ARM.exidx) refers to __rtentry4.o(.ARM.Collect$$rtentry$$00000004) for .ARM.Collect$$rtentry$$00000004 sys_stackheap_outer.o(.text) refers to libspace.o(.text) for __user_perproc_libspace sys_stackheap_outer.o(.text) refers to startup_stm32f10x_hd.o(.text) for __user_initial_stackheap exit.o(.text) refers to rtexit.o(.ARM.Collect$$rtexit$$00000000) for __rt_exit libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000002E) for __rt_lib_init_alloca_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000002C) for __rt_lib_init_argv_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000001B) for __rt_lib_init_atexit_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000021) for __rt_lib_init_clock_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000032) for __rt_lib_init_cpp_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000030) for __rt_lib_init_exceptions_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000002) for __rt_lib_init_fp_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000001F) for __rt_lib_init_fp_trap_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000023) for __rt_lib_init_getenv_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000000A) for __rt_lib_init_heap_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000011) for __rt_lib_init_lc_collate_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000013) for __rt_lib_init_lc_ctype_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000015) for __rt_lib_init_lc_monetary_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000017) for __rt_lib_init_lc_numeric_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000019) for __rt_lib_init_lc_time_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000004) for __rt_lib_init_preinit_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000000E) for __rt_lib_init_rand_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000033) for __rt_lib_init_return libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000001D) for __rt_lib_init_signal_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$00000025) for __rt_lib_init_stdio_1 libinit.o(.ARM.Collect$$libinit$$00000000) refers (Special) to libinit2.o(.ARM.Collect$$libinit$$0000000C) for __rt_lib_init_user_alloc_1 libspace.o(.text) refers to libspace.o(.bss) for __libspace_start rtexit.o(.ARM.Collect$$rtexit$$00000000) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000004) for __rt_exit_exit rtexit.o(.ARM.Collect$$rtexit$$00000000) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000003) for __rt_exit_ls rtexit.o(.ARM.Collect$$rtexit$$00000000) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000002) for __rt_exit_prels_1 rtexit.o(.ARM.exidx) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000004) for __rt_exit_exit rtexit.o(.ARM.exidx) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000003) for __rt_exit_ls rtexit.o(.ARM.exidx) refers (Special) to rtexit2.o(.ARM.Collect$$rtexit$$00000002) for __rt_exit_prels_1 rtexit.o(.ARM.exidx) refers to rtexit.o(.ARM.Collect$$rtexit$$00000000) for .ARM.Collect$$rtexit$$00000000 libinit2.o(.ARM.Collect$$libinit$$00000010) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F libinit2.o(.ARM.Collect$$libinit$$00000012) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F libinit2.o(.ARM.Collect$$libinit$$00000014) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F libinit2.o(.ARM.Collect$$libinit$$00000016) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F libinit2.o(.ARM.Collect$$libinit$$00000018) refers to libinit2.o(.ARM.Collect$$libinit$$0000000F) for .ARM.Collect$$libinit$$0000000F libinit2.o(.ARM.Collect$$libinit$$00000026) refers to argv_veneer.o(.emb_text) for __ARM_argv_veneer libinit2.o(.ARM.Collect$$libinit$$00000027) refers to argv_veneer.o(.emb_text) for __ARM_argv_veneer rtexit2.o(.ARM.Collect$$rtexit$$00000003) refers to libshutdown.o(.ARM.Collect$$libshutdown$$00000000) for __rt_lib_shutdown rtexit2.o(.ARM.Collect$$rtexit$$00000004) refers to usart.o(.text) for _sys_exit rtexit2.o(.ARM.exidx) refers to rtexit2.o(.ARM.Collect$$rtexit$$00000001) for .ARM.Collect$$rtexit$$00000001 rtexit2.o(.ARM.exidx) refers to rtexit2.o(.ARM.Collect$$rtexit$$00000003) for .ARM.Collect$$rtexit$$00000003 rtexit2.o(.ARM.exidx) refers to rtexit2.o(.ARM.Collect$$rtexit$$00000004) for .ARM.Collect$$rtexit$$00000004 argv_veneer.o(.emb_text) refers to no_argv.o(.text) for __ARM_get_argv _get_argv_nomalloc.o(.text) refers (Special) to hrguard.o(.text) for __heap_region$guard _get_argv_nomalloc.o(.text) refers to defsig_rtmem_outer.o(.text) for __rt_SIGRTMEM _get_argv_nomalloc.o(.text) refers to sys_command.o(.text) for _sys_command_string libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000006) for __rt_lib_shutdown_fp_trap_1 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$0000000E) for __rt_lib_shutdown_heap_1 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F) for __rt_lib_shutdown_return libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000009) for __rt_lib_shutdown_signal_1 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$00000003) for __rt_lib_shutdown_stdio_1 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) refers (Special) to libshutdown2.o(.ARM.Collect$$libshutdown$$0000000B) for __rt_lib_shutdown_user_alloc_1 sys_command.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting sys_command.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function defsig_rtmem_outer.o(.text) refers to defsig_rtmem_inner.o(.text) for __rt_SIGRTMEM_inner defsig_rtmem_outer.o(.text) refers to defsig_exit.o(.text) for __sig_exit defsig_rtmem_formal.o(.text) refers to rt_raise.o(.text) for __rt_raise rt_raise.o(.text) refers to __raise.o(.text) for __raise rt_raise.o(.text) refers to usart.o(.text) for _sys_exit defsig_exit.o(.text) refers to usart.o(.text) for _sys_exit defsig_rtmem_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display __raise.o(.text) refers to defsig.o(CL$$defsig) for __default_signal_handler defsig_general.o(.text) refers to sys_wrch.o(.text) for _ttywrch sys_wrch.o(.text) refers (Special) to use_no_semi.o(.text) for __I$use$semihosting sys_wrch.o(.text) refers (Special) to indicate_semi.o(.text) for __semihosting_library_function defsig.o(CL$$defsig) refers to defsig_rtmem_inner.o(.text) for __rt_SIGRTMEM_inner defsig_abrt_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display defsig_fpe_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display defsig_rtred_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display defsig_stak_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display defsig_pvfn_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display defsig_cppl_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display defsig_segv_inner.o(.text) refers to defsig_general.o(.text) for __default_signal_display defsig_other.o(.text) refers to defsig_general.o(.text) for __default_signal_display ============================================================================== Removing Unused input sections from the image. Removing core_cm3.o(.emb_text), (32 bytes). 1 unused section(s) (total 32 bytes) removed from the image. ============================================================================== Image Symbol Table Local Symbols Symbol Name Value Ov Type Size Object(Section) ../clib/angel/boardlib.s 0x00000000 Number 0 boardinit1.o ABSOLUTE ../clib/angel/boardlib.s 0x00000000 Number 0 boardinit2.o ABSOLUTE ../clib/angel/boardlib.s 0x00000000 Number 0 boardinit3.o ABSOLUTE ../clib/angel/boardlib.s 0x00000000 Number 0 boardshut.o ABSOLUTE ../clib/angel/dczerorl2.s 0x00000000 Number 0 __dczerorl2.o ABSOLUTE ../clib/angel/handlers.s 0x00000000 Number 0 __scatter_zi.o ABSOLUTE ../clib/angel/kernel.s 0x00000000 Number 0 rtexit.o ABSOLUTE ../clib/angel/kernel.s 0x00000000 Number 0 __rtentry2.o ABSOLUTE ../clib/angel/kernel.s 0x00000000 Number 0 __rtentry.o ABSOLUTE ../clib/angel/kernel.s 0x00000000 Number 0 rtexit2.o ABSOLUTE ../clib/angel/kernel.s 0x00000000 Number 0 __rtentry4.o ABSOLUTE ../clib/angel/rt.s 0x00000000 Number 0 rt_raise.o ABSOLUTE ../clib/angel/scatter.s 0x00000000 Number 0 __scatter.o ABSOLUTE ../clib/angel/startup.s 0x00000000 Number 0 __main.o ABSOLUTE ../clib/angel/sys.s 0x00000000 Number 0 libspace.o ABSOLUTE ../clib/angel/sys.s 0x00000000 Number 0 use_no_semi.o ABSOLUTE ../clib/angel/sys.s 0x00000000 Number 0 indicate_semi.o ABSOLUTE ../clib/angel/sys.s 0x00000000 Number 0 use_no_semi_2.o ABSOLUTE ../clib/angel/sys.s 0x00000000 Number 0 sys_stackheap_outer.o ABSOLUTE ../clib/angel/sysapp.c 0x00000000 Number 0 sys_command.o ABSOLUTE ../clib/angel/sysapp.c 0x00000000 Number 0 sys_wrch.o ABSOLUTE ../clib/armsys.c 0x00000000 Number 0 _get_argv_nomalloc.o ABSOLUTE ../clib/armsys.c 0x00000000 Number 0 no_argv.o ABSOLUTE ../clib/armsys.c 0x00000000 Number 0 argv_veneer.o ABSOLUTE ../clib/armsys.c 0x00000000 Number 0 argv_veneer.o ABSOLUTE ../clib/heapalloc.c 0x00000000 Number 0 hrguard.o ABSOLUTE ../clib/heapaux.c 0x00000000 Number 0 heapauxi.o ABSOLUTE ../clib/libinit.s 0x00000000 Number 0 libinit.o ABSOLUTE ../clib/libinit.s 0x00000000 Number 0 libinit2.o ABSOLUTE ../clib/libinit.s 0x00000000 Number 0 libshutdown2.o ABSOLUTE ../clib/libinit.s 0x00000000 Number 0 libshutdown.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_rtmem_outer.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_general.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_exit.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_rtmem_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_segv_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_other.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_rtmem_formal.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_rtred_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_pvfn_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_stak_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 __raise.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_cppl_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_fpe_inner.o ABSOLUTE ../clib/signal.c 0x00000000 Number 0 defsig_abrt_inner.o ABSOLUTE ../clib/signal.s 0x00000000 Number 0 defsig.o ABSOLUTE ../clib/stdlib.c 0x00000000 Number 0 exit.o ABSOLUTE ../fplib/fpinit.s 0x00000000 Number 0 fpinit.o ABSOLUTE ..\CORE\core_cm3.c 0x00000000 Number 0 core_cm3.o ABSOLUTE ..\CORE\startup_stm32f10x_hd.s 0x00000000 Number 0 startup_stm32f10x_hd.o ABSOLUTE ..\HARDWARE\OLED\oled.c 0x00000000 Number 0 oled.o ABSOLUTE ..\STM32F10x_FWLib\src\misc.c 0x00000000 Number 0 misc.o ABSOLUTE ..\STM32F10x_FWLib\src\stm32f10x_gpio.c 0x00000000 Number 0 stm32f10x_gpio.o ABSOLUTE ..\STM32F10x_FWLib\src\stm32f10x_rcc.c 0x00000000 Number 0 stm32f10x_rcc.o ABSOLUTE ..\STM32F10x_FWLib\src\stm32f10x_usart.c 0x00000000 Number 0 stm32f10x_usart.o ABSOLUTE ..\SYSTEM\delay\delay.c 0x00000000 Number 0 delay.o ABSOLUTE ..\SYSTEM\sys\sys.c 0x00000000 Number 0 sys.o ABSOLUTE ..\SYSTEM\usart\usart.c 0x00000000 Number 0 usart.o ABSOLUTE ..\\CORE\\core_cm3.c 0x00000000 Number 0 core_cm3.o ABSOLUTE dc.s 0x00000000 Number 0 dc.o ABSOLUTE main.c 0x00000000 Number 0 main.o ABSOLUTE stm32f10x_it.c 0x00000000 Number 0 stm32f10x_it.o ABSOLUTE system_stm32f10x.c 0x00000000 Number 0 system_stm32f10x.o ABSOLUTE RESET 0x08000000 Section 304 startup_stm32f10x_hd.o(RESET) !!!main 0x08000130 Section 8 __main.o(!!!main) !!!scatter 0x08000138 Section 52 __scatter.o(!!!scatter) !!dczerorl2 0x0800016c Section 90 __dczerorl2.o(!!dczerorl2) !!handler_zi 0x080001c8 Section 28 __scatter_zi.o(!!handler_zi) .ARM.Collect$$libinit$$00000000 0x080001e4 Section 2 libinit.o(.ARM.Collect$$libinit$$00000000) .ARM.Collect$$libinit$$00000002 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000002) .ARM.Collect$$libinit$$00000004 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000004) .ARM.Collect$$libinit$$0000000A 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000A) .ARM.Collect$$libinit$$0000000C 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000C) .ARM.Collect$$libinit$$0000000E 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000000E) .ARM.Collect$$libinit$$00000011 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000011) .ARM.Collect$$libinit$$00000013 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000013) .ARM.Collect$$libinit$$00000015 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000015) .ARM.Collect$$libinit$$00000017 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000017) .ARM.Collect$$libinit$$00000019 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000019) .ARM.Collect$$libinit$$0000001B 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001B) .ARM.Collect$$libinit$$0000001D 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001D) .ARM.Collect$$libinit$$0000001F 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000001F) .ARM.Collect$$libinit$$00000021 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000021) .ARM.Collect$$libinit$$00000023 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000023) .ARM.Collect$$libinit$$00000025 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000025) .ARM.Collect$$libinit$$0000002C 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000002C) .ARM.Collect$$libinit$$0000002E 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$0000002E) .ARM.Collect$$libinit$$00000030 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000030) .ARM.Collect$$libinit$$00000032 0x080001e6 Section 0 libinit2.o(.ARM.Collect$$libinit$$00000032) .ARM.Collect$$libinit$$00000033 0x080001e6 Section 2 libinit2.o(.ARM.Collect$$libinit$$00000033) .ARM.Collect$$libshutdown$$00000000 0x080001e8 Section 2 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) .ARM.Collect$$libshutdown$$00000003 0x080001ea Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000003) .ARM.Collect$$libshutdown$$00000006 0x080001ea Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000006) .ARM.Collect$$libshutdown$$00000009 0x080001ea Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000009) .ARM.Collect$$libshutdown$$0000000B 0x080001ea Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000B) .ARM.Collect$$libshutdown$$0000000E 0x080001ea Section 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000E) .ARM.Collect$$libshutdown$$0000000F 0x080001ea Section 2 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F) .ARM.Collect$$rtentry$$00000000 0x080001ec Section 0 __rtentry.o(.ARM.Collect$$rtentry$$00000000) .ARM.Collect$$rtentry$$00000002 0x080001ec Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000002) .ARM.Collect$$rtentry$$00000004 0x080001ec Section 6 __rtentry4.o(.ARM.Collect$$rtentry$$00000004) .ARM.Collect$$rtentry$$00000009 0x080001f2 Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000009) .ARM.Collect$$rtentry$$0000000A 0x080001f2 Section 4 __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) .ARM.Collect$$rtentry$$0000000C 0x080001f6 Section 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) .ARM.Collect$$rtentry$$0000000D 0x080001f6 Section 8 __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) .ARM.Collect$$rtexit$$00000000 0x080001fe Section 2 rtexit.o(.ARM.Collect$$rtexit$$00000000) .ARM.Collect$$rtexit$$00000002 0x08000200 Section 0 rtexit2.o(.ARM.Collect$$rtexit$$00000002) .ARM.Collect$$rtexit$$00000003 0x08000200 Section 4 rtexit2.o(.ARM.Collect$$rtexit$$00000003) .ARM.Collect$$rtexit$$00000004 0x08000204 Section 6 rtexit2.o(.ARM.Collect$$rtexit$$00000004) .text 0x0800020c Section 0 main.o(.text) .text 0x080003ac Section 0 stm32f10x_it.o(.text) .text 0x080003c8 Section 0 system_stm32f10x.o(.text) SetSysClockTo72 0x080003c9 Thumb Code 214 system_stm32f10x.o(.text) SetSysClock 0x0800049f Thumb Code 8 system_stm32f10x.o(.text) .text 0x080005a8 Section 0 oled.o(.text) .text 0x08000bc8 Section 0 delay.o(.text) .text 0x08000c9c Section 0 sys.o(.text) .text 0x08000ca8 Section 0 usart.o(.text) .text 0x08000de8 Section 64 startup_stm32f10x_hd.o(.text) .text 0x08000e28 Section 0 misc.o(.text) .text 0x08000f04 Section 0 stm32f10x_gpio.o(.text) .text 0x08001260 Section 0 stm32f10x_rcc.o(.text) .text 0x08001604 Section 0 stm32f10x_usart.o(.text) .text 0x08001a0c Section 2 use_no_semi_2.o(.text) .text 0x08001a0e Section 0 heapauxi.o(.text) .text 0x08001a14 Section 2 use_no_semi.o(.text) .text 0x08001a16 Section 74 sys_stackheap_outer.o(.text) .text 0x08001a60 Section 0 exit.o(.text) .text 0x08001a6c Section 8 libspace.o(.text) .constdata 0x08001a74 Section 2072 oled.o(.constdata) .data 0x20000000 Section 1024 main.o(.data) .data 0x20000400 Section 20 system_stm32f10x.o(.data) .data 0x20000414 Section 896 oled.o(.data) .data 0x20000794 Section 4 delay.o(.data) fac_us 0x20000794 Data 1 delay.o(.data) fac_ms 0x20000796 Data 2 delay.o(.data) .data 0x20000798 Section 6 usart.o(.data) .data 0x2000079e Section 20 stm32f10x_rcc.o(.data) APBAHBPrescTable 0x2000079e Data 16 stm32f10x_rcc.o(.data) ADCPrescTable 0x200007ae Data 4 stm32f10x_rcc.o(.data) .bss 0x200007b4 Section 200 usart.o(.bss) .bss 0x2000087c Section 96 libspace.o(.bss) HEAP 0x200008e0 Section 512 startup_stm32f10x_hd.o(HEAP) Heap_Mem 0x200008e0 Data 512 startup_stm32f10x_hd.o(HEAP) STACK 0x20000ae0 Section 1024 startup_stm32f10x_hd.o(STACK) Stack_Mem 0x20000ae0 Data 1024 startup_stm32f10x_hd.o(STACK) __initial_sp 0x20000ee0 Data 0 startup_stm32f10x_hd.o(STACK) Global Symbols Symbol Name Value Ov Type Size Object(Section) BuildAttributes$$THM_ISAv4$P$D$K$B$S$PE$A:L22UL41UL21$X:L11$S22US41US21$IEEE1$IW$USESV6$~STKCKD$USESV7$~SHL$OSPACE$ROPI$EBA8$UX$STANDARDLIB$REQ8$PRES8$EABIv2 0x00000000 Number 0 anon$$obj.o ABSOLUTE __ARM_use_no_argv 0x00000000 Number 0 main.o ABSOLUTE __ARM_exceptions_init - Undefined Weak Reference __alloca_initialize - Undefined Weak Reference __arm_preinit_ - Undefined Weak Reference __cpp_initialize__aeabi_ - Undefined Weak Reference __cxa_finalize - Undefined Weak Reference __rt_locale - Undefined Weak Reference __sigvec_lookup - Undefined Weak Reference _atexit_init - Undefined Weak Reference _call_atexit_fns - Undefined Weak Reference _clock_init - Undefined Weak Reference _fp_trap_init - Undefined Weak Reference _fp_trap_shutdown - Undefined Weak Reference _get_lc_collate - Undefined Weak Reference _get_lc_ctype - Undefined Weak Reference _get_lc_monetary - Undefined Weak Reference _get_lc_numeric - Undefined Weak Reference _get_lc_time - Undefined Weak Reference _getenv_init - Undefined Weak Reference _handle_redirection - Undefined Weak Reference _init_alloc - Undefined Weak Reference _init_user_alloc - Undefined Weak Reference _initio - Undefined Weak Reference _rand_init - Undefined Weak Reference _signal_finish - Undefined Weak Reference _signal_init - Undefined Weak Reference _terminate_alloc - Undefined Weak Reference _terminate_user_alloc - Undefined Weak Reference _terminateio - Undefined Weak Reference __Vectors_Size 0x00000130 Number 0 startup_stm32f10x_hd.o ABSOLUTE __Vectors 0x08000000 Data 4 startup_stm32f10x_hd.o(RESET) __Vectors_End 0x08000130 Data 0 startup_stm32f10x_hd.o(RESET) __main 0x08000131 Thumb Code 8 __main.o(!!!main) __scatterload 0x08000139 Thumb Code 0 __scatter.o(!!!scatter) __scatterload_rt2 0x08000139 Thumb Code 44 __scatter.o(!!!scatter) __scatterload_rt2_thumb_only 0x08000139 Thumb Code 0 __scatter.o(!!!scatter) __scatterload_null 0x08000147 Thumb Code 0 __scatter.o(!!!scatter) __decompress 0x0800016d Thumb Code 90 __dczerorl2.o(!!dczerorl2) __decompress1 0x0800016d Thumb Code 0 __dczerorl2.o(!!dczerorl2) __scatterload_zeroinit 0x080001c9 Thumb Code 28 __scatter_zi.o(!!handler_zi) __rt_lib_init 0x080001e5 Thumb Code 0 libinit.o(.ARM.Collect$$libinit$$00000000) __rt_lib_init_alloca_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000002E) __rt_lib_init_argv_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000002C) __rt_lib_init_atexit_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001B) __rt_lib_init_clock_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000021) __rt_lib_init_cpp_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000032) __rt_lib_init_exceptions_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000030) __rt_lib_init_fp_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000002) __rt_lib_init_fp_trap_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001F) __rt_lib_init_getenv_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000023) __rt_lib_init_heap_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000A) __rt_lib_init_lc_collate_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000011) __rt_lib_init_lc_ctype_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000013) __rt_lib_init_lc_monetary_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000015) __rt_lib_init_lc_numeric_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000017) __rt_lib_init_lc_time_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000019) __rt_lib_init_preinit_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000004) __rt_lib_init_rand_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000E) __rt_lib_init_return 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000033) __rt_lib_init_signal_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000001D) __rt_lib_init_stdio_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$00000025) __rt_lib_init_user_alloc_1 0x080001e7 Thumb Code 0 libinit2.o(.ARM.Collect$$libinit$$0000000C) __rt_lib_shutdown 0x080001e9 Thumb Code 0 libshutdown.o(.ARM.Collect$$libshutdown$$00000000) __rt_lib_shutdown_fp_trap_1 0x080001eb Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000006) __rt_lib_shutdown_heap_1 0x080001eb Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000E) __rt_lib_shutdown_return 0x080001eb Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F) __rt_lib_shutdown_signal_1 0x080001eb Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000009) __rt_lib_shutdown_stdio_1 0x080001eb Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$00000003) __rt_lib_shutdown_user_alloc_1 0x080001eb Thumb Code 0 libshutdown2.o(.ARM.Collect$$libshutdown$$0000000B) __rt_entry 0x080001ed Thumb Code 0 __rtentry.o(.ARM.Collect$$rtentry$$00000000) __rt_entry_presh_1 0x080001ed Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000002) __rt_entry_sh 0x080001ed Thumb Code 0 __rtentry4.o(.ARM.Collect$$rtentry$$00000004) __rt_entry_li 0x080001f3 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000A) __rt_entry_postsh_1 0x080001f3 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$00000009) __rt_entry_main 0x080001f7 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000D) __rt_entry_postli_1 0x080001f7 Thumb Code 0 __rtentry2.o(.ARM.Collect$$rtentry$$0000000C) __rt_exit 0x080001ff Thumb Code 0 rtexit.o(.ARM.Collect$$rtexit$$00000000) __rt_exit_ls 0x08000201 Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000003) __rt_exit_prels_1 0x08000201 Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000002) __rt_exit_exit 0x08000205 Thumb Code 0 rtexit2.o(.ARM.Collect$$rtexit$$00000004) main 0x0800020d Thumb Code 378 main.o(.text) NMI_Handler 0x080003ad Thumb Code 2 stm32f10x_it.o(.text) HardFault_Handler 0x080003af Thumb Code 4 stm32f10x_it.o(.text) MemManage_Handler 0x080003b3 Thumb Code 4 stm32f10x_it.o(.text) BusFault_Handler 0x080003b7 Thumb Code 4 stm32f10x_it.o(.text) UsageFault_Handler 0x080003bb Thumb Code 4 stm32f10x_it.o(.text) SVC_Handler 0x080003bf Thumb Code 2 stm32f10x_it.o(.text) DebugMon_Handler 0x080003c1 Thumb Code 2 stm32f10x_it.o(.text) PendSV_Handler 0x080003c3 Thumb Code 2 stm32f10x_it.o(.text) SysTick_Handler 0x080003c5 Thumb Code 2 stm32f10x_it.o(.text) SystemInit 0x080004a7 Thumb Code 78 system_stm32f10x.o(.text) SystemCoreClockUpdate 0x080004f5 Thumb Code 142 system_stm32f10x.o(.text) IIC_Start 0x080005a9 Thumb Code 44 oled.o(.text) IIC_Stop 0x080005d5 Thumb Code 34 oled.o(.text) IIC_Wait_Ack 0x080005f7 Thumb Code 24 oled.o(.text) Write_IIC_Byte 0x0800060f Thumb Code 88 oled.o(.text) Write_IIC_Command 0x08000667 Thumb Code 44 oled.o(.text) Write_IIC_Data 0x08000693 Thumb Code 44 oled.o(.text) OLED_WR_Byte 0x080006bf Thumb Code 24 oled.o(.text) fill_picture 0x080006d7 Thumb Code 64 oled.o(.text) Delay_50ms 0x08000717 Thumb Code 22 oled.o(.text) Delay_1ms 0x0800072d Thumb Code 26 oled.o(.text) OLED_Set_Pos 0x08000747 Thumb Code 46 oled.o(.text) OLED_Display_On 0x08000775 Thumb Code 28 oled.o(.text) OLED_Display_Off 0x08000791 Thumb Code 28 oled.o(.text) OLED_Clear 0x080007ad Thumb Code 62 oled.o(.text) OLED_On 0x080007eb Thumb Code 62 oled.o(.text) OLED_ShowChar 0x08000829 Thumb Code 154 oled.o(.text) oled_pow 0x080008c3 Thumb Code 22 oled.o(.text) OLED_ShowNum 0x080008d9 Thumb Code 136 oled.o(.text) OLED_ShowString 0x08000961 Thumb Code 72 oled.o(.text) OLED_ShowCHinese 0x080009a9 Thumb Code 98 oled.o(.text) OLED_DrawBMP 0x08000a0b Thumb Code 118 oled.o(.text) OLED_Init 0x08000a81 Thumb Code 314 oled.o(.text) delay_init 0x08000bc9 Thumb Code 50 delay.o(.text) delay_us 0x08000bfb Thumb Code 72 delay.o(.text) delay_ms 0x08000c43 Thumb Code 72 delay.o(.text) NVIC_Configuration 0x08000c9d Thumb Code 12 sys.o(.text) _sys_exit 0x08000ca9 Thumb Code 6 usart.o(.text) fputc 0x08000caf Thumb Code 24 usart.o(.text) uart_init 0x08000cc7 Thumb Code 152 usart.o(.text) USART1_IRQHandler 0x08000d5f Thumb Code 122 usart.o(.text) Reset_Handler 0x08000de9 Thumb Code 8 startup_stm32f10x_hd.o(.text) ADC1_2_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) ADC3_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) CAN1_RX1_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) CAN1_SCE_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) DMA1_Channel1_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) DMA1_Channel2_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) DMA1_Channel3_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) DMA1_Channel4_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) DMA1_Channel5_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) DMA1_Channel6_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) DMA1_Channel7_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) DMA2_Channel1_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) DMA2_Channel2_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) DMA2_Channel3_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) DMA2_Channel4_5_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) EXTI0_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) EXTI15_10_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) EXTI1_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) EXTI2_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) EXTI3_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) EXTI4_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) EXTI9_5_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) FLASH_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) FSMC_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) I2C1_ER_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) I2C1_EV_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) I2C2_ER_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) I2C2_EV_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) PVD_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) RCC_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) RTCAlarm_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) RTC_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) SDIO_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) SPI1_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) SPI2_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) SPI3_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) TAMPER_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) TIM1_BRK_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) TIM1_CC_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) TIM1_TRG_COM_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) TIM1_UP_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) TIM2_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) TIM3_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) TIM4_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) TIM5_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) TIM6_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) TIM7_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) TIM8_BRK_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) TIM8_CC_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) TIM8_TRG_COM_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) TIM8_UP_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) UART4_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) UART5_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) USART2_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) USART3_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) USBWakeUp_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) USB_HP_CAN1_TX_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) USB_LP_CAN1_RX0_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) WWDG_IRQHandler 0x08000e03 Thumb Code 0 startup_stm32f10x_hd.o(.text) __user_initial_stackheap 0x08000e05 Thumb Code 0 startup_stm32f10x_hd.o(.text) NVIC_PriorityGroupConfig 0x08000e29 Thumb Code 10 misc.o(.text) NVIC_Init 0x08000e33 Thumb Code 100 misc.o(.text) NVIC_SetVectorTable 0x08000e97 Thumb Code 14 misc.o(.text) NVIC_SystemLPConfig 0x08000ea5 Thumb Code 34 misc.o(.text) SysTick_CLKSourceConfig 0x08000ec7 Thumb Code 40 misc.o(.text) GPIO_DeInit 0x08000f05 Thumb Code 172 stm32f10x_gpio.o(.text) GPIO_AFIODeInit 0x08000fb1 Thumb Code 20 stm32f10x_gpio.o(.text) GPIO_Init 0x08000fc5 Thumb Code 278 stm32f10x_gpio.o(.text) GPIO_StructInit 0x080010db Thumb Code 16 stm32f10x_gpio.o(.text) GPIO_ReadInputDataBit 0x080010eb Thumb Code 18 stm32f10x_gpio.o(.text) GPIO_ReadInputData 0x080010fd Thumb Code 8 stm32f10x_gpio.o(.text) GPIO_ReadOutputDataBit 0x08001105 Thumb Code 18 stm32f10x_gpio.o(.text) GPIO_ReadOutputData 0x08001117 Thumb Code 8 stm32f10x_gpio.o(.text) GPIO_SetBits 0x0800111f Thumb Code 4 stm32f10x_gpio.o(.text) GPIO_ResetBits 0x08001123 Thumb Code 4 stm32f10x_gpio.o(.text) GPIO_WriteBit 0x08001127 Thumb Code 10 stm32f10x_gpio.o(.text) GPIO_Write 0x08001131 Thumb Code 4 stm32f10x_gpio.o(.text) GPIO_PinLockConfig 0x08001135 Thumb Code 18 stm32f10x_gpio.o(.text) GPIO_EventOutputConfig 0x08001147 Thumb Code 26 stm32f10x_gpio.o(.text) GPIO_EventOutputCmd 0x08001161 Thumb Code 6 stm32f10x_gpio.o(.text) GPIO_PinRemapConfig 0x08001167 Thumb Code 138 stm32f10x_gpio.o(.text) GPIO_EXTILineConfig 0x080011f1 Thumb Code 66 stm32f10x_gpio.o(.text) GPIO_ETH_MediaInterfaceConfig 0x08001233 Thumb Code 8 stm32f10x_gpio.o(.text) RCC_DeInit 0x08001261 Thumb Code 64 stm32f10x_rcc.o(.text) RCC_HSEConfig 0x080012a1 Thumb Code 70 stm32f10x_rcc.o(.text) RCC_GetFlagStatus 0x080012e7 Thumb Code 56 stm32f10x_rcc.o(.text) RCC_WaitForHSEStartUp 0x0800131f Thumb Code 56 stm32f10x_rcc.o(.text) RCC_AdjustHSICalibrationValue 0x08001357 Thumb Code 20 stm32f10x_rcc.o(.text) RCC_HSICmd 0x0800136b Thumb Code 6 stm32f10x_rcc.o(.text) RCC_PLLConfig 0x08001371 Thumb Code 24 stm32f10x_rcc.o(.text) RCC_PLLCmd 0x08001389 Thumb Code 6 stm32f10x_rcc.o(.text) RCC_SYSCLKConfig 0x0800138f Thumb Code 18 stm32f10x_rcc.o(.text) RCC_GetSYSCLKSource 0x080013a1 Thumb Code 10 stm32f10x_rcc.o(.text) RCC_HCLKConfig 0x080013ab Thumb Code 18 stm32f10x_rcc.o(.text) RCC_PCLK1Config 0x080013bd Thumb Code 18 stm32f10x_rcc.o(.text) RCC_PCLK2Config 0x080013cf Thumb Code 20 stm32f10x_rcc.o(.text) RCC_ITConfig 0x080013e3 Thumb Code 26 stm32f10x_rcc.o(.text) RCC_USBCLKConfig 0x080013fd Thumb Code 8 stm32f10x_rcc.o(.text) RCC_ADCCLKConfig 0x08001405 Thumb Code 18 stm32f10x_rcc.o(.text) RCC_LSEConfig 0x08001417 Thumb Code 50 stm32f10x_rcc.o(.text) RCC_LSICmd 0x08001449 Thumb Code 6 stm32f10x_rcc.o(.text) RCC_RTCCLKConfig 0x0800144f Thumb Code 12 stm32f10x_rcc.o(.text) RCC_RTCCLKCmd 0x0800145b Thumb Code 8 stm32f10x_rcc.o(.text) RCC_GetClocksFreq 0x08001463 Thumb Code 192 stm32f10x_rcc.o(.text) RCC_AHBPeriphClockCmd 0x08001523 Thumb Code 26 stm32f10x_rcc.o(.text) RCC_APB2PeriphClockCmd 0x0800153d Thumb Code 26 stm32f10x_rcc.o(.text) RCC_APB1PeriphClockCmd 0x08001557 Thumb Code 26 stm32f10x_rcc.o(.text) RCC_APB2PeriphResetCmd 0x08001571 Thumb Code 26 stm32f10x_rcc.o(.text) RCC_APB1PeriphResetCmd 0x0800158b Thumb Code 26 stm32f10x_rcc.o(.text) RCC_BackupResetCmd 0x080015a5 Thumb Code 8 stm32f10x_rcc.o(.text) RCC_ClockSecuritySystemCmd 0x080015ad Thumb Code 6 stm32f10x_rcc.o(.text) RCC_MCOConfig 0x080015b3 Thumb Code 6 stm32f10x_rcc.o(.text) RCC_ClearFlag 0x080015b9 Thumb Code 14 stm32f10x_rcc.o(.text) RCC_GetITStatus 0x080015c7 Thumb Code 20 stm32f10x_rcc.o(.text) RCC_ClearITPendingBit 0x080015db Thumb Code 6 stm32f10x_rcc.o(.text) USART_DeInit 0x08001605 Thumb Code 134 stm32f10x_usart.o(.text) USART_Init 0x0800168b Thumb Code 210 stm32f10x_usart.o(.text) USART_StructInit 0x0800175d Thumb Code 24 stm32f10x_usart.o(.text) USART_ClockInit 0x08001775 Thumb Code 34 stm32f10x_usart.o(.text) USART_ClockStructInit 0x08001797 Thumb Code 12 stm32f10x_usart.o(.text) USART_Cmd 0x080017a3 Thumb Code 24 stm32f10x_usart.o(.text) USART_ITConfig 0x080017bb Thumb Code 74 stm32f10x_usart.o(.text) USART_DMACmd 0x08001805 Thumb Code 18 stm32f10x_usart.o(.text) USART_SetAddress 0x08001817 Thumb Code 18 stm32f10x_usart.o(.text) USART_WakeUpConfig 0x08001829 Thumb Code 18 stm32f10x_usart.o(.text) USART_ReceiverWakeUpCmd 0x0800183b Thumb Code 24 stm32f10x_usart.o(.text) USART_LINBreakDetectLengthConfig 0x08001853 Thumb Code 18 stm32f10x_usart.o(.text) USART_LINCmd 0x08001865 Thumb Code 24 stm32f10x_usart.o(.text) USART_SendData 0x0800187d Thumb Code 8 stm32f10x_usart.o(.text) USART_ReceiveData 0x08001885 Thumb Code 10 stm32f10x_usart.o(.text) USART_SendBreak 0x0800188f Thumb Code 10 stm32f10x_usart.o(.text) USART_SetGuardTime 0x08001899 Thumb Code 16 stm32f10x_usart.o(.text) USART_SetPrescaler 0x080018a9 Thumb Code 16 stm32f10x_usart.o(.text) USART_SmartCardCmd 0x080018b9 Thumb Code 24 stm32f10x_usart.o(.text) USART_SmartCardNACKCmd 0x080018d1 Thumb Code 24 stm32f10x_usart.o(.text) USART_HalfDuplexCmd 0x080018e9 Thumb Code 24 stm32f10x_usart.o(.text) USART_OverSampling8Cmd 0x08001901 Thumb Code 22 stm32f10x_usart.o(.text) USART_OneBitMethodCmd 0x08001917 Thumb Code 24 stm32f10x_usart.o(.text) USART_IrDAConfig 0x0800192f Thumb Code 18 stm32f10x_usart.o(.text) USART_IrDACmd 0x08001941 Thumb Code 24 stm32f10x_usart.o(.text) USART_GetFlagStatus 0x08001959 Thumb Code 26 stm32f10x_usart.o(.text) USART_ClearFlag 0x08001973 Thumb Code 18 stm32f10x_usart.o(.text) USART_GetITStatus 0x08001985 Thumb Code 84 stm32f10x_usart.o(.text) USART_ClearITPendingBit 0x080019d9 Thumb Code 52 stm32f10x_usart.o(.text) __use_no_semihosting 0x08001a0d Thumb Code 2 use_no_semi_2.o(.text) __use_two_region_memory 0x08001a0f Thumb Code 2 heapauxi.o(.text) __rt_heap_escrow$2region 0x08001a11 Thumb Code 2 heapauxi.o(.text) __rt_heap_expand$2region 0x08001a13 Thumb Code 2 heapauxi.o(.text) __I$use$semihosting 0x08001a15 Thumb Code 0 use_no_semi.o(.text) __use_no_semihosting_swi 0x08001a15 Thumb Code 2 use_no_semi.o(.text) __user_setup_stackheap 0x08001a17 Thumb Code 74 sys_stackheap_outer.o(.text) exit 0x08001a61 Thumb Code 12 exit.o(.text) __user_libspace 0x08001a6d Thumb Code 8 libspace.o(.text) __user_perproc_libspace 0x08001a6d Thumb Code 0 libspace.o(.text) __user_perthread_libspace 0x08001a6d Thumb Code 0 libspace.o(.text) F6x8 0x08001a74 Data 552 oled.o(.constdata) F8X16 0x08001c9c Data 1520 oled.o(.constdata) Region$$Table$$Base 0x0800228c Number 0 anon$$obj.o(Region$$Table) Region$$Table$$Limit 0x080022ac Number 0 anon$$obj.o(Region$$Table) BMP1 0x20000000 Data 1024 main.o(.data) SystemCoreClock 0x20000400 Data 4 system_stm32f10x.o(.data) AHBPrescTable 0x20000404 Data 16 system_stm32f10x.o(.data) Hzk 0x20000414 Data 896 oled.o(.data) __stdout 0x20000798 Data 4 usart.o(.data) USART_RX_STA 0x2000079c Data 2 usart.o(.data) USART_RX_BUF 0x200007b4 Data 200 usart.o(.bss) __libspace_start 0x2000087c Data 96 libspace.o(.bss) __temporary_stack_top$libspace 0x200008dc Data 0 libspace.o(.bss) ============================================================================== Memory Map of the image Image Entry point : 0x08000131 Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00002a60, Max: 0x00040000, ABSOLUTE, COMPRESSED[0x00002514]) Execution Region ER_IROM1 (Base: 0x08000000, Size: 0x000022ac, Max: 0x00040000, ABSOLUTE) Base Addr Size Type Attr Idx E Section Name Object 0x08000000 0x00000130 Data RO 196 RESET startup_stm32f10x_hd.o 0x08000130 0x00000008 Code RO 257 * !!!main c_w.l(__main.o) 0x08000138 0x00000034 Code RO 413 !!!scatter c_w.l(__scatter.o) 0x0800016c 0x0000005a Code RO 411 !!dczerorl2 c_w.l(__dczerorl2.o) 0x080001c6 0x00000002 PAD 0x080001c8 0x0000001c Code RO 415 !!handler_zi c_w.l(__scatter_zi.o) 0x080001e4 0x00000002 Code RO 286 .ARM.Collect$$libinit$$00000000 c_w.l(libinit.o) 0x080001e6 0x00000000 Code RO 293 .ARM.Collect$$libinit$$00000002 c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 295 .ARM.Collect$$libinit$$00000004 c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 298 .ARM.Collect$$libinit$$0000000A c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 300 .ARM.Collect$$libinit$$0000000C c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 302 .ARM.Collect$$libinit$$0000000E c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 305 .ARM.Collect$$libinit$$00000011 c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 307 .ARM.Collect$$libinit$$00000013 c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 309 .ARM.Collect$$libinit$$00000015 c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 311 .ARM.Collect$$libinit$$00000017 c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 313 .ARM.Collect$$libinit$$00000019 c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 315 .ARM.Collect$$libinit$$0000001B c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 317 .ARM.Collect$$libinit$$0000001D c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 319 .ARM.Collect$$libinit$$0000001F c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 321 .ARM.Collect$$libinit$$00000021 c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 323 .ARM.Collect$$libinit$$00000023 c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 325 .ARM.Collect$$libinit$$00000025 c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 329 .ARM.Collect$$libinit$$0000002C c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 331 .ARM.Collect$$libinit$$0000002E c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 333 .ARM.Collect$$libinit$$00000030 c_w.l(libinit2.o) 0x080001e6 0x00000000 Code RO 335 .ARM.Collect$$libinit$$00000032 c_w.l(libinit2.o) 0x080001e6 0x00000002 Code RO 336 .ARM.Collect$$libinit$$00000033 c_w.l(libinit2.o) 0x080001e8 0x00000002 Code RO 354 .ARM.Collect$$libshutdown$$00000000 c_w.l(libshutdown.o) 0x080001ea 0x00000000 Code RO 365 .ARM.Collect$$libshutdown$$00000003 c_w.l(libshutdown2.o) 0x080001ea 0x00000000 Code RO 368 .ARM.Collect$$libshutdown$$00000006 c_w.l(libshutdown2.o) 0x080001ea 0x00000000 Code RO 371 .ARM.Collect$$libshutdown$$00000009 c_w.l(libshutdown2.o) 0x080001ea 0x00000000 Code RO 373 .ARM.Collect$$libshutdown$$0000000B c_w.l(libshutdown2.o) 0x080001ea 0x00000000 Code RO 376 .ARM.Collect$$libshutdown$$0000000E c_w.l(libshutdown2.o) 0x080001ea 0x00000002 Code RO 377 .ARM.Collect$$libshutdown$$0000000F c_w.l(libshutdown2.o) 0x080001ec 0x00000000 Code RO 261 .ARM.Collect$$rtentry$$00000000 c_w.l(__rtentry.o) 0x080001ec 0x00000000 Code RO 263 .ARM.Collect$$rtentry$$00000002 c_w.l(__rtentry2.o) 0x080001ec 0x00000006 Code RO 275 .ARM.Collect$$rtentry$$00000004 c_w.l(__rtentry4.o) 0x080001f2 0x00000000 Code RO 265 .ARM.Collect$$rtentry$$00000009 c_w.l(__rtentry2.o) 0x080001f2 0x00000004 Code RO 266 .ARM.Collect$$rtentry$$0000000A c_w.l(__rtentry2.o) 0x080001f6 0x00000000 Code RO 268 .ARM.Collect$$rtentry$$0000000C c_w.l(__rtentry2.o) 0x080001f6 0x00000008 Code RO 269 .ARM.Collect$$rtentry$$0000000D c_w.l(__rtentry2.o) 0x080001fe 0x00000002 Code RO 290 .ARM.Collect$$rtexit$$00000000 c_w.l(rtexit.o) 0x08000200 0x00000000 Code RO 338 .ARM.Collect$$rtexit$$00000002 c_w.l(rtexit2.o) 0x08000200 0x00000004 Code RO 339 .ARM.Collect$$rtexit$$00000003 c_w.l(rtexit2.o) 0x08000204 0x00000006 Code RO 340 .ARM.Collect$$rtexit$$00000004 c_w.l(rtexit2.o) 0x0800020a 0x00000002 PAD 0x0800020c 0x000001a0 Code RO 1 .text main.o 0x080003ac 0x0000001a Code RO 65 .text stm32f10x_it.o 0x080003c6 0x00000002 PAD 0x080003c8 0x000001e0 Code RO 97 .text system_stm32f10x.o 0x080005a8 0x00000620 Code RO 115 .text oled.o 0x08000bc8 0x000000d4 Code RO 134 .text delay.o 0x08000c9c 0x0000000c Code RO 148 .text sys.o 0x08000ca8 0x00000140 Code RO 160 .text usart.o 0x08000de8 0x00000040 Code RO 197 .text startup_stm32f10x_hd.o 0x08000e28 0x000000dc Code RO 201 .text misc.o 0x08000f04 0x0000035c Code RO 213 .text stm32f10x_gpio.o 0x08001260 0x000003a4 Code RO 225 .text stm32f10x_rcc.o 0x08001604 0x00000408 Code RO 239 .text stm32f10x_usart.o 0x08001a0c 0x00000002 Code RO 253 .text c_w.l(use_no_semi_2.o) 0x08001a0e 0x00000006 Code RO 255 .text c_w.l(heapauxi.o) 0x08001a14 0x00000002 Code RO 259 .text c_w.l(use_no_semi.o) 0x08001a16 0x0000004a Code RO 277 .text c_w.l(sys_stackheap_outer.o) 0x08001a60 0x0000000c Code RO 279 .text c_w.l(exit.o) 0x08001a6c 0x00000008 Code RO 287 .text c_w.l(libspace.o) 0x08001a74 0x00000818 Data RO 116 .constdata oled.o 0x0800228c 0x00000020 Data RO 409 Region$$Table anon$$obj.o Execution Region RW_IRAM1 (Base: 0x20000000, Size: 0x00000ee0, Max: 0x0000c000, ABSOLUTE, COMPRESSED[0x00000268]) Base Addr Size Type Attr Idx E Section Name Object 0x20000000 0x00000400 Data RW 2 .data main.o 0x20000400 0x00000014 Data RW 98 .data system_stm32f10x.o 0x20000414 0x00000380 Data RW 117 .data oled.o 0x20000794 0x00000004 Data RW 135 .data delay.o 0x20000798 0x00000006 Data RW 162 .data usart.o 0x2000079e 0x00000014 Data RW 226 .data stm32f10x_rcc.o 0x200007b2 0x00000002 PAD 0x200007b4 0x000000c8 Zero RW 161 .bss usart.o 0x2000087c 0x00000060 Zero RW 288 .bss c_w.l(libspace.o) 0x200008dc 0x00000004 PAD 0x200008e0 0x00000200 Zero RW 195 HEAP startup_stm32f10x_hd.o 0x20000ae0 0x00000400 Zero RW 194 STACK startup_stm32f10x_hd.o ============================================================================== Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug Object Name 0 0 0 0 0 32 core_cm3.o 212 18 0 4 0 1303 delay.o 416 38 0 1024 0 234694 main.o 220 22 0 0 0 2089 misc.o 1568 28 2072 896 0 7111 oled.o 64 26 304 0 1536 904 startup_stm32f10x_hd.o 860 38 0 0 0 5933 stm32f10x_gpio.o 26 0 0 0 0 1326 stm32f10x_it.o 932 36 0 20 0 9248 stm32f10x_rcc.o 1032 22 0 0 0 8660 stm32f10x_usart.o 12 0 0 0 0 597 sys.o 480 38 0 20 0 2175 system_stm32f10x.o 320 16 0 6 200 3578 usart.o ---------------------------------------------------------------------- 6144 282 2408 1972 1736 277650 Object Totals 0 0 32 0 0 0 (incl. Generated) 2 0 0 2 0 0 (incl. Padding) ---------------------------------------------------------------------- Code (inc. data) RO Data RW Data ZI Data Debug Library Member Name 90 0 0 0 0 0 __dczerorl2.o 8 0 0 0 0 68 __main.o 0 0 0 0 0 0 __rtentry.o 12 0 0 0 0 0 __rtentry2.o 6 0 0 0 0 0 __rtentry4.o 52 8 0 0 0 0 __scatter.o 28 0 0 0 0 0 __scatter_zi.o 12 0 0 0 0 72 exit.o 6 0 0 0 0 152 heapauxi.o 2 0 0 0 0 0 libinit.o 2 0 0 0 0 0 libinit2.o 2 0 0 0 0 0 libshutdown.o 2 0 0 0 0 0 libshutdown2.o 8 4 0 0 96 68 libspace.o 2 0 0 0 0 0 rtexit.o 10 0 0 0 0 0 rtexit2.o 74 0 0 0 0 80 sys_stackheap_outer.o 2 0 0 0 0 68 use_no_semi.o 2 0 0 0 0 68 use_no_semi_2.o ---------------------------------------------------------------------- 324 12 0 0 100 576 Library Totals 4 0 0 0 4 0 (incl. Padding) ---------------------------------------------------------------------- Code (inc. data) RO Data RW Data ZI Data Debug Library Name 320 12 0 0 96 576 c_w.l ---------------------------------------------------------------------- 324 12 0 0 100 576 Library Totals ---------------------------------------------------------------------- ============================================================================== Code (inc. data) RO Data RW Data ZI Data Debug 6468 294 2408 1972 1836 277234 Grand Totals 6468 294 2408 616 1836 277234 ELF Image Totals (compressed) 6468 294 2408 616 0 0 ROM Totals ============================================================================== Total RO Size (Code + RO Data) 8876 ( 8.67kB) Total RW Size (RW Data + ZI Data) 3808 ( 3.72kB) Total ROM Size (Code + RO Data + RW Data) 9492 ( 9.27kB) ==============================================================================