From ec3959a61900ea58b10fae48d86605d25f731d05 Mon Sep 17 00:00:00 2001 From: Piotr Lewandowski Date: Sun, 18 Jun 2023 18:55:46 +0200 Subject: [PATCH] open-ocd-cfg --- .vscode/clone_stm32g0x.cfg | 84 + .vscode/launch.json | 28 + .vscode/stm32g030.svd | 19059 ++++++++++++++++ .vscode/tasks.json | 20 + ...son => cache-v2-e7f8638ee66add4fdc98.json} | 2 +- ...> cmakeFiles-v1-317d5086de8d3535b537.json} | 3 + ...=> codemodel-v2-49654b474d8a03e7e2af.json} | 31 +- ...ocl_loader-Debug-9c533c3d418f8fe22477.json | 14 + ...on => index-2023-06-18T12-46-29-0442.json} | 12 +- ...ocl_loader-Debug-484e0d1a1dd8371185c3.json | 328 + build/.ninja_deps | Bin 5020 -> 4792 bytes build/.ninja_log | 16 +- build/CMakeCache.txt | 2 +- build/CMakeFiles/TargetDirectories.txt | 3 + build/CMakeFiles/rules.ninja | 21 + build/build.ninja | 79 +- build/compile_commands.json | 6 + build/src/cmake_install.cmake | 5 + .../CMakeFiles/ocl_loader.dir/main.cpp.obj | Bin 0 -> 3028 bytes build/src/ocl_loader/cmake_install.cmake | 39 + build/src/ocl_loader/ocl_loader | Bin 0 -> 68592 bytes build/src/ocl_loader/ocl_loader.bin | Bin 0 -> 36 bytes build/src/ocl_loader/ocl_loader.hex | 7 + build/uv-k5-custom-build.map | 3228 +-- src/CMakeLists.txt | 3 +- src/ocl_loader/CMakeLists.txt | 62 + src/ocl_loader/main.c | 189 + src/ocl_loader/ocl.h | 0 src/ocl_loader/ram.lds | 44 + src/ocl_loader/registers.hpp | 18 + src/ocl_loader/stm32l4x.h | 152 + tools/dumps/Piotr — osobiste — skrót.lnk | Bin 0 -> 769 bytes tools/dumps/dp32g030.cfg | 105 + tools/dumps/dump1.bin | Bin 0 -> 65536 bytes tools/dumps/output.bin | Bin 0 -> 65536 bytes tools/dumps/output2.bin | Bin 0 -> 65536 bytes tools/dumps/output_00000_10000.bin | Bin 0 -> 65536 bytes tools/dumps/test.bin | Bin 0 -> 65536 bytes 38 files changed, 20403 insertions(+), 3157 deletions(-) create mode 100644 .vscode/clone_stm32g0x.cfg create mode 100644 .vscode/launch.json create mode 100644 .vscode/stm32g030.svd create mode 100644 .vscode/tasks.json rename build/.cmake/api/v1/reply/{cache-v2-858f034878c0238a2c00.json => cache-v2-e7f8638ee66add4fdc98.json} (99%) rename build/.cmake/api/v1/reply/{cmakeFiles-v1-c560891d5568a02c441b.json => cmakeFiles-v1-317d5086de8d3535b537.json} (98%) rename build/.cmake/api/v1/reply/{codemodel-v2-253f9563236830abe67f.json => codemodel-v2-49654b474d8a03e7e2af.json} (78%) create mode 100644 build/.cmake/api/v1/reply/directory-src.ocl_loader-Debug-9c533c3d418f8fe22477.json rename build/.cmake/api/v1/reply/{index-2023-06-16T16-21-58-0644.json => index-2023-06-18T12-46-29-0442.json} (83%) create mode 100644 build/.cmake/api/v1/reply/target-ocl_loader-Debug-484e0d1a1dd8371185c3.json create mode 100644 build/src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj create mode 100644 build/src/ocl_loader/cmake_install.cmake create mode 100644 build/src/ocl_loader/ocl_loader create mode 100644 build/src/ocl_loader/ocl_loader.bin create mode 100644 build/src/ocl_loader/ocl_loader.hex create mode 100644 src/ocl_loader/CMakeLists.txt create mode 100644 src/ocl_loader/main.c create mode 100644 src/ocl_loader/ocl.h create mode 100644 src/ocl_loader/ram.lds create mode 100644 src/ocl_loader/registers.hpp create mode 100644 src/ocl_loader/stm32l4x.h create mode 100644 tools/dumps/Piotr — osobiste — skrót.lnk create mode 100644 tools/dumps/dp32g030.cfg create mode 100644 tools/dumps/dump1.bin create mode 100644 tools/dumps/output.bin create mode 100644 tools/dumps/output2.bin create mode 100644 tools/dumps/output_00000_10000.bin create mode 100644 tools/dumps/test.bin diff --git a/.vscode/clone_stm32g0x.cfg b/.vscode/clone_stm32g0x.cfg new file mode 100644 index 0000000..306520e --- /dev/null +++ b/.vscode/clone_stm32g0x.cfg @@ -0,0 +1,84 @@ +transport select swd +adapter speed 100 + +# Create a new dap, with name chip and role CPU, -enable let's OpenOCD to know to add it to the scan +swd newdap chip cpu -enable + +# Create the DAP instance, this must be explicitly created according to the OpenOCD docs +dap create chip.dap -chain-position chip.cpu + +# Set up the GDB target for the CPU, cortex_m is the CPU type, +target create chip.cpu cortex_m -dap chip.dap + + +# init reads out all of the necessary information from the DAP, kicks off the debugging session, etc +init + +# Read out the information from the DAP, including the ROM table +dap info + +reset halt + +proc uv_clear_flash_sector {sector_number} { + echo [format "Eerasing sector 0x%02x = offset 0x%04x" [expr {$sector_number}] [expr {$sector_number*512}] ] + write_memory 0x4006F000 32 {0x09} ;#set erasing mode + write_memory 0x4006F004 32 [expr {$sector_number << 6}] + write_memory 0x4006F01c 32 {0xAA} ;#unlock flash + write_memory 0x4006F010 32 {0x01} ;#set OPSTART=1 + read_memory 0x4006F014 32 1 ;#check status for 0x02 + write_memory 0x4006F018 32 {0x55} ;#lock flash +} + +proc uv_clear_whole_flash {} { + for {set i 0} {$i < 0x100} {incr i} { + uv_clear_flash_sector $i + } +} + +proc uv_flash_unlock {} { + write_memory 0x4006F01c 32 {0xAA} ;#unlock flash +} + +proc uv_flash_lock {} { + write_memory 0x4006F018 32 {0x55} ;#lock flash +} + +proc uv_flash_write {address value} { + echo [format "Writing 0x%04x to address 0x%04x (FLASH_ADDR_REG=0x%04x)" $value $address [expr {($address>>2)+0xC000}] ] + write_memory 0x4006F000 32 {0x05} ;#set writing mode + write_memory 0x4006F004 32 [expr {($address>>2)+0xC000}] ;#set address in flash + write_memory 0x4006F008 32 $value ;#set data + write_memory 0x4006F010 32 {0x01} ;#set OPSTART=1 + while {1} { + set status [read_memory 0x4006F014 32 1] + if {($status & 0x4) != 0} { + break + } +} + +proc program {filename address} { + global _CHIPNAME + + # Odblokuj flash + uv_flash_unlock + + # Otwórz plik i odczytaj jego zawartość + set fd [open $filename "rb"] + set data [read $fd] + close $fd + + # Zapisz każde słowo do flasha + set addr $address + foreach word [split $data " "] { + uv_flash_write $addr $word + incr addr 4 + } + + # Zablokuj flash + uv_flash_lock +} + +# proc program {filename {address 0x0} {pre-verify {true}} {verify {true}} {reset {true}} {exit {true}}} { +# global _CHIPNAME +# my_program $filename $address +# } \ No newline at end of file diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..421add5 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,28 @@ +{ + "version": "0.2.0", + "configurations": [ + { + "svdFile": "./.vscode/stm32g030.svd", + "cwd": "${workspaceRoot}", + "executable": "./build/src/decompiled/decompiled", + "name": "kwaczek DBG", + "request": "launch", + "type": "cortex-debug", + "servertype": "openocd", + "configFiles": [ + "interface/cmsis-dap.cfg", + "./.vscode/clone_stm32g0x.cfg" // "target/swm050.cfg", // + ], + "searchDir": [ + ".", + "${workspaceRoot}", + "${workspaceRoot}/.vscode/", + ], + "runToEntryPoint": "main", + "showDevDebugOutput": "both", + // "postLaunchCommands": [ + // "monitor gdb_memory_map disable", + // ] + }, + ] +} \ No newline at end of file diff --git a/.vscode/stm32g030.svd b/.vscode/stm32g030.svd new file mode 100644 index 0000000..c7f5910 --- /dev/null +++ b/.vscode/stm32g030.svd @@ -0,0 +1,19059 @@ + + STM32G030 + 1.2 + STM32G030 + + CM0 + r0p1 + little + true + false + 2 + false + + 8 + 32 + 0x20 + 0x0 + 0xFFFFFFFF + + + IWDG + Independent watchdog + IWDG + 0x40003000 + + 0x0 + 0x400 + registers + + + + KR + KR + Key register + 0x0 + 0x20 + write-only + 0x00000000 + + + KEY + Key value (write only, read + 0x0000) + 0 + 16 + + + + + PR + PR + Prescaler register + 0x4 + 0x20 + read-write + 0x00000000 + + + PR + Prescaler divider + 0 + 3 + + + + + RLR + RLR + Reload register + 0x8 + 0x20 + read-write + 0x00000FFF + + + RL + Watchdog counter reload + value + 0 + 12 + + + + + SR + SR + Status register + 0xC + 0x20 + read-only + 0x00000000 + + + WVU + Watchdog counter window value + update + 2 + 1 + + + RVU + Watchdog counter reload value + update + 1 + 1 + + + PVU + Watchdog prescaler value + update + 0 + 1 + + + + + WINR + WINR + Window register + 0x10 + 0x20 + read-write + 0x00000FFF + + + WIN + Watchdog counter window + value + 0 + 12 + + + + + + + WWDG + System window watchdog + WWDG + 0x40002C00 + + 0x0 + 0x400 + registers + + + WWDG + Window watchdog interrupt + 0 + + + + CR + CR + Control register + 0x0 + 0x20 + read-write + 0x0000007F + + + WDGA + Activation bit + 7 + 1 + + + T + 7-bit counter (MSB to LSB) + 0 + 7 + + + + + CFR + CFR + Configuration register + 0x4 + 0x20 + read-write + 0x0000007F + + + WDGTB + Timer base + 11 + 3 + + + EWI + Early wakeup interrupt + 9 + 1 + + + W + 7-bit window value + 0 + 7 + + + + + SR + SR + Status register + 0x8 + 0x20 + read-write + 0x00000000 + + + EWIF + Early wakeup interrupt + flag + 0 + 1 + + + + + + + FLASH + Flash + Flash + 0x40022000 + + 0x0 + 0x400 + registers + + + FLASH + Flash global interrupt + 3 + + + + ACR + ACR + Access control register + 0x0 + 0x20 + read-write + 0x00000600 + + + LATENCY + Latency + 0 + 3 + + + PRFTEN + Prefetch enable + 8 + 1 + + + ICEN + Instruction cache enable + 9 + 1 + + + ICRST + Instruction cache reset + 11 + 1 + + + EMPTY + Flash User area empty + 16 + 1 + + + DBG_SWEN + Debug access software + enable + 18 + 1 + + + + + KEYR + KEYR + Flash key register + 0x8 + 0x20 + write-only + 0x00000000 + + + KEYR + KEYR + 0 + 32 + + + + + OPTKEYR + OPTKEYR + Option byte key register + 0xC + 0x20 + write-only + 0x00000000 + + + OPTKEYR + Option byte key + 0 + 32 + + + + + SR + SR + Status register + 0x10 + 0x20 + read-write + 0x00000000 + + + EOP + End of operation + 0 + 1 + + + OPERR + Operation error + 1 + 1 + + + PROGERR + Programming error + 3 + 1 + + + WRPERR + Write protected error + 4 + 1 + + + PGAERR + Programming alignment + error + 5 + 1 + + + SIZERR + Size error + 6 + 1 + + + PGSERR + Programming sequence error + 7 + 1 + + + MISERR + Fast programming data miss + error + 8 + 1 + + + FASTERR + Fast programming error + 9 + 1 + + + RDERR + PCROP read error + 14 + 1 + + + OPTVERR + Option and Engineering bits loading + validity error + 15 + 1 + + + BSY + Busy + 16 + 1 + + + CFGBSY + Programming or erase configuration + busy. + 18 + 1 + + + + + CR + CR + Flash control register + 0x14 + 0x20 + read-write + 0xC0000000 + + + PG + Programming + 0 + 1 + + + PER + Page erase + 1 + 1 + + + MER + Mass erase + 2 + 1 + + + PNB + Page number + 3 + 6 + + + STRT + Start + 16 + 1 + + + OPTSTRT + Options modification start + 17 + 1 + + + FSTPG + Fast programming + 18 + 1 + + + EOPIE + End of operation interrupt + enable + 24 + 1 + + + ERRIE + Error interrupt enable + 25 + 1 + + + RDERRIE + PCROP read error interrupt + enable + 26 + 1 + + + OBL_LAUNCH + Force the option byte + loading + 27 + 1 + + + SEC_PROT + Securable memory area protection + enable + 28 + 1 + + + OPTLOCK + Options Lock + 30 + 1 + + + LOCK + FLASH_CR Lock + 31 + 1 + + + + + ECCR + ECCR + Flash ECC register + 0x18 + 0x20 + 0x00000000 + + + ADDR_ECC + ECC fail address + 0 + 14 + read-only + + + SYSF_ECC + ECC fail for Corrected ECC Error or + Double ECC Error in info block + 20 + 1 + read-only + + + ECCIE + ECC correction interrupt + enable + 24 + 1 + read-write + + + ECCC + ECC correction + 30 + 1 + read-write + + + ECCD + ECC detection + 31 + 1 + read-write + + + + + OPTR + OPTR + Flash option register + 0x20 + 0x20 + read-write + 0xF0000000 + + + RDP + Read protection level + 0 + 8 + + + BOREN + BOR reset Level + 8 + 1 + + + BORF_LEV + These bits contain the VDD supply level + threshold that activates the reset + 9 + 2 + + + BORR_LEV + These bits contain the VDD supply level + threshold that releases the reset. + 11 + 2 + + + nRST_STOP + nRST_STOP + 13 + 1 + + + nRST_STDBY + nRST_STDBY + 14 + 1 + + + nRSTS_HDW + nRSTS_HDW + 15 + 1 + + + IDWG_SW + Independent watchdog + selection + 16 + 1 + + + IWDG_STOP + Independent watchdog counter freeze in + Stop mode + 17 + 1 + + + IWDG_STDBY + Independent watchdog counter freeze in + Standby mode + 18 + 1 + + + WWDG_SW + Window watchdog selection + 19 + 1 + + + RAM_PARITY_CHECK + SRAM parity check control + 22 + 1 + + + nBOOT_SEL + nBOOT_SEL + 24 + 1 + + + nBOOT1 + Boot configuration + 25 + 1 + + + nBOOT0 + nBOOT0 option bit + 26 + 1 + + + NRST_MODE + NRST_MODE + 27 + 2 + + + IRHEN + Internal reset holder enable + bit + 29 + 1 + + + + + PCROP1ASR + PCROP1ASR + Flash PCROP zone A Start address + register + 0x24 + 0x20 + read-only + 0xF0000000 + + + PCROP1A_STRT + PCROP1A area start offset + 0 + 8 + + + + + PCROP1AER + PCROP1AER + Flash PCROP zone A End address + register + 0x28 + 0x20 + read-only + 0xF0000000 + + + PCROP1A_END + PCROP1A area end offset + 0 + 8 + + + PCROP_RDP + PCROP area preserved when RDP level + decreased + 31 + 1 + + + + + WRP1AR + WRP1AR + Flash WRP area A address + register + 0x2C + 0x20 + read-only + 0xF0000000 + + + WRP1A_STRT + WRP area A start offset + 0 + 6 + + + WRP1A_END + WRP area A end offset + 16 + 6 + + + + + WRP1BR + WRP1BR + Flash WRP area B address + register + 0x30 + 0x20 + read-only + 0xF0000000 + + + WRP1B_STRT + WRP area B start offset + 0 + 6 + + + WRP1B_END + WRP area B end offset + 16 + 6 + + + + + PCROP1BSR + PCROP1BSR + Flash PCROP zone B Start address + register + 0x34 + 0x20 + read-only + 0xF0000000 + + + PCROP1B_STRT + PCROP1B area start offset + 0 + 8 + + + + + PCROP1BER + PCROP1BER + Flash PCROP zone B End address + register + 0x38 + 0x20 + read-only + 0xF0000000 + + + PCROP1B_END + PCROP1B area end offset + 0 + 8 + + + + + SECR + SECR + Flash Security register + 0x80 + 0x20 + read-only + 0xF0000000 + + + SEC_SIZE + Securable memory area size + 0 + 7 + + + BOOT_LOCK + used to force boot from user + area + 16 + 1 + + + + + + + RCC + Reset and clock control + RCC + 0x40021000 + + 0x0 + 0x400 + registers + + + RCC + RCC global interrupt + 4 + + + + CR + CR + Clock control register + 0x0 + 0x20 + read-write + 0x00000063 + + + HSION + HSI16 clock enable + 8 + 1 + + + HSIKERON + HSI16 always enable for peripheral + kernels + 9 + 1 + + + HSIRDY + HSI16 clock ready flag + 10 + 1 + + + HSIDIV + HSI16 clock division + factor + 11 + 3 + + + HSEON + HSE clock enable + 16 + 1 + + + HSERDY + HSE clock ready flag + 17 + 1 + + + HSEBYP + HSE crystal oscillator + bypass + 18 + 1 + + + CSSON + Clock security system + enable + 19 + 1 + + + PLLON + PLL enable + 24 + 1 + + + PLLRDY + PLL clock ready flag + 25 + 1 + + + + + ICSCR + ICSCR + Internal clock sources calibration + register + 0x4 + 0x20 + 0x10000000 + + + HSICAL + HSI16 clock calibration + 0 + 8 + read-only + + + HSITRIM + HSI16 clock trimming + 8 + 7 + read-write + + + + + CFGR + CFGR + Clock configuration register + 0x8 + 0x20 + 0x00000000 + + + MCOPRE + Microcontroller clock output + prescaler + 28 + 3 + read-only + + + MCOSEL + Microcontroller clock + output + 24 + 3 + read-write + + + PPRE + APB prescaler + 12 + 3 + read-write + + + HPRE + AHB prescaler + 8 + 4 + read-write + + + SWS + System clock switch status + 3 + 3 + read-only + + + SW + System clock switch + 0 + 3 + read-write + + + + + PLLSYSCFGR + PLLSYSCFGR + PLL configuration register + 0xC + 0x20 + read-write + 0x00001000 + + + PLLSRC + PLL input clock source + 0 + 2 + + + PLLM + Division factor M of the PLL input clock + divider + 4 + 3 + + + PLLN + PLL frequency multiplication factor + N + 8 + 7 + + + PLLPEN + PLLPCLK clock output + enable + 16 + 1 + + + PLLP + PLL VCO division factor P for PLLPCLK + clock output + 17 + 5 + + + PLLQEN + PLLQCLK clock output + enable + 24 + 1 + + + PLLQ + PLL VCO division factor Q for PLLQCLK + clock output + 25 + 3 + + + PLLREN + PLLRCLK clock output + enable + 28 + 1 + + + PLLR + PLL VCO division factor R for PLLRCLK + clock output + 29 + 3 + + + + + CIER + CIER + Clock interrupt enable + register + 0x18 + 0x20 + read-write + 0x00000000 + + + LSIRDYIE + LSI ready interrupt enable + 0 + 1 + + + LSERDYIE + LSE ready interrupt enable + 1 + 1 + + + HSIRDYIE + HSI ready interrupt enable + 3 + 1 + + + HSERDYIE + HSE ready interrupt enable + 4 + 1 + + + PLLSYSRDYIE + PLL ready interrupt enable + 5 + 1 + + + + + CIFR + CIFR + Clock interrupt flag register + 0x1C + 0x20 + read-only + 0x00000000 + + + LSIRDYF + LSI ready interrupt flag + 0 + 1 + + + LSERDYF + LSE ready interrupt flag + 1 + 1 + + + HSIRDYF + HSI ready interrupt flag + 3 + 1 + + + HSERDYF + HSE ready interrupt flag + 4 + 1 + + + PLLSYSRDYF + PLL ready interrupt flag + 5 + 1 + + + CSSF + Clock security system interrupt + flag + 8 + 1 + + + LSECSSF + LSE Clock security system interrupt + flag + 9 + 1 + + + + + CICR + CICR + Clock interrupt clear register + 0x20 + 0x20 + write-only + 0x00000000 + + + LSIRDYC + LSI ready interrupt clear + 0 + 1 + + + LSERDYC + LSE ready interrupt clear + 1 + 1 + + + HSIRDYC + HSI ready interrupt clear + 3 + 1 + + + HSERDYC + HSE ready interrupt clear + 4 + 1 + + + PLLSYSRDYC + PLL ready interrupt clear + 5 + 1 + + + CSSC + Clock security system interrupt + clear + 8 + 1 + + + LSECSSC + LSE Clock security system interrupt + clear + 9 + 1 + + + + + AHBRSTR + AHBRSTR + AHB peripheral reset register + 0x28 + 0x20 + read-write + 0x00000000 + + + DMARST + DMA1 reset + 0 + 1 + + + FLASHRST + FLITF reset + 8 + 1 + + + CRCRST + CRC reset + 12 + 1 + + + + + IOPRSTR + IOPRSTR + GPIO reset register + 0x24 + 0x20 + read-write + 0x00000000 + + + IOPARST + I/O port A reset + 0 + 1 + + + IOPBRST + I/O port B reset + 1 + 1 + + + IOPCRST + I/O port C reset + 2 + 1 + + + IOPDRST + I/O port D reset + 3 + 1 + + + IOPFRST + I/O port F reset + 5 + 1 + + + + + APBRSTR1 + APBRSTR1 + APB peripheral reset register + 1 + 0x2C + 0x20 + read-write + 0x00000000 + + + TIM2RST + TIM2 timer reset + 0 + 1 + + + TIM3RST + TIM3 timer reset + 1 + 1 + + + SPI2RST + SPI2 reset + 14 + 1 + + + USART2RST + USART2 reset + 17 + 1 + + + I2C1RST + I2C1 reset + 21 + 1 + + + I2C2RST + I2C2 reset + 22 + 1 + + + DBGRST + Debug support reset + 27 + 1 + + + PWRRST + Power interface reset + 28 + 1 + + + + + APBRSTR2 + APBRSTR2 + APB peripheral reset register + 2 + 0x30 + 0x20 + read-write + 0x00000000 + + + SYSCFGRST + SYSCFG, COMP and VREFBUF + reset + 0 + 1 + + + TIM1RST + TIM1 timer reset + 11 + 1 + + + SPI1RST + SPI1 reset + 12 + 1 + + + USART1RST + USART1 reset + 14 + 1 + + + TIM14RST + TIM14 timer reset + 15 + 1 + + + TIM16RST + TIM16 timer reset + 17 + 1 + + + TIM17RST + TIM17 timer reset + 18 + 1 + + + ADCRST + ADC reset + 20 + 1 + + + + + IOPENR + IOPENR + GPIO clock enable register + 0x34 + 0x20 + read-write + 0x00000000 + + + IOPAEN + I/O port A clock enable + 0 + 1 + + + IOPBEN + I/O port B clock enable + 1 + 1 + + + IOPCEN + I/O port C clock enable + 2 + 1 + + + IOPDEN + I/O port D clock enable + 3 + 1 + + + IOPFEN + I/O port F clock enable + 5 + 1 + + + + + AHBENR + AHBENR + AHB peripheral clock enable + register + 0x38 + 0x20 + read-write + 0x00000000 + + + DMAEN + DMA clock enable + 0 + 1 + + + FLASHEN + Flash memory interface clock + enable + 8 + 1 + + + CRCEN + CRC clock enable + 12 + 1 + + + + + APBENR1 + APBENR1 + APB peripheral clock enable register + 1 + 0x3C + 0x20 + read-write + 0x00000000 + + + TIM2EN + TIM2 timer clock enable + 0 + 1 + + + TIM3EN + TIM3 timer clock enable + 1 + 1 + + + RTCAPBEN + RTC APB clock enable + 10 + 1 + + + WWDGEN + WWDG clock enable + 11 + 1 + + + SPI2EN + SPI2 clock enable + 14 + 1 + + + USART2EN + USART2 clock enable + 17 + 1 + + + I2C1EN + I2C1 clock enable + 21 + 1 + + + I2C2EN + I2C2 clock enable + 22 + 1 + + + DBGEN + Debug support clock enable + 27 + 1 + + + PWREN + Power interface clock + enable + 28 + 1 + + + + + APBENR2 + APBENR2 + APB peripheral clock enable register + 2 + 0x40 + 0x20 + read-write + 0x00000000 + + + SYSCFGEN + SYSCFG, COMP and VREFBUF clock + enable + 0 + 1 + + + TIM1EN + TIM1 timer clock enable + 11 + 1 + + + SPI1EN + SPI1 clock enable + 12 + 1 + + + USART1EN + USART1 clock enable + 14 + 1 + + + TIM14EN + TIM14 timer clock enable + 15 + 1 + + + TIM16EN + TIM16 timer clock enable + 17 + 1 + + + TIM17EN + TIM16 timer clock enable + 18 + 1 + + + ADCEN + ADC clock enable + 20 + 1 + + + + + IOPSMENR + IOPSMENR + GPIO in Sleep mode clock enable + register + 0x44 + 0x20 + read-write + 0x00000000 + + + IOPASMEN + I/O port A clock enable during Sleep + mode + 0 + 1 + + + IOPBSMEN + I/O port B clock enable during Sleep + mode + 1 + 1 + + + IOPCSMEN + I/O port C clock enable during Sleep + mode + 2 + 1 + + + IOPDSMEN + I/O port D clock enable during Sleep + mode + 3 + 1 + + + IOPFSMEN + I/O port F clock enable during Sleep + mode + 5 + 1 + + + + + AHBSMENR + AHBSMENR + AHB peripheral clock enable in Sleep mode + register + 0x48 + 0x20 + read-write + 0x00000000 + + + DMASMEN + DMA clock enable during Sleep + mode + 0 + 1 + + + FLASHSMEN + Flash memory interface clock enable + during Sleep mode + 8 + 1 + + + SRAMSMEN + SRAM clock enable during Sleep + mode + 9 + 1 + + + CRCSMEN + CRC clock enable during Sleep + mode + 12 + 1 + + + + + APBSMENR1 + APBSMENR1 + APB peripheral clock enable in Sleep mode + register 1 + 0x4C + 0x20 + read-write + 0x00000000 + + + TIM2SMEN + TIM2 timer clock enable during Sleep + mode + 0 + 1 + + + TIM3SMEN + TIM3 timer clock enable during Sleep + mode + 1 + 1 + + + RTCAPBSMEN + RTC APB clock enable during Sleep + mode + 10 + 1 + + + WWDGSMEN + WWDG clock enable during Sleep + mode + 11 + 1 + + + SPI2SMEN + SPI2 clock enable during Sleep + mode + 14 + 1 + + + USART2SMEN + USART2 clock enable during Sleep + mode + 17 + 1 + + + I2C1SMEN + I2C1 clock enable during Sleep + mode + 21 + 1 + + + I2C2SMEN + I2C2 clock enable during Sleep + mode + 22 + 1 + + + DBGSMEN + Debug support clock enable during Sleep + mode + 27 + 1 + + + PWRSMEN + Power interface clock enable during + Sleep mode + 28 + 1 + + + + + APBSMENR2 + APBSMENR2 + APB peripheral clock enable in Sleep mode + register 2 + 0x50 + 0x20 + read-write + 0x00000000 + + + SYSCFGSMEN + SYSCFG, COMP and VREFBUF clock enable + during Sleep mode + 0 + 1 + + + TIM1SMEN + TIM1 timer clock enable during Sleep + mode + 11 + 1 + + + SPI1SMEN + SPI1 clock enable during Sleep + mode + 12 + 1 + + + USART1SMEN + USART1 clock enable during Sleep + mode + 14 + 1 + + + TIM14SMEN + TIM14 timer clock enable during Sleep + mode + 15 + 1 + + + TIM16SMEN + TIM16 timer clock enable during Sleep + mode + 17 + 1 + + + TIM17SMEN + TIM16 timer clock enable during Sleep + mode + 18 + 1 + + + ADCSMEN + ADC clock enable during Sleep + mode + 20 + 1 + + + + + CCIPR + CCIPR + Peripherals independent clock configuration + register + 0x54 + 0x20 + read-write + 0x00000000 + + + USART1SEL + USART1 clock source + selection + 0 + 2 + + + I2C1SEL + I2C1 clock source + selection + 12 + 2 + + + I2S2SEL + I2S1 clock source + selection + 14 + 2 + + + TIM1SEL + TIM1 clock source + selection + 22 + 1 + + + RNGSEL + RNG clock source selection + 26 + 2 + + + RNGDIV + Division factor of RNG clock + divider + 28 + 2 + + + ADCSEL + ADCs clock source + selection + 30 + 2 + + + + + BDCR + BDCR + RTC domain control register + 0x5C + 0x20 + read-write + 0x00000000 + + + LSEON + LSE oscillator enable + 0 + 1 + + + LSERDY + LSE oscillator ready + 1 + 1 + + + LSEBYP + LSE oscillator bypass + 2 + 1 + + + LSEDRV + LSE oscillator drive + capability + 3 + 2 + + + LSECSSON + CSS on LSE enable + 5 + 1 + + + LSECSSD + CSS on LSE failure + Detection + 6 + 1 + + + RTCSEL + RTC clock source selection + 8 + 2 + + + RTCEN + RTC clock enable + 15 + 1 + + + BDRST + RTC domain software reset + 16 + 1 + + + LSCOEN + Low-speed clock output (LSCO) + enable + 24 + 1 + + + LSCOSEL + Low-speed clock output + selection + 25 + 1 + + + + + CSR + CSR + Control/status register + 0x60 + 0x20 + read-write + 0x00000000 + + + LSION + LSI oscillator enable + 0 + 1 + + + LSIRDY + LSI oscillator ready + 1 + 1 + + + RMVF + Remove reset flags + 23 + 1 + + + OBLRSTF + Option byte loader reset + flag + 25 + 1 + + + PINRSTF + Pin reset flag + 26 + 1 + + + PWRRSTF + BOR or POR/PDR flag + 27 + 1 + + + SFTRSTF + Software reset flag + 28 + 1 + + + IWDGRSTF + Independent window watchdog reset + flag + 29 + 1 + + + WWDGRSTF + Window watchdog reset flag + 30 + 1 + + + LPWRRSTF + Low-power reset flag + 31 + 1 + + + + + + + PWR + Power control + PWR + 0x40007000 + + 0x0 + 0x400 + registers + + + + CR1 + CR1 + Power control register 1 + 0x0 + 0x20 + read-write + 0x00000200 + + + LPR + Low-power run + 14 + 1 + + + VOS + Voltage scaling range + selection + 9 + 2 + + + DBP + Disable backup domain write + protection + 8 + 1 + + + FPD_LPSLP + Flash memory powered down during + Low-power sleep mode + 5 + 1 + + + FPD_LPRUN + Flash memory powered down during + Low-power run mode + 4 + 1 + + + FPD_STOP + Flash memory powered down during Stop + mode + 3 + 1 + + + LPMS + Low-power mode selection + 0 + 3 + + + + + CR2 + CR2 + Power control register 2 + 0x4 + 0x20 + read-write + 0x00000000 + + + PVDE + Power voltage detector + enable + 0 + 1 + + + PVDFT + Power voltage detector falling threshold + selection + 1 + 3 + + + PVDRT + Power voltage detector rising threshold + selection + 4 + 3 + + + + + CR3 + CR3 + Power control register 3 + 0x8 + 0x20 + read-write + 0X00008000 + + + EWUP1 + Enable Wakeup pin WKUP1 + 0 + 1 + + + EWUP2 + Enable Wakeup pin WKUP2 + 1 + 1 + + + EWUP4 + Enable Wakeup pin WKUP4 + 3 + 1 + + + EWUP5 + Enable WKUP5 wakeup pin + 4 + 1 + + + EWUP6 + Enable WKUP6 wakeup pin + 5 + 1 + + + RRS + SRAM retention in Standby + mode + 8 + 1 + + + ULPEN + Enable the periodical sampling mode for + PDR detection + 9 + 1 + + + APC + Apply pull-up and pull-down + configuration + 10 + 1 + + + EIWUL + Enable internal wakeup + line + 15 + 1 + + + + + CR4 + CR4 + Power control register 4 + 0xC + 0x20 + read-write + 0x00000000 + + + WP1 + Wakeup pin WKUP1 polarity + 0 + 1 + + + WP2 + Wakeup pin WKUP2 polarity + 1 + 1 + + + WP4 + Wakeup pin WKUP4 polarity + 3 + 1 + + + WP5 + Wakeup pin WKUP5 polarity + 4 + 1 + + + WP6 + WKUP6 wakeup pin polarity + 5 + 1 + + + VBE + VBAT battery charging + enable + 8 + 1 + + + VBRS + VBAT battery charging resistor + selection + 9 + 1 + + + + + SR1 + SR1 + Power status register 1 + 0x10 + 0x20 + read-only + 0x00000000 + + + WUF1 + Wakeup flag 1 + 0 + 1 + + + WUF2 + Wakeup flag 2 + 1 + 1 + + + WUF4 + Wakeup flag 4 + 3 + 1 + + + WUF5 + Wakeup flag 5 + 4 + 1 + + + WUF6 + Wakeup flag 6 + 5 + 1 + + + SBF + Standby flag + 8 + 1 + + + WUFI + Wakeup flag internal + 15 + 1 + + + + + SR2 + SR2 + Power status register 2 + 0x14 + 0x20 + read-only + 0x00000000 + + + PVDO + Power voltage detector + output + 11 + 1 + + + VOSF + Voltage scaling flag + 10 + 1 + + + REGLPF + Low-power regulator flag + 9 + 1 + + + REGLPS + Low-power regulator + started + 8 + 1 + + + FLASH_RDY + Flash ready flag + 7 + 1 + + + + + SCR + SCR + Power status clear register + 0x18 + 0x20 + write-only + 0x00000000 + + + CSBF + Clear standby flag + 8 + 1 + + + CWUF6 + Clear wakeup flag 6 + 5 + 1 + + + CWUF5 + Clear wakeup flag 5 + 4 + 1 + + + CWUF4 + Clear wakeup flag 4 + 3 + 1 + + + CWUF2 + Clear wakeup flag 2 + 1 + 1 + + + CWUF1 + Clear wakeup flag 1 + 0 + 1 + + + + + PUCRA + PUCRA + Power Port A pull-up control + register + 0x20 + 0x20 + read-write + 0x00000000 + + + PU15 + Port A pull-up bit y + (y=0..15) + 15 + 1 + + + PU14 + Port A pull-up bit y + (y=0..15) + 14 + 1 + + + PU13 + Port A pull-up bit y + (y=0..15) + 13 + 1 + + + PU12 + Port A pull-up bit y + (y=0..15) + 12 + 1 + + + PU11 + Port A pull-up bit y + (y=0..15) + 11 + 1 + + + PU10 + Port A pull-up bit y + (y=0..15) + 10 + 1 + + + PU9 + Port A pull-up bit y + (y=0..15) + 9 + 1 + + + PU8 + Port A pull-up bit y + (y=0..15) + 8 + 1 + + + PU7 + Port A pull-up bit y + (y=0..15) + 7 + 1 + + + PU6 + Port A pull-up bit y + (y=0..15) + 6 + 1 + + + PU5 + Port A pull-up bit y + (y=0..15) + 5 + 1 + + + PU4 + Port A pull-up bit y + (y=0..15) + 4 + 1 + + + PU3 + Port A pull-up bit y + (y=0..15) + 3 + 1 + + + PU2 + Port A pull-up bit y + (y=0..15) + 2 + 1 + + + PU1 + Port A pull-up bit y + (y=0..15) + 1 + 1 + + + PU0 + Port A pull-up bit y + (y=0..15) + 0 + 1 + + + + + PDCRA + PDCRA + Power Port A pull-down control + register + 0x24 + 0x20 + read-write + 0x00000000 + + + PD15 + Port A pull-down bit y + (y=0..15) + 15 + 1 + + + PD14 + Port A pull-down bit y + (y=0..15) + 14 + 1 + + + PD13 + Port A pull-down bit y + (y=0..15) + 13 + 1 + + + PD12 + Port A pull-down bit y + (y=0..15) + 12 + 1 + + + PD11 + Port A pull-down bit y + (y=0..15) + 11 + 1 + + + PD10 + Port A pull-down bit y + (y=0..15) + 10 + 1 + + + PD9 + Port A pull-down bit y + (y=0..15) + 9 + 1 + + + PD8 + Port A pull-down bit y + (y=0..15) + 8 + 1 + + + PD7 + Port A pull-down bit y + (y=0..15) + 7 + 1 + + + PD6 + Port A pull-down bit y + (y=0..15) + 6 + 1 + + + PD5 + Port A pull-down bit y + (y=0..15) + 5 + 1 + + + PD4 + Port A pull-down bit y + (y=0..15) + 4 + 1 + + + PD3 + Port A pull-down bit y + (y=0..15) + 3 + 1 + + + PD2 + Port A pull-down bit y + (y=0..15) + 2 + 1 + + + PD1 + Port A pull-down bit y + (y=0..15) + 1 + 1 + + + PD0 + Port A pull-down bit y + (y=0..15) + 0 + 1 + + + + + PUCRB + PUCRB + Power Port B pull-up control + register + 0x28 + 0x20 + read-write + 0x00000000 + + + PU15 + Port B pull-up bit y + (y=0..15) + 15 + 1 + + + PU14 + Port B pull-up bit y + (y=0..15) + 14 + 1 + + + PU13 + Port B pull-up bit y + (y=0..15) + 13 + 1 + + + PU12 + Port B pull-up bit y + (y=0..15) + 12 + 1 + + + PU11 + Port B pull-up bit y + (y=0..15) + 11 + 1 + + + PU10 + Port B pull-up bit y + (y=0..15) + 10 + 1 + + + PU9 + Port B pull-up bit y + (y=0..15) + 9 + 1 + + + PU8 + Port B pull-up bit y + (y=0..15) + 8 + 1 + + + PU7 + Port B pull-up bit y + (y=0..15) + 7 + 1 + + + PU6 + Port B pull-up bit y + (y=0..15) + 6 + 1 + + + PU5 + Port B pull-up bit y + (y=0..15) + 5 + 1 + + + PU4 + Port B pull-up bit y + (y=0..15) + 4 + 1 + + + PU3 + Port B pull-up bit y + (y=0..15) + 3 + 1 + + + PU2 + Port B pull-up bit y + (y=0..15) + 2 + 1 + + + PU1 + Port B pull-up bit y + (y=0..15) + 1 + 1 + + + PU0 + Port B pull-up bit y + (y=0..15) + 0 + 1 + + + + + PDCRB + PDCRB + Power Port B pull-down control + register + 0x2C + 0x20 + read-write + 0x00000000 + + + PD15 + Port B pull-down bit y + (y=0..15) + 15 + 1 + + + PD14 + Port B pull-down bit y + (y=0..15) + 14 + 1 + + + PD13 + Port B pull-down bit y + (y=0..15) + 13 + 1 + + + PD12 + Port B pull-down bit y + (y=0..15) + 12 + 1 + + + PD11 + Port B pull-down bit y + (y=0..15) + 11 + 1 + + + PD10 + Port B pull-down bit y + (y=0..15) + 10 + 1 + + + PD9 + Port B pull-down bit y + (y=0..15) + 9 + 1 + + + PD8 + Port B pull-down bit y + (y=0..15) + 8 + 1 + + + PD7 + Port B pull-down bit y + (y=0..15) + 7 + 1 + + + PD6 + Port B pull-down bit y + (y=0..15) + 6 + 1 + + + PD5 + Port B pull-down bit y + (y=0..15) + 5 + 1 + + + PD4 + Port B pull-down bit y + (y=0..15) + 4 + 1 + + + PD3 + Port B pull-down bit y + (y=0..15) + 3 + 1 + + + PD2 + Port B pull-down bit y + (y=0..15) + 2 + 1 + + + PD1 + Port B pull-down bit y + (y=0..15) + 1 + 1 + + + PD0 + Port B pull-down bit y + (y=0..15) + 0 + 1 + + + + + PUCRC + PUCRC + Power Port C pull-up control + register + 0x30 + 0x20 + read-write + 0x00000000 + + + PU15 + Port C pull-up bit y + (y=0..15) + 15 + 1 + + + PU14 + Port C pull-up bit y + (y=0..15) + 14 + 1 + + + PU13 + Port C pull-up bit y + (y=0..15) + 13 + 1 + + + PU7 + Port C pull-up bit y + (y=0..15) + 7 + 1 + + + PU6 + Port C pull-up bit y + (y=0..15) + 6 + 1 + + + + + PDCRC + PDCRC + Power Port C pull-down control + register + 0x34 + 0x20 + read-write + 0x00000000 + + + PD15 + Port C pull-down bit y + (y=0..15) + 15 + 1 + + + PD14 + Port C pull-down bit y + (y=0..15) + 14 + 1 + + + PD13 + Port C pull-down bit y + (y=0..15) + 13 + 1 + + + PD12 + Port C pull-down bit y + (y=0..15) + 12 + 1 + + + PD11 + Port C pull-down bit y + (y=0..15) + 11 + 1 + + + PD10 + Port C pull-down bit y + (y=0..15) + 10 + 1 + + + PD9 + Port C pull-down bit y + (y=0..15) + 9 + 1 + + + PD8 + Port C pull-down bit y + (y=0..15) + 8 + 1 + + + PD7 + Port C pull-down bit y + (y=0..15) + 7 + 1 + + + PD6 + Port C pull-down bit y + (y=0..15) + 6 + 1 + + + PD5 + Port C pull-down bit y + (y=0..15) + 5 + 1 + + + PD4 + Port C pull-down bit y + (y=0..15) + 4 + 1 + + + PD3 + Port C pull-down bit y + (y=0..15) + 3 + 1 + + + PD2 + Port C pull-down bit y + (y=0..15) + 2 + 1 + + + PD1 + Port C pull-down bit y + (y=0..15) + 1 + 1 + + + PD0 + Port C pull-down bit y + (y=0..15) + 0 + 1 + + + + + PUCRD + PUCRD + Power Port D pull-up control + register + 0x38 + 0x20 + read-write + 0x00000000 + + + PU3 + Port D pull-up bit y + (y=0..15) + 3 + 1 + + + PU2 + Port D pull-up bit y + (y=0..15) + 2 + 1 + + + PU1 + Port D pull-up bit y + (y=0..15) + 1 + 1 + + + PU0 + Port D pull-up bit y + (y=0..15) + 0 + 1 + + + + + PDCRD + PDCRD + Power Port D pull-down control + register + 0x3C + 0x20 + read-write + 0x00000000 + + + PD9 + Port D pull-down bit y + (y=0..15) + 9 + 1 + + + PD8 + Port D pull-down bit y + (y=0..15) + 8 + 1 + + + PD6 + Port D pull-down bit y + (y=0..15) + 6 + 1 + + + PD5 + Port D pull-down bit y + (y=0..15) + 5 + 1 + + + PD4 + Port D pull-down bit y + (y=0..15) + 4 + 1 + + + PD3 + Port D pull-down bit y + (y=0..15) + 3 + 1 + + + PD2 + Port D pull-down bit y + (y=0..15) + 2 + 1 + + + PD1 + Port D pull-down bit y + (y=0..15) + 1 + 1 + + + PD0 + Port D pull-down bit y + (y=0..15) + 0 + 1 + + + + + PUCRF + PUCRF + Power Port F pull-up control + register + 0x48 + 0x20 + read-write + 0x00000000 + + + PU2 + Port F pull-up bit y + (y=0..15) + 2 + 1 + + + PU1 + Port F pull-up bit y + (y=0..15) + 1 + 1 + + + PU0 + Port F pull-up bit y + (y=0..15) + 0 + 1 + + + + + PDCRF + PDCRF + Power Port F pull-down control + register + 0x4C + 0x20 + read-write + 0x00000000 + + + PD2 + Port F pull-down bit y + (y=0..15) + 2 + 1 + + + PD1 + Port F pull-down bit y + (y=0..15) + 1 + 1 + + + PD0 + Port F pull-down bit y + (y=0..15) + 0 + 1 + + + + + + + DMA + DMA controller + DMA + 0x40020000 + + 0x0 + 0x400 + registers + + + DMA_Channel1 + DMA channel 1 interrupt + 9 + + + DMA_Channel2_3 + DMA channel 2 & 3 interrupts + 10 + + + 50x141,2,3,4,5CH%sChannel cluster: CCR?, CNDTR?, CPAR?, and CMAR? registers0x8 + CR + CCR1 + DMA channel x configuration + register + 0x0 + 0x20 + read-write + 0x00000000 + + + EN + Channel enable + 0 + 1 + + + TCIE + Transfer complete interrupt + enable + 1 + 1 + + + HTIE + Half transfer interrupt + enable + 2 + 1 + + + TEIE + Transfer error interrupt + enable + 3 + 1 + + + DIR + Data transfer direction + 4 + 1 + + + CIRC + Circular mode + 5 + 1 + + + PINC + Peripheral increment mode + 6 + 1 + + + MINC + Memory increment mode + 7 + 1 + + + PSIZE + Peripheral size + 8 + 2 + + + MSIZE + Memory size + 10 + 2 + + + PL + Channel priority level + 12 + 2 + + + MEM2MEM + Memory to memory mode + 14 + 1 + + + + + NDTR + CNDTR1 + DMA channel x number of data + register + 0x4 + 0x20 + read-write + 0x00000000 + + + NDT + Number of data to transfer + 0 + 16 + + + + + PAR + CPAR1 + DMA channel x peripheral address + register + 0x8 + 0x20 + read-write + 0x00000000 + + + PA + Peripheral address + 0 + 32 + + + + + MAR + CMAR1 + DMA channel x memory address + register + 0xc + 0x20 + read-write + 0x00000000 + + + MA + Memory address + 0 + 32 + + + + + ISR + ISR + low interrupt status register + 0x0 + 0x20 + read-only + 0x00000000 + + + GIF1 + Channel 1 global interrupt flag + 0 + 1 + + + TCIF1 + Channel 1 transfer complete flag + 1 + 1 + + + HTIF1 + Channel 1 half transfer flag + 2 + 1 + + + TEIF1 + Channel 1 transfer error flag + 3 + 1 + + + GIF2 + Channel 2 global interrupt flag + 4 + 1 + + + TCIF2 + Channel 2 transfer complete flag + 5 + 1 + + + HTIF2 + Channel 2 half transfer flag + 6 + 1 + + + TEIF2 + Channel 2 transfer error flag + 7 + 1 + + + GIF3 + Channel 3 global interrupt flag + 8 + 1 + + + TCIF3 + Channel 3 transfer complete flag + 9 + 1 + + + HTIF3 + Channel 3 half transfer flag + 10 + 1 + + + TEIF3 + Channel 3 transfer error flag + 11 + 1 + + + GIF4 + Channel 4 global interrupt flag + 12 + 1 + + + TCIF4 + Channel 4 transfer complete flag + 13 + 1 + + + HTIF4 + Channel 4 half transfer flag + 14 + 1 + + + TEIF4 + Channel 4 transfer error flag + 15 + 1 + + + GIF5 + Channel 5 global interrupt flag + 16 + 1 + + + TCIF5 + Channel 5 transfer complete flag + 17 + 1 + + + HTIF5 + Channel 5 half transfer flag + 18 + 1 + + + TEIF5 + Channel 5 transfer error flag + 19 + 1 + + + + + IFCR + IFCR + DMA interrupt flag clear register + 0x4 + 0x20 + write-only + 0x00000000 + + + CGIF1 + Clear channel 1 global interrupt flag + 0 + 1 + + + CTCIF1 + Clear channel 1 transfer complete flag + 1 + 1 + + + CHTIF1 + Clear channel 1 half transfer flag + 2 + 1 + + + CTEIF1 + Clear channel 1 transfer error flag + 3 + 1 + + + CGIF2 + Clear channel 2 global interrupt flag + 4 + 1 + + + CTCIF2 + Clear channel 2 transfer complete flag + 5 + 1 + + + CHTIF2 + Clear channel 2 half transfer flag + 6 + 1 + + + CTEIF2 + Clear channel 2 transfer error flag + 7 + 1 + + + CGIF3 + Clear channel 3 global interrupt flag + 8 + 1 + + + CTCIF3 + Clear channel 3 transfer complete flag + 9 + 1 + + + CHTIF3 + Clear channel 3 half transfer flag + 10 + 1 + + + CTEIF3 + Clear channel 3 transfer error flag + 11 + 1 + + + CGIF4 + Clear channel 4 global interrupt flag + 12 + 1 + + + CTCIF4 + Clear channel 4 transfer complete flag + 13 + 1 + + + CHTIF4 + Clear channel 4 half transfer flag + 14 + 1 + + + CTEIF4 + Clear channel 4 transfer error flag + 15 + 1 + + + CGIF5 + Clear channel 5 global interrupt flag + 16 + 1 + + + CTCIF5 + Clear channel 5 transfer complete flag + 17 + 1 + + + CHTIF5 + Clear channel 5 half transfer flag + 18 + 1 + + + CTEIF5 + Clear channel 5 transfer error flag + 19 + 1 + + + + + + + DMAMUX + DMAMUX + DMAMUX + 0x40020800 + + 0x0 + 0x400 + registers + + + DMA_Channel4_5_6_7 + DMA channel 4, 5, 6 & 7 and + DMAMUX + 11 + + + + C0CR + C0CR + DMAMux - DMA request line multiplexer + channel x control register + 0x0 + 0x20 + read-write + 0x00000000 + + + DMAREQ_ID + Input DMA request line + selected + 0 + 8 + + + SOIE + Interrupt enable at synchronization + event overrun + 8 + 1 + + + EGE + Event generation + enable/disable + 9 + 1 + + + SE + Synchronous operating mode + enable/disable + 16 + 1 + + + SPOL + Synchronization event type selector + Defines the synchronization event on the selected + synchronization input: + 17 + 2 + + + NBREQ + Number of DMA requests to forward + Defines the number of DMA requests forwarded before + output event is generated. In synchronous mode, it + also defines the number of DMA requests to forward + after a synchronization event, then stop forwarding. + The actual number of DMA requests forwarded is + NBREQ+1. Note: This field can only be written when + both SE and EGE bits are reset. + 19 + 5 + + + SYNC_ID + Synchronization input + selected + 24 + 5 + + + + + C1CR + C1CR + DMAMux - DMA request line multiplexer + channel x control register + 0x4 + 0x20 + read-write + 0x00000000 + + + DMAREQ_ID + Input DMA request line + selected + 0 + 8 + + + SOIE + Interrupt enable at synchronization + event overrun + 8 + 1 + + + EGE + Event generation + enable/disable + 9 + 1 + + + SE + Synchronous operating mode + enable/disable + 16 + 1 + + + SPOL + Synchronization event type selector + Defines the synchronization event on the selected + synchronization input: + 17 + 2 + + + NBREQ + Number of DMA requests to forward + Defines the number of DMA requests forwarded before + output event is generated. In synchronous mode, it + also defines the number of DMA requests to forward + after a synchronization event, then stop forwarding. + The actual number of DMA requests forwarded is + NBREQ+1. Note: This field can only be written when + both SE and EGE bits are reset. + 19 + 5 + + + SYNC_ID + Synchronization input + selected + 24 + 5 + + + + + C2CR + C2CR + DMAMux - DMA request line multiplexer + channel x control register + 0x8 + 0x20 + read-write + 0x00000000 + + + DMAREQ_ID + Input DMA request line + selected + 0 + 8 + + + SOIE + Interrupt enable at synchronization + event overrun + 8 + 1 + + + EGE + Event generation + enable/disable + 9 + 1 + + + SE + Synchronous operating mode + enable/disable + 16 + 1 + + + SPOL + Synchronization event type selector + Defines the synchronization event on the selected + synchronization input: + 17 + 2 + + + NBREQ + Number of DMA requests to forward + Defines the number of DMA requests forwarded before + output event is generated. In synchronous mode, it + also defines the number of DMA requests to forward + after a synchronization event, then stop forwarding. + The actual number of DMA requests forwarded is + NBREQ+1. Note: This field can only be written when + both SE and EGE bits are reset. + 19 + 5 + + + SYNC_ID + Synchronization input + selected + 24 + 5 + + + + + C3CR + C3CR + DMAMux - DMA request line multiplexer + channel x control register + 0xC + 0x20 + read-write + 0x00000000 + + + DMAREQ_ID + Input DMA request line + selected + 0 + 8 + + + SOIE + Interrupt enable at synchronization + event overrun + 8 + 1 + + + EGE + Event generation + enable/disable + 9 + 1 + + + SE + Synchronous operating mode + enable/disable + 16 + 1 + + + SPOL + Synchronization event type selector + Defines the synchronization event on the selected + synchronization input: + 17 + 2 + + + NBREQ + Number of DMA requests to forward + Defines the number of DMA requests forwarded before + output event is generated. In synchronous mode, it + also defines the number of DMA requests to forward + after a synchronization event, then stop forwarding. + The actual number of DMA requests forwarded is + NBREQ+1. Note: This field can only be written when + both SE and EGE bits are reset. + 19 + 5 + + + SYNC_ID + Synchronization input + selected + 24 + 5 + + + + + C4CR + C4CR + DMAMux - DMA request line multiplexer + channel x control register + 0x10 + 0x20 + read-write + 0x00000000 + + + DMAREQ_ID + Input DMA request line + selected + 0 + 8 + + + SOIE + Interrupt enable at synchronization + event overrun + 8 + 1 + + + EGE + Event generation + enable/disable + 9 + 1 + + + SE + Synchronous operating mode + enable/disable + 16 + 1 + + + SPOL + Synchronization event type selector + Defines the synchronization event on the selected + synchronization input: + 17 + 2 + + + NBREQ + Number of DMA requests to forward + Defines the number of DMA requests forwarded before + output event is generated. In synchronous mode, it + also defines the number of DMA requests to forward + after a synchronization event, then stop forwarding. + The actual number of DMA requests forwarded is + NBREQ+1. Note: This field can only be written when + both SE and EGE bits are reset. + 19 + 5 + + + SYNC_ID + Synchronization input + selected + 24 + 5 + + + + + C5CR + C5CR + DMAMux - DMA request line multiplexer + channel x control register + 0x14 + 0x20 + read-write + 0x00000000 + + + DMAREQ_ID + Input DMA request line + selected + 0 + 8 + + + SOIE + Interrupt enable at synchronization + event overrun + 8 + 1 + + + EGE + Event generation + enable/disable + 9 + 1 + + + SE + Synchronous operating mode + enable/disable + 16 + 1 + + + SPOL + Synchronization event type selector + Defines the synchronization event on the selected + synchronization input: + 17 + 2 + + + NBREQ + Number of DMA requests to forward + Defines the number of DMA requests forwarded before + output event is generated. In synchronous mode, it + also defines the number of DMA requests to forward + after a synchronization event, then stop forwarding. + The actual number of DMA requests forwarded is + NBREQ+1. Note: This field can only be written when + both SE and EGE bits are reset. + 19 + 5 + + + SYNC_ID + Synchronization input + selected + 24 + 5 + + + + + C6CR + C6CR + DMAMux - DMA request line multiplexer + channel x control register + 0x18 + 0x20 + read-write + 0x00000000 + + + DMAREQ_ID + Input DMA request line + selected + 0 + 8 + + + SOIE + Interrupt enable at synchronization + event overrun + 8 + 1 + + + EGE + Event generation + enable/disable + 9 + 1 + + + SE + Synchronous operating mode + enable/disable + 16 + 1 + + + SPOL + Synchronization event type selector + Defines the synchronization event on the selected + synchronization input: + 17 + 2 + + + NBREQ + Number of DMA requests to forward + Defines the number of DMA requests forwarded before + output event is generated. In synchronous mode, it + also defines the number of DMA requests to forward + after a synchronization event, then stop forwarding. + The actual number of DMA requests forwarded is + NBREQ+1. Note: This field can only be written when + both SE and EGE bits are reset. + 19 + 5 + + + SYNC_ID + Synchronization input + selected + 24 + 5 + + + + + RG0CR + RG0CR + DMAMux - DMA request generator channel x + control register + 0x100 + 0x20 + read-write + 0x00000000 + + + SIG_ID + DMA request trigger input + selected + 0 + 5 + + + OIE + Interrupt enable at trigger event + overrun + 8 + 1 + + + GE + DMA request generator channel + enable/disable + 16 + 1 + + + GPOL + DMA request generator trigger event type + selection Defines the trigger event on the selected + DMA request trigger input + 17 + 2 + + + GNBREQ + Number of DMA requests to generate + Defines the number of DMA requests generated after a + trigger event, then stop generating. The actual + number of generated DMA requests is GNBREQ+1. Note: + This field can only be written when GE bit is + reset. + 19 + 5 + + + + + RG1CR + RG1CR + DMAMux - DMA request generator channel x + control register + 0x104 + 0x20 + read-write + 0x00000000 + + + SIG_ID + DMA request trigger input + selected + 0 + 5 + + + OIE + Interrupt enable at trigger event + overrun + 8 + 1 + + + GE + DMA request generator channel + enable/disable + 16 + 1 + + + GPOL + DMA request generator trigger event type + selection Defines the trigger event on the selected + DMA request trigger input + 17 + 2 + + + GNBREQ + Number of DMA requests to generate + Defines the number of DMA requests generated after a + trigger event, then stop generating. The actual + number of generated DMA requests is GNBREQ+1. Note: + This field can only be written when GE bit is + reset. + 19 + 5 + + + + + RG2CR + RG2CR + DMAMux - DMA request generator channel x + control register + 0x108 + 0x20 + read-write + 0x00000000 + + + SIG_ID + DMA request trigger input + selected + 0 + 5 + + + OIE + Interrupt enable at trigger event + overrun + 8 + 1 + + + GE + DMA request generator channel + enable/disable + 16 + 1 + + + GPOL + DMA request generator trigger event type + selection Defines the trigger event on the selected + DMA request trigger input + 17 + 2 + + + GNBREQ + Number of DMA requests to generate + Defines the number of DMA requests generated after a + trigger event, then stop generating. The actual + number of generated DMA requests is GNBREQ+1. Note: + This field can only be written when GE bit is + reset. + 19 + 5 + + + + + RG3CR + RG3CR + DMAMux - DMA request generator channel x + control register + 0x10C + 0x20 + read-write + 0x00000000 + + + SIG_ID + DMA request trigger input + selected + 0 + 5 + + + OIE + Interrupt enable at trigger event + overrun + 8 + 1 + + + GE + DMA request generator channel + enable/disable + 16 + 1 + + + GPOL + DMA request generator trigger event type + selection Defines the trigger event on the selected + DMA request trigger input + 17 + 2 + + + GNBREQ + Number of DMA requests to generate + Defines the number of DMA requests generated after a + trigger event, then stop generating. The actual + number of generated DMA requests is GNBREQ+1. Note: + This field can only be written when GE bit is + reset. + 19 + 5 + + + + + RGSR + RGSR + DMAMux - DMA request generator status + register + 0x140 + 0x20 + read-only + 0x00000000 + + + OF + Trigger event overrun flag The flag is + set when a trigger event occurs on DMA request + generator channel x, while the DMA request generator + counter value is lower than GNBREQ. The flag is + cleared by writing 1 to the corresponding COFx bit in + DMAMUX_RGCFR register. + 0 + 4 + + + + + RGCFR + RGCFR + DMAMux - DMA request generator clear flag + register + 0x144 + 0x20 + write-only + 0x00000000 + + + COF + Clear trigger event overrun flag Upon + setting, this bit clears the corresponding overrun + flag OFx in the DMAMUX_RGCSR register. + 0 + 4 + + + + + + + GPIOA + General-purpose I/Os + GPIO + 0x50000000 + + 0x0 + 0x400 + registers + + + + MODER + MODER + GPIO port mode register + 0x0 + 0x20 + read-write + 0xEBFFFFFF + + + MODER15 + Port x configuration bits (y = + 0..15) + 30 + 2 + + + MODER14 + Port x configuration bits (y = + 0..15) + 28 + 2 + + + MODER13 + Port x configuration bits (y = + 0..15) + 26 + 2 + + + MODER12 + Port x configuration bits (y = + 0..15) + 24 + 2 + + + MODER11 + Port x configuration bits (y = + 0..15) + 22 + 2 + + + MODER10 + Port x configuration bits (y = + 0..15) + 20 + 2 + + + MODER9 + Port x configuration bits (y = + 0..15) + 18 + 2 + + + MODER8 + Port x configuration bits (y = + 0..15) + 16 + 2 + + + MODER7 + Port x configuration bits (y = + 0..15) + 14 + 2 + + + MODER6 + Port x configuration bits (y = + 0..15) + 12 + 2 + + + MODER5 + Port x configuration bits (y = + 0..15) + 10 + 2 + + + MODER4 + Port x configuration bits (y = + 0..15) + 8 + 2 + + + MODER3 + Port x configuration bits (y = + 0..15) + 6 + 2 + + + MODER2 + Port x configuration bits (y = + 0..15) + 4 + 2 + + + MODER1 + Port x configuration bits (y = + 0..15) + 2 + 2 + + + MODER0 + Port x configuration bits (y = + 0..15) + 0 + 2 + + + + + OTYPER + OTYPER + GPIO port output type register + 0x4 + 0x20 + read-write + 0x00000000 + + + OT15 + Port x configuration bits (y = + 0..15) + 15 + 1 + + + OT14 + Port x configuration bits (y = + 0..15) + 14 + 1 + + + OT13 + Port x configuration bits (y = + 0..15) + 13 + 1 + + + OT12 + Port x configuration bits (y = + 0..15) + 12 + 1 + + + OT11 + Port x configuration bits (y = + 0..15) + 11 + 1 + + + OT10 + Port x configuration bits (y = + 0..15) + 10 + 1 + + + OT9 + Port x configuration bits (y = + 0..15) + 9 + 1 + + + OT8 + Port x configuration bits (y = + 0..15) + 8 + 1 + + + OT7 + Port x configuration bits (y = + 0..15) + 7 + 1 + + + OT6 + Port x configuration bits (y = + 0..15) + 6 + 1 + + + OT5 + Port x configuration bits (y = + 0..15) + 5 + 1 + + + OT4 + Port x configuration bits (y = + 0..15) + 4 + 1 + + + OT3 + Port x configuration bits (y = + 0..15) + 3 + 1 + + + OT2 + Port x configuration bits (y = + 0..15) + 2 + 1 + + + OT1 + Port x configuration bits (y = + 0..15) + 1 + 1 + + + OT0 + Port x configuration bits (y = + 0..15) + 0 + 1 + + + + + OSPEEDR + OSPEEDR + GPIO port output speed + register + 0x8 + 0x20 + read-write + 0x0C000000 + + + OSPEEDR15 + Port x configuration bits (y = + 0..15) + 30 + 2 + + + OSPEEDR14 + Port x configuration bits (y = + 0..15) + 28 + 2 + + + OSPEEDR13 + Port x configuration bits (y = + 0..15) + 26 + 2 + + + OSPEEDR12 + Port x configuration bits (y = + 0..15) + 24 + 2 + + + OSPEEDR11 + Port x configuration bits (y = + 0..15) + 22 + 2 + + + OSPEEDR10 + Port x configuration bits (y = + 0..15) + 20 + 2 + + + OSPEEDR9 + Port x configuration bits (y = + 0..15) + 18 + 2 + + + OSPEEDR8 + Port x configuration bits (y = + 0..15) + 16 + 2 + + + OSPEEDR7 + Port x configuration bits (y = + 0..15) + 14 + 2 + + + OSPEEDR6 + Port x configuration bits (y = + 0..15) + 12 + 2 + + + OSPEEDR5 + Port x configuration bits (y = + 0..15) + 10 + 2 + + + OSPEEDR4 + Port x configuration bits (y = + 0..15) + 8 + 2 + + + OSPEEDR3 + Port x configuration bits (y = + 0..15) + 6 + 2 + + + OSPEEDR2 + Port x configuration bits (y = + 0..15) + 4 + 2 + + + OSPEEDR1 + Port x configuration bits (y = + 0..15) + 2 + 2 + + + OSPEEDR0 + Port x configuration bits (y = + 0..15) + 0 + 2 + + + + + PUPDR + PUPDR + GPIO port pull-up/pull-down + register + 0xC + 0x20 + read-write + 0x24000000 + + + PUPDR15 + Port x configuration bits (y = + 0..15) + 30 + 2 + + + PUPDR14 + Port x configuration bits (y = + 0..15) + 28 + 2 + + + PUPDR13 + Port x configuration bits (y = + 0..15) + 26 + 2 + + + PUPDR12 + Port x configuration bits (y = + 0..15) + 24 + 2 + + + PUPDR11 + Port x configuration bits (y = + 0..15) + 22 + 2 + + + PUPDR10 + Port x configuration bits (y = + 0..15) + 20 + 2 + + + PUPDR9 + Port x configuration bits (y = + 0..15) + 18 + 2 + + + PUPDR8 + Port x configuration bits (y = + 0..15) + 16 + 2 + + + PUPDR7 + Port x configuration bits (y = + 0..15) + 14 + 2 + + + PUPDR6 + Port x configuration bits (y = + 0..15) + 12 + 2 + + + PUPDR5 + Port x configuration bits (y = + 0..15) + 10 + 2 + + + PUPDR4 + Port x configuration bits (y = + 0..15) + 8 + 2 + + + PUPDR3 + Port x configuration bits (y = + 0..15) + 6 + 2 + + + PUPDR2 + Port x configuration bits (y = + 0..15) + 4 + 2 + + + PUPDR1 + Port x configuration bits (y = + 0..15) + 2 + 2 + + + PUPDR0 + Port x configuration bits (y = + 0..15) + 0 + 2 + + + + + IDR + IDR + GPIO port input data register + 0x10 + 0x20 + read-only + 0x00000000 + + + IDR15 + Port input data (y = + 0..15) + 15 + 1 + + + IDR14 + Port input data (y = + 0..15) + 14 + 1 + + + IDR13 + Port input data (y = + 0..15) + 13 + 1 + + + IDR12 + Port input data (y = + 0..15) + 12 + 1 + + + IDR11 + Port input data (y = + 0..15) + 11 + 1 + + + IDR10 + Port input data (y = + 0..15) + 10 + 1 + + + IDR9 + Port input data (y = + 0..15) + 9 + 1 + + + IDR8 + Port input data (y = + 0..15) + 8 + 1 + + + IDR7 + Port input data (y = + 0..15) + 7 + 1 + + + IDR6 + Port input data (y = + 0..15) + 6 + 1 + + + IDR5 + Port input data (y = + 0..15) + 5 + 1 + + + IDR4 + Port input data (y = + 0..15) + 4 + 1 + + + IDR3 + Port input data (y = + 0..15) + 3 + 1 + + + IDR2 + Port input data (y = + 0..15) + 2 + 1 + + + IDR1 + Port input data (y = + 0..15) + 1 + 1 + + + IDR0 + Port input data (y = + 0..15) + 0 + 1 + + + + + ODR + ODR + GPIO port output data register + 0x14 + 0x20 + read-write + 0x00000000 + + + ODR15 + Port output data (y = + 0..15) + 15 + 1 + + + ODR14 + Port output data (y = + 0..15) + 14 + 1 + + + ODR13 + Port output data (y = + 0..15) + 13 + 1 + + + ODR12 + Port output data (y = + 0..15) + 12 + 1 + + + ODR11 + Port output data (y = + 0..15) + 11 + 1 + + + ODR10 + Port output data (y = + 0..15) + 10 + 1 + + + ODR9 + Port output data (y = + 0..15) + 9 + 1 + + + ODR8 + Port output data (y = + 0..15) + 8 + 1 + + + ODR7 + Port output data (y = + 0..15) + 7 + 1 + + + ODR6 + Port output data (y = + 0..15) + 6 + 1 + + + ODR5 + Port output data (y = + 0..15) + 5 + 1 + + + ODR4 + Port output data (y = + 0..15) + 4 + 1 + + + ODR3 + Port output data (y = + 0..15) + 3 + 1 + + + ODR2 + Port output data (y = + 0..15) + 2 + 1 + + + ODR1 + Port output data (y = + 0..15) + 1 + 1 + + + ODR0 + Port output data (y = + 0..15) + 0 + 1 + + + + + BSRR + BSRR + GPIO port bit set/reset + register + 0x18 + 0x20 + write-only + 0x00000000 + + + BR15 + Port x reset bit y (y = + 0..15) + 31 + 1 + + + BR14 + Port x reset bit y (y = + 0..15) + 30 + 1 + + + BR13 + Port x reset bit y (y = + 0..15) + 29 + 1 + + + BR12 + Port x reset bit y (y = + 0..15) + 28 + 1 + + + BR11 + Port x reset bit y (y = + 0..15) + 27 + 1 + + + BR10 + Port x reset bit y (y = + 0..15) + 26 + 1 + + + BR9 + Port x reset bit y (y = + 0..15) + 25 + 1 + + + BR8 + Port x reset bit y (y = + 0..15) + 24 + 1 + + + BR7 + Port x reset bit y (y = + 0..15) + 23 + 1 + + + BR6 + Port x reset bit y (y = + 0..15) + 22 + 1 + + + BR5 + Port x reset bit y (y = + 0..15) + 21 + 1 + + + BR4 + Port x reset bit y (y = + 0..15) + 20 + 1 + + + BR3 + Port x reset bit y (y = + 0..15) + 19 + 1 + + + BR2 + Port x reset bit y (y = + 0..15) + 18 + 1 + + + BR1 + Port x reset bit y (y = + 0..15) + 17 + 1 + + + BR0 + Port x set bit y (y= + 0..15) + 16 + 1 + + + BS15 + Port x set bit y (y= + 0..15) + 15 + 1 + + + BS14 + Port x set bit y (y= + 0..15) + 14 + 1 + + + BS13 + Port x set bit y (y= + 0..15) + 13 + 1 + + + BS12 + Port x set bit y (y= + 0..15) + 12 + 1 + + + BS11 + Port x set bit y (y= + 0..15) + 11 + 1 + + + BS10 + Port x set bit y (y= + 0..15) + 10 + 1 + + + BS9 + Port x set bit y (y= + 0..15) + 9 + 1 + + + BS8 + Port x set bit y (y= + 0..15) + 8 + 1 + + + BS7 + Port x set bit y (y= + 0..15) + 7 + 1 + + + BS6 + Port x set bit y (y= + 0..15) + 6 + 1 + + + BS5 + Port x set bit y (y= + 0..15) + 5 + 1 + + + BS4 + Port x set bit y (y= + 0..15) + 4 + 1 + + + BS3 + Port x set bit y (y= + 0..15) + 3 + 1 + + + BS2 + Port x set bit y (y= + 0..15) + 2 + 1 + + + BS1 + Port x set bit y (y= + 0..15) + 1 + 1 + + + BS0 + Port x set bit y (y= + 0..15) + 0 + 1 + + + + + LCKR + LCKR + GPIO port configuration lock + register + 0x1C + 0x20 + read-write + 0x00000000 + + + LCKK + Port x lock bit y (y= + 0..15) + 16 + 1 + + + LCK15 + Port x lock bit y (y= + 0..15) + 15 + 1 + + + LCK14 + Port x lock bit y (y= + 0..15) + 14 + 1 + + + LCK13 + Port x lock bit y (y= + 0..15) + 13 + 1 + + + LCK12 + Port x lock bit y (y= + 0..15) + 12 + 1 + + + LCK11 + Port x lock bit y (y= + 0..15) + 11 + 1 + + + LCK10 + Port x lock bit y (y= + 0..15) + 10 + 1 + + + LCK9 + Port x lock bit y (y= + 0..15) + 9 + 1 + + + LCK8 + Port x lock bit y (y= + 0..15) + 8 + 1 + + + LCK7 + Port x lock bit y (y= + 0..15) + 7 + 1 + + + LCK6 + Port x lock bit y (y= + 0..15) + 6 + 1 + + + LCK5 + Port x lock bit y (y= + 0..15) + 5 + 1 + + + LCK4 + Port x lock bit y (y= + 0..15) + 4 + 1 + + + LCK3 + Port x lock bit y (y= + 0..15) + 3 + 1 + + + LCK2 + Port x lock bit y (y= + 0..15) + 2 + 1 + + + LCK1 + Port x lock bit y (y= + 0..15) + 1 + 1 + + + LCK0 + Port x lock bit y (y= + 0..15) + 0 + 1 + + + + + AFRL + AFRL + GPIO alternate function low + register + 0x20 + 0x20 + read-write + 0x00000000 + + + AFSEL7 + Alternate function selection for port x + bit y (y = 0..7) + 28 + 4 + + + AFSEL6 + Alternate function selection for port x + bit y (y = 0..7) + 24 + 4 + + + AFSEL5 + Alternate function selection for port x + bit y (y = 0..7) + 20 + 4 + + + AFSEL4 + Alternate function selection for port x + bit y (y = 0..7) + 16 + 4 + + + AFSEL3 + Alternate function selection for port x + bit y (y = 0..7) + 12 + 4 + + + AFSEL2 + Alternate function selection for port x + bit y (y = 0..7) + 8 + 4 + + + AFSEL1 + Alternate function selection for port x + bit y (y = 0..7) + 4 + 4 + + + AFSEL0 + Alternate function selection for port x + bit y (y = 0..7) + 0 + 4 + + + + + AFRH + AFRH + GPIO alternate function high + register + 0x24 + 0x20 + read-write + 0x00000000 + + + AFSEL15 + Alternate function selection for port x + bit y (y = 8..15) + 28 + 4 + + + AFSEL14 + Alternate function selection for port x + bit y (y = 8..15) + 24 + 4 + + + AFSEL13 + Alternate function selection for port x + bit y (y = 8..15) + 20 + 4 + + + AFSEL12 + Alternate function selection for port x + bit y (y = 8..15) + 16 + 4 + + + AFSEL11 + Alternate function selection for port x + bit y (y = 8..15) + 12 + 4 + + + AFSEL10 + Alternate function selection for port x + bit y (y = 8..15) + 8 + 4 + + + AFSEL9 + Alternate function selection for port x + bit y (y = 8..15) + 4 + 4 + + + AFSEL8 + Alternate function selection for port x + bit y (y = 8..15) + 0 + 4 + + + + + BRR + BRR + port bit reset register + 0x28 + 0x20 + write-only + 0x00000000 + + + BR0 + Port Reset bit + 0 + 1 + + + BR1 + Port Reset bit + 1 + 1 + + + BR2 + Port Reset bit + 2 + 1 + + + BR3 + Port Reset bit + 3 + 1 + + + BR4 + Port Reset bit + 4 + 1 + + + BR5 + Port Reset bit + 5 + 1 + + + BR6 + Port Reset bit + 6 + 1 + + + BR7 + Port Reset bit + 7 + 1 + + + BR8 + Port Reset bit + 8 + 1 + + + BR9 + Port Reset bit + 9 + 1 + + + BR10 + Port Reset bit + 10 + 1 + + + BR11 + Port Reset bit + 11 + 1 + + + BR12 + Port Reset bit + 12 + 1 + + + BR13 + Port Reset bit + 13 + 1 + + + BR14 + Port Reset bit + 14 + 1 + + + BR15 + Port Reset bit + 15 + 1 + + + + + + + GPIOB + General-purpose I/Os + GPIO + 0x50000400 + + 0x0 + 0x400 + registers + + + + MODER + MODER + GPIO port mode register + 0x0 + 0x20 + read-write + 0xFFFFFFFF + + + MODER15 + Port x configuration bits (y = + 0..15) + 30 + 2 + + + MODER14 + Port x configuration bits (y = + 0..15) + 28 + 2 + + + MODER13 + Port x configuration bits (y = + 0..15) + 26 + 2 + + + MODER12 + Port x configuration bits (y = + 0..15) + 24 + 2 + + + MODER11 + Port x configuration bits (y = + 0..15) + 22 + 2 + + + MODER10 + Port x configuration bits (y = + 0..15) + 20 + 2 + + + MODER9 + Port x configuration bits (y = + 0..15) + 18 + 2 + + + MODER8 + Port x configuration bits (y = + 0..15) + 16 + 2 + + + MODER7 + Port x configuration bits (y = + 0..15) + 14 + 2 + + + MODER6 + Port x configuration bits (y = + 0..15) + 12 + 2 + + + MODER5 + Port x configuration bits (y = + 0..15) + 10 + 2 + + + MODER4 + Port x configuration bits (y = + 0..15) + 8 + 2 + + + MODER3 + Port x configuration bits (y = + 0..15) + 6 + 2 + + + MODER2 + Port x configuration bits (y = + 0..15) + 4 + 2 + + + MODER1 + Port x configuration bits (y = + 0..15) + 2 + 2 + + + MODER0 + Port x configuration bits (y = + 0..15) + 0 + 2 + + + + + OTYPER + OTYPER + GPIO port output type register + 0x4 + 0x20 + read-write + 0x00000000 + + + OT15 + Port x configuration bits (y = + 0..15) + 15 + 1 + + + OT14 + Port x configuration bits (y = + 0..15) + 14 + 1 + + + OT13 + Port x configuration bits (y = + 0..15) + 13 + 1 + + + OT12 + Port x configuration bits (y = + 0..15) + 12 + 1 + + + OT11 + Port x configuration bits (y = + 0..15) + 11 + 1 + + + OT10 + Port x configuration bits (y = + 0..15) + 10 + 1 + + + OT9 + Port x configuration bits (y = + 0..15) + 9 + 1 + + + OT8 + Port x configuration bits (y = + 0..15) + 8 + 1 + + + OT7 + Port x configuration bits (y = + 0..15) + 7 + 1 + + + OT6 + Port x configuration bits (y = + 0..15) + 6 + 1 + + + OT5 + Port x configuration bits (y = + 0..15) + 5 + 1 + + + OT4 + Port x configuration bits (y = + 0..15) + 4 + 1 + + + OT3 + Port x configuration bits (y = + 0..15) + 3 + 1 + + + OT2 + Port x configuration bits (y = + 0..15) + 2 + 1 + + + OT1 + Port x configuration bits (y = + 0..15) + 1 + 1 + + + OT0 + Port x configuration bits (y = + 0..15) + 0 + 1 + + + + + OSPEEDR + OSPEEDR + GPIO port output speed + register + 0x8 + 0x20 + read-write + 0x00000000 + + + OSPEEDR15 + Port x configuration bits (y = + 0..15) + 30 + 2 + + + OSPEEDR14 + Port x configuration bits (y = + 0..15) + 28 + 2 + + + OSPEEDR13 + Port x configuration bits (y = + 0..15) + 26 + 2 + + + OSPEEDR12 + Port x configuration bits (y = + 0..15) + 24 + 2 + + + OSPEEDR11 + Port x configuration bits (y = + 0..15) + 22 + 2 + + + OSPEEDR10 + Port x configuration bits (y = + 0..15) + 20 + 2 + + + OSPEEDR9 + Port x configuration bits (y = + 0..15) + 18 + 2 + + + OSPEEDR8 + Port x configuration bits (y = + 0..15) + 16 + 2 + + + OSPEEDR7 + Port x configuration bits (y = + 0..15) + 14 + 2 + + + OSPEEDR6 + Port x configuration bits (y = + 0..15) + 12 + 2 + + + OSPEEDR5 + Port x configuration bits (y = + 0..15) + 10 + 2 + + + OSPEEDR4 + Port x configuration bits (y = + 0..15) + 8 + 2 + + + OSPEEDR3 + Port x configuration bits (y = + 0..15) + 6 + 2 + + + OSPEEDR2 + Port x configuration bits (y = + 0..15) + 4 + 2 + + + OSPEEDR1 + Port x configuration bits (y = + 0..15) + 2 + 2 + + + OSPEEDR0 + Port x configuration bits (y = + 0..15) + 0 + 2 + + + + + PUPDR + PUPDR + GPIO port pull-up/pull-down + register + 0xC + 0x20 + read-write + 0x00000000 + + + PUPDR15 + Port x configuration bits (y = + 0..15) + 30 + 2 + + + PUPDR14 + Port x configuration bits (y = + 0..15) + 28 + 2 + + + PUPDR13 + Port x configuration bits (y = + 0..15) + 26 + 2 + + + PUPDR12 + Port x configuration bits (y = + 0..15) + 24 + 2 + + + PUPDR11 + Port x configuration bits (y = + 0..15) + 22 + 2 + + + PUPDR10 + Port x configuration bits (y = + 0..15) + 20 + 2 + + + PUPDR9 + Port x configuration bits (y = + 0..15) + 18 + 2 + + + PUPDR8 + Port x configuration bits (y = + 0..15) + 16 + 2 + + + PUPDR7 + Port x configuration bits (y = + 0..15) + 14 + 2 + + + PUPDR6 + Port x configuration bits (y = + 0..15) + 12 + 2 + + + PUPDR5 + Port x configuration bits (y = + 0..15) + 10 + 2 + + + PUPDR4 + Port x configuration bits (y = + 0..15) + 8 + 2 + + + PUPDR3 + Port x configuration bits (y = + 0..15) + 6 + 2 + + + PUPDR2 + Port x configuration bits (y = + 0..15) + 4 + 2 + + + PUPDR1 + Port x configuration bits (y = + 0..15) + 2 + 2 + + + PUPDR0 + Port x configuration bits (y = + 0..15) + 0 + 2 + + + + + IDR + IDR + GPIO port input data register + 0x10 + 0x20 + read-only + 0x00000000 + + + IDR15 + Port input data (y = + 0..15) + 15 + 1 + + + IDR14 + Port input data (y = + 0..15) + 14 + 1 + + + IDR13 + Port input data (y = + 0..15) + 13 + 1 + + + IDR12 + Port input data (y = + 0..15) + 12 + 1 + + + IDR11 + Port input data (y = + 0..15) + 11 + 1 + + + IDR10 + Port input data (y = + 0..15) + 10 + 1 + + + IDR9 + Port input data (y = + 0..15) + 9 + 1 + + + IDR8 + Port input data (y = + 0..15) + 8 + 1 + + + IDR7 + Port input data (y = + 0..15) + 7 + 1 + + + IDR6 + Port input data (y = + 0..15) + 6 + 1 + + + IDR5 + Port input data (y = + 0..15) + 5 + 1 + + + IDR4 + Port input data (y = + 0..15) + 4 + 1 + + + IDR3 + Port input data (y = + 0..15) + 3 + 1 + + + IDR2 + Port input data (y = + 0..15) + 2 + 1 + + + IDR1 + Port input data (y = + 0..15) + 1 + 1 + + + IDR0 + Port input data (y = + 0..15) + 0 + 1 + + + + + ODR + ODR + GPIO port output data register + 0x14 + 0x20 + read-write + 0x00000000 + + + ODR15 + Port output data (y = + 0..15) + 15 + 1 + + + ODR14 + Port output data (y = + 0..15) + 14 + 1 + + + ODR13 + Port output data (y = + 0..15) + 13 + 1 + + + ODR12 + Port output data (y = + 0..15) + 12 + 1 + + + ODR11 + Port output data (y = + 0..15) + 11 + 1 + + + ODR10 + Port output data (y = + 0..15) + 10 + 1 + + + ODR9 + Port output data (y = + 0..15) + 9 + 1 + + + ODR8 + Port output data (y = + 0..15) + 8 + 1 + + + ODR7 + Port output data (y = + 0..15) + 7 + 1 + + + ODR6 + Port output data (y = + 0..15) + 6 + 1 + + + ODR5 + Port output data (y = + 0..15) + 5 + 1 + + + ODR4 + Port output data (y = + 0..15) + 4 + 1 + + + ODR3 + Port output data (y = + 0..15) + 3 + 1 + + + ODR2 + Port output data (y = + 0..15) + 2 + 1 + + + ODR1 + Port output data (y = + 0..15) + 1 + 1 + + + ODR0 + Port output data (y = + 0..15) + 0 + 1 + + + + + BSRR + BSRR + GPIO port bit set/reset + register + 0x18 + 0x20 + write-only + 0x00000000 + + + BR15 + Port x reset bit y (y = + 0..15) + 31 + 1 + + + BR14 + Port x reset bit y (y = + 0..15) + 30 + 1 + + + BR13 + Port x reset bit y (y = + 0..15) + 29 + 1 + + + BR12 + Port x reset bit y (y = + 0..15) + 28 + 1 + + + BR11 + Port x reset bit y (y = + 0..15) + 27 + 1 + + + BR10 + Port x reset bit y (y = + 0..15) + 26 + 1 + + + BR9 + Port x reset bit y (y = + 0..15) + 25 + 1 + + + BR8 + Port x reset bit y (y = + 0..15) + 24 + 1 + + + BR7 + Port x reset bit y (y = + 0..15) + 23 + 1 + + + BR6 + Port x reset bit y (y = + 0..15) + 22 + 1 + + + BR5 + Port x reset bit y (y = + 0..15) + 21 + 1 + + + BR4 + Port x reset bit y (y = + 0..15) + 20 + 1 + + + BR3 + Port x reset bit y (y = + 0..15) + 19 + 1 + + + BR2 + Port x reset bit y (y = + 0..15) + 18 + 1 + + + BR1 + Port x reset bit y (y = + 0..15) + 17 + 1 + + + BR0 + Port x set bit y (y= + 0..15) + 16 + 1 + + + BS15 + Port x set bit y (y= + 0..15) + 15 + 1 + + + BS14 + Port x set bit y (y= + 0..15) + 14 + 1 + + + BS13 + Port x set bit y (y= + 0..15) + 13 + 1 + + + BS12 + Port x set bit y (y= + 0..15) + 12 + 1 + + + BS11 + Port x set bit y (y= + 0..15) + 11 + 1 + + + BS10 + Port x set bit y (y= + 0..15) + 10 + 1 + + + BS9 + Port x set bit y (y= + 0..15) + 9 + 1 + + + BS8 + Port x set bit y (y= + 0..15) + 8 + 1 + + + BS7 + Port x set bit y (y= + 0..15) + 7 + 1 + + + BS6 + Port x set bit y (y= + 0..15) + 6 + 1 + + + BS5 + Port x set bit y (y= + 0..15) + 5 + 1 + + + BS4 + Port x set bit y (y= + 0..15) + 4 + 1 + + + BS3 + Port x set bit y (y= + 0..15) + 3 + 1 + + + BS2 + Port x set bit y (y= + 0..15) + 2 + 1 + + + BS1 + Port x set bit y (y= + 0..15) + 1 + 1 + + + BS0 + Port x set bit y (y= + 0..15) + 0 + 1 + + + + + LCKR + LCKR + GPIO port configuration lock + register + 0x1C + 0x20 + read-write + 0x00000000 + + + LCKK + Port x lock bit y (y= + 0..15) + 16 + 1 + + + LCK15 + Port x lock bit y (y= + 0..15) + 15 + 1 + + + LCK14 + Port x lock bit y (y= + 0..15) + 14 + 1 + + + LCK13 + Port x lock bit y (y= + 0..15) + 13 + 1 + + + LCK12 + Port x lock bit y (y= + 0..15) + 12 + 1 + + + LCK11 + Port x lock bit y (y= + 0..15) + 11 + 1 + + + LCK10 + Port x lock bit y (y= + 0..15) + 10 + 1 + + + LCK9 + Port x lock bit y (y= + 0..15) + 9 + 1 + + + LCK8 + Port x lock bit y (y= + 0..15) + 8 + 1 + + + LCK7 + Port x lock bit y (y= + 0..15) + 7 + 1 + + + LCK6 + Port x lock bit y (y= + 0..15) + 6 + 1 + + + LCK5 + Port x lock bit y (y= + 0..15) + 5 + 1 + + + LCK4 + Port x lock bit y (y= + 0..15) + 4 + 1 + + + LCK3 + Port x lock bit y (y= + 0..15) + 3 + 1 + + + LCK2 + Port x lock bit y (y= + 0..15) + 2 + 1 + + + LCK1 + Port x lock bit y (y= + 0..15) + 1 + 1 + + + LCK0 + Port x lock bit y (y= + 0..15) + 0 + 1 + + + + + AFRL + AFRL + GPIO alternate function low + register + 0x20 + 0x20 + read-write + 0x00000000 + + + AFSEL7 + Alternate function selection for port x + bit y (y = 0..7) + 28 + 4 + + + AFSEL6 + Alternate function selection for port x + bit y (y = 0..7) + 24 + 4 + + + AFSEL5 + Alternate function selection for port x + bit y (y = 0..7) + 20 + 4 + + + AFSEL4 + Alternate function selection for port x + bit y (y = 0..7) + 16 + 4 + + + AFSEL3 + Alternate function selection for port x + bit y (y = 0..7) + 12 + 4 + + + AFSEL2 + Alternate function selection for port x + bit y (y = 0..7) + 8 + 4 + + + AFSEL1 + Alternate function selection for port x + bit y (y = 0..7) + 4 + 4 + + + AFSEL0 + Alternate function selection for port x + bit y (y = 0..7) + 0 + 4 + + + + + AFRH + AFRH + GPIO alternate function high + register + 0x24 + 0x20 + read-write + 0x00000000 + + + AFSEL15 + Alternate function selection for port x + bit y (y = 8..15) + 28 + 4 + + + AFSEL14 + Alternate function selection for port x + bit y (y = 8..15) + 24 + 4 + + + AFSEL13 + Alternate function selection for port x + bit y (y = 8..15) + 20 + 4 + + + AFSEL12 + Alternate function selection for port x + bit y (y = 8..15) + 16 + 4 + + + AFSEL11 + Alternate function selection for port x + bit y (y = 8..15) + 12 + 4 + + + AFSEL10 + Alternate function selection for port x + bit y (y = 8..15) + 8 + 4 + + + AFSEL9 + Alternate function selection for port x + bit y (y = 8..15) + 4 + 4 + + + AFSEL8 + Alternate function selection for port x + bit y (y = 8..15) + 0 + 4 + + + + + BRR + BRR + port bit reset register + 0x28 + 0x20 + write-only + 0x00000000 + + + BR0 + Port Reset bit + 0 + 1 + + + BR1 + Port Reset bit + 1 + 1 + + + BR2 + Port Reset bit + 2 + 1 + + + BR3 + Port Reset bit + 3 + 1 + + + BR4 + Port Reset bit + 4 + 1 + + + BR5 + Port Reset bit + 5 + 1 + + + BR6 + Port Reset bit + 6 + 1 + + + BR7 + Port Reset bit + 7 + 1 + + + BR8 + Port Reset bit + 8 + 1 + + + BR9 + Port Reset bit + 9 + 1 + + + BR10 + Port Reset bit + 10 + 1 + + + BR11 + Port Reset bit + 11 + 1 + + + BR12 + Port Reset bit + 12 + 1 + + + BR13 + Port Reset bit + 13 + 1 + + + BR14 + Port Reset bit + 14 + 1 + + + BR15 + Port Reset bit + 15 + 1 + + + + + + + GPIOC + 0x50000800 + + + GPIOD + 0x50000C00 + + + GPIOF + 0x50001400 + + + CRC + Cyclic redundancy check calculation + unit + CRC + 0x40023000 + + 0x0 + 0x400 + registers + + + CEC + CEC global interrupt + 30 + + + + DR + DR + Data register + 0x0 + 0x20 + read-write + 0xFFFFFFFF + + + DR + Data register bits + 0 + 32 + + + + + IDR + IDR + Independent data register + 0x4 + 0x20 + read-write + 0x00000000 + + + IDR + General-purpose 32-bit data register + bits + 0 + 32 + + + + + CR + CR + Control register + 0x8 + 0x20 + 0x00000000 + + + REV_OUT + Reverse output data + 7 + 1 + read-write + + + REV_IN + Reverse input data + 5 + 2 + read-write + + + POLYSIZE + Polynomial size + 3 + 2 + read-write + + + RESET + RESET bit + 0 + 1 + write-only + + + + + INIT + INIT + Initial CRC value + 0x10 + 0x20 + read-write + 0xFFFFFFFF + + + CRC_INIT + Programmable initial CRC + value + 0 + 32 + + + + + POL + POL + polynomial + 0x14 + 0x20 + read-write + 0x04C11DB7 + + + POL + Programmable polynomial + 0 + 32 + + + + + + + EXTI + External interrupt/event + controller + EXTI + 0x40021800 + + 0x0 + 0x400 + registers + + + PVD + Power voltage detector interrupt + 1 + + + EXTI0_1 + EXTI line 0 & 1 interrupt + 5 + + + EXTI2_3 + EXTI line 2 & 3 interrupt + 6 + + + EXTI4_15 + EXTI line 4 to 15 interrupt + 7 + + + + RTSR1 + RTSR1 + EXTI rising trigger selection + register + 0x0 + 0x20 + read-write + 0x00000000 + + + TR0 + Rising trigger event configuration bit + of Configurable Event input + 0 + 1 + TR0read-writeDisabledRising edge trigger is disabled0EnabledRising edge trigger is enabled1 + + + TR1 + Rising trigger event configuration bit + of Configurable Event input + 1 + 1 + + + + TR2 + Rising trigger event configuration bit + of Configurable Event input + 2 + 1 + + + + TR3 + Rising trigger event configuration bit + of Configurable Event input + 3 + 1 + + + + TR4 + Rising trigger event configuration bit + of Configurable Event input + 4 + 1 + + + + TR5 + Rising trigger event configuration bit + of Configurable Event input + 5 + 1 + + + + TR6 + Rising trigger event configuration bit + of Configurable Event input + 6 + 1 + + + + TR7 + Rising trigger event configuration bit + of Configurable Event input + 7 + 1 + + + + TR8 + Rising trigger event configuration bit + of Configurable Event input + 8 + 1 + + + + TR9 + Rising trigger event configuration bit + of Configurable Event input + 9 + 1 + + + + TR10 + Rising trigger event configuration bit + of Configurable Event input + 10 + 1 + + + + TR11 + Rising trigger event configuration bit + of Configurable Event input + 11 + 1 + + + + TR12 + Rising trigger event configuration bit + of Configurable Event input + 12 + 1 + + + + TR13 + Rising trigger event configuration bit + of Configurable Event input + 13 + 1 + + + + TR14 + Rising trigger event configuration bit + of Configurable Event input + 14 + 1 + + + + TR15 + Rising trigger event configuration bit + of Configurable Event input + 15 + 1 + + + + TR16 + Rising trigger event configuration bit + of Configurable Event input + 16 + 1 + + + + + + FTSR1 + FTSR1 + EXTI falling trigger selection + register + 0x4 + 0x20 + read-write + 0x00000000 + + + TR0 + Rising trigger event configuration bit + of Configurable Event input + 0 + 1 + TR0read-writeDisabledFalling edge trigger is disabled0EnabledFalling edge trigger is enabled1 + + + TR1 + Rising trigger event configuration bit + of Configurable Event input + 1 + 1 + + + + TR2 + Rising trigger event configuration bit + of Configurable Event input + 2 + 1 + + + + TR3 + Rising trigger event configuration bit + of Configurable Event input + 3 + 1 + + + + TR4 + Rising trigger event configuration bit + of Configurable Event input + 4 + 1 + + + + TR5 + Rising trigger event configuration bit + of Configurable Event input + 5 + 1 + + + + TR6 + Rising trigger event configuration bit + of Configurable Event input + 6 + 1 + + + + TR7 + Rising trigger event configuration bit + of Configurable Event input + 7 + 1 + + + + TR8 + Rising trigger event configuration bit + of Configurable Event input + 8 + 1 + + + + TR9 + Rising trigger event configuration bit + of Configurable Event input + 9 + 1 + + + + TR10 + Rising trigger event configuration bit + of Configurable Event input + 10 + 1 + + + + TR11 + Rising trigger event configuration bit + of Configurable Event input + 11 + 1 + + + + TR12 + Rising trigger event configuration bit + of Configurable Event input + 12 + 1 + + + + TR13 + Rising trigger event configuration bit + of Configurable Event input + 13 + 1 + + + + TR14 + Rising trigger event configuration bit + of Configurable Event input + 14 + 1 + + + + TR15 + Rising trigger event configuration bit + of Configurable Event input + 15 + 1 + + + + TR16 + Rising trigger event configuration bit + of Configurable Event input + 16 + 1 + + + + + + SWIER1 + SWIER1 + EXTI software interrupt event + register + 0x8 + 0x20 + read-write + 0x00000000 + + + SWIER0 + Rising trigger event configuration bit + of Configurable Event input + 0 + 1 + SWIER0WwritePendGenerates an interrupt request1 + + + SWIER1 + Rising trigger event configuration bit + of Configurable Event input + 1 + 1 + + + + SWIER2 + Rising trigger event configuration bit + of Configurable Event input + 2 + 1 + + + + SWIER3 + Rising trigger event configuration bit + of Configurable Event input + 3 + 1 + + + + SWIER4 + Rising trigger event configuration bit + of Configurable Event input + 4 + 1 + + + + SWIER5 + Rising trigger event configuration bit + of Configurable Event input + 5 + 1 + + + + SWIER6 + Rising trigger event configuration bit + of Configurable Event input + 6 + 1 + + + + SWIER7 + Rising trigger event configuration bit + of Configurable Event input + 7 + 1 + + + + SWIER8 + Rising trigger event configuration bit + of Configurable Event input + 8 + 1 + + + + SWIER9 + Rising trigger event configuration bit + of Configurable Event input + 9 + 1 + + + + SWIER10 + Rising trigger event configuration bit + of Configurable Event input + 10 + 1 + + + + SWIER11 + Rising trigger event configuration bit + of Configurable Event input + 11 + 1 + + + + SWIER12 + Rising trigger event configuration bit + of Configurable Event input + 12 + 1 + + + + SWIER13 + Rising trigger event configuration bit + of Configurable Event input + 13 + 1 + + + + SWIER14 + Rising trigger event configuration bit + of Configurable Event input + 14 + 1 + + + + SWIER15 + Rising trigger event configuration bit + of Configurable Event input + 15 + 1 + + + + SWIER16 + Rising trigger event configuration bit + of Configurable Event input + 16 + 1 + + + + + + RPR1 + RPR1 + EXTI rising edge pending + register + 0xC + 0x20 + read-write + 0x00000000 + + + RPIF0 + configurable event inputs x rising edge + Pending bit. + 0 + 1 + RPIF0RreadNotPendingNo trigger request occurred0PendingSelected trigger request occurred1 + RPIF0WwriteClearClears pending bit1 + + + RPIF1 + configurable event inputs x rising edge + Pending bit. + 1 + 1 + + + + + RPIF2 + configurable event inputs x rising edge + Pending bit. + 2 + 1 + + + + + RPIF3 + configurable event inputs x rising edge + Pending bit. + 3 + 1 + + + + + RPIF4 + configurable event inputs x rising edge + Pending bit. + 4 + 1 + + + + + RPIF5 + configurable event inputs x rising edge + Pending bit + 5 + 1 + + + + + RPIF6 + configurable event inputs x rising edge + Pending bit. + 6 + 1 + + + + + RPIF7 + configurable event inputs x rising edge + Pending bit. + 7 + 1 + + + + + RPIF8 + configurable event inputs x rising edge + Pending bit. + 8 + 1 + + + + + RPIF9 + configurable event inputs x rising edge + Pending bit. + 9 + 1 + + + + + RPIF10 + configurable event inputs x rising edge + Pending bit. + 10 + 1 + + + + + RPIF11 + configurable event inputs x rising edge + Pending bit. + 11 + 1 + + + + + RPIF12 + configurable event inputs x rising edge + Pending bit. + 12 + 1 + + + + + RPIF13 + configurable event inputs x rising edge + Pending bit. + 13 + 1 + + + + + RPIF14 + configurable event inputs x rising edge + Pending bit. + 14 + 1 + + + + + RPIF15 + configurable event inputs x rising edge + Pending bit. + 15 + 1 + + + + + RPIF16 + configurable event inputs x rising edge + Pending bit. + 16 + 1 + + + + + + + FPR1 + FPR1 + EXTI falling edge pending + register + 0x10 + 0x20 + read-write + 0x00000000 + + + FPIF0 + configurable event inputs x falling edge + pending bit. + 0 + 1 + FPIF0RreadNotPendingNo trigger request occurred0PendingSelected trigger request occurred1 + FPIF0WwriteClearClears pending bit1 + + + FPIF1 + configurable event inputs x falling edge + pending bit. + 1 + 1 + + + + + FPIF2 + configurable event inputs x falling edge + pending bit. + 2 + 1 + + + + + FPIF3 + configurable event inputs x falling edge + pending bit. + 3 + 1 + + + + + FPIF4 + configurable event inputs x falling edge + pending bit. + 4 + 1 + + + + + FPIF5 + configurable event inputs x falling edge + pending bit. + 5 + 1 + + + + + FPIF6 + configurable event inputs x falling edge + pending bit. + 6 + 1 + + + + + FPIF7 + configurable event inputs x falling edge + pending bit. + 7 + 1 + + + + + FPIF8 + configurable event inputs x falling edge + pending bit. + 8 + 1 + + + + + FPIF9 + configurable event inputs x falling edge + pending bit. + 9 + 1 + + + + + FPIF10 + configurable event inputs x falling edge + pending bit. + 10 + 1 + + + + + FPIF11 + configurable event inputs x falling edge + pending bit. + 11 + 1 + + + + + FPIF12 + configurable event inputs x falling edge + pending bit. + 12 + 1 + + + + + FPIF13 + configurable event inputs x falling edge + pending bit. + 13 + 1 + + + + + FPIF14 + configurable event inputs x falling edge + pending bit. + 14 + 1 + + + + + FPIF15 + configurable event inputs x falling edge + pending bit. + 15 + 1 + + + + + FPIF16 + configurable event inputs x falling edge + pending bit. + 16 + 1 + + + + + + + EXTICR1 + EXTICR1 + EXTI external interrupt selection + register + 0x60 + 0x20 + read-write + 0x00000000 + + + EXTI0_7 + GPIO port selection + 0 + 8 + EXTI0_7read-writePAGPIO port A selected0PBGPIO port B selected1PCGPIO port C selected2PDGPIO port D selected3PFGPIO port F selected5 + + + EXTI8_15 + GPIO port selection + 8 + 8 + + + + EXTI16_23 + GPIO port selection + 16 + 8 + + + + EXTI24_31 + GPIO port selection + 24 + 8 + + + + + + EXTICR2 + EXTICR2 + EXTI external interrupt selection + register + 0x64 + 0x20 + read-write + 0x00000000 + + + EXTI0_7 + GPIO port selection + 0 + 8 + EXTI0_7read-writePAGPIO port A selected0PBGPIO port B selected1PCGPIO port C selected2PDGPIO port D selected3PFGPIO port F selected5 + + + EXTI8_15 + GPIO port selection + 8 + 8 + + + + EXTI16_23 + GPIO port selection + 16 + 8 + + + + EXTI24_31 + GPIO port selection + 24 + 8 + + + + + + EXTICR3 + EXTICR3 + EXTI external interrupt selection + register + 0x68 + 0x20 + read-write + 0x00000000 + + + EXTI0_7 + GPIO port selection + 0 + 8 + EXTI0_7read-writePAGPIO port A selected0PBGPIO port B selected1PCGPIO port C selected2PDGPIO port D selected3PFGPIO port F selected5 + + + EXTI8_15 + GPIO port selection + 8 + 8 + + + + EXTI16_23 + GPIO port selection + 16 + 8 + + + + EXTI24_31 + GPIO port selection + 24 + 8 + + + + + + EXTICR4 + EXTICR4 + EXTI external interrupt selection + register + 0x6C + 0x20 + read-write + 0x00000000 + + + EXTI0_7 + GPIO port selection + 0 + 8 + EXTI0_7read-writePAGPIO port A selected0PBGPIO port B selected1PCGPIO port C selected2PDGPIO port D selected3PFGPIO port F selected5 + + + EXTI8_15 + GPIO port selection + 8 + 8 + + + + EXTI16_23 + GPIO port selection + 16 + 8 + + + + EXTI24_31 + GPIO port selection + 24 + 8 + + + + + + IMR1 + IMR1 + EXTI CPU wakeup with interrupt mask + register + 0x80 + 0x20 + read-write + 0xFFF80000 + + + IM0 + CPU wakeup with interrupt mask on event + input + 0 + 1 + IM0read-writeMaskedInterrupt request line is masked0UnmaskedInterrupt request line is unmasked1 + + + IM1 + CPU wakeup with interrupt mask on event + input + 1 + 1 + + + + IM2 + CPU wakeup with interrupt mask on event + input + 2 + 1 + + + + IM3 + CPU wakeup with interrupt mask on event + input + 3 + 1 + + + + IM4 + CPU wakeup with interrupt mask on event + input + 4 + 1 + + + + IM5 + CPU wakeup with interrupt mask on event + input + 5 + 1 + + + + IM6 + CPU wakeup with interrupt mask on event + input + 6 + 1 + + + + IM7 + CPU wakeup with interrupt mask on event + input + 7 + 1 + + + + IM8 + CPU wakeup with interrupt mask on event + input + 8 + 1 + + + + IM9 + CPU wakeup with interrupt mask on event + input + 9 + 1 + + + + IM10 + CPU wakeup with interrupt mask on event + input + 10 + 1 + + + + IM11 + CPU wakeup with interrupt mask on event + input + 11 + 1 + + + + IM12 + CPU wakeup with interrupt mask on event + input + 12 + 1 + + + + IM13 + CPU wakeup with interrupt mask on event + input + 13 + 1 + + + + IM14 + CPU wakeup with interrupt mask on event + input + 14 + 1 + + + + IM15 + CPU wakeup with interrupt mask on event + input + 15 + 1 + + + + IM16 + CPU wakeup with interrupt mask on event + input + 16 + 1 + + + + IM19 + CPU wakeup with interrupt mask on event + input + 19 + 1 + + + + IM20 + CPU wakeup with interrupt mask on event + input + 20 + 1 + + + + IM21 + CPU wakeup with interrupt mask on event + input + 21 + 1 + + + + IM22 + CPU wakeup with interrupt mask on event + input + 22 + 1 + + + + IM23 + CPU wakeup with interrupt mask on event + input + 23 + 1 + + + + IM24 + CPU wakeup with interrupt mask on event + input + 24 + 1 + + + + IM25 + CPU wakeup with interrupt mask on event + input + 25 + 1 + + + + IM26 + CPU wakeup with interrupt mask on event + input + 26 + 1 + + + + IM28 + CPU wakeup with interrupt mask on event + input + 28 + 1 + + + + IM29 + CPU wakeup with interrupt mask on event + input + 29 + 1 + + + + IM30 + CPU wakeup with interrupt mask on event + input + 30 + 1 + + + + IM31 + CPU wakeup with interrupt mask on event + input + 31 + 1 + + + + + + EMR1 + EMR1 + EXTI CPU wakeup with event mask + register + 0x84 + 0x20 + read-write + 0x00000000 + + + EM0 + CPU wakeup with event mask on event + input + 0 + 1 + EM0read-writeMaskedInterrupt request line is masked0UnmaskedInterrupt request line is unmasked1 + + + EM1 + CPU wakeup with event mask on event + input + 1 + 1 + + + + EM2 + CPU wakeup with event mask on event + input + 2 + 1 + + + + EM3 + CPU wakeup with event mask on event + input + 3 + 1 + + + + EM4 + CPU wakeup with event mask on event + input + 4 + 1 + + + + EM5 + CPU wakeup with event mask on event + input + 5 + 1 + + + + EM6 + CPU wakeup with event mask on event + input + 6 + 1 + + + + EM7 + CPU wakeup with event mask on event + input + 7 + 1 + + + + EM8 + CPU wakeup with event mask on event + input + 8 + 1 + + + + EM9 + CPU wakeup with event mask on event + input + 9 + 1 + + + + EM10 + CPU wakeup with event mask on event + input + 10 + 1 + + + + EM11 + CPU wakeup with event mask on event + input + 11 + 1 + + + + EM12 + CPU wakeup with event mask on event + input + 12 + 1 + + + + EM13 + CPU wakeup with event mask on event + input + 13 + 1 + + + + EM14 + CPU wakeup with event mask on event + input + 14 + 1 + + + + EM15 + CPU wakeup with event mask on event + input + 15 + 1 + + + + EM16 + CPU wakeup with event mask on event + input + 16 + 1 + + + + EM19 + CPU wakeup with event mask on event + input + 19 + 1 + + + + EM21 + CPU wakeup with event mask on event + input + 21 + 1 + + + + EM23 + CPU wakeup with event mask on event + input + 23 + 1 + + + + EM25 + CPU wakeup with event mask on event + input + 25 + 1 + + + + EM26 + CPU wakeup with event mask on event + input + 26 + 1 + + + + EM28 + CPU wakeup with event mask on event + input + 28 + 1 + + + + EM29 + CPU wakeup with event mask on event + input + 29 + 1 + + + + EM30 + CPU wakeup with event mask on event + input + 30 + 1 + + + + EM31 + CPU wakeup with event mask on event + input + 31 + 1 + + + + + + + + TIM16 + General purpose timers + TIM + 0x40014400 + + 0x0 + 0x400 + registers + + + TIM16 + TIM16 global interrupt + 21 + + + + CR1 + CR1 + control register 1 + 0x0 + 0x20 + read-write + 0x0000 + + + CEN + Counter enable + 0 + 1 + + + UDIS + Update disable + 1 + 1 + + + URS + Update request source + 2 + 1 + + + OPM + One-pulse mode + 3 + 1 + + + ARPE + Auto-reload preload enable + 7 + 1 + + + CKD + Clock division + 8 + 2 + + + UIFREMAP + UIF status bit remapping + 11 + 1 + + + + + CR2 + CR2 + control register 2 + 0x4 + 0x20 + read-write + 0x0000 + + + OIS1N + Output Idle state 1 + 9 + 1 + + + OIS1 + Output Idle state 1 + 8 + 1 + + + CCDS + Capture/compare DMA + selection + 3 + 1 + + + CCUS + Capture/compare control update + selection + 2 + 1 + + + CCPC + Capture/compare preloaded + control + 0 + 1 + + + + + DIER + DIER + DMA/Interrupt enable register + 0xC + 0x20 + read-write + 0x0000 + + + COMDE + COM DMA request enable + 13 + 1 + + + CC1DE + Capture/Compare 1 DMA request + enable + 9 + 1 + + + UDE + Update DMA request enable + 8 + 1 + + + BIE + Break interrupt enable + 7 + 1 + + + COMIE + COM interrupt enable + 5 + 1 + + + CC1IE + Capture/Compare 1 interrupt + enable + 1 + 1 + + + UIE + Update interrupt enable + 0 + 1 + + + + + SR + SR + status register + 0x10 + 0x20 + read-write + 0x0000 + + + CC1OF + Capture/Compare 1 overcapture + flag + 9 + 1 + + + BIF + Break interrupt flag + 7 + 1 + + + COMIF + COM interrupt flag + 5 + 1 + + + CC1IF + Capture/compare 1 interrupt + flag + 1 + 1 + + + UIF + Update interrupt flag + 0 + 1 + + + + + EGR + EGR + event generation register + 0x14 + 0x20 + write-only + 0x0000 + + + BG + Break generation + 7 + 1 + + + COMG + Capture/Compare control update + generation + 5 + 1 + + + CC1G + Capture/compare 1 + generation + 1 + 1 + + + UG + Update generation + 0 + 1 + + + + + CCMR1_Output + CCMR1_Output + capture/compare mode register (output + mode) + 0x18 + 0x20 + read-write + 0x00000000 + + + OC1M_2 + Output Compare 1 mode + 16 + 1 + + + OC1M + Output Compare 1 mode + 4 + 3 + OC1Mread-writeFrozenThe comparison between the output compare register TIMx_CCRy and the counter TIMx_CNT has no effect on the outputs0ActiveOnMatchSet channel to active level on match. OCyREF signal is forced high when the counter matches the capture/compare register1InactiveOnMatchSet channel to inactive level on match. OCyREF signal is forced low when the counter matches the capture/compare register2ToggleOCyREF toggles when TIMx_CNT=TIMx_CCRy3ForceInactiveOCyREF is forced low4ForceActiveOCyREF is forced high5PwmMode1In upcounting, channel is active as long as TIMx_CNT<TIMx_CCRy else inactive. In downcounting, channel is inactive as long as TIMx_CNT>TIMx_CCRy else active6PwmMode2Inversely to PwmMode17 + + + OC1PE + Output Compare 1 preload + enable + 3 + 1 + + + OC1FE + Output Compare 1 fast + enable + 2 + 1 + + + CC1S + Capture/Compare 1 + selection + 0 + 2 + + + + + CCMR1_Input + CCMR1_Input + capture/compare mode register 1 (input + mode) + CCMR1_Output + 0x18 + 0x20 + read-write + 0x00000000 + + + IC1F + Input capture 1 filter + 4 + 4 + + + IC1PSC + Input capture 1 prescaler + 2 + 2 + + + CC1S + Capture/Compare 1 + selection + 0 + 2 + + + + + CCER + CCER + capture/compare enable + register + 0x20 + 0x20 + read-write + 0x0000 + + + CC1NP + Capture/Compare 1 output + Polarity + 3 + 1 + + + CC1NE + Capture/Compare 1 complementary output + enable + 2 + 1 + + + CC1P + Capture/Compare 1 output + Polarity + 1 + 1 + + + CC1E + Capture/Compare 1 output + enable + 0 + 1 + + + + + CNT + CNT + counter + 0x24 + 0x20 + 0x00000000 + + + CNT + counter value + 0 + 16 + read-write + + + UIFCPY + UIF Copy + 31 + 1 + read-only + + + + + PSC + PSC + prescaler + 0x28 + 0x20 + read-write + 0x0000 + + + PSC + Prescaler value + 0 + 16 + + + + + ARR + ARR + auto-reload register + 0x2C + 0x20 + read-write + 0x00000000 + + + ARR + Auto-reload value + 0 + 16 + + + + + RCR + RCR + repetition counter register + 0x30 + 0x20 + read-write + 0x0000 + + + REP + Repetition counter value + 0 + 8 + + + + + CCR1 + CCR1 + capture/compare register 1 + 0x34 + 0x20 + read-write + 0x00000000 + + + CCR1 + Capture/Compare 1 value + 0 + 16 + + + + + BDTR + BDTR + break and dead-time register + 0x44 + 0x20 + read-write + 0x0000 + + + DTG + Dead-time generator setup + 0 + 8 + + + LOCK + Lock configuration + 8 + 2 + + + OSSI + Off-state selection for Idle + mode + 10 + 1 + + + OSSR + Off-state selection for Run + mode + 11 + 1 + + + BKE + Break enable + 12 + 1 + + + BKP + Break polarity + 13 + 1 + + + AOE + Automatic output enable + 14 + 1 + + + MOE + Main output enable + 15 + 1 + + + BKF + Break filter + 16 + 4 + + + BKDSRM + Break Disarm + 26 + 1 + + + BKBID + Break Bidirectional + 28 + 1 + + + + + DCR + DCR + DMA control register + 0x48 + 0x20 + read-write + 0x0000 + + + DBL + DMA burst length + 8 + 5 + + + DBA + DMA base address + 0 + 5 + + + + + DMAR + DMAR + DMA address for full transfer + 0x4C + 0x20 + read-write + 0x0000 + + + DMAB + DMA register for burst + accesses + 0 + 16 + + + + + AF1 + AF1 + TIM17 option register 1 + 0x60 + 0x20 + read-write + 0x0000 + + + BKINE + BRK BKIN input enable + 0 + 1 + + + BKCMP1E + BRK COMP1 enable + 1 + 1 + + + BKCMP2E + BRK COMP2 enable + 2 + 1 + + + BKDFBK1E + BRK DFSDM_BREAK1 enable + 8 + 1 + + + BKINP + BRK BKIN input polarity + 9 + 1 + + + BKCMP1P + BRK COMP1 input polarity + 10 + 1 + + + BKCMP2P + BRK COMP2 input polarit + 11 + 1 + + + + + TISEL + TISEL + input selection register + 0x68 + 0x20 + read-write + 0x0000 + + + TI1SEL + selects input + 0 + 4 + + + + + + + TIM17 + 0x40014800 + + TIM17 + TIM17 global interrupt + 22 + + + + USART1 + Universal synchronous asynchronous receiver + transmitter + USART + 0x40013800 + + 0x0 + 0x400 + registers + + + USART1 + USART1 global interrupt + 27 + + + + CR1 + CR1 + Control register 1 + 0x0 + 0x20 + read-write + 0x0000 + + + RXFFIE + RXFIFO Full interrupt + enable + 31 + 1 + + + TXFEIE + TXFIFO empty interrupt + enable + 30 + 1 + + + FIFOEN + FIFO mode enable + 29 + 1 + + + M1 + Word length + 28 + 1 + + + EOBIE + End of Block interrupt + enable + 27 + 1 + + + RTOIE + Receiver timeout interrupt + enable + 26 + 1 + + + DEAT + DEAT + 21 + 5 + + + DEDT + DEDT + 16 + 5 + + + OVER8 + Oversampling mode + 15 + 1 + + + CMIE + Character match interrupt + enable + 14 + 1 + + + MME + Mute mode enable + 13 + 1 + + + M0 + Word length + 12 + 1 + + + WAKE + Receiver wakeup method + 11 + 1 + + + PCE + Parity control enable + 10 + 1 + + + PS + Parity selection + 9 + 1 + + + PEIE + PE interrupt enable + 8 + 1 + + + TXEIE + interrupt enable + 7 + 1 + + + TCIE + Transmission complete interrupt + enable + 6 + 1 + + + RXNEIE + RXNE interrupt enable + 5 + 1 + + + IDLEIE + IDLE interrupt enable + 4 + 1 + + + TE + Transmitter enable + 3 + 1 + + + RE + Receiver enable + 2 + 1 + + + UESM + USART enable in Stop mode + 1 + 1 + + + UE + USART enable + 0 + 1 + + + + + CR2 + CR2 + Control register 2 + 0x4 + 0x20 + read-write + 0x0000 + + + ADD4_7 + Address of the USART node + 28 + 4 + + + ADD0_3 + Address of the USART node + 24 + 4 + + + RTOEN + Receiver timeout enable + 23 + 1 + + + ABRMOD + Auto baud rate mode + 21 + 2 + + + ABREN + Auto baud rate enable + 20 + 1 + + + MSBFIRST + Most significant bit first + 19 + 1 + + + TAINV + Binary data inversion + 18 + 1 + + + TXINV + TX pin active level + inversion + 17 + 1 + + + RXINV + RX pin active level + inversion + 16 + 1 + + + SWAP + Swap TX/RX pins + 15 + 1 + + + LINEN + LIN mode enable + 14 + 1 + + + STOP + STOP bits + 12 + 2 + + + CLKEN + Clock enable + 11 + 1 + + + CPOL + Clock polarity + 10 + 1 + + + CPHA + Clock phase + 9 + 1 + + + LBCL + Last bit clock pulse + 8 + 1 + + + LBDIE + LIN break detection interrupt + enable + 6 + 1 + + + LBDL + LIN break detection length + 5 + 1 + + + ADDM7 + 7-bit Address Detection/4-bit Address + Detection + 4 + 1 + + + DIS_NSS + When the DSI_NSS bit is set, the NSS pin + input will be ignored + 3 + 1 + + + SLVEN + Synchronous Slave mode + enable + 0 + 1 + + + + + CR3 + CR3 + Control register 3 + 0x8 + 0x20 + read-write + 0x0000 + + + TXFTCFG + TXFIFO threshold + configuration + 29 + 3 + + + RXFTIE + RXFIFO threshold interrupt + enable + 28 + 1 + + + RXFTCFG + Receive FIFO threshold + configuration + 25 + 3 + + + TCBGTIE + Tr Complete before guard time, interrupt + enable + 24 + 1 + + + TXFTIE + threshold interrupt enable + 23 + 1 + + + WUFIE + Wakeup from Stop mode interrupt + enable + 22 + 1 + + + WUS + Wakeup from Stop mode interrupt flag + selection + 20 + 2 + + + SCARCNT + Smartcard auto-retry count + 17 + 3 + + + DEP + Driver enable polarity + selection + 15 + 1 + + + DEM + Driver enable mode + 14 + 1 + + + DDRE + DMA Disable on Reception + Error + 13 + 1 + + + OVRDIS + Overrun Disable + 12 + 1 + + + ONEBIT + One sample bit method + enable + 11 + 1 + + + CTSIE + CTS interrupt enable + 10 + 1 + + + CTSE + CTS enable + 9 + 1 + + + RTSE + RTS enable + 8 + 1 + + + DMAT + DMA enable transmitter + 7 + 1 + + + DMAR + DMA enable receiver + 6 + 1 + + + SCEN + Smartcard mode enable + 5 + 1 + + + NACK + Smartcard NACK enable + 4 + 1 + + + HDSEL + Half-duplex selection + 3 + 1 + + + IRLP + Ir low-power + 2 + 1 + + + IREN + Ir mode enable + 1 + 1 + + + EIE + Error interrupt enable + 0 + 1 + + + + + BRR + BRR + Baud rate register + 0xC + 0x20 + read-write + 0x0000 + + + BRR_4_15 + BRR_4_15 + 4 + 12 + + + BRR_0_3 + BRR_0_3 + 0 + 4 + + + + + GTPR + GTPR + Guard time and prescaler + register + 0x10 + 0x20 + read-write + 0x0000 + + + GT + Guard time value + 8 + 8 + + + PSC + Prescaler value + 0 + 8 + + + + + RTOR + RTOR + Receiver timeout register + 0x14 + 0x20 + read-write + 0x0000 + + + BLEN + Block Length + 24 + 8 + + + RTO + Receiver timeout value + 0 + 24 + + + + + RQR + RQR + Request register + 0x18 + 0x20 + write-only + 0x0000 + + + TXFRQ + Transmit data flush + request + 4 + 1 + + + RXFRQ + Receive data flush request + 3 + 1 + + + MMRQ + Mute mode request + 2 + 1 + + + SBKRQ + Send break request + 1 + 1 + + + ABRRQ + Auto baud rate request + 0 + 1 + + + + + ISR + ISR + Interrupt & status + register + 0x1C + 0x20 + read-only + 0x00C0 + + + TXFT + TXFIFO threshold flag + 27 + 1 + + + RXFT + RXFIFO threshold flag + 26 + 1 + + + TCBGT + Transmission complete before guard time + flag + 25 + 1 + + + RXFF + RXFIFO Full + 24 + 1 + + + TXFE + TXFIFO Empty + 23 + 1 + + + REACK + REACK + 22 + 1 + + + TEACK + TEACK + 21 + 1 + + + WUF + WUF + 20 + 1 + + + RWU + RWU + 19 + 1 + + + SBKF + SBKF + 18 + 1 + + + CMF + CMF + 17 + 1 + + + BUSY + BUSY + 16 + 1 + + + ABRF + ABRF + 15 + 1 + + + ABRE + ABRE + 14 + 1 + + + UDR + SPI slave underrun error + flag + 13 + 1 + + + EOBF + EOBF + 12 + 1 + + + RTOF + RTOF + 11 + 1 + + + CTS + CTS + 10 + 1 + + + CTSIF + CTSIF + 9 + 1 + + + LBDF + LBDF + 8 + 1 + + + TXE + TXE + 7 + 1 + + + TC + TC + 6 + 1 + + + RXNE + RXNE + 5 + 1 + + + IDLE + IDLE + 4 + 1 + + + ORE + ORE + 3 + 1 + + + NF + NF + 2 + 1 + + + FE + FE + 1 + 1 + + + PE + PE + 0 + 1 + + + + + ICR + ICR + Interrupt flag clear register + 0x20 + 0x20 + write-only + 0x0000 + + + WUCF + Wakeup from Stop mode clear + flag + 20 + 1 + + + CMCF + Character match clear flag + 17 + 1 + + + UDRCF + SPI slave underrun clear + flag + 13 + 1 + + + EOBCF + End of block clear flag + 12 + 1 + + + RTOCF + Receiver timeout clear + flag + 11 + 1 + + + CTSCF + CTS clear flag + 9 + 1 + + + LBDCF + LIN break detection clear + flag + 8 + 1 + + + TCBGTCF + Transmission complete before Guard time + clear flag + 7 + 1 + + + TCCF + Transmission complete clear + flag + 6 + 1 + + + TXFECF + TXFIFO empty clear flag + 5 + 1 + + + IDLECF + Idle line detected clear + flag + 4 + 1 + + + ORECF + Overrun error clear flag + 3 + 1 + + + NCF + Noise detected clear flag + 2 + 1 + + + FECF + Framing error clear flag + 1 + 1 + + + PECF + Parity error clear flag + 0 + 1 + + + + + RDR + RDR + Receive data register + 0x24 + 0x20 + read-only + 0x0000 + + + RDR + Receive data value + 0 + 9 + + + + + TDR + TDR + Transmit data register + 0x28 + 0x20 + read-write + 0x0000 + + + TDR + Transmit data value + 0 + 9 + + + + + PRESC + PRESC + Prescaler register + 0x2C + 0x20 + read-write + 0x0000 + + + PRESCALER + Clock prescaler + 0 + 4 + + + + + + + USART2 + 0x40004400 + + USART2 + USART2 global interrupt + 28 + + + + SPI1 + Serial peripheral interface/Inter-IC + sound + SPI + 0x40013000 + + 0x0 + 0x400 + registers + + + SPI1 + SPI1 global interrupt + 25 + + + + CR1 + CR1 + control register 1 + 0x0 + 0x20 + read-write + 0x0000 + + + BIDIMODE + Bidirectional data mode + enable + 15 + 1 + + + BIDIOE + Output enable in bidirectional + mode + 14 + 1 + + + CRCEN + Hardware CRC calculation + enable + 13 + 1 + + + CRCNEXT + CRC transfer next + 12 + 1 + + + DFF + Data frame format + 11 + 1 + + + RXONLY + Receive only + 10 + 1 + + + SSM + Software slave management + 9 + 1 + + + SSI + Internal slave select + 8 + 1 + + + LSBFIRST + Frame format + 7 + 1 + + + SPE + SPI enable + 6 + 1 + + + BR + Baud rate control + 3 + 3 + + + MSTR + Master selection + 2 + 1 + + + CPOL + Clock polarity + 1 + 1 + + + CPHA + Clock phase + 0 + 1 + + + + + CR2 + CR2 + control register 2 + 0x4 + 0x20 + read-write + 0x0000 + + + RXDMAEN + Rx buffer DMA enable + 0 + 1 + + + TXDMAEN + Tx buffer DMA enable + 1 + 1 + + + SSOE + SS output enable + 2 + 1 + + + NSSP + NSS pulse management + 3 + 1 + + + FRF + Frame format + 4 + 1 + + + ERRIE + Error interrupt enable + 5 + 1 + + + RXNEIE + RX buffer not empty interrupt + enable + 6 + 1 + + + TXEIE + Tx buffer empty interrupt + enable + 7 + 1 + + + DS + Data size + 8 + 4 + + + FRXTH + FIFO reception threshold + 12 + 1 + + + LDMA_RX + Last DMA transfer for + reception + 13 + 1 + + + LDMA_TX + Last DMA transfer for + transmission + 14 + 1 + + + + + SR + SR + status register + 0x8 + 0x20 + 0x0002 + + + RXNE + Receive buffer not empty + 0 + 1 + read-only + + + TXE + Transmit buffer empty + 1 + 1 + read-only + + + CHSIDE + Channel side + 2 + 1 + read-only + + + UDR + Underrun flag + 3 + 1 + read-only + + + CRCERR + CRC error flag + 4 + 1 + read-write + + + MODF + Mode fault + 5 + 1 + read-only + + + OVR + Overrun flag + 6 + 1 + read-only + + + BSY + Busy flag + 7 + 1 + read-only + + + TIFRFE + TI frame format error + 8 + 1 + read-only + + + FRLVL + FIFO reception level + 9 + 2 + read-only + + + FTLVL + FIFO transmission level + 11 + 2 + read-only + + + + + DR + DR + data register + 0xC + 0x20 + read-write + 0x0000 + + + DR + Data register + 0 + 16 + + + + + CRCPR + CRCPR + CRC polynomial register + 0x10 + 0x20 + read-write + 0x0007 + + + CRCPOLY + CRC polynomial register + 0 + 16 + + + + + RXCRCR + RXCRCR + RX CRC register + 0x14 + 0x20 + read-only + 0x0000 + + + RxCRC + Rx CRC register + 0 + 16 + + + + + TXCRCR + TXCRCR + TX CRC register + 0x18 + 0x20 + read-only + 0x0000 + + + TxCRC + Tx CRC register + 0 + 16 + + + + + I2SCFGR + I2SCFGR + configuration register + 0x1C + 0x20 + read-write + 0x0000 + + + CHLEN + Channel length (number of bits per audio + channel) + 0 + 1 + + + DATLEN + Data length to be + transferred + 1 + 2 + + + CKPOL + Inactive state clock + polarity + 3 + 1 + + + I2SSTD + standard selection + 4 + 2 + + + PCMSYNC + PCM frame synchronization + 7 + 1 + + + I2SCFG + I2S configuration mode + 8 + 2 + + + SE2 + I2S enable + 10 + 1 + + + I2SMOD + I2S mode selection + 11 + 1 + + + + + I2SPR + I2SPR + prescaler register + 0x20 + 0x20 + read-write + 0x0000 + + + I2SDIV + linear prescaler + 0 + 8 + + + ODD + Odd factor for the + prescaler + 8 + 1 + + + MCKOE + Master clock output enable + 9 + 1 + + + + + + + SPI2 + 0x40003800 + + SPI2 + SPI2 global interrupt + 26 + + + + TIM1 + Advanced-timers + TIM + 0x40012C00 + + 0x0 + 0x400 + registers + + + TIM1_BRK_UP_TRG_COM + TIM1 break, update, trigger + 13 + + + TIM1_CC + TIM1 Capture Compare interrupt + 14 + + + + CR1 + CR1 + control register 1 + 0x0 + 0x20 + read-write + 0x0000 + + + CEN + Counter enable + 0 + 1 + + + OPM + One-pulse mode + 3 + 1 + + + UDIS + Update disable + 1 + 1 + + + URS + Update request source + 2 + 1 + + + DIR + Direction + 4 + 1 + + + CMS + Center-aligned mode + selection + 5 + 2 + + + ARPE + Auto-reload preload enable + 7 + 1 + + + CKD + Clock division + 8 + 2 + + + UIFREMAP + UIF status bit remapping + 11 + 1 + + + + + CR2 + CR2 + control register 2 + 0x4 + 0x20 + read-write + 0x0000 + + + MMS2 + Master mode selection 2 + 20 + 4 + + + OIS6 + Output Idle state 6 (OC6 + output) + 18 + 1 + + + OIS5 + Output Idle state 5 (OC5 + output) + 16 + 1 + + + OIS4 + Output Idle state 4 + 14 + 1 + + + OIS3N + Output Idle state 3 + 13 + 1 + + + OIS3 + Output Idle state 3 + 12 + 1 + + + OIS2N + Output Idle state 2 + 11 + 1 + + + OIS2 + Output Idle state 2 + 10 + 1 + + + OIS1N + Output Idle state 1 + 9 + 1 + + + OIS1 + Output Idle state 1 + 8 + 1 + + + TI1S + TI1 selection + 7 + 1 + + + MMS + Master mode selection + 4 + 3 + + + CCDS + Capture/compare DMA + selection + 3 + 1 + + + CCUS + Capture/compare control update + selection + 2 + 1 + + + CCPC + Capture/compare preloaded + control + 0 + 1 + + + + + SMCR + SMCR + slave mode control register + 0x8 + 0x20 + read-write + 0x0000 + + + SMS + Slave mode selection + 0 + 3 + + + OCCS + OCREF clear selection + 3 + 1 + + + TS_4 + Trigger selection + 4 + 3 + + + MSM + Master/Slave mode + 7 + 1 + + + ETF + External trigger filter + 8 + 4 + + + ETPS + External trigger prescaler + 12 + 2 + + + ECE + External clock enable + 14 + 1 + + + ETP + External trigger polarity + 15 + 1 + + + SMS_3 + Slave mode selection - bit + 3 + 16 + 1 + + + TS + Trigger selection + 20 + 2 + + + + + DIER + DIER + DMA/Interrupt enable register + 0xC + 0x20 + read-write + 0x0000 + + + UIE + Update interrupt enable + 0 + 1 + + + CC1IE + Capture/Compare 1 interrupt + enable + 1 + 1 + + + CC2IE + Capture/Compare 2 interrupt + enable + 2 + 1 + + + CC3IE + Capture/Compare 3 interrupt + enable + 3 + 1 + + + CC4IE + Capture/Compare 4 interrupt + enable + 4 + 1 + + + COMIE + COM interrupt enable + 5 + 1 + + + TIE + Trigger interrupt enable + 6 + 1 + + + BIE + Break interrupt enable + 7 + 1 + + + UDE + Update DMA request enable + 8 + 1 + + + CC1DE + Capture/Compare 1 DMA request + enable + 9 + 1 + + + CC2DE + Capture/Compare 2 DMA request + enable + 10 + 1 + + + CC3DE + Capture/Compare 3 DMA request + enable + 11 + 1 + + + CC4DE + Capture/Compare 4 DMA request + enable + 12 + 1 + + + COMDE + COM DMA request enable + 13 + 1 + + + TDE + Trigger DMA request enable + 14 + 1 + + + + + SR + SR + status register + 0x10 + 0x20 + read-write + 0x0000 + + + UIF + Update interrupt flag + 0 + 1 + + + CC1IF + Capture/compare 1 interrupt + flag + 1 + 1 + + + CC2IF + Capture/Compare 2 interrupt + flag + 2 + 1 + + + CC3IF + Capture/Compare 3 interrupt + flag + 3 + 1 + + + CC4IF + Capture/Compare 4 interrupt + flag + 4 + 1 + + + COMIF + COM interrupt flag + 5 + 1 + + + TIF + Trigger interrupt flag + 6 + 1 + + + BIF + Break interrupt flag + 7 + 1 + + + B2IF + Break 2 interrupt flag + 8 + 1 + + + CC1OF + Capture/Compare 1 overcapture + flag + 9 + 1 + + + CC2OF + Capture/compare 2 overcapture + flag + 10 + 1 + + + CC3OF + Capture/Compare 3 overcapture + flag + 11 + 1 + + + CC4OF + Capture/Compare 4 overcapture + flag + 12 + 1 + + + SBIF + System Break interrupt + flag + 13 + 1 + + + CC5IF + Compare 5 interrupt flag + 16 + 1 + + + CC6IF + Compare 6 interrupt flag + 17 + 1 + + + + + EGR + EGR + event generation register + 0x14 + 0x20 + write-only + 0x0000 + + + UG + Update generation + 0 + 1 + + + CC1G + Capture/compare 1 + generation + 1 + 1 + + + CC2G + Capture/compare 2 + generation + 2 + 1 + + + CC3G + Capture/compare 3 + generation + 3 + 1 + + + CC4G + Capture/compare 4 + generation + 4 + 1 + + + COMG + Capture/Compare control update + generation + 5 + 1 + + + TG + Trigger generation + 6 + 1 + + + BG + Break generation + 7 + 1 + + + B2G + Break 2 generation + 8 + 1 + + + + + CCMR1_Output + CCMR1_Output + capture/compare mode register 1 (output + mode) + 0x18 + 0x20 + read-write + 0x00000000 + + + CC1S + Capture/Compare 1 + selection + 0 + 2 + + + OC1FE + Output Compare 1 fast + enable + 2 + 1 + + + OC1PE + Output Compare 1 preload + enable + 3 + 1 + + + OC1M + Output Compare 1 mode + 4 + 3 + OC1Mread-writeFrozenThe comparison between the output compare register TIMx_CCRy and the counter TIMx_CNT has no effect on the outputs / OpmMode1: Retriggerable OPM mode 1 - In up-counting mode, the channel is active until a trigger event is detected (on TRGI signal). In down-counting mode, the channel is inactive0ActiveOnMatchSet channel to active level on match. OCyREF signal is forced high when the counter matches the capture/compare register / OpmMode2: Inversely to OpmMode11InactiveOnMatchSet channel to inactive level on match. OCyREF signal is forced low when the counter matches the capture/compare register / Reserved2ToggleOCyREF toggles when TIMx_CNT=TIMx_CCRy / Reserved3ForceInactiveOCyREF is forced low / CombinedPwmMode1: OCyREF has the same behavior as in PWM mode 1. OCyREFC is the logical OR between OC1REF and OC2REF4ForceActiveOCyREF is forced high / CombinedPwmMode2: OCyREF has the same behavior as in PWM mode 2. OCyREFC is the logical AND between OC1REF and OC2REF5PwmMode1In upcounting, channel is active as long as TIMx_CNT<TIMx_CCRy else inactive. In downcounting, channel is inactive as long as TIMx_CNT>TIMx_CCRy else active / AsymmetricPwmMode1: OCyREF has the same behavior as in PWM mode 1. OCyREFC outputs OC1REF when the counter is counting up, OC2REF when it is counting down6PwmMode2Inversely to PwmMode1 / AsymmetricPwmMode2: Inversely to AsymmetricPwmMode17 + + + OC1CE + Output Compare 1 clear + enable + 7 + 1 + + + CC2S + Capture/Compare 2 + selection + 8 + 2 + + + OC2FE + Output Compare 2 fast + enable + 10 + 1 + + + OC2PE + Output Compare 2 preload + enable + 11 + 1 + + + OC2M + Output Compare 2 mode + 12 + 3 + + + + OC2CE + Output Compare 2 clear + enable + 15 + 1 + + + OC1M_3 + Output Compare 1 mode - bit + 3 + 16 + 1 + OC1M_3read-writeNormalNormal output compare mode (modes 0-7)0ExtendedExtended output compare mode (modes 7-15)1 + + + OC2M_3 + Output Compare 2 mode - bit + 3 + 24 + 1 + + + + + + CCMR1_Input + CCMR1_Input + capture/compare mode register 1 (output + mode) + CCMR1_Output + 0x18 + 0x20 + read-write + 0x00000000 + + + CC1S + Capture/Compare 1 + selection + 0 + 2 + + + OC1FE + Output Compare 1 fast + enable + 2 + 1 + + + OC1PE + Output Compare 1 preload + enable + 3 + 1 + + + OC1M + Output Compare 1 mode + 4 + 3 + + + OC1CE + Output Compare 1 clear + enable + 7 + 1 + + + CC2S + Capture/Compare 2 + selection + 8 + 2 + + + OC2FE + Output Compare 2 fast + enable + 10 + 1 + + + OC2PE + Output Compare 2 preload + enable + 11 + 1 + + + OC2M + Output Compare 2 mode + 12 + 3 + + + OC2CE + Output Compare 2 clear + enable + 15 + 1 + + + + + CCMR2_Output + CCMR2_Output + capture/compare mode register 2 (output + mode) + 0x1C + 0x20 + read-write + 0x00000000 + + + CC3S + Capture/Compare 3 + selection + 0 + 2 + + + OC3FE + Output compare 3 fast + enable + 2 + 1 + + + OC3PE + Output compare 3 preload + enable + 3 + 1 + + + OC3M + Output compare 3 mode + 4 + 3 + OC3Mread-writeFrozenThe comparison between the output compare register TIMx_CCRy and the counter TIMx_CNT has no effect on the outputs / OpmMode1: Retriggerable OPM mode 1 - In up-counting mode, the channel is active until a trigger event is detected (on TRGI signal). In down-counting mode, the channel is inactive0ActiveOnMatchSet channel to active level on match. OCyREF signal is forced high when the counter matches the capture/compare register / OpmMode2: Inversely to OpmMode11InactiveOnMatchSet channel to inactive level on match. OCyREF signal is forced low when the counter matches the capture/compare register / Reserved2ToggleOCyREF toggles when TIMx_CNT=TIMx_CCRy / Reserved3ForceInactiveOCyREF is forced low / CombinedPwmMode1: OCyREF has the same behavior as in PWM mode 1. OCyREFC is the logical OR between OC1REF and OC2REF4ForceActiveOCyREF is forced high / CombinedPwmMode2: OCyREF has the same behavior as in PWM mode 2. OCyREFC is the logical AND between OC1REF and OC2REF5PwmMode1In upcounting, channel is active as long as TIMx_CNT<TIMx_CCRy else inactive. In downcounting, channel is inactive as long as TIMx_CNT>TIMx_CCRy else active / AsymmetricPwmMode1: OCyREF has the same behavior as in PWM mode 1. OCyREFC outputs OC1REF when the counter is counting up, OC2REF when it is counting down6PwmMode2Inversely to PwmMode1 / AsymmetricPwmMode2: Inversely to AsymmetricPwmMode17 + + + OC3CE + Output compare 3 clear + enable + 7 + 1 + + + CC4S + Capture/Compare 4 + selection + 8 + 2 + + + OC4FE + Output compare 4 fast + enable + 10 + 1 + + + OC4PE + Output compare 4 preload + enable + 11 + 1 + + + OC4M + Output compare 4 mode + 12 + 3 + + + + OC4CE + Output compare 4 clear + enable + 15 + 1 + + + OC3M_3 + Output Compare 3 mode - bit + 3 + 16 + 1 + OC3M_3read-writeNormalNormal output compare mode (modes 0-7)0ExtendedExtended output compare mode (modes 7-15)1 + + + OC4M_3 + Output Compare 4 mode - bit + 3 + 24 + 1 + + + + + + CCMR2_Input + CCMR2_Input + capture/compare mode register 2 (output + mode) + CCMR2_Output + 0x1C + 0x20 + read-write + 0x00000000 + + + CC3S + Capture/Compare 3 + selection + 0 + 2 + + + OC3FE + Output compare 3 fast + enable + 2 + 1 + + + OC3PE + Output compare 3 preload + enable + 3 + 1 + + + OC3M + Output compare 3 mode + 4 + 3 + + + OC3CE + Output compare 3 clear + enable + 7 + 1 + + + CC4S + Capture/Compare 4 + selection + 8 + 2 + + + OC4FE + Output compare 4 fast + enable + 10 + 1 + + + OC4PE + Output compare 4 preload + enable + 11 + 1 + + + OC4M + Output compare 4 mode + 12 + 3 + + + OC4CE + Output compare 4 clear + enable + 15 + 1 + + + + + CCER + CCER + capture/compare enable + register + 0x20 + 0x20 + read-write + 0x0000 + + + CC1E + Capture/Compare 1 output + enable + 0 + 1 + + + CC1P + Capture/Compare 1 output + Polarity + 1 + 1 + + + CC1NE + Capture/Compare 1 complementary output + enable + 2 + 1 + + + CC1NP + Capture/Compare 1 output + Polarity + 3 + 1 + + + CC2E + Capture/Compare 2 output + enable + 4 + 1 + + + CC2P + Capture/Compare 2 output + Polarity + 5 + 1 + + + CC2NE + Capture/Compare 2 complementary output + enable + 6 + 1 + + + CC2NP + Capture/Compare 2 output + Polarity + 7 + 1 + + + CC3E + Capture/Compare 3 output + enable + 8 + 1 + + + CC3P + Capture/Compare 3 output + Polarity + 9 + 1 + + + CC3NE + Capture/Compare 3 complementary output + enable + 10 + 1 + + + CC3NP + Capture/Compare 3 output + Polarity + 11 + 1 + + + CC4E + Capture/Compare 4 output + enable + 12 + 1 + + + CC4P + Capture/Compare 3 output + Polarity + 13 + 1 + + + CC4NP + Capture/Compare 4 complementary output + polarity + 15 + 1 + + + CC5E + Capture/Compare 5 output + enable + 16 + 1 + + + CC5P + Capture/Compare 5 output + polarity + 17 + 1 + + + CC6E + Capture/Compare 6 output + enable + 20 + 1 + + + CC6P + Capture/Compare 6 output + polarity + 21 + 1 + + + + + CNT + CNT + counter + 0x24 + 0x20 + 0x00000000 + + + CNT + counter value + 0 + 16 + read-write + + + UIFCPY + UIF copy + 31 + 1 + read-only + + + + + PSC + PSC + prescaler + 0x28 + 0x20 + read-write + 0x0000 + + + PSC + Prescaler value + 0 + 16 + + + + + ARR + ARR + auto-reload register + 0x2C + 0x20 + read-write + 0x00000000 + + + ARR + Auto-reload value + 0 + 16 + + + + + RCR + RCR + repetition counter register + 0x30 + 0x20 + read-write + 0x0000 + + + REP + Repetition counter value + 0 + 16 + + + + + CCR1 + CCR1 + capture/compare register 1 + 0x34 + 0x20 + read-write + 0x00000000 + + + CCR1 + Capture/Compare 1 value + 0 + 16 + + + + + CCR2 + CCR2 + capture/compare register 2 + 0x38 + 0x20 + read-write + 0x00000000 + + + CCR2 + Capture/Compare 2 value + 0 + 16 + + + + + CCR3 + CCR3 + capture/compare register 3 + 0x3C + 0x20 + read-write + 0x00000000 + + + CCR3 + Capture/Compare value + 0 + 16 + + + + + CCR4 + CCR4 + capture/compare register 4 + 0x40 + 0x20 + read-write + 0x00000000 + + + CCR4 + Capture/Compare value + 0 + 16 + + + + + BDTR + BDTR + break and dead-time register + 0x44 + 0x20 + read-write + 0x0000 + + + DTG + Dead-time generator setup + 0 + 8 + + + LOCK + Lock configuration + 8 + 2 + + + OSSI + Off-state selection for Idle + mode + 10 + 1 + + + OSSR + Off-state selection for Run + mode + 11 + 1 + + + BKE + Break enable + 12 + 1 + + + BKP + Break polarity + 13 + 1 + + + AOE + Automatic output enable + 14 + 1 + + + MOE + Main output enable + 15 + 1 + + + BKF + Break filter + 16 + 4 + + + BK2F + Break 2 filter + 20 + 4 + + + BK2E + Break 2 enable + 24 + 1 + + + BK2P + Break 2 polarity + 25 + 1 + + + BKDSRM + Break Disarm + 26 + 1 + + + BK2DSRM + Break2 Disarm + 27 + 1 + + + BKBID + Break Bidirectional + 28 + 1 + + + BK2ID + Break2 bidirectional + 29 + 1 + + + + + DCR + DCR + DMA control register + 0x48 + 0x20 + read-write + 0x0000 + + + DBL + DMA burst length + 8 + 5 + + + DBA + DMA base address + 0 + 5 + + + + + DMAR + DMAR + DMA address for full transfer + 0x4C + 0x20 + read-write + 0x0000 + + + DMAB + DMA register for burst + accesses + 0 + 16 + + + + + OR1 + OR1 + option register 1 + 0x50 + 0x20 + read-write + 0x0000 + + + OCREF_CLR + Ocref_clr source selection + 0 + 1 + + + + + CCMR3_Output + CCMR3_Output + capture/compare mode register 2 (output + mode) + 0x54 + 0x20 + read-write + 0x00000000 + + + OC5M_3 + Output Compare 5 mode bit + 3 + 16 + 1 + OC5M_3read-writeNormalNormal output compare mode (modes 0-7)0ExtendedExtended output compare mode (modes 7-15)1 + + + OC6CE + Output compare 6 clear + enable + 15 + 1 + + + OC6PE + Output compare 6 preload + enable + 11 + 1 + + + OC6FE + Output compare 6 fast + enable + 10 + 1 + + + OC5CE + Output compare 5 clear + enable + 7 + 1 + + + OC5M + Output compare 5 mode + 4 + 3 + OC5Mread-writeFrozenThe comparison between the output compare register TIMx_CCRy and the counter TIMx_CNT has no effect on the outputs / OpmMode1: Retriggerable OPM mode 1 - In up-counting mode, the channel is active until a trigger event is detected (on TRGI signal). In down-counting mode, the channel is inactive0ActiveOnMatchSet channel to active level on match. OCyREF signal is forced high when the counter matches the capture/compare register / OpmMode2: Inversely to OpmMode11InactiveOnMatchSet channel to inactive level on match. OCyREF signal is forced low when the counter matches the capture/compare register / Reserved2ToggleOCyREF toggles when TIMx_CNT=TIMx_CCRy / Reserved3ForceInactiveOCyREF is forced low / CombinedPwmMode1: OCyREF has the same behavior as in PWM mode 1. OCyREFC is the logical OR between OC1REF and OC2REF4ForceActiveOCyREF is forced high / CombinedPwmMode2: OCyREF has the same behavior as in PWM mode 2. OCyREFC is the logical AND between OC1REF and OC2REF5PwmMode1In upcounting, channel is active as long as TIMx_CNT<TIMx_CCRy else inactive. In downcounting, channel is inactive as long as TIMx_CNT>TIMx_CCRy else active / AsymmetricPwmMode1: OCyREF has the same behavior as in PWM mode 1. OCyREFC outputs OC1REF when the counter is counting up, OC2REF when it is counting down6PwmMode2Inversely to PwmMode1 / AsymmetricPwmMode2: Inversely to AsymmetricPwmMode17 + + + OC5PE + Output compare 5 preload + enable + 3 + 1 + + + OC5FE + Output compare 5 fast + enable + 2 + 1 + + + + + CCR5 + CCR5 + capture/compare register 4 + 0x58 + 0x20 + read-write + 0x00000000 + + + CCR5 + Capture/Compare value + 0 + 16 + + + GC5C1 + Group Channel 5 and Channel + 1 + 29 + 1 + + + GC5C2 + Group Channel 5 and Channel + 2 + 30 + 1 + + + GC5C3 + Group Channel 5 and Channel + 3 + 31 + 1 + + + + + CCR6 + CCR6 + capture/compare register 4 + 0x5C + 0x20 + read-write + 0x00000000 + + + CCR6 + Capture/Compare value + 0 + 16 + + + + + AF1 + AF1 + DMA address for full transfer + 0x60 + 0x20 + read-write + 0x00000001 + + + BKINE + BRK BKIN input enable + 0 + 1 + + + BKCMP1E + BRK COMP1 enable + 1 + 1 + + + BKCMP2E + BRK COMP2 enable + 2 + 1 + + + BKINP + BRK BKIN input polarity + 9 + 1 + + + BKCMP1P + BRK COMP1 input polarity + 10 + 1 + + + BKCMP2P + BRK COMP2 input polarity + 11 + 1 + + + ETRSEL + ETR source selection + 14 + 3 + + + + + AF2 + AF2 + DMA address for full transfer + 0x64 + 0x20 + read-write + 0x00000001 + + + BK2INE + BRK2 BKIN input enable + 0 + 1 + + + BK2CMP1E + BRK2 COMP1 enable + 1 + 1 + + + BK2CMP2E + BRK2 COMP2 enable + 2 + 1 + + + BK2DFBK0E + BRK2 DFSDM_BREAK0 enable + 8 + 1 + + + BK2INP + BRK2 BKIN input polarity + 9 + 1 + + + BK2CMP1P + BRK2 COMP1 input polarity + 10 + 1 + + + BK2CMP2P + BRK2 COMP2 input polarity + 11 + 1 + + + + + TISEL + TISEL + TIM1 timer input selection + register + 0x68 + 0x20 + read-write + 0x00000000 + + + TI1SEL3_0 + selects TI1[0] to TI1[15] + input + 0 + 4 + + + TI2SEL3_0 + selects TI2[0] to TI2[15] + input + 8 + 4 + + + TI3SEL3_0 + selects TI3[0] to TI3[15] + input + 16 + 4 + + + TI4SEL3_0 + selects TI4[0] to TI4[15] + input + 24 + 4 + + + + + + + ADC + Analog to Digital Converter instance + 1 + ADC + 0x40012400 + + 0x0 + 0x400 + registers + + + ADC_COMP + ADC and COMP interrupts + 12 + + + + ISR + ISR + ADC interrupt and status + register + 0x0 + 0x20 + read-write + 0x00000000 + + + CCRDY + Channel Configuration Ready + flag + 13 + 1 + + + EOCAL + End Of Calibration flag + 11 + 1 + + + AWD3 + ADC analog watchdog 3 flag + 9 + 1 + + + AWD2 + ADC analog watchdog 2 flag + 8 + 1 + + + AWD1 + ADC analog watchdog 1 flag + 7 + 1 + + + OVR + ADC group regular overrun + flag + 4 + 1 + + + EOS + ADC group regular end of sequence + conversions flag + 3 + 1 + + + EOC + ADC group regular end of unitary + conversion flag + 2 + 1 + + + EOSMP + ADC group regular end of sampling + flag + 1 + 1 + + + ADRDY + ADC ready flag + 0 + 1 + + + + + IER + IER + ADC interrupt enable register + 0x4 + 0x20 + read-write + 0x00000000 + + + CCRDYIE + Channel Configuration Ready Interrupt + enable + 13 + 1 + + + EOCALIE + End of calibration interrupt + enable + 11 + 1 + + + AWD3IE + ADC analog watchdog 3 + interrupt + 9 + 1 + + + AWD2IE + ADC analog watchdog 2 + interrupt + 8 + 1 + + + AWD1IE + ADC analog watchdog 1 + interrupt + 7 + 1 + + + OVRIE + ADC group regular overrun + interrupt + 4 + 1 + + + EOSIE + ADC group regular end of sequence + conversions interrupt + 3 + 1 + + + EOCIE + ADC group regular end of unitary + conversion interrupt + 2 + 1 + + + EOSMPIE + ADC group regular end of sampling + interrupt + 1 + 1 + + + ADRDYIE + ADC ready interrupt + 0 + 1 + + + + + CR + CR + ADC control register + 0x8 + 0x20 + read-write + 0x00000000 + + + ADCAL + ADC calibration + 31 + 1 + + + ADVREGEN + ADC voltage regulator + enable + 28 + 1 + + + ADSTP + ADC group regular conversion + stop + 4 + 1 + + + ADSTART + ADC group regular conversion + start + 2 + 1 + + + ADDIS + ADC disable + 1 + 1 + + + ADEN + ADC enable + 0 + 1 + + + + + CFGR1 + CFGR1 + ADC configuration register 1 + 0xC + 0x20 + read-write + 0x00000000 + + + AWDCH1CH + ADC analog watchdog 1 monitored channel + selection + 26 + 5 + + + AWD1EN + ADC analog watchdog 1 enable on scope + ADC group regular + 23 + 1 + + + AWD1SGL + ADC analog watchdog 1 monitoring a + single channel or all channels + 22 + 1 + + + CHSELRMOD + Mode selection of the ADC_CHSELR + register + 21 + 1 + + + DISCEN + ADC group regular sequencer + discontinuous mode + 16 + 1 + + + AUTOFF + Auto-off mode + 15 + 1 + + + WAIT + Wait conversion mode + 14 + 1 + + + CONT + ADC group regular continuous conversion + mode + 13 + 1 + + + OVRMOD + ADC group regular overrun + configuration + 12 + 1 + + + EXTEN + ADC group regular external trigger + polarity + 10 + 2 + + + EXTSEL + ADC group regular external trigger + source + 6 + 3 + + + ALIGN + ADC data alignement + 5 + 1 + + + RES + ADC data resolution + 3 + 2 + + + SCANDIR + Scan sequence direction + 2 + 1 + + + DMACFG + ADC DMA transfer + configuration + 1 + 1 + + + DMAEN + ADC DMA transfer enable + 0 + 1 + + + + + CFGR2 + CFGR2 + ADC configuration register 2 + 0x10 + 0x20 + read-write + 0x00000000 + + + CKMODE + ADC clock mode + 30 + 2 + + + LFTRIG + Low frequency trigger mode + enable + 29 + 1 + + + TOVS + ADC oversampling discontinuous mode + (triggered mode) for ADC group regular + 9 + 1 + + + OVSS + ADC oversampling shift + 5 + 4 + + + OVSR + ADC oversampling ratio + 2 + 3 + + + OVSE + ADC oversampler enable on scope ADC + group regular + 0 + 1 + + + + + SMPR + SMPR + ADC sampling time register + 0x14 + 0x20 + read-write + 0x00000000 + + + SMP1 + Sampling time selection + 0 + 3 + + + SMP2 + Sampling time selection + 4 + 3 + + + SMPSEL + Channel sampling time + selection + 8 + 19 + + + + + AWD1TR + AWD1TR + watchdog threshold register + 0x20 + 0x20 + read-write + 0x0FFF0000 + + + HT1 + ADC analog watchdog 1 threshold + high + 16 + 12 + + + LT1 + ADC analog watchdog 1 threshold + low + 0 + 12 + + + + + AWD2TR + AWD2TR + watchdog threshold register + 0x24 + 0x20 + read-write + 0x0FFF0000 + + + HT2 + ADC analog watchdog 2 threshold + high + 16 + 12 + + + LT2 + ADC analog watchdog 2 threshold + low + 0 + 12 + + + + + CHSELR + CHSELR + channel selection register + 0x28 + 0x20 + read-write + 0x0FFF0000 + + + CHSEL + Channel-x selection + 0 + 19 + + + + + CHSELR_1 + CHSELR_1 + channel selection register CHSELRMOD = 1 in + ADC_CFGR1 + CHSELR + 0x28 + 0x20 + read-write + 0x00000000 + + + SQ1 + conversion of the sequence + 0 + 4 + + + SQ2 + conversion of the sequence + 4 + 4 + + + SQ3 + conversion of the sequence + 8 + 4 + + + SQ4 + conversion of the sequence + 12 + 4 + + + SQ5 + conversion of the sequence + 16 + 4 + + + SQ6 + conversion of the sequence + 20 + 4 + + + SQ7 + conversion of the sequence + 24 + 4 + + + SQ8 + conversion of the sequence + 28 + 4 + + + + + AWD3TR + AWD3TR + watchdog threshold register + 0x2C + 0x20 + read-write + 0x0FFF0000 + + + HT3 + ADC analog watchdog 3 threshold + high + 16 + 12 + + + LT3 + ADC analog watchdog 3 threshold + high + 0 + 12 + + + + + DR + DR + ADC group regular conversion data + register + 0x40 + 0x20 + read-only + 0x00000000 + + + regularDATA + ADC group regular conversion + data + 0 + 16 + + + + + AWD2CR + AWD2CR + ADC analog watchdog 2 configuration + register + 0xA0 + 0x20 + read-write + 0x00000000 + + + AWD2CH + ADC analog watchdog 2 monitored channel + selection + 0 + 19 + + + + + AWD3CR + AWD3CR + ADC analog watchdog 3 configuration + register + 0xA4 + 0x20 + read-write + 0x00000000 + + + AWD3CH + ADC analog watchdog 3 monitored channel + selection + 0 + 19 + + + + + CALFACT + CALFACT + ADC calibration factors + register + 0xB4 + 0x20 + read-write + 0x00000000 + + + CALFACT + ADC calibration factor in single-ended + mode + 0 + 7 + + + + + CCR + CCR + ADC common control register + 0x308 + 0x20 + read-write + 0x00000000 + + + PRESC + ADC prescaler + 18 + 4 + + + VREFEN + VREFINT enable + 22 + 1 + + + TSEN + Temperature sensor enable + 23 + 1 + + + VBATEN + VBAT enable + 24 + 1 + + + + + + + SYSCFG + System configuration controller + SYSCFG + 0x40010000 + + 0x0 + 0x30 + registers + + + + CFGR1 + CFGR1 + SYSCFG configuration register + 1 + 0x0 + 0x20 + read-write + 0x00000000 + + + I2C_PAx_FMP + Fast Mode Plus (FM+) driving capability + activation bits + 22 + 2 + + + I2C2_FMP + FM+ driving capability activation for + I2C2 + 21 + 1 + + + I2C1_FMP + FM+ driving capability activation for + I2C1 + 20 + 1 + + + I2C_PBx_FMP + Fast Mode Plus (FM+) driving capability + activation bits + 16 + 4 + + + BOOSTEN + I/O analog switch voltage booster + enable + 8 + 1 + + + IR_MOD + IR Modulation Envelope signal + selection. + 6 + 2 + + + IR_POL + IR output polarity + selection + 5 + 1 + + + PA11_PA12_RMP + PA11 and PA12 remapping + bit. + 4 + 1 + + + MEM_MODE + Memory mapping selection + bits + 0 + 2 + + + + + CFGR2 + CFGR2 + SYSCFG configuration register + 1 + 0x18 + 0x20 + read-write + 0x00000000 + + + LOCKUP_LOCK + Cortex-M0+ LOCKUP bit enable + bit + 0 + 1 + + + SRAM_PARITY_LOCK + SRAM parity lock bit + 1 + 1 + + + PVD_LOCK + PVD lock enable bit + 2 + 1 + + + ECC_LOCK + ECC error lock bit + 3 + 1 + + + SRAM_PEF + SRAM parity error flag + 8 + 1 + + + PA1_CDEN + PA1_CDEN + 16 + 1 + + + PA3_CDEN + PA3_CDEN + 17 + 1 + + + PA5_CDEN + PA5_CDEN + 18 + 1 + + + PA6_CDEN + PA6_CDEN + 19 + 1 + + + PA13_CDEN + PA13_CDEN + 20 + 1 + + + PB0_CDEN + PB0_CDEN + 21 + 1 + + + PB1_CDEN + PB1_CDEN + 22 + 1 + + + PB2_CDEN + PB2_CDEN + 23 + 1 + + + + + + + TAMP + Tamper and backup registers + TAMP + 0x4000B000 + + 0x0 + 0x400 + registers + + + + CR1 + CR1 + control register 1 + 0x0 + 0x20 + read-write + 0xFFFF0000 + + + TAMP1E + TAMP1E + 0 + 1 + + + TAMP2E + TAMP2E + 1 + 1 + + + ITAMP1E + ITAMP1E + 16 + 1 + + + ITAMP3E + ITAMP3E + 18 + 1 + + + ITAMP4E + ITAMP4E + 19 + 1 + + + ITAMP5E + ITAMP5E + 20 + 1 + + + ITAMP6E + ITAMP6E + 21 + 1 + + + + + CR2 + CR2 + control register 2 + 0x4 + 0x20 + read-write + 0x00000000 + + + TAMP1NOER + TAMP1NOER + 0 + 1 + + + TAMP2NOER + TAMP2NOER + 1 + 1 + + + TAMP1MSK + TAMP1MSK + 16 + 1 + + + TAMP2MSK + TAMP2MSK + 17 + 1 + + + TAMP1TRG + TAMP1TRG + 24 + 1 + + + TAMP2TRG + TAMP2TRG + 25 + 1 + + + + + FLTCR + FLTCR + TAMP filter control register + 0xC + 0x20 + read-write + 0x00000000 + + + TAMPFREQ + TAMPFREQ + 0 + 3 + + + TAMPFLT + TAMPFLT + 3 + 2 + + + TAMPPRCH + TAMPPRCH + 5 + 2 + + + TAMPPUDIS + TAMPPUDIS + 7 + 1 + + + + + IER + IER + TAMP interrupt enable register + 0x2C + 0x20 + read-write + 0x00000000 + + + TAMP1IE + TAMP1IE + 0 + 1 + + + TAMP2IE + TAMP2IE + 1 + 1 + + + ITAMP1IE + ITAMP1IE + 16 + 1 + + + ITAMP3IE + ITAMP3IE + 18 + 1 + + + ITAMP4IE + ITAMP4IE + 19 + 1 + + + ITAMP5IE + ITAMP5IE + 20 + 1 + + + ITAMP6IE + ITAMP6IE + 21 + 1 + + + + + SR + SR + TAMP status register + 0x30 + 0x20 + read-only + 0x00000000 + + + TAMP1F + TAMP1F + 0 + 1 + + + TAMP2F + TAMP2F + 1 + 1 + + + ITAMP1F + ITAMP1F + 16 + 1 + + + ITAMP3F + ITAMP3F + 18 + 1 + + + ITAMP4F + ITAMP4F + 19 + 1 + + + ITAMP5F + ITAMP5F + 20 + 1 + + + ITAMP6F + ITAMP6F + 21 + 1 + + + ITAMP7F + ITAMP7F + 22 + 1 + + + + + MISR + MISR + TAMP masked interrupt status + register + 0x34 + 0x20 + read-only + 0x00000000 + + + TAMP1MF + TAMP1MF: + 0 + 1 + + + TAMP2MF + TAMP2MF + 1 + 1 + + + ITAMP1MF + ITAMP1MF + 16 + 1 + + + ITAMP3MF + ITAMP3MF + 18 + 1 + + + ITAMP4MF + ITAMP4MF + 19 + 1 + + + ITAMP5MF + ITAMP5MF + 20 + 1 + + + ITAMP6MF + ITAMP6MF + 21 + 1 + + + + + SCR + SCR + TAMP status clear register + 0x3C + 0x20 + write-only + 0x00000000 + + + CTAMP1F + CTAMP1F + 0 + 1 + + + CTAMP2F + CTAMP2F + 1 + 1 + + + CITAMP1F + CITAMP1F + 16 + 1 + + + CITAMP3F + CITAMP3F + 18 + 1 + + + CITAMP4F + CITAMP4F + 19 + 1 + + + CITAMP5F + CITAMP5F + 20 + 1 + + + CITAMP6F + CITAMP6F + 21 + 1 + + + CITAMP7F + CITAMP7F + 22 + 1 + + + + + BKP0R + BKP0R + TAMP backup register + 0x100 + 0x20 + read-write + 0x00000000 + + + BKP + BKP + 0 + 32 + + + + + BKP1R + BKP1R + TAMP backup register + 0x104 + 0x20 + read-write + 0x00000000 + + + BKP + BKP + 0 + 32 + + + + + BKP2R + BKP2R + TAMP backup register + 0x108 + 0x20 + read-write + 0x00000000 + + + BKP + BKP + 0 + 32 + + + + + BKP3R + BKP3R + TAMP backup register + 0x10C + 0x20 + read-write + 0x00000000 + + + BKP + BKP + 0 + 32 + + + + + BKP4R + BKP4R + TAMP backup register + 0x110 + 0x20 + read-write + 0x00000000 + + + BKP + BKP + 0 + 32 + + + + + + + I2C1 + Inter-integrated circuit + I2C + 0x40005400 + + 0x0 + 0x400 + registers + + + I2C1 + I2C1 global interrupt + 23 + + + + CR1 + CR1 + Control register 1 + 0x0 + 0x20 + read-write + 0x00000000 + + + PE + Peripheral enable + 0 + 1 + + + TXIE + TX Interrupt enable + 1 + 1 + + + RXIE + RX Interrupt enable + 2 + 1 + + + ADDRIE + Address match interrupt enable (slave + only) + 3 + 1 + + + NACKIE + Not acknowledge received interrupt + enable + 4 + 1 + + + STOPIE + STOP detection Interrupt + enable + 5 + 1 + + + TCIE + Transfer Complete interrupt + enable + 6 + 1 + + + ERRIE + Error interrupts enable + 7 + 1 + + + DNF + Digital noise filter + 8 + 4 + + + ANFOFF + Analog noise filter OFF + 12 + 1 + + + TXDMAEN + DMA transmission requests + enable + 14 + 1 + + + RXDMAEN + DMA reception requests + enable + 15 + 1 + + + SBC + Slave byte control + 16 + 1 + + + NOSTRETCH + Clock stretching disable + 17 + 1 + + + WUPEN + Wakeup from STOP enable + 18 + 1 + + + GCEN + General call enable + 19 + 1 + + + SMBHEN + SMBus Host address enable + 20 + 1 + + + SMBDEN + SMBus Device Default address + enable + 21 + 1 + + + ALERTEN + SMBUS alert enable + 22 + 1 + + + PECEN + PEC enable + 23 + 1 + + + + + CR2 + CR2 + Control register 2 + 0x4 + 0x20 + read-write + 0x00000000 + + + PECBYTE + Packet error checking byte + 26 + 1 + + + AUTOEND + Automatic end mode (master + mode) + 25 + 1 + + + RELOAD + NBYTES reload mode + 24 + 1 + + + NBYTES + Number of bytes + 16 + 8 + + + NACK + NACK generation (slave + mode) + 15 + 1 + + + STOP + Stop generation (master + mode) + 14 + 1 + + + START + Start generation + 13 + 1 + + + HEAD10R + 10-bit address header only read + direction (master receiver mode) + 12 + 1 + + + ADD10 + 10-bit addressing mode (master + mode) + 11 + 1 + + + RD_WRN + Transfer direction (master + mode) + 10 + 1 + + + SADD + Slave address bit (master + mode) + 0 + 10 + + + + + OAR1 + OAR1 + Own address register 1 + 0x8 + 0x20 + read-write + 0x00000000 + + + OA1_0 + Interface address + 0 + 1 + + + OA1_7_1 + Interface address + 1 + 7 + + + OA1_8_9 + Interface address + 8 + 2 + + + OA1MODE + Own Address 1 10-bit mode + 10 + 1 + + + OA1EN + Own Address 1 enable + 15 + 1 + + + + + OAR2 + OAR2 + Own address register 2 + 0xC + 0x20 + read-write + 0x00000000 + + + OA2 + Interface address + 1 + 7 + + + OA2MSK + Own Address 2 masks + 8 + 3 + + + OA2EN + Own Address 2 enable + 15 + 1 + + + + + TIMINGR + TIMINGR + Timing register + 0x10 + 0x20 + read-write + 0x00000000 + + + SCLL + SCL low period (master + mode) + 0 + 8 + + + SCLH + SCL high period (master + mode) + 8 + 8 + + + SDADEL + Data hold time + 16 + 4 + + + SCLDEL + Data setup time + 20 + 4 + + + PRESC + Timing prescaler + 28 + 4 + + + + + TIMEOUTR + TIMEOUTR + Status register 1 + 0x14 + 0x20 + read-write + 0x00000000 + + + TIMEOUTA + Bus timeout A + 0 + 12 + + + TIDLE + Idle clock timeout + detection + 12 + 1 + + + TIMOUTEN + Clock timeout enable + 15 + 1 + + + TIMEOUTB + Bus timeout B + 16 + 12 + + + TEXTEN + Extended clock timeout + enable + 31 + 1 + + + + + ISR + ISR + Interrupt and Status register + 0x18 + 0x20 + 0x00000001 + + + ADDCODE + Address match code (Slave + mode) + 17 + 7 + read-only + + + DIR + Transfer direction (Slave + mode) + 16 + 1 + read-only + + + BUSY + Bus busy + 15 + 1 + read-only + + + ALERT + SMBus alert + 13 + 1 + read-only + + + TIMEOUT + Timeout or t_low detection + flag + 12 + 1 + read-only + + + PECERR + PEC Error in reception + 11 + 1 + read-only + + + OVR + Overrun/Underrun (slave + mode) + 10 + 1 + read-only + + + ARLO + Arbitration lost + 9 + 1 + read-only + + + BERR + Bus error + 8 + 1 + read-only + + + TCR + Transfer Complete Reload + 7 + 1 + read-only + + + TC + Transfer Complete (master + mode) + 6 + 1 + read-only + + + STOPF + Stop detection flag + 5 + 1 + read-only + + + NACKF + Not acknowledge received + flag + 4 + 1 + read-only + + + ADDR + Address matched (slave + mode) + 3 + 1 + read-only + + + RXNE + Receive data register not empty + (receivers) + 2 + 1 + read-only + + + TXIS + Transmit interrupt status + (transmitters) + 1 + 1 + read-write + + + TXE + Transmit data register empty + (transmitters) + 0 + 1 + read-write + + + + + ICR + ICR + Interrupt clear register + 0x1C + 0x20 + write-only + 0x00000000 + + + ALERTCF + Alert flag clear + 13 + 1 + + + TIMOUTCF + Timeout detection flag + clear + 12 + 1 + + + PECCF + PEC Error flag clear + 11 + 1 + + + OVRCF + Overrun/Underrun flag + clear + 10 + 1 + + + ARLOCF + Arbitration lost flag + clear + 9 + 1 + + + BERRCF + Bus error flag clear + 8 + 1 + + + STOPCF + Stop detection flag clear + 5 + 1 + + + NACKCF + Not Acknowledge flag clear + 4 + 1 + + + ADDRCF + Address Matched flag clear + 3 + 1 + + + + + PECR + PECR + PEC register + 0x20 + 0x20 + read-only + 0x00000000 + + + PEC + Packet error checking + register + 0 + 8 + + + + + RXDR + RXDR + Receive data register + 0x24 + 0x20 + read-only + 0x00000000 + + + RXDATA + 8-bit receive data + 0 + 8 + + + + + TXDR + TXDR + Transmit data register + 0x28 + 0x20 + read-write + 0x00000000 + + + TXDATA + 8-bit transmit data + 0 + 8 + + + + + + + I2C2 + 0x40005800 + + I2C2 + I2C2 global interrupt + 24 + + + + RTC + Real-time clock + RTC + 0x40002800 + + 0x0 + 0x400 + registers + + + RTC_TAMP + RTC and TAMP interrupts + 2 + + + + TR + TR + time register + 0x0 + 0x20 + read-write + 0x00000000 + + + PM + AM/PM notation + 22 + 1 + + + HT + Hour tens in BCD format + 20 + 2 + + + HU + Hour units in BCD format + 16 + 4 + + + MNT + Minute tens in BCD format + 12 + 3 + + + MNU + Minute units in BCD format + 8 + 4 + + + ST + Second tens in BCD format + 4 + 3 + + + SU + Second units in BCD format + 0 + 4 + + + + + DR + DR + date register + 0x4 + 0x20 + read-write + 0x00002101 + + + YT + Year tens in BCD format + 20 + 4 + + + YU + Year units in BCD format + 16 + 4 + + + WDU + Week day units + 13 + 3 + + + MT + Month tens in BCD format + 12 + 1 + + + MU + Month units in BCD format + 8 + 4 + + + DT + Date tens in BCD format + 4 + 2 + + + DU + Date units in BCD format + 0 + 4 + + + + + SSR + SSR + sub second register + 0x8 + 0x20 + read-only + 0x00000000 + + + SS + Sub second value + 0 + 16 + + + + + ICSR + ICSR + initialization and status + register + 0xC + 0x20 + 0x00000007 + + + ALRAWF + Alarm A write flag + 0 + 1 + read-only + + + ALRBWF + Alarm B write flag + 1 + 1 + read-only + + + WUTWF + Wakeup timer write flag + 2 + 1 + read-only + + + SHPF + Shift operation pending + 3 + 1 + read-write + + + INITS + Initialization status flag + 4 + 1 + read-only + + + RSF + Registers synchronization + flag + 5 + 1 + read-write + + + INITF + Initialization flag + 6 + 1 + read-only + + + INIT + Initialization mode + 7 + 1 + read-write + + + RECALPF + Recalibration pending Flag + 16 + 1 + read-only + + + + + PRER + PRER + prescaler register + 0x10 + 0x20 + read-write + 0x007F00FF + + + PREDIV_A + Asynchronous prescaler + factor + 16 + 7 + + + PREDIV_S + Synchronous prescaler + factor + 0 + 15 + + + + + WUTR + WUTR + wakeup timer register + 0x14 + 0x20 + read-write + 0x0000FFFF + + + WUT + Wakeup auto-reload value + bits + 0 + 16 + + + + + CR + CR + control register + 0x18 + 0x20 + read-write + 0x00000000 + + + WUCKSEL + WUCKSEL + 0 + 3 + + + TSEDGE + TSEDGE + 3 + 1 + + + REFCKON + REFCKON + 4 + 1 + + + BYPSHAD + BYPSHAD + 5 + 1 + + + FMT + FMT + 6 + 1 + + + ALRAE + ALRAE + 8 + 1 + + + ALRBE + ALRBE + 9 + 1 + + + WUTE + WUTE + 10 + 1 + + + TSE + TSE + 11 + 1 + + + ALRAIE + ALRAIE + 12 + 1 + + + ALRBIE + ALRBIE + 13 + 1 + + + WUTIE + WUTIE + 14 + 1 + + + TSIE + TSIE + 15 + 1 + + + ADD1H + ADD1H + 16 + 1 + + + SUB1H + SUB1H + 17 + 1 + + + BKP + BKP + 18 + 1 + + + COSEL + COSEL + 19 + 1 + + + POL + POL + 20 + 1 + + + OSEL + OSEL + 21 + 2 + + + COE + COE + 23 + 1 + + + ITSE + ITSE + 24 + 1 + + + TAMPTS + TAMPTS + 25 + 1 + + + TAMPOE + TAMPOE + 26 + 1 + + + TAMPALRM_PU + TAMPALRM_PU + 29 + 1 + + + TAMPALRM_TYPE + TAMPALRM_TYPE + 30 + 1 + + + OUT2EN + OUT2EN + 31 + 1 + + + + + WPR + WPR + write protection register + 0x24 + 0x20 + write-only + 0x00000000 + + + KEY + Write protection key + 0 + 8 + + + + + CALR + CALR + calibration register + 0x28 + 0x20 + read-write + 0x00000000 + + + CALP + Increase frequency of RTC by 488.5 + ppm + 15 + 1 + + + CALW8 + Use an 8-second calibration cycle + period + 14 + 1 + + + CALW16 + Use a 16-second calibration cycle + period + 13 + 1 + + + CALM + Calibration minus + 0 + 9 + + + + + SHIFTR + SHIFTR + shift control register + 0x2C + 0x20 + write-only + 0x00000000 + + + ADD1S + Add one second + 31 + 1 + + + SUBFS + Subtract a fraction of a + second + 0 + 15 + + + + + TSTR + TSTR + time stamp time register + 0x30 + 0x20 + read-only + 0x00000000 + + + SU + Second units in BCD format + 0 + 4 + + + ST + Second tens in BCD format + 4 + 3 + + + MNU + Minute units in BCD format + 8 + 4 + + + MNT + Minute tens in BCD format + 12 + 3 + + + HU + Hour units in BCD format + 16 + 4 + + + HT + Hour tens in BCD format + 20 + 2 + + + PM + AM/PM notation + 22 + 1 + + + + + TSDR + TSDR + time stamp date register + 0x34 + 0x20 + read-only + 0x00000000 + + + WDU + Week day units + 13 + 3 + + + MT + Month tens in BCD format + 12 + 1 + + + MU + Month units in BCD format + 8 + 4 + + + DT + Date tens in BCD format + 4 + 2 + + + DU + Date units in BCD format + 0 + 4 + + + + + TSSSR + TSSSR + timestamp sub second register + 0x38 + 0x20 + read-only + 0x00000000 + + + SS + Sub second value + 0 + 16 + + + + + ALRMAR + ALRMAR + alarm A register + 0x40 + 0x20 + read-write + 0x00000000 + + + MSK4 + Alarm A date mask + 31 + 1 + + + WDSEL + Week day selection + 30 + 1 + + + DT + Date tens in BCD format + 28 + 2 + + + DU + Date units or day in BCD + format + 24 + 4 + + + MSK3 + Alarm A hours mask + 23 + 1 + + + PM + AM/PM notation + 22 + 1 + + + HT + Hour tens in BCD format + 20 + 2 + + + HU + Hour units in BCD format + 16 + 4 + + + MSK2 + Alarm A minutes mask + 15 + 1 + + + MNT + Minute tens in BCD format + 12 + 3 + + + MNU + Minute units in BCD format + 8 + 4 + + + MSK1 + Alarm A seconds mask + 7 + 1 + + + ST + Second tens in BCD format + 4 + 3 + + + SU + Second units in BCD format + 0 + 4 + + + + + ALRMASSR + ALRMASSR + alarm A sub second register + 0x44 + 0x20 + read-write + 0x00000000 + + + MASKSS + Mask the most-significant bits starting + at this bit + 24 + 4 + + + SS + Sub seconds value + 0 + 15 + + + + + ALRMBR + ALRMBR + alarm B register + 0x48 + 0x20 + read-write + 0x00000000 + + + MSK4 + Alarm B date mask + 31 + 1 + + + WDSEL + Week day selection + 30 + 1 + + + DT + Date tens in BCD format + 28 + 2 + + + DU + Date units or day in BCD + format + 24 + 4 + + + MSK3 + Alarm B hours mask + 23 + 1 + + + PM + AM/PM notation + 22 + 1 + + + HT + Hour tens in BCD format + 20 + 2 + + + HU + Hour units in BCD format + 16 + 4 + + + MSK2 + Alarm B minutes mask + 15 + 1 + + + MNT + Minute tens in BCD format + 12 + 3 + + + MNU + Minute units in BCD format + 8 + 4 + + + MSK1 + Alarm B seconds mask + 7 + 1 + + + ST + Second tens in BCD format + 4 + 3 + + + SU + Second units in BCD format + 0 + 4 + + + + + ALRMBSSR + ALRMBSSR + alarm B sub second register + 0x4C + 0x20 + read-write + 0x00000000 + + + MASKSS + Mask the most-significant bits starting + at this bit + 24 + 4 + + + SS + Sub seconds value + 0 + 15 + + + + + SR + SR + status register + 0x50 + 0x20 + read-only + 0x00000000 + + + ALRAF + ALRAF + 0 + 1 + + + ALRBF + ALRBF + 1 + 1 + + + WUTF + WUTF + 2 + 1 + + + TSF + TSF + 3 + 1 + + + TSOVF + TSOVF + 4 + 1 + + + ITSF + ITSF + 5 + 1 + + + + + MISR + MISR + masked interrupt status + register + 0x54 + 0x20 + read-only + 0x00000000 + + + ALRAMF + ALRAMF + 0 + 1 + + + ALRBMF + ALRBMF + 1 + 1 + + + WUTMF + WUTMF + 2 + 1 + + + TSMF + TSMF + 3 + 1 + + + TSOVMF + TSOVMF + 4 + 1 + + + ITSMF + ITSMF + 5 + 1 + + + + + SCR + SCR + status clear register + 0x5C + 0x20 + read-write + 0x00000000 + + + CALRAF + CALRAF + 0 + 1 + + + CALRBF + CALRBF + 1 + 1 + + + CWUTF + CWUTF + 2 + 1 + + + CTSF + CTSF + 3 + 1 + + + CTSOVF + CTSOVF + 4 + 1 + + + CITSF + CITSF + 5 + 1 + + + + + + + TIM14 + General purpose timers + TIM + 0x40002000 + + 0x0 + 0x400 + registers + + + TIM14 + TIM14 global interrupt + 19 + + + + CR1 + CR1 + control register 1 + 0x0 + 0x20 + read-write + 0x0000 + + + UIFREMAP + UIF status bit remapping + 11 + 1 + + + CKD + Clock division + 8 + 2 + + + ARPE + Auto-reload preload enable + 7 + 1 + + + OPM + One-pulse mode + 3 + 1 + + + URS + Update request source + 2 + 1 + + + UDIS + Update disable + 1 + 1 + + + CEN + Counter enable + 0 + 1 + + + + + DIER + DIER + DMA/Interrupt enable register + 0xC + 0x20 + read-write + 0x0000 + + + CC1IE + Capture/Compare 1 interrupt + enable + 1 + 1 + + + UIE + Update interrupt enable + 0 + 1 + + + + + SR + SR + status register + 0x10 + 0x20 + read-write + 0x0000 + + + CC1OF + Capture/Compare 1 overcapture + flag + 9 + 1 + + + CC1IF + Capture/compare 1 interrupt + flag + 1 + 1 + + + UIF + Update interrupt flag + 0 + 1 + + + + + EGR + EGR + event generation register + 0x14 + 0x20 + write-only + 0x0000 + + + CC1G + Capture/compare 1 + generation + 1 + 1 + + + UG + Update generation + 0 + 1 + + + + + CCMR1_Output + CCMR1_Output + capture/compare mode register 1 (output + mode) + 0x18 + 0x20 + read-write + 0x00000000 + + + CC1S + CC1S + 0 + 2 + + + OC1FE + OC1FE + 2 + 1 + + + OC1PE + OC1PE + 3 + 1 + + + OC1M + OC1M + 4 + 3 + OC1Mread-writeFrozenThe comparison between the output compare register TIMx_CCRy and the counter TIMx_CNT has no effect on the outputs0ActiveOnMatchSet channel to active level on match. OCyREF signal is forced high when the counter matches the capture/compare register1InactiveOnMatchSet channel to inactive level on match. OCyREF signal is forced low when the counter matches the capture/compare register2ToggleOCyREF toggles when TIMx_CNT=TIMx_CCRy3ForceInactiveOCyREF is forced low4ForceActiveOCyREF is forced high5PwmMode1In upcounting, channel is active as long as TIMx_CNT<TIMx_CCRy else inactive. In downcounting, channel is inactive as long as TIMx_CNT>TIMx_CCRy else active6PwmMode2Inversely to PwmMode17 + + + OC1CE + OC1CE + 7 + 1 + + + OC1M_3 + Output Compare 1 mode - bit + 3 + 16 + 1 + + + + + CCMR1_Input + CCMR1_Input + capture/compare mode register 1 (input + mode) + CCMR1_Output + 0x18 + 0x20 + read-write + 0x00000000 + + + IC1F + Input capture 1 filter + 4 + 4 + + + ICPCS + Input capture 1 prescaler + 2 + 2 + + + CC1S + Capture/Compare 1 + selection + 0 + 2 + + + + + CCER + CCER + capture/compare enable + register + 0x20 + 0x20 + read-write + 0x0000 + + + CC1NP + Capture/Compare 1 output + Polarity + 3 + 1 + + + CC1P + Capture/Compare 1 output + Polarity + 1 + 1 + + + CC1E + Capture/Compare 1 output + enable + 0 + 1 + + + + + CNT + CNT + counter + 0x24 + 0x20 + read-write + 0x00000000 + + + CNT + low counter value + 0 + 16 + + + UIFCPY + UIF Copy + 31 + 1 + + + + + PSC + PSC + prescaler + 0x28 + 0x20 + read-write + 0x0000 + + + PSC + Prescaler value + 0 + 16 + + + + + ARR + ARR + auto-reload register + 0x2C + 0x20 + read-write + 0x00000000 + + + ARR + Low Auto-reload value + 0 + 16 + + + + + CCR1 + CCR1 + capture/compare register 1 + 0x34 + 0x20 + read-write + 0x00000000 + + + CCR1 + Low Capture/Compare 1 + value + 0 + 16 + + + + + TISEL + TISEL + TIM timer input selection + register + 0x68 + 0x20 + read-write + 0x0000 + + + TISEL + TI1[0] to TI1[15] input + selection + 0 + 4 + + + + + + + TIM2 + General-purpose-timers + TIM + 0x40000000 + + 0x0 + 0x400 + registers + + + TIM2 + TIM2 global interrupt + 15 + + + TIM3 + TIM3 global interrupt + 16 + + + + CR1 + CR1 + control register 1 + 0x0 + 0x20 + read-write + 0x0000 + + + UIFREMAP + UIF status bit remapping + 11 + 1 + + + CKD + Clock division + 8 + 2 + + + ARPE + Auto-reload preload enable + 7 + 1 + + + CMS + Center-aligned mode + selection + 5 + 2 + + + DIR + Direction + 4 + 1 + + + OPM + One-pulse mode + 3 + 1 + + + URS + Update request source + 2 + 1 + + + UDIS + Update disable + 1 + 1 + + + CEN + Counter enable + 0 + 1 + + + + + CR2 + CR2 + control register 2 + 0x4 + 0x20 + read-write + 0x0000 + + + TI1S + TI1 selection + 7 + 1 + + + MMS + Master mode selection + 4 + 3 + + + CCDS + Capture/compare DMA + selection + 3 + 1 + + + + + SMCR + SMCR + slave mode control register + 0x8 + 0x20 + read-write + 0x0000 + + + TS_4_3 + Trigger selection + 20 + 2 + + + SMS_3 + Slave mode selection - bit + 3 + 16 + 1 + + + ETP + External trigger polarity + 15 + 1 + + + ECE + External clock enable + 14 + 1 + + + ETPS + External trigger prescaler + 12 + 2 + + + ETF + External trigger filter + 8 + 4 + + + MSM + Master/Slave mode + 7 + 1 + + + TS + Trigger selection + 4 + 3 + + + OCCS + OCREF clear selection + 3 + 1 + + + SMS + Slave mode selection + 0 + 3 + + + + + DIER + DIER + DMA/Interrupt enable register + 0xC + 0x20 + read-write + 0x0000 + + + TDE + Trigger DMA request enable + 14 + 1 + + + CC4DE + Capture/Compare 4 DMA request + enable + 12 + 1 + + + CC3DE + Capture/Compare 3 DMA request + enable + 11 + 1 + + + CC2DE + Capture/Compare 2 DMA request + enable + 10 + 1 + + + CC1DE + Capture/Compare 1 DMA request + enable + 9 + 1 + + + UDE + Update DMA request enable + 8 + 1 + + + TIE + Trigger interrupt enable + 6 + 1 + + + CC4IE + Capture/Compare 4 interrupt + enable + 4 + 1 + + + CC3IE + Capture/Compare 3 interrupt + enable + 3 + 1 + + + CC2IE + Capture/Compare 2 interrupt + enable + 2 + 1 + + + CC1IE + Capture/Compare 1 interrupt + enable + 1 + 1 + + + UIE + Update interrupt enable + 0 + 1 + + + + + SR + SR + status register + 0x10 + 0x20 + read-write + 0x0000 + + + CC4OF + Capture/Compare 4 overcapture + flag + 12 + 1 + + + CC3OF + Capture/Compare 3 overcapture + flag + 11 + 1 + + + CC2OF + Capture/compare 2 overcapture + flag + 10 + 1 + + + CC1OF + Capture/Compare 1 overcapture + flag + 9 + 1 + + + TIF + Trigger interrupt flag + 6 + 1 + + + CC4IF + Capture/Compare 4 interrupt + flag + 4 + 1 + + + CC3IF + Capture/Compare 3 interrupt + flag + 3 + 1 + + + CC2IF + Capture/Compare 2 interrupt + flag + 2 + 1 + + + CC1IF + Capture/compare 1 interrupt + flag + 1 + 1 + + + UIF + Update interrupt flag + 0 + 1 + + + + + EGR + EGR + event generation register + 0x14 + 0x20 + write-only + 0x0000 + + + TG + Trigger generation + 6 + 1 + + + CC4G + Capture/compare 4 + generation + 4 + 1 + + + CC3G + Capture/compare 3 + generation + 3 + 1 + + + CC2G + Capture/compare 2 + generation + 2 + 1 + + + CC1G + Capture/compare 1 + generation + 1 + 1 + + + UG + Update generation + 0 + 1 + + + + + CCMR1_Output + CCMR1_Output + capture/compare mode register 1 (output + mode) + 0x18 + 0x20 + read-write + 0x00000000 + + + OC2M_3 + Output Compare 2 mode - bit + 3 + 24 + 1 + + + + OC1M_3 + Output Compare 1 mode - bit + 3 + 16 + 1 + OC1M_3read-writeNormalNormal output compare mode (modes 0-7)0ExtendedExtended output compare mode (modes 7-15)1 + + + OC2CE + Output compare 2 clear + enable + 15 + 1 + + + OC2M + Output compare 2 mode + 12 + 3 + + + + OC2PE + Output compare 2 preload + enable + 11 + 1 + + + OC2FE + Output compare 2 fast + enable + 10 + 1 + + + CC2S + Capture/Compare 2 + selection + 8 + 2 + + + OC1CE + Output compare 1 clear + enable + 7 + 1 + + + OC1M + Output compare 1 mode + 4 + 3 + OC1Mread-writeFrozenThe comparison between the output compare register TIMx_CCRy and the counter TIMx_CNT has no effect on the outputs / OpmMode1: Retriggerable OPM mode 1 - In up-counting mode, the channel is active until a trigger event is detected (on TRGI signal). In down-counting mode, the channel is inactive0ActiveOnMatchSet channel to active level on match. OCyREF signal is forced high when the counter matches the capture/compare register / OpmMode2: Inversely to OpmMode11InactiveOnMatchSet channel to inactive level on match. OCyREF signal is forced low when the counter matches the capture/compare register / Reserved2ToggleOCyREF toggles when TIMx_CNT=TIMx_CCRy / Reserved3ForceInactiveOCyREF is forced low / CombinedPwmMode1: OCyREF has the same behavior as in PWM mode 1. OCyREFC is the logical OR between OC1REF and OC2REF4ForceActiveOCyREF is forced high / CombinedPwmMode2: OCyREF has the same behavior as in PWM mode 2. OCyREFC is the logical AND between OC1REF and OC2REF5PwmMode1In upcounting, channel is active as long as TIMx_CNT<TIMx_CCRy else inactive. In downcounting, channel is inactive as long as TIMx_CNT>TIMx_CCRy else active / AsymmetricPwmMode1: OCyREF has the same behavior as in PWM mode 1. OCyREFC outputs OC1REF when the counter is counting up, OC2REF when it is counting down6PwmMode2Inversely to PwmMode1 / AsymmetricPwmMode2: Inversely to AsymmetricPwmMode17 + + + OC1PE + Output compare 1 preload + enable + 3 + 1 + + + OC1FE + Output compare 1 fast + enable + 2 + 1 + + + CC1S + Capture/Compare 1 + selection + 0 + 2 + + + + + CCMR1_Input + CCMR1_Input + capture/compare mode register 1 (input + mode) + CCMR1_Output + 0x18 + 0x20 + read-write + 0x00000000 + + + IC2F + Input capture 2 filter + 12 + 4 + + + IC2PSC + Input capture 2 prescaler + 10 + 2 + + + CC2S + Capture/compare 2 + selection + 8 + 2 + + + IC1F + Input capture 1 filter + 4 + 4 + + + IC1PSC + Input capture 1 prescaler + 2 + 2 + + + CC1S + Capture/Compare 1 + selection + 0 + 2 + + + + + CCMR2_Output + CCMR2_Output + capture/compare mode register 2 (output + mode) + 0x1C + 0x20 + read-write + 0x00000000 + + + OC4M_3 + Output Compare 4 mode - bit + 3 + 24 + 1 + + + + OC3M_3 + Output Compare 3 mode - bit + 3 + 16 + 1 + OC3M_3read-writeNormalNormal output compare mode (modes 0-7)0ExtendedExtended output compare mode (modes 7-15)1 + + + OC4CE + Output compare 4 clear + enable + 15 + 1 + + + OC4M + Output compare 4 mode + 12 + 3 + + + + OC4PE + Output compare 4 preload + enable + 11 + 1 + + + OC4FE + Output compare 4 fast + enable + 10 + 1 + + + CC4S + Capture/Compare 4 + selection + 8 + 2 + + + OC3CE + Output compare 3 clear + enable + 7 + 1 + + + OC3M + Output compare 3 mode + 4 + 3 + OC3Mread-writeFrozenThe comparison between the output compare register TIMx_CCRy and the counter TIMx_CNT has no effect on the outputs / OpmMode1: Retriggerable OPM mode 1 - In up-counting mode, the channel is active until a trigger event is detected (on TRGI signal). In down-counting mode, the channel is inactive0ActiveOnMatchSet channel to active level on match. OCyREF signal is forced high when the counter matches the capture/compare register / OpmMode2: Inversely to OpmMode11InactiveOnMatchSet channel to inactive level on match. OCyREF signal is forced low when the counter matches the capture/compare register / Reserved2ToggleOCyREF toggles when TIMx_CNT=TIMx_CCRy / Reserved3ForceInactiveOCyREF is forced low / CombinedPwmMode1: OCyREF has the same behavior as in PWM mode 1. OCyREFC is the logical OR between OC1REF and OC2REF4ForceActiveOCyREF is forced high / CombinedPwmMode2: OCyREF has the same behavior as in PWM mode 2. OCyREFC is the logical AND between OC1REF and OC2REF5PwmMode1In upcounting, channel is active as long as TIMx_CNT<TIMx_CCRy else inactive. In downcounting, channel is inactive as long as TIMx_CNT>TIMx_CCRy else active / AsymmetricPwmMode1: OCyREF has the same behavior as in PWM mode 1. OCyREFC outputs OC1REF when the counter is counting up, OC2REF when it is counting down6PwmMode2Inversely to PwmMode1 / AsymmetricPwmMode2: Inversely to AsymmetricPwmMode17 + + + OC3PE + Output compare 3 preload + enable + 3 + 1 + + + OC3FE + Output compare 3 fast + enable + 2 + 1 + + + CC3S + Capture/Compare 3 + selection + 0 + 2 + + + + + CCMR2_Input + CCMR2_Input + capture/compare mode register 2 (input + mode) + CCMR2_Output + 0x1C + 0x20 + read-write + 0x00000000 + + + IC4F + Input capture 4 filter + 12 + 4 + + + IC4PSC + Input capture 4 prescaler + 10 + 2 + + + CC4S + Capture/Compare 4 + selection + 8 + 2 + + + IC3F + Input capture 3 filter + 4 + 4 + + + IC3PSC + Input capture 3 prescaler + 2 + 2 + + + CC3S + Capture/Compare 3 + selection + 0 + 2 + + + + + CCER + CCER + capture/compare enable + register + 0x20 + 0x20 + read-write + 0x0000 + + + CC4NP + Capture/Compare 4 output + Polarity + 15 + 1 + + + CC4P + Capture/Compare 3 output + Polarity + 13 + 1 + + + CC4E + Capture/Compare 4 output + enable + 12 + 1 + + + CC3NP + Capture/Compare 3 output + Polarity + 11 + 1 + + + CC3P + Capture/Compare 3 output + Polarity + 9 + 1 + + + CC3E + Capture/Compare 3 output + enable + 8 + 1 + + + CC2NP + Capture/Compare 2 output + Polarity + 7 + 1 + + + CC2P + Capture/Compare 2 output + Polarity + 5 + 1 + + + CC2E + Capture/Compare 2 output + enable + 4 + 1 + + + CC1NP + Capture/Compare 1 output + Polarity + 3 + 1 + + + CC1P + Capture/Compare 1 output + Polarity + 1 + 1 + + + CC1E + Capture/Compare 1 output + enable + 0 + 1 + + + + + CNT + CNT + counter + 0x24 + 0x20 + read-write + 0x00000000 + + + CNT_H + High counter value (TIM2 + only) + 16 + 16 + + + CNT_L + Low counter value + 0 + 16 + + + + + PSC + PSC + prescaler + 0x28 + 0x20 + read-write + 0x0000 + + + PSC + Prescaler value + 0 + 16 + + + + + ARR + ARR + auto-reload register + 0x2C + 0x20 + read-write + 0x00000000 + + + ARR_H + High Auto-reload value (TIM2 + only) + 16 + 16 + + + ARR_L + Low Auto-reload value + 0 + 16 + + + + + CCR1 + CCR1 + capture/compare register 1 + 0x34 + 0x20 + read-write + 0x00000000 + + + CCR1_H + High Capture/Compare 1 value (TIM2 + only) + 16 + 16 + + + CCR1_L + Low Capture/Compare 1 + value + 0 + 16 + + + + + CCR2 + CCR2 + capture/compare register 2 + 0x38 + 0x20 + read-write + 0x00000000 + + + CCR2_H + High Capture/Compare 2 value (TIM2 + only) + 16 + 16 + + + CCR2_L + Low Capture/Compare 2 + value + 0 + 16 + + + + + CCR3 + CCR3 + capture/compare register 3 + 0x3C + 0x20 + read-write + 0x00000000 + + + CCR3_H + High Capture/Compare value (TIM2 + only) + 16 + 16 + + + CCR3_L + Low Capture/Compare value + 0 + 16 + + + + + CCR4 + CCR4 + capture/compare register 4 + 0x40 + 0x20 + read-write + 0x00000000 + + + CCR4_H + High Capture/Compare value (TIM2 + only) + 16 + 16 + + + CCR4_L + Low Capture/Compare value + 0 + 16 + + + + + DCR + DCR + DMA control register + 0x48 + 0x20 + read-write + 0x0000 + + + DBL + DMA burst length + 8 + 5 + + + DBA + DMA base address + 0 + 5 + + + + + DMAR + DMAR + DMA address for full transfer + 0x4C + 0x20 + read-write + 0x0000 + + + DMAB + DMA register for burst + accesses + 0 + 16 + + + + + OR1 + OR1 + TIM option register + 0x50 + 0x20 + read-write + 0x0000 + + + IOCREF_CLR + IOCREF_CLR + 0 + 1 + + + + + AF1 + AF1 + TIM alternate function option register + 1 + 0x60 + 0x20 + read-write + 0x0000 + + + ETRSEL + External trigger source + selection + 14 + 4 + + + + + TISEL + TISEL + TIM alternate function option register + 1 + 0x68 + 0x20 + read-write + 0x0000 + + + TI1SEL + TI1SEL + 0 + 4 + + + TI2SEL + TI2SEL + 8 + 4 + + + + + + + TIM3 + 0x40000400 + + + NVIC + Nested Vectored Interrupt + Controller + NVIC + 0xE000E100 + + 0x0 + 0x33D + registers + + + + ISER + ISER + Interrupt Set Enable Register + 0x0 + 0x20 + read-write + 0x00000000 + + + SETENA + SETENA + 0 + 32 + + + + + ICER + ICER + Interrupt Clear Enable + Register + 0x80 + 0x20 + read-write + 0x00000000 + + + CLRENA + CLRENA + 0 + 32 + + + + + ISPR + ISPR + Interrupt Set-Pending Register + 0x100 + 0x20 + read-write + 0x00000000 + + + SETPEND + SETPEND + 0 + 32 + + + + + ICPR + ICPR + Interrupt Clear-Pending + Register + 0x180 + 0x20 + read-write + 0x00000000 + + + CLRPEND + CLRPEND + 0 + 32 + + + + + IPR0 + IPR0 + Interrupt Priority Register 0 + 0x300 + 0x20 + read-write + 0x00000000 + + + PRI_0 + priority for interrupt 0 + 0 + 8 + + + PRI_1 + priority for interrupt 1 + 8 + 8 + + + PRI_2 + priority for interrupt 2 + 16 + 8 + + + PRI_3 + priority for interrupt 3 + 24 + 8 + + + + + IPR1 + IPR1 + Interrupt Priority Register 1 + 0x304 + 0x20 + read-write + 0x00000000 + + + PRI_4 + priority for interrupt n + 0 + 8 + + + PRI_5 + priority for interrupt n + 8 + 8 + + + PRI_6 + priority for interrupt n + 16 + 8 + + + PRI_7 + priority for interrupt n + 24 + 8 + + + + + IPR2 + IPR2 + Interrupt Priority Register 2 + 0x308 + 0x20 + read-write + 0x00000000 + + + PRI_8 + priority for interrupt n + 0 + 8 + + + PRI_9 + priority for interrupt n + 8 + 8 + + + PRI_10 + priority for interrupt n + 16 + 8 + + + PRI_11 + priority for interrupt n + 24 + 8 + + + + + IPR3 + IPR3 + Interrupt Priority Register 3 + 0x30C + 0x20 + read-write + 0x00000000 + + + PRI_12 + priority for interrupt n + 0 + 8 + + + PRI_13 + priority for interrupt n + 8 + 8 + + + PRI_14 + priority for interrupt n + 16 + 8 + + + PRI_15 + priority for interrupt n + 24 + 8 + + + + + IPR4 + IPR4 + Interrupt Priority Register 4 + 0x310 + 0x20 + read-write + 0x00000000 + + + PRI_16 + priority for interrupt n + 0 + 8 + + + PRI_17 + priority for interrupt n + 8 + 8 + + + PRI_18 + priority for interrupt n + 16 + 8 + + + PRI_19 + priority for interrupt n + 24 + 8 + + + + + IPR5 + IPR5 + Interrupt Priority Register 5 + 0x314 + 0x20 + read-write + 0x00000000 + + + PRI_20 + priority for interrupt n + 0 + 8 + + + PRI_21 + priority for interrupt n + 8 + 8 + + + PRI_22 + priority for interrupt n + 16 + 8 + + + PRI_23 + priority for interrupt n + 24 + 8 + + + + + IPR6 + IPR6 + Interrupt Priority Register 6 + 0x318 + 0x20 + read-write + 0x00000000 + + + PRI_24 + priority for interrupt n + 0 + 8 + + + PRI_25 + priority for interrupt n + 8 + 8 + + + PRI_26 + priority for interrupt n + 16 + 8 + + + PRI_27 + priority for interrupt n + 24 + 8 + + + + + IPR7 + IPR7 + Interrupt Priority Register 7 + 0x31C + 0x20 + read-write + 0x00000000 + + + PRI_28 + priority for interrupt n + 0 + 8 + + + PRI_29 + priority for interrupt n + 8 + 8 + + + PRI_30 + priority for interrupt n + 16 + 8 + + + PRI_31 + priority for interrupt n + 24 + 8 + + + + + IPR8 + IPR8 + Interrupt Priority Register 8 + 0x320 + 0x20 + read-write + 0x00000000 + + + + + MPU + Memory protection unit + MPU + 0xE000ED90 + + 0x0 + 0x15 + registers + + + + TYPER + TYPER + MPU type register + 0x0 + 0x20 + read-only + 0X00000800 + + + SEPARATE + Separate flag + 0 + 1 + + + DREGION + Number of MPU data regions + 8 + 8 + + + IREGION + Number of MPU instruction + regions + 16 + 8 + + + + + CTRL + CTRL + MPU control register + 0x4 + 0x20 + read-only + 0X00000000 + + + ENABLE + Enables the MPU + 0 + 1 + + + HFNMIENA + Enables the operation of MPU during hard + fault + 1 + 1 + + + PRIVDEFENA + Enable priviliged software access to + default memory map + 2 + 1 + + + + + RNR + RNR + MPU region number register + 0x8 + 0x20 + read-write + 0X00000000 + + + REGION + MPU region + 0 + 8 + + + + + RBAR + RBAR + MPU region base address + register + 0xC + 0x20 + read-write + 0X00000000 + + + REGION + MPU region field + 0 + 4 + + + VALID + MPU region number valid + 4 + 1 + + + ADDR + Region base address field + 5 + 27 + + + + + RASR + RASR + MPU region attribute and size + register + 0x10 + 0x20 + read-write + 0X00000000 + + + ENABLE + Region enable bit. + 0 + 1 + + + SIZE + Size of the MPU protection + region + 1 + 5 + + + SRD + Subregion disable bits + 8 + 8 + + + B + memory attribute + 16 + 1 + + + C + memory attribute + 17 + 1 + + + S + Shareable memory attribute + 18 + 1 + + + TEX + memory attribute + 19 + 3 + + + AP + Access permission + 24 + 3 + + + XN + Instruction access disable + bit + 28 + 1 + + + + + + + STK + SysTick timer + STK + 0xE000E010 + + 0x0 + 0x11 + registers + + + + CSR + CSR + SysTick control and status + register + 0x0 + 0x20 + read-write + 0X00000000 + + + ENABLE + Counter enable + 0 + 1 + + + TICKINT + SysTick exception request + enable + 1 + 1 + + + CLKSOURCE + Clock source selection + 2 + 1 + + + COUNTFLAG + COUNTFLAG + 16 + 1 + + + + + RVR + RVR + SysTick reload value register + 0x4 + 0x20 + read-write + 0X00000000 + + + RELOAD + RELOAD value + 0 + 24 + + + + + CVR + CVR + SysTick current value register + 0x8 + 0x20 + read-write + 0X00000000 + + + CURRENT + Current counter value + 0 + 24 + + + + + CALIB + CALIB + SysTick calibration value + register + 0xC + 0x20 + read-write + 0X00000000 + + + TENMS + Calibration value + 0 + 24 + + + SKEW + SKEW flag: Indicates whether the TENMS + value is exact + 30 + 1 + + + NOREF + NOREF flag. Reads as zero + 31 + 1 + + + + + + + SCB + System control block + SCB + 0xE000ED00 + + 0x0 + 0x41 + registers + + + + CPUID + CPUID + CPUID base register + 0x0 + 0x20 + read-only + 0x410FC241 + + + Revision + Revision number + 0 + 4 + + + PartNo + Part number of the + processor + 4 + 12 + + + Architecture + Reads as 0xF + 16 + 4 + + + Variant + Variant number + 20 + 4 + + + Implementer + Implementer code + 24 + 8 + + + + + ICSR + ICSR + Interrupt control and state + register + 0x4 + 0x20 + read-write + 0x00000000 + + + VECTACTIVE + Active vector + 0 + 9 + + + RETTOBASE + Return to base level + 11 + 1 + + + VECTPENDING + Pending vector + 12 + 7 + + + ISRPENDING + Interrupt pending flag + 22 + 1 + + + PENDSTCLR + SysTick exception clear-pending + bit + 25 + 1 + + + PENDSTSET + SysTick exception set-pending + bit + 26 + 1 + + + PENDSVCLR + PendSV clear-pending bit + 27 + 1 + + + PENDSVSET + PendSV set-pending bit + 28 + 1 + + + NMIPENDSET + NMI set-pending bit. + 31 + 1 + + + + + VTOR + VTOR + Vector table offset register + 0x8 + 0x20 + read-write + 0x00000000 + + + TBLOFF + Vector table base offset + field + 7 + 25 + + + + + AIRCR + AIRCR + Application interrupt and reset control + register + 0xC + 0x20 + read-write + 0x00000000 + + + VECTCLRACTIVE + VECTCLRACTIVE + 1 + 1 + + + SYSRESETREQ + SYSRESETREQ + 2 + 1 + + + ENDIANESS + ENDIANESS + 15 + 1 + + + VECTKEYSTAT + Register key + 16 + 16 + + + + + SCR + SCR + System control register + 0x10 + 0x20 + read-write + 0x00000000 + + + SLEEPONEXIT + SLEEPONEXIT + 1 + 1 + + + SLEEPDEEP + SLEEPDEEP + 2 + 1 + + + SEVEONPEND + Send Event on Pending bit + 4 + 1 + + + + + CCR + CCR + Configuration and control + register + 0x14 + 0x20 + read-write + 0x00000000 + + + NONBASETHRDENA + Configures how the processor enters + Thread mode + 0 + 1 + + + USERSETMPEND + USERSETMPEND + 1 + 1 + + + UNALIGN__TRP + UNALIGN_ TRP + 3 + 1 + + + DIV_0_TRP + DIV_0_TRP + 4 + 1 + + + BFHFNMIGN + BFHFNMIGN + 8 + 1 + + + STKALIGN + STKALIGN + 9 + 1 + + + + + SHPR2 + SHPR2 + System handler priority + registers + 0x1C + 0x20 + read-write + 0x00000000 + + + PRI_11 + Priority of system handler + 11 + 24 + 8 + + + + + SHPR3 + SHPR3 + System handler priority + registers + 0x20 + 0x20 + read-write + 0x00000000 + + + PRI_14 + Priority of system handler + 14 + 16 + 8 + + + PRI_15 + Priority of system handler + 15 + 24 + 8 + + + + + + + VREFBUF + System configuration controller + VREFBUF + 0x40010030 + + 0x0 + 0x50 + registers + + + + CSR + CSR + VREFBUF control and status + register + 0x0 + 0x20 + 0x00000002 + + + ENVR + Voltage reference buffer mode enable + This bit is used to enable the voltage reference + buffer mode. + 0 + 1 + read-write + + + HIZ + High impedance mode This bit controls + the analog switch to connect or not the VREF+ pin. + Refer to Table196: VREF buffer modes for the mode + descriptions depending on ENVR bit + configuration. + 1 + 1 + read-write + + + VRR + Voltage reference buffer + ready + 3 + 1 + read-only + + + VRS + Voltage reference scale These bits + select the value generated by the voltage reference + buffer. Other: Reserved + 4 + 3 + read-write + + + + + CCR + CCR + VREFBUF calibration control + register + 0x4 + 0x20 + read-write + 0x00000000 + + + TRIM + Trimming code These bits are + automatically initialized after reset with the + trimming value stored in the Flash memory during the + production test. Writing into these bits allows to + tune the internal reference buffer + voltage. + 0 + 6 + + + + + + + DBG + MCU debug component + DBG + 0x40015800 + + 0x0 + 0x400 + registers + + + + IDCODE + IDCODE + DBGMCU_IDCODE + 0x0 + 0x20 + read-only + 0x00000000 + + + DEV_ID + Device identifier + 0 + 12 + + + REV_ID + Revision identifie + 16 + 16 + + + + + CR + CR + Debug MCU configuration + register + 0x4 + 0x20 + read-write + 0x00000000 + + + DBG_STOP + Debug Stop mode + 1 + 1 + + + DBG_STANDBY + Debug Standby mode + 2 + 1 + + + + + APB_FZ1 + APB_FZ1 + Debug MCU APB1 freeze + register1 + 0x8 + 0x20 + read-write + 0x00000000 + + + DBG_TIM2_STOP + TIM2 counter stopped when core is + halted + 0 + 1 + + + DBG_TIM3_STOP + TIM3 counter stopped when core is + halted + 1 + 1 + + + DBG_RTC_STOP + RTC counter stopped when core is + halted + 10 + 1 + + + DBG_WWDG_STOP + Window watchdog counter stopped when + core is halted + 11 + 1 + + + DBG_IWDG_STOP + Independent watchdog counter stopped + when core is halted + 12 + 1 + + + DBG_I2C1_STOP + I2C1 SMBUS timeout counter stopped when + core is halted + 21 + 1 + + + + + APB_FZ2 + APB_FZ2 + Debug MCU APB1 freeze register + 2 + 0xC + 0x20 + read-write + 0x00000000 + + + DBG_TIM1_STOP + TIM1 counter stopped when core is + halted + 11 + 1 + + + DBG_TIM14_STOP + DBG_TIM14_STOP + 15 + 1 + + + DBG_TIM16_STOP + DBG_TIM16_STOP + 17 + 1 + + + DBG_TIM17_STOP + DBG_TIM17_STOP + 18 + 1 + + + + + + + NVIC_STIR + Nested vectored interrupt + controller + NVIC + 0xE000EF00 + + 0x0 + 0x5 + registers + + + + STIR + STIR + Software trigger interrupt + register + 0x0 + 0x20 + read-write + 0x00000000 + + + INTID + Software generated interrupt + ID + 0 + 9 + + + + + + + SCB_ACTRL + System control block ACTLR + SCB + 0xE000E008 + + 0x0 + 0x5 + registers + + + + ACTRL + ACTRL + Auxiliary control register + 0x0 + 0x20 + read-write + 0x00000000 + + + DISMCYCINT + DISMCYCINT + 0 + 1 + + + DISDEFWBUF + DISDEFWBUF + 1 + 1 + + + DISFOLD + DISFOLD + 2 + 1 + + + DISFPCA + DISFPCA + 8 + 1 + + + DISOOFP + DISOOFP + 9 + 1 + + + + + + + FPU_CPACR + Floating point unit CPACR + FPU + 0xE000ED88 + + 0x0 + 0x5 + registers + + + + CPACR + CPACR + Coprocessor access control + register + 0x0 + 0x20 + read-write + 0x0000000 + + + CP + CP + 20 + 4 + + + + + + + FPU + Floting point unit + FPU + 0xE000EF34 + + 0x0 + 0xD + registers + + + + FPCCR + FPCCR + Floating-point context control + register + 0x0 + 0x20 + read-write + 0x00000000 + + + LSPACT + LSPACT + 0 + 1 + + + USER + USER + 1 + 1 + + + THREAD + THREAD + 3 + 1 + + + HFRDY + HFRDY + 4 + 1 + + + MMRDY + MMRDY + 5 + 1 + + + BFRDY + BFRDY + 6 + 1 + + + MONRDY + MONRDY + 8 + 1 + + + LSPEN + LSPEN + 30 + 1 + + + ASPEN + ASPEN + 31 + 1 + + + + + FPCAR + FPCAR + Floating-point context address + register + 0x4 + 0x20 + read-write + 0x00000000 + + + ADDRESS + Location of unpopulated + floating-point + 3 + 29 + + + + + FPSCR + FPSCR + Floating-point status control + register + 0x8 + 0x20 + read-write + 0x00000000 + + + IOC + Invalid operation cumulative exception + bit + 0 + 1 + + + DZC + Division by zero cumulative exception + bit. + 1 + 1 + + + OFC + Overflow cumulative exception + bit + 2 + 1 + + + UFC + Underflow cumulative exception + bit + 3 + 1 + + + IXC + Inexact cumulative exception + bit + 4 + 1 + + + IDC + Input denormal cumulative exception + bit. + 7 + 1 + + + RMode + Rounding Mode control + field + 22 + 2 + + + FZ + Flush-to-zero mode control + bit: + 24 + 1 + + + DN + Default NaN mode control + bit + 25 + 1 + + + AHP + Alternative half-precision control + bit + 26 + 1 + + + V + Overflow condition code + flag + 28 + 1 + + + C + Carry condition code flag + 29 + 1 + + + Z + Zero condition code flag + 30 + 1 + + + N + Negative condition code + flag + 31 + 1 + + + + + + + SYSCFG_ITLINE + System configuration controller + SYSCFG + 0x40010080 + + 0x0 + 0x180 + registers + + + + ITLINE0 + ITLINE0 + interrupt line 0 status + register + 0x80 + 0x20 + read-only + 0x00000000 + + + WWDG + Window watchdog interrupt pending + flag + 0 + 1 + + + + + ITLINE1 + ITLINE1 + interrupt line 1 status + register + 0x84 + 0x20 + read-only + 0x00000000 + + + PVDOUT + PVD supply monitoring interrupt request + pending (EXTI line 16). + 0 + 1 + + + + + ITLINE2 + ITLINE2 + interrupt line 2 status + register + 0x88 + 0x20 + read-only + 0x00000000 + + + TAMP + TAMP + 0 + 1 + + + RTC + RTC + 1 + 1 + + + + + ITLINE3 + ITLINE3 + interrupt line 3 status + register + 0x8C + 0x20 + read-only + 0x00000000 + + + FLASH_ITF + FLASH_ITF + 0 + 1 + + + FLASH_ECC + FLASH_ECC + 1 + 1 + + + + + ITLINE4 + ITLINE4 + interrupt line 4 status + register + 0x90 + 0x20 + read-only + 0x00000000 + + + RCC + RCC + 0 + 1 + + + + + ITLINE5 + ITLINE5 + interrupt line 5 status + register + 0x94 + 0x20 + read-only + 0x00000000 + + + EXTI0 + EXTI0 + 0 + 1 + + + EXTI1 + EXTI1 + 1 + 1 + + + + + ITLINE6 + ITLINE6 + interrupt line 6 status + register + 0x98 + 0x20 + read-only + 0x00000000 + + + EXTI2 + EXTI2 + 0 + 1 + + + EXTI3 + EXTI3 + 1 + 1 + + + + + ITLINE7 + ITLINE7 + interrupt line 7 status + register + 0x9C + 0x20 + read-only + 0x00000000 + + + EXTI4 + EXTI4 + 0 + 1 + + + EXTI5 + EXTI5 + 1 + 1 + + + EXTI6 + EXTI6 + 2 + 1 + + + EXTI7 + EXTI7 + 3 + 1 + + + EXTI8 + EXTI8 + 4 + 1 + + + EXTI9 + EXTI9 + 5 + 1 + + + EXTI10 + EXTI10 + 6 + 1 + + + EXTI11 + EXTI11 + 7 + 1 + + + EXTI12 + EXTI12 + 8 + 1 + + + EXTI13 + EXTI13 + 9 + 1 + + + EXTI14 + EXTI14 + 10 + 1 + + + EXTI15 + EXTI15 + 11 + 1 + + + + + ITLINE9 + ITLINE9 + interrupt line 9 status + register + 0xA4 + 0x20 + read-only + 0x00000000 + + + DMA1_CH1 + DMA1_CH1 + 0 + 1 + + + + + ITLINE10 + ITLINE10 + interrupt line 10 status + register + 0xA8 + 0x20 + read-only + 0x00000000 + + + DMA1_CH2 + DMA1_CH1 + 0 + 1 + + + DMA1_CH3 + DMA1_CH3 + 1 + 1 + + + + + ITLINE11 + ITLINE11 + interrupt line 11 status + register + 0xAC + 0x20 + read-only + 0x00000000 + + + DMAMUX + DMAMUX + 0 + 1 + + + DMA1_CH4 + DMA1_CH4 + 1 + 1 + + + DMA1_CH5 + DMA1_CH5 + 2 + 1 + + + + + ITLINE12 + ITLINE12 + interrupt line 12 status + register + 0xB0 + 0x20 + read-only + 0x00000000 + + + ADC + ADC + 0 + 1 + + + + + ITLINE13 + ITLINE13 + interrupt line 13 status + register + 0xB4 + 0x20 + read-only + 0x00000000 + + + TIM1_CCU + TIM1_CCU + 0 + 1 + + + TIM1_TRG + TIM1_TRG + 1 + 1 + + + TIM1_UPD + TIM1_UPD + 2 + 1 + + + TIM1_BRK + TIM1_BRK + 3 + 1 + + + + + ITLINE14 + ITLINE14 + interrupt line 14 status + register + 0xB8 + 0x20 + read-only + 0x00000000 + + + TIM1_CC + TIM1_CC + 0 + 1 + + + + + ITLINE15 + ITLINE15 + interrupt line 15 status + register + 0xBC + 0x20 + read-only + 0x00000000 + + + TIM2 + TIM2 + 0 + 1 + + + + + ITLINE16 + ITLINE16 + interrupt line 16 status + register + 0xC0 + 0x20 + read-only + 0x00000000 + + + TIM3 + TIM3 + 0 + 1 + + + + + ITLINE19 + ITLINE19 + interrupt line 19 status + register + 0xCC + 0x20 + read-only + 0x00000000 + + + TIM14 + TIM14 + 0 + 1 + + + + + ITLINE21 + ITLINE21 + interrupt line 21 status + register + 0xD4 + 0x20 + read-only + 0x00000000 + + + TIM16 + TIM16 + 0 + 1 + + + + + ITLINE22 + ITLINE22 + interrupt line 22 status + register + 0xD8 + 0x20 + read-only + 0x00000000 + + + TIM17 + TIM17 + 0 + 1 + + + + + ITLINE23 + ITLINE23 + interrupt line 23 status + register + 0xDC + 0x20 + read-only + 0x00000000 + + + I2C1 + I2C1 + 0 + 1 + + + + + ITLINE24 + ITLINE24 + interrupt line 24 status + register + 0xE0 + 0x20 + read-only + 0x00000000 + + + I2C2 + I2C2 + 0 + 1 + + + + + ITLINE25 + ITLINE25 + interrupt line 25 status + register + 0xE4 + 0x20 + read-only + 0x00000000 + + + SPI1 + SPI1 + 0 + 1 + + + + + ITLINE26 + ITLINE26 + interrupt line 26 status + register + 0xE8 + 0x20 + read-only + 0x00000000 + + + SPI2 + SPI2 + 0 + 1 + + + + + ITLINE27 + ITLINE27 + interrupt line 27 status + register + 0xEC + 0x20 + read-only + 0x00000000 + + + USART1 + USART1 + 0 + 1 + + + + + ITLINE28 + ITLINE28 + interrupt line 28 status + register + 0xF0 + 0x20 + read-only + 0x00000000 + + + USART2 + USART2 + 0 + 1 + + + + + ITLINE29 + ITLINE29 + interrupt line 29 status + register + 0xF4 + 0x20 + read-only + 0x00000000 + + + USART5 + USART5 + 2 + 1 + + + + + + + \ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 0000000..57398a0 --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,20 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "OpenOCD", + "type": "shell", + "command": "openocd -f interface/stlink.cfg -f target/stm32g0x.cfg -c \"set CPUTAPID 0x0bb11477\"", + "isBackground": true, + "presentation": { + "reveal": "always", + "panel": "dedicated" + }, + "group": { + "kind": "build", + "isDefault": true + }, + "problemMatcher": [] + } + ] +} \ No newline at end of file diff --git a/build/.cmake/api/v1/reply/cache-v2-858f034878c0238a2c00.json b/build/.cmake/api/v1/reply/cache-v2-e7f8638ee66add4fdc98.json similarity index 99% rename from build/.cmake/api/v1/reply/cache-v2-858f034878c0238a2c00.json rename to build/.cmake/api/v1/reply/cache-v2-e7f8638ee66add4fdc98.json index 9f1826e..9532dc8 100644 --- a/build/.cmake/api/v1/reply/cache-v2-858f034878c0238a2c00.json +++ b/build/.cmake/api/v1/reply/cache-v2-e7f8638ee66add4fdc98.json @@ -875,7 +875,7 @@ } ], "type" : "INTERNAL", - "value" : "5" + "value" : "6" }, { "name" : "CMAKE_OBJCOPY", diff --git a/build/.cmake/api/v1/reply/cmakeFiles-v1-c560891d5568a02c441b.json b/build/.cmake/api/v1/reply/cmakeFiles-v1-317d5086de8d3535b537.json similarity index 98% rename from build/.cmake/api/v1/reply/cmakeFiles-v1-c560891d5568a02c441b.json rename to build/.cmake/api/v1/reply/cmakeFiles-v1-317d5086de8d3535b537.json index 432c35b..5350db1 100644 --- a/build/.cmake/api/v1/reply/cmakeFiles-v1-c560891d5568a02c441b.json +++ b/build/.cmake/api/v1/reply/cmakeFiles-v1-317d5086de8d3535b537.json @@ -142,6 +142,9 @@ }, { "path" : "src/decompiled/CMakeLists.txt" + }, + { + "path" : "src/ocl_loader/CMakeLists.txt" } ], "kind" : "cmakeFiles", diff --git a/build/.cmake/api/v1/reply/codemodel-v2-253f9563236830abe67f.json b/build/.cmake/api/v1/reply/codemodel-v2-49654b474d8a03e7e2af.json similarity index 78% rename from build/.cmake/api/v1/reply/codemodel-v2-253f9563236830abe67f.json rename to build/.cmake/api/v1/reply/codemodel-v2-49654b474d8a03e7e2af.json index b58af40..4834dc6 100644 --- a/build/.cmake/api/v1/reply/codemodel-v2-253f9563236830abe67f.json +++ b/build/.cmake/api/v1/reply/codemodel-v2-49654b474d8a03e7e2af.json @@ -49,7 +49,8 @@ "build" : "src", "childIndexes" : [ - 4 + 4, + 5 ], "jsonFile" : "directory-src-Debug-c94b7c2814d5a21df52c.json", "minimumCMakeVersion" : @@ -74,6 +75,21 @@ [ 0 ] + }, + { + "build" : "src/ocl_loader", + "jsonFile" : "directory-src.ocl_loader-Debug-9c533c3d418f8fe22477.json", + "minimumCMakeVersion" : + { + "string" : "3.15" + }, + "parentIndex" : 3, + "projectIndex" : 0, + "source" : "src/ocl_loader", + "targetIndexes" : + [ + 1 + ] } ], "name" : "Debug", @@ -86,12 +102,14 @@ 1, 2, 3, - 4 + 4, + 5 ], "name" : "uv-k5-custom-build", "targetIndexes" : [ - 0 + 0, + 1 ] } ], @@ -103,6 +121,13 @@ "jsonFile" : "target-decompiled-Debug-4e33d0bf754ddd5d8509.json", "name" : "decompiled", "projectIndex" : 0 + }, + { + "directoryIndex" : 5, + "id" : "ocl_loader::@9d117fae84ed60aca5a4", + "jsonFile" : "target-ocl_loader-Debug-484e0d1a1dd8371185c3.json", + "name" : "ocl_loader", + "projectIndex" : 0 } ] } diff --git a/build/.cmake/api/v1/reply/directory-src.ocl_loader-Debug-9c533c3d418f8fe22477.json b/build/.cmake/api/v1/reply/directory-src.ocl_loader-Debug-9c533c3d418f8fe22477.json new file mode 100644 index 0000000..ab5170d --- /dev/null +++ b/build/.cmake/api/v1/reply/directory-src.ocl_loader-Debug-9c533c3d418f8fe22477.json @@ -0,0 +1,14 @@ +{ + "backtraceGraph" : + { + "commands" : [], + "files" : [], + "nodes" : [] + }, + "installers" : [], + "paths" : + { + "build" : "src/ocl_loader", + "source" : "src/ocl_loader" + } +} diff --git a/build/.cmake/api/v1/reply/index-2023-06-16T16-21-58-0644.json b/build/.cmake/api/v1/reply/index-2023-06-18T12-46-29-0442.json similarity index 83% rename from build/.cmake/api/v1/reply/index-2023-06-16T16-21-58-0644.json rename to build/.cmake/api/v1/reply/index-2023-06-18T12-46-29-0442.json index bccc11b..58abf89 100644 --- a/build/.cmake/api/v1/reply/index-2023-06-16T16-21-58-0644.json +++ b/build/.cmake/api/v1/reply/index-2023-06-18T12-46-29-0442.json @@ -26,7 +26,7 @@ "objects" : [ { - "jsonFile" : "codemodel-v2-253f9563236830abe67f.json", + "jsonFile" : "codemodel-v2-49654b474d8a03e7e2af.json", "kind" : "codemodel", "version" : { @@ -35,7 +35,7 @@ } }, { - "jsonFile" : "cache-v2-858f034878c0238a2c00.json", + "jsonFile" : "cache-v2-e7f8638ee66add4fdc98.json", "kind" : "cache", "version" : { @@ -44,7 +44,7 @@ } }, { - "jsonFile" : "cmakeFiles-v1-c560891d5568a02c441b.json", + "jsonFile" : "cmakeFiles-v1-317d5086de8d3535b537.json", "kind" : "cmakeFiles", "version" : { @@ -90,7 +90,7 @@ "responses" : [ { - "jsonFile" : "cache-v2-858f034878c0238a2c00.json", + "jsonFile" : "cache-v2-e7f8638ee66add4fdc98.json", "kind" : "cache", "version" : { @@ -99,7 +99,7 @@ } }, { - "jsonFile" : "codemodel-v2-253f9563236830abe67f.json", + "jsonFile" : "codemodel-v2-49654b474d8a03e7e2af.json", "kind" : "codemodel", "version" : { @@ -117,7 +117,7 @@ } }, { - "jsonFile" : "cmakeFiles-v1-c560891d5568a02c441b.json", + "jsonFile" : "cmakeFiles-v1-317d5086de8d3535b537.json", "kind" : "cmakeFiles", "version" : { diff --git a/build/.cmake/api/v1/reply/target-ocl_loader-Debug-484e0d1a1dd8371185c3.json b/build/.cmake/api/v1/reply/target-ocl_loader-Debug-484e0d1a1dd8371185c3.json new file mode 100644 index 0000000..aa59de5 --- /dev/null +++ b/build/.cmake/api/v1/reply/target-ocl_loader-Debug-484e0d1a1dd8371185c3.json @@ -0,0 +1,328 @@ +{ + "artifacts" : + [ + { + "path" : "src/ocl_loader/ocl_loader" + } + ], + "backtrace" : 1, + "backtraceGraph" : + { + "commands" : + [ + "add_executable", + "target_link_options", + "target_compile_options", + "target_compile_definitions", + "target_include_directories", + "target_link_libraries" + ], + "files" : + [ + "src/ocl_loader/CMakeLists.txt" + ], + "nodes" : + [ + { + "file" : 0 + }, + { + "command" : 0, + "file" : 0, + "line" : 5, + "parent" : 0 + }, + { + "command" : 1, + "file" : 0, + "line" : 34, + "parent" : 0 + }, + { + "command" : 2, + "file" : 0, + "line" : 25, + "parent" : 0 + }, + { + "command" : 3, + "file" : 0, + "line" : 20, + "parent" : 0 + }, + { + "command" : 4, + "file" : 0, + "line" : 13, + "parent" : 0 + }, + { + "command" : 5, + "file" : 0, + "line" : 9, + "parent" : 0 + } + ] + }, + "compileGroups" : + [ + { + "compileCommandFragments" : + [ + { + "fragment" : "-g -std=c99" + }, + { + "backtrace" : 3, + "fragment" : "-mthumb" + }, + { + "backtrace" : 3, + "fragment" : "-mcpu=cortex-m0plus" + }, + { + "backtrace" : 3, + "fragment" : "-mfpu=auto" + }, + { + "backtrace" : 3, + "fragment" : "-mfloat-abi=soft" + }, + { + "backtrace" : 3, + "fragment" : "-fno-exceptions" + }, + { + "backtrace" : 3, + "fragment" : "-msoft-float" + }, + { + "backtrace" : 3, + "fragment" : "-Wall" + }, + { + "backtrace" : 3, + "fragment" : "-Wno-unknown-pragmas" + }, + { + "backtrace" : 3, + "fragment" : "-Os" + }, + { + "backtrace" : 3, + "fragment" : "--debug" + }, + { + "backtrace" : 3, + "fragment" : "-DDEBUG" + }, + { + "backtrace" : 3, + "fragment" : "-ffunction-sections" + }, + { + "backtrace" : 3, + "fragment" : "-fdata-sections" + }, + { + "backtrace" : 3, + "fragment" : "-gdwarf-3" + }, + { + "backtrace" : 3, + "fragment" : "-nostartfiles" + }, + { + "backtrace" : 3, + "fragment" : "-fno-strict-aliasing" + } + ], + "defines" : + [ + { + "backtrace" : 4, + "define" : "DEBUG_ENABLED" + }, + { + "backtrace" : 4, + "define" : "STM32G0 -DSTM32G030xx -DSTM32" + } + ], + "includes" : + [ + { + "backtrace" : 5, + "path" : "C:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/." + }, + { + "backtrace" : 5, + "path" : "C:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/Drivers/CMSIS/Device/ST/STM32G0xx/Include" + }, + { + "backtrace" : 5, + "path" : "C:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/Drivers/CMSIS/DSP/Include" + }, + { + "backtrace" : 5, + "path" : "C:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/Drivers/CMSIS/Include" + }, + { + "backtrace" : 6, + "path" : "C:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./include" + }, + { + "backtrace" : 6, + "path" : "C:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./CMSIS/Device/ST/STM32G0xx/Include" + }, + { + "backtrace" : 6, + "path" : "C:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./CMSIS/Include" + }, + { + "backtrace" : 6, + "path" : "C:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./STM32G0xx_HAL_Driver/Inc" + } + ], + "language" : "C", + "languageStandard" : + { + "backtraces" : + [ + 1 + ], + "standard" : "99" + }, + "sourceIndexes" : + [ + 0 + ] + } + ], + "id" : "ocl_loader::@9d117fae84ed60aca5a4", + "link" : + { + "commandFragments" : + [ + { + "fragment" : "-g", + "role" : "flags" + }, + { + "fragment" : "", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "-T", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "C:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/ram.lds", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "-mcpu=cortex-m0plus", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "-mthumb", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "-mfpu=auto", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "-mfloat-abi=soft", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "-specs=nosys.specs", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "-specs=nano.specs", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "-lc", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "-lm", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "-lnosys", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "-Wl,-Map=uv-k5-custom-build.map,--cref", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "-Wl,--gc-sections", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "-Wl,--print-memory-usage", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "-Wstack-usage=128", + "role" : "flags" + }, + { + "backtrace" : 2, + "fragment" : "-Wno-register", + "role" : "flags" + }, + { + "fragment" : "-Wl,--dependency-file,src\\ocl_loader\\CMakeFiles\\ocl_loader.dir\\link.d", + "role" : "flags" + } + ], + "language" : "C" + }, + "name" : "ocl_loader", + "nameOnDisk" : "ocl_loader", + "paths" : + { + "build" : "src/ocl_loader", + "source" : "src/ocl_loader" + }, + "sourceGroups" : + [ + { + "name" : "Source Files", + "sourceIndexes" : + [ + 0 + ] + } + ], + "sources" : + [ + { + "backtrace" : 1, + "compileGroupIndex" : 0, + "path" : "src/ocl_loader/main.c", + "sourceGroupIndex" : 0 + } + ], + "type" : "EXECUTABLE" +} diff --git a/build/.ninja_deps b/build/.ninja_deps index 5c7d2f4a13747f025419bd2eb7e151bad1e2d3d6..2eaa0525a86f51d5321477b3acc0210b7cd2b7de 100644 GIT binary patch delta 561 zcmbQEzC(2b3*%%HrX0pUlNT~YGya}z$Q>}*mzkaM*W`m7c3j0JDVcdCdKnBqCmZsc zO|It>ocx4YfbqxVi`;gTjadX4zk^xLK-Ra(4_TZ!fvSs33-mI+0(styUx0@COs-_* zXZ#FiU1jBG{q+C;|B%UstiJ5&$;m*IKTft~3upZR6fFRX+E2d0W+43@$n#)eXkcVu zV2JJxG2z#hWMBfanHd-+OS79YMobiRnjFn2%J^<_A!9J>TcGj`ux1V>4f!`fo)1v7 zAW*{tCqeim5^pZ-3O6{-{J-Xe(F=7J@{gNr^$?5*0xyn*@u+LVg1Sqr|A` zV(ma;kPiL z)!fRGq|u`>8o=m*V^XIHRnf(WFMN+#58WZ9m%C*f-5R4k*{0lJw;*=wQzvvCiPxN~ zgp@0+MvNZzm4N*cvtBeVq1p4Mk96ZaqPCbc%nQIC-&D`!<)xFg-Sn9pSSo}faDof0 z;D%zbKnavW8JM9QDxeZ_zy!IF2USoFnY(LM)>`QM?kcbzo!9+i<9a-4jmf31Q8r$B z@S+y#zzg*t@vi3gWMTs0q3KLa*Y|Jf3~Uvc)6x8<_#1!Dhj05)QG=&@d(Wu&HDAkQ giAdro@6Rl!DQQ&vpEbN5Y_|QGb+Mrv6~AVE0jm{#{{R30 diff --git a/build/.ninja_log b/build/.ninja_log index 345e074..fee4f26 100644 --- a/build/.ninja_log +++ b/build/.ninja_log @@ -1,14 +1,8 @@ # ninja log v5 7 40 7086352708682141 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj 69539413432f1dea -11 68 7086352708955078 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj 3dbe244f920770f0 -3 85 7086352709137376 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj b14a57baf7047a01 -18 3043 7086355083872636 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj ad3caac15c30836b -2 64 7086357633959230 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj 3dbe244f920770f0 -64 294 7086357634834969 src/decompiled/decompiled e9a21bf19a949a43 -14 96 7086358570559536 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj 3dbe244f920770f0 -3 82 7086395702587459 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj 3dbe244f920770f0 -82 250 7086395703531546 src/decompiled/decompiled e9a21bf19a949a43 -2 104 7086415888347136 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj 3dbe244f920770f0 -104 269 7086415889238296 src/decompiled/decompiled e9a21bf19a949a43 2 74 7086417743481691 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj 3dbe244f920770f0 -74 230 7086417744466151 src/decompiled/decompiled e9a21bf19a949a43 +13 99 7087926303218576 src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj bbca79742ec65489 +3 85 7086352709137376 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj b14a57baf7047a01 +14 4541 7087896645386545 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj ad3caac15c30836b +11 357 7087896726031416 src/decompiled/decompiled e9a21bf19a949a43 +103 220 7087919206194778 src/ocl_loader/ocl_loader 52c8fae6c862f577 diff --git a/build/CMakeCache.txt b/build/CMakeCache.txt index 87ea476..c1822b7 100644 --- a/build/CMakeCache.txt +++ b/build/CMakeCache.txt @@ -359,7 +359,7 @@ CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 //ADVANCED property for variable: CMAKE_NM CMAKE_NM-ADVANCED:INTERNAL=1 //number of local generators -CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=5 +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=6 //objcopy tool CMAKE_OBJCOPY:INTERNAL=/arm-none-eabi-objcopy //ADVANCED property for variable: CMAKE_OBJDUMP diff --git a/build/CMakeFiles/TargetDirectories.txt b/build/CMakeFiles/TargetDirectories.txt index 3bf3137..967c3f2 100644 --- a/build/CMakeFiles/TargetDirectories.txt +++ b/build/CMakeFiles/TargetDirectories.txt @@ -9,3 +9,6 @@ C:/Users/plewa/dev/UV_K5_playground/build/src/CMakeFiles/rebuild_cache.dir C:/Users/plewa/dev/UV_K5_playground/build/src/decompiled/CMakeFiles/decompiled.dir C:/Users/plewa/dev/UV_K5_playground/build/src/decompiled/CMakeFiles/edit_cache.dir C:/Users/plewa/dev/UV_K5_playground/build/src/decompiled/CMakeFiles/rebuild_cache.dir +C:/Users/plewa/dev/UV_K5_playground/build/src/ocl_loader/CMakeFiles/ocl_loader.dir +C:/Users/plewa/dev/UV_K5_playground/build/src/ocl_loader/CMakeFiles/edit_cache.dir +C:/Users/plewa/dev/UV_K5_playground/build/src/ocl_loader/CMakeFiles/rebuild_cache.dir diff --git a/build/CMakeFiles/rules.ninja b/build/CMakeFiles/rules.ninja index b31b067..be89cac 100644 --- a/build/CMakeFiles/rules.ninja +++ b/build/CMakeFiles/rules.ninja @@ -60,6 +60,27 @@ rule CXX_EXECUTABLE_LINKER__decompiled_Debug restat = $RESTAT +############################################# +# Rule for compiling C files. + +rule C_COMPILER__ocl_loader_unscanned_Debug + depfile = $DEP_FILE + deps = gcc + command = ${LAUNCHER}${CODE_CHECK}C:\PROGRA~2\GNUARM~1\102021~1.10\bin\AR19DD~1.EXE $DEFINES $INCLUDES $FLAGS -MD -MT $out -MF $DEP_FILE -o $out -c $in + description = Building C object $out + + +############################################# +# Rule for linking C executable. + +rule C_EXECUTABLE_LINKER__ocl_loader_Debug + depfile = $DEP_FILE + deps = gcc + command = cmd.exe /C "$PRE_LINK && C:\PROGRA~2\GNUARM~1\102021~1.10\bin\AR19DD~1.EXE $FLAGS $LINK_FLAGS $in -o $TARGET_FILE $LINK_PATH $LINK_LIBRARIES && $POST_BUILD" + description = Linking C executable $TARGET_FILE + restat = $RESTAT + + ############################################# # Rule for re-running cmake. diff --git a/build/build.ninja b/build/build.ninja index 119eead..a7968d5 100644 --- a/build/build.ninja +++ b/build/build.ninja @@ -239,11 +239,77 @@ build src/decompiled/CMakeFiles/rebuild_cache.util: CUSTOM_COMMAND build src/decompiled/rebuild_cache: phony src/decompiled/CMakeFiles/rebuild_cache.util +# ============================================================================= +# Write statements declared in CMakeLists.txt: +# C:/Users/plewa/dev/UV_K5_playground/src/CMakeLists.txt +# ============================================================================= + +# ============================================================================= +# Object build statements for EXECUTABLE target ocl_loader + + +############################################# +# Order-only phony target for ocl_loader + +build cmake_object_order_depends_target_ocl_loader: phony || src/ocl_loader/CMakeFiles/ocl_loader.dir + +build src/ocl_loader/CMakeFiles/ocl_loader.dir/main.c.obj: C_COMPILER__ocl_loader_unscanned_Debug C$:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/main.c || cmake_object_order_depends_target_ocl_loader + DEFINES = -DDEBUG_ENABLED -DSTM32G0 -DSTM32G030xx -DSTM32 + DEP_FILE = src\ocl_loader\CMakeFiles\ocl_loader.dir\main.c.obj.d + FLAGS = -g -std=c99 -mthumb -mcpu=cortex-m0plus -mfpu=auto -mfloat-abi=soft -fno-exceptions -msoft-float -Wall -Wno-unknown-pragmas -Os --debug -DDEBUG -ffunction-sections -fdata-sections -gdwarf-3 -nostartfiles -fno-strict-aliasing + INCLUDES = -IC:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/. -IC:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/Drivers/CMSIS/Device/ST/STM32G0xx/Include -IC:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/Drivers/CMSIS/DSP/Include -IC:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/Drivers/CMSIS/Include -IC:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./include -IC:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./CMSIS/Device/ST/STM32G0xx/Include -IC:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./CMSIS/Include -IC:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./STM32G0xx_HAL_Driver/Inc + OBJECT_DIR = src\ocl_loader\CMakeFiles\ocl_loader.dir + OBJECT_FILE_DIR = src\ocl_loader\CMakeFiles\ocl_loader.dir + + +# ============================================================================= +# Link build statements for EXECUTABLE target ocl_loader + + +############################################# +# Link the executable src\ocl_loader\ocl_loader + +build src/ocl_loader/ocl_loader: C_EXECUTABLE_LINKER__ocl_loader_Debug src/ocl_loader/CMakeFiles/ocl_loader.dir/main.c.obj + DEP_FILE = src\ocl_loader\CMakeFiles\ocl_loader.dir\link.d + FLAGS = -g + LINK_FLAGS = -T C:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/ram.lds -mcpu=cortex-m0plus -mthumb -mfpu=auto -mfloat-abi=soft -specs=nosys.specs -specs=nano.specs -lc -lm -lnosys -Wl,-Map=uv-k5-custom-build.map,--cref -Wl,--gc-sections -Wl,--print-memory-usage -Wstack-usage=128 -Wno-register -Wl,--dependency-file,src\ocl_loader\CMakeFiles\ocl_loader.dir\link.d + OBJECT_DIR = src\ocl_loader\CMakeFiles\ocl_loader.dir + POST_BUILD = cmd.exe /C "cd /D C:\Users\plewa\dev\UV_K5_playground\build\src\ocl_loader && arm-none-eabi-size ocl_loader && cd /D C:\Users\plewa\dev\UV_K5_playground\build\src\ocl_loader && arm-none-eabi-objcopy -O ihex ocl_loader ocl_loader.hex && arm-none-eabi-objcopy -O binary ocl_loader ocl_loader.bin" + PRE_LINK = cd . + TARGET_FILE = src\ocl_loader\ocl_loader + TARGET_PDB = ocl_loader.dbg + + +############################################# +# Utility command for edit_cache + +build src/ocl_loader/CMakeFiles/edit_cache.util: CUSTOM_COMMAND + COMMAND = cmd.exe /C "cd /D C:\Users\plewa\dev\UV_K5_playground\build\src\ocl_loader && "C:\Program Files\CMake\bin\cmake-gui.exe" -SC:\Users\plewa\dev\UV_K5_playground -BC:\Users\plewa\dev\UV_K5_playground\build" + DESC = Running CMake cache editor... + pool = console + restat = 1 + +build src/ocl_loader/edit_cache: phony src/ocl_loader/CMakeFiles/edit_cache.util + + +############################################# +# Utility command for rebuild_cache + +build src/ocl_loader/CMakeFiles/rebuild_cache.util: CUSTOM_COMMAND + COMMAND = cmd.exe /C "cd /D C:\Users\plewa\dev\UV_K5_playground\build\src\ocl_loader && "C:\Program Files\CMake\bin\cmake.exe" --regenerate-during-build -SC:\Users\plewa\dev\UV_K5_playground -BC:\Users\plewa\dev\UV_K5_playground\build" + DESC = Running CMake to regenerate build system... + pool = console + restat = 1 + +build src/ocl_loader/rebuild_cache: phony src/ocl_loader/CMakeFiles/rebuild_cache.util + # ============================================================================= # Target aliases. build decompiled: phony src/decompiled/decompiled +build ocl_loader: phony src/ocl_loader/ocl_loader + # ============================================================================= # Folder targets. @@ -273,7 +339,7 @@ build libs/g030_drivers/all: phony ############################################# # Folder: C:/Users/plewa/dev/UV_K5_playground/build/src -build src/all: phony src/decompiled/all +build src/all: phony src/decompiled/all src/ocl_loader/all # ============================================================================= @@ -282,6 +348,13 @@ build src/all: phony src/decompiled/all build src/decompiled/all: phony src/decompiled/decompiled +# ============================================================================= + +############################################# +# Folder: C:/Users/plewa/dev/UV_K5_playground/build/src/ocl_loader + +build src/ocl_loader/all: phony src/ocl_loader/ocl_loader + # ============================================================================= # Built-in targets @@ -289,14 +362,14 @@ build src/decompiled/all: phony src/decompiled/decompiled ############################################# # Re-run CMake if any of its inputs changed. -build build.ninja: RERUN_CMAKE | C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeASMInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeCInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeCXXInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeCommonLanguageInclude.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeGenericSystem.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeInitializeConfigs.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeLanguageInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeSystemSpecificInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeSystemSpecificInitialize.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/CMakeCommonCompilerMacros.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU-ASM.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU-C.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU-CXX.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Platform/Generic.cmake C$:/Users/plewa/dev/UV_K5_playground/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/libs/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/src/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/src/decompiled/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/toolchain/arm-none-eabi-gcc.cmake CMakeCache.txt CMakeFiles/3.27.0-rc2/CMakeASMCompiler.cmake CMakeFiles/3.27.0-rc2/CMakeCCompiler.cmake CMakeFiles/3.27.0-rc2/CMakeCXXCompiler.cmake CMakeFiles/3.27.0-rc2/CMakeSystem.cmake +build build.ninja: RERUN_CMAKE | C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeASMInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeCInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeCXXInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeCommonLanguageInclude.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeGenericSystem.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeInitializeConfigs.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeLanguageInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeSystemSpecificInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeSystemSpecificInitialize.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/CMakeCommonCompilerMacros.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU-ASM.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU-C.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU-CXX.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Platform/Generic.cmake C$:/Users/plewa/dev/UV_K5_playground/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/libs/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/src/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/src/decompiled/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/toolchain/arm-none-eabi-gcc.cmake CMakeCache.txt CMakeFiles/3.27.0-rc2/CMakeASMCompiler.cmake CMakeFiles/3.27.0-rc2/CMakeCCompiler.cmake CMakeFiles/3.27.0-rc2/CMakeCXXCompiler.cmake CMakeFiles/3.27.0-rc2/CMakeSystem.cmake pool = console ############################################# # A missing CMake input file is not an error. -build C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeASMInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeCInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeCXXInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeCommonLanguageInclude.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeGenericSystem.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeInitializeConfigs.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeLanguageInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeSystemSpecificInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeSystemSpecificInitialize.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/CMakeCommonCompilerMacros.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU-ASM.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU-C.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU-CXX.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Platform/Generic.cmake C$:/Users/plewa/dev/UV_K5_playground/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/libs/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/src/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/src/decompiled/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/toolchain/arm-none-eabi-gcc.cmake CMakeCache.txt CMakeFiles/3.27.0-rc2/CMakeASMCompiler.cmake CMakeFiles/3.27.0-rc2/CMakeCCompiler.cmake CMakeFiles/3.27.0-rc2/CMakeCXXCompiler.cmake CMakeFiles/3.27.0-rc2/CMakeSystem.cmake: phony +build C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeASMInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeCInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeCXXInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeCommonLanguageInclude.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeGenericSystem.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeInitializeConfigs.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeLanguageInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeSystemSpecificInformation.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/CMakeSystemSpecificInitialize.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/CMakeCommonCompilerMacros.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU-ASM.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU-C.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU-CXX.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Compiler/GNU.cmake C$:/Program$ Files/CMake/share/cmake-3.27/Modules/Platform/Generic.cmake C$:/Users/plewa/dev/UV_K5_playground/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/libs/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/src/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/src/decompiled/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/CMakeLists.txt C$:/Users/plewa/dev/UV_K5_playground/toolchain/arm-none-eabi-gcc.cmake CMakeCache.txt CMakeFiles/3.27.0-rc2/CMakeASMCompiler.cmake CMakeFiles/3.27.0-rc2/CMakeCCompiler.cmake CMakeFiles/3.27.0-rc2/CMakeCXXCompiler.cmake CMakeFiles/3.27.0-rc2/CMakeSystem.cmake: phony ############################################# diff --git a/build/compile_commands.json b/build/compile_commands.json index 8dbfae1..dab33d1 100644 --- a/build/compile_commands.json +++ b/build/compile_commands.json @@ -22,5 +22,11 @@ "command": "C:\\PROGRA~2\\GNUARM~1\\102021~1.10\\bin\\AR19DD~1.EXE -DDEBUG_ENABLED -DSTM32G0 -DSTM32G030xx -DSTM32 -IC:/Users/plewa/dev/UV_K5_playground/src/decompiled/. -IC:/Users/plewa/dev/UV_K5_playground/src/decompiled/Drivers/CMSIS/Device/ST/STM32G0xx/Include -IC:/Users/plewa/dev/UV_K5_playground/src/decompiled/Drivers/CMSIS/DSP/Include -IC:/Users/plewa/dev/UV_K5_playground/src/decompiled/Drivers/CMSIS/Include -IC:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./include -IC:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./CMSIS/Device/ST/STM32G0xx/Include -IC:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./CMSIS/Include -IC:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./STM32G0xx_HAL_Driver/Inc -g -std=c99 -mthumb -mcpu=cortex-m0plus -mfpu=auto -mfloat-abi=soft -fno-exceptions -msoft-float -fdata-sections -ffunction-sections -Wall -Wno-unknown-pragmas -Os --debug -DDEBUG -o src\\decompiled\\CMakeFiles\\decompiled.dir\\decompiled.c.obj -c C:\\Users\\plewa\\dev\\UV_K5_playground\\src\\decompiled\\decompiled.c", "file": "C:\\Users\\plewa\\dev\\UV_K5_playground\\src\\decompiled\\decompiled.c", "output": "src\\decompiled\\CMakeFiles\\decompiled.dir\\decompiled.c.obj" +}, +{ + "directory": "C:/Users/plewa/dev/UV_K5_playground/build", + "command": "C:\\PROGRA~2\\GNUARM~1\\102021~1.10\\bin\\AR19DD~1.EXE -DDEBUG_ENABLED -DSTM32G0 -DSTM32G030xx -DSTM32 -IC:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/. -IC:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/Drivers/CMSIS/Device/ST/STM32G0xx/Include -IC:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/Drivers/CMSIS/DSP/Include -IC:/Users/plewa/dev/UV_K5_playground/src/ocl_loader/Drivers/CMSIS/Include -IC:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./include -IC:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./CMSIS/Device/ST/STM32G0xx/Include -IC:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./CMSIS/Include -IC:/Users/plewa/dev/UV_K5_playground/libs/g030_drivers/./STM32G0xx_HAL_Driver/Inc -g -std=c99 -mthumb -mcpu=cortex-m0plus -mfpu=auto -mfloat-abi=soft -fno-exceptions -msoft-float -Wall -Wno-unknown-pragmas -Os --debug -DDEBUG -ffunction-sections -fdata-sections -gdwarf-3 -nostartfiles -fno-strict-aliasing -o src\\ocl_loader\\CMakeFiles\\ocl_loader.dir\\main.c.obj -c C:\\Users\\plewa\\dev\\UV_K5_playground\\src\\ocl_loader\\main.c", + "file": "C:\\Users\\plewa\\dev\\UV_K5_playground\\src\\ocl_loader\\main.c", + "output": "src\\ocl_loader\\CMakeFiles\\ocl_loader.dir\\main.c.obj" } ] \ No newline at end of file diff --git a/build/src/cmake_install.cmake b/build/src/cmake_install.cmake index 94bc938..f0206ad 100644 --- a/build/src/cmake_install.cmake +++ b/build/src/cmake_install.cmake @@ -42,3 +42,8 @@ if(NOT CMAKE_INSTALL_LOCAL_ONLY) include("C:/Users/plewa/dev/UV_K5_playground/build/src/decompiled/cmake_install.cmake") endif() +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for the subdirectory. + include("C:/Users/plewa/dev/UV_K5_playground/build/src/ocl_loader/cmake_install.cmake") +endif() + diff --git a/build/src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj b/build/src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj new file mode 100644 index 0000000000000000000000000000000000000000..edde27b7b6bf24012a3d806c0365d4f679ee20a7 GIT binary patch literal 3028 zcmb7G&2Jk;6o2F0O`JM5N!(9bAxBC@O7S}G7bP^b#`#c5(?a5uOGLD`*B_F-wszP3 z03?KjKuB{u;)Vo5NQggxQ%@W!!~ua?es4UJY)ujH#ES2+|~InzkjPQ*mjrj!BrNJ+zzd-oAVLH^_$6nc_{Lxs1=GRNViG-9)(Q zm=XU1dZW0wL@{fec{2GE8P6dRHJn0cKIJEXAFe2;~M z6!w}H2OE{b0do%vNhxH^E9{n%!W3EN@D3P<#M{t{N|Vd82QZe_%#d^+MyQz}b!vRhf} z?4?3|csEQMng0;OpbBfnAE_jvEN~uN4Wc-kTMt}6$aP!pWhYm4FXh%RZZ03+?6#b% zb-&Z|s=2_gM#T39WtEtJl#EKqTFLngT)liWa(8-q!1 zlzYuq6`uchJGrghES+D^6b~QHKat7L*hlSr=E%&E{LINC$1>Bt+j5=2J(S6|!$z-N z23ESgxk|?m-7DGlOt;kwpsPXW^ui9aIIJ-1l$&!wrxrd);rNxtoa47Iod~k+Ot#+t zRWCb!EqgSRy?}s0Se>hTJ(*Ls=5?~}m5SR9n;j2Emi;hnf~)ns3Tv~0E0L{LCv>7R zyo1nhR*+Py=>$!$PS34gSd!<*vp1C@#}lsjyli$(9ydPS7A) zDi&um(|l9~znxiVm)&X=_f_h2T9pRE$g|7x$=UgtL;rk|M0f^t4$kndNq&xRC z&uH9dWjXqESnhX2J;y+M<3_Vh_b+FVHDKokwoL}1twhM6ek0Z@gGMwf(I9k(2pN=& zNSxn81M>KQJT@SwWduGG-suGPGXdO|k?+={mVh+mVe@=9G4wZHiE)?0eT*<3 zWJH>eDgC^{=M}!F@Up_!6~3$RV}-XAeyQ+lh2Jm^6Md)fC#C;|5$WGiDD%Z}@(Hkh zFC*qLvCKEe$Tz@xxi27^oYcRg^g9`G%yK^br<6Rc>|_U5+o4kihJGI#nnQ;O$>!%s zb~y;hW(E8lKkRjF`Sk4mtFzH&?5bPt)i;}7t%FIDcgkhoy+jeK<2zp6MX2owf7i5{ zo~uJ37qTmzb{h*tXVrYC4X48DitU8x4&`2mu>YO*!FhMcUSYta&zl3xR7&leSf%h^}j*M!6PwUDoS$Uk0z| zfTdp{u%9Mv<98R0cL4D+&~ZHOHaZ^Hzn%k@5;)}R%qY^fw;)I3okBc*a~uzCU@P7= z@H}S*gXt5*yQPCbW|qfIh1zc&3Gp3i(te*q5t&Xm;HT%XFYkltQ;cYS=OX(ZhmHOC z-oC;>?R5c?et>~%O_N@WFn+a literal 0 HcmV?d00001 diff --git a/build/src/ocl_loader/cmake_install.cmake b/build/src/ocl_loader/cmake_install.cmake new file mode 100644 index 0000000..fd169b2 --- /dev/null +++ b/build/src/ocl_loader/cmake_install.cmake @@ -0,0 +1,39 @@ +# Install script for directory: C:/Users/plewa/dev/UV_K5_playground/src/ocl_loader + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/uv-k5-custom-build") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Debug") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "TRUE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "C:/Program Files (x86)/GNU Arm Embedded Toolchain/10 2021.10/bin/arm-none-eabi-objdump.exe") +endif() + diff --git a/build/src/ocl_loader/ocl_loader b/build/src/ocl_loader/ocl_loader new file mode 100644 index 0000000000000000000000000000000000000000..64d9d1453b97136d1dc069ae124788daa15e102a GIT binary patch literal 68592 zcmeI!-ESOM83yq8%*T4|UAz8BXw(KYQH|;)6JMouIW%Z;ZCHyJLIR z{V+4LX@Zbw5dtb9E>ICFsuXd<6}J^!a*2>YLgF9bid(p%5)$Qk&+gb8D;44r={fSu zIqx~|oSFIU%o%@oV`tMCBUy1|K{Ub^+(iAgakL!qZ%Tl^1(}g)J8mrP3Q&Lo6rcbFC_n)UP=Epypa2CZKmiI+fC3bt z00k&O0SZun0u-PC1t>rP3Q&Lo6rcbFC_n)UP=Epypa2CZKmiI+fC3bt00k&O0SZun z0u-PC1t>rP3Q&Lo6rcbFC_n)UP=Epypa2CZKmiI+fC3bt00k&O0SZun0u-PC1t>rP z3Q&Lo6rcbFC_n)UP=Epypa2CZKmiI+fC3bt00k&O0SZun0u-PC1t>rP3Q&Lo6rcbF zC_n)UP=Epypa2CZKmiI+fC3bt00k&O0SZun0u-PC1t>rP3Q&Lo6rcbFC_n)UP=Epy zpa2CZKmiI+fC3bt00k&O0SZun0u-PC1t>rP3Q&Lo6rcbFC_n)UP=Epypa2CZKmiI+ zfC3bt00k&O0SZun0u-PC1t>rP3Q&Lo6rcbFC_n)UP=Epypa2E_e*~sKmcPp<^3uE4 zej)F>)hlyvnU&`CfByO3e-ruS;6Gdi95kYryez%Q8U=@_1cY-u+c5 zXuNd$#?4?Mj@nU}M6bvlBjQ>^&-@UzcMrR3w&UrY^8}d-j+_52`rY--EphxAZHuQn zCualC`vKCNF&pH)4>ic!py=-Hi!*N9)7}Rtsb6T=kyUVA2MG z_ej&GY%njrH#UL6ocS?&&CD&dgB&*Vk@+jyW7^h+z*td}s_4FN2MeCx>ZW3QC%qMn;mqcXQ*#A(>cy#p+>EK3X-weE z8F#8sSS{Qse5GLKz%?mueh_ZY-7bI(9aEzn{=5_lU&TDQ#>n2pYuS@ZhD&)+EO zG-L07&&Z5fMl(N}v_1D!+W5_pvpKonyn#!aDBwzGam9t73OjwOvY8xNvh!Gb z*~?Pq(ZESj>@#H3F{PFOhn^LkMh``Y_G@j+AFy|&fxTn?H8qK=x7Uw*Fzc&}2T2qs zi>K}Aop7-kJzPBaM(y6M+G#s{d>r@s-R5EvHx_%1cCFnDn^7#%!HZLFoSq6Mh@<0H zl464L$)H1gBfg_&|D5m5&H0y&U(A`n9}~xOayx#}*2ed2{RRKB)`1Pp3fjgv1{Y{& z!378I407julbiAL*Bl2!mAiMVvRm1^C;e{HI_~0q*2it5TG`v!-`?Gj_0>arPlxuN z4slP17w_q?-fy*=$oyaLe(~()bx~Qretr4NpS@}XrA~U%@6=H@PWx+(UYtgcN}Z+C zc0WPi5&FV@+S4X%(-M}mwWN2HKC2^)8z*aF+v_ z?y-Em`e4iYDuKLtx3XW6sGG)*<>3C#gY|o|w_mC5%l>9NOiu9A6|sGaV#N8*RB_VA z=sJ6PhflC}*{8TNmH)o;6FgJTE`fHt`pltR#W7mD!}kKgFdi(@I;O=PzA=MHV_i4T zi>p^NQd}7ui8Mc3@dn+lj9(bn)%Co%f>mpzxMz1g=yU~d-^jQp|M=9d&%^7-8!5vX zgF%|X5$7e#&+cE>15G7D9Nl;u^&lKXQcfOs(y)#?jR*Bf*0S@I?WxLkqH?9WTMkpaL-l?dB~otmIvu<& zQf@}|{xPoVsF$_FdOeOFW>LG>$eLjsc8~So!7)!q?N&F+MsOKf^C%8G(FoyxZN7*M zgKhXG1RCixla;}j$Nq+AdHVcaMKt&x4KlO#%Ludi0^|jskyk<<-qzE>(fS)3S;zv^ zI)|1uY}#JZ0A&Z!_MmC^I;Pv^u(qAp{S3XYWs{7I>GL_#Eq}qs@Q>L+BV%ukv~~EG z_%MA-8^e;#q0ej9)}dMV+4u473wf)^!@p2xC7a_%7xJpe`_oz0`MEwA=4CE{XXIDe zB*QTcpA6fmZ23LDt+%rPb@sbyZuVQ-;hd2G9nT@qcUklBpN(AsM_1V(Z{#uhvyxrH S3_3>hK1ANHvn146-hTjOE1FCI literal 0 HcmV?d00001 diff --git a/build/src/ocl_loader/ocl_loader.bin b/build/src/ocl_loader/ocl_loader.bin new file mode 100644 index 0000000000000000000000000000000000000000..8080e7f835c7c517b6bc6fbe091c201ec4ffb0a0 GIT binary patch literal 36 qcmWgG%J6~V2ZM5h;w*+v<{$~-1V-Z&?e7==J!fF}vGsr(2m=7{at})Y literal 0 HcmV?d00001 diff --git a/build/src/ocl_loader/ocl_loader.hex b/build/src/ocl_loader/ocl_loader.hex new file mode 100644 index 0000000..dce0358 --- /dev/null +++ b/build/src/ocl_loader/ocl_loader.hex @@ -0,0 +1,7 @@ +:020000042000DA +:1000000010B500F000F8002380219A0089035218EF +:0A00100013600133642BF7D1FEE703 +:04001C00F8B5C0462D +:04002000F8B5C04629 +:0400000520000001D6 +:00000001FF diff --git a/build/uv-k5-custom-build.map b/build/uv-k5-custom-build.map index 6f5f37a..cc8b28f 100644 --- a/build/uv-k5-custom-build.map +++ b/build/uv-k5-custom-build.map @@ -1,7 +1,5 @@ Archive member included to satisfy reference by file (symbol) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-abort.o) - src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj (abort) c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-exit.o) c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o (exit) c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-impure.o) @@ -10,52 +8,23 @@ c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../.. c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o (__libc_init_array) c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-memset.o) c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o (memset) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-abort.o) (raise) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) (_kill_r) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) (_malloc_r) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-reent.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) (errno) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-sbrkr.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) (_sbrk_r) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-mlock.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) (__malloc_lock) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-freer.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-reent.o) (_free_r) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-mlock.o) (__retarget_lock_acquire_recursive) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_thumb1_case_shi.o) - src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj (__gnu_thumb1_case_shi) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_udivsi3.o) - src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj (__aeabi_uidiv) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_divsi3.o) - src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj (__aeabi_idiv) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_dvmd_tls.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_udivsi3.o) (__aeabi_idiv0) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(fixsfsi.o) - src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj (__aeabi_f2iz) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(floatsisf.o) - src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj (__aeabi_i2f) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_clzsi2.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(floatsisf.o) (__clzsi2) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(getpid.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) (_getpid) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(kill.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) (_kill) -c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(sbrk.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-sbrkr.o) (_sbrk) c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(_exit.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-abort.o) (_exit) + c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-exit.o) (_exit) Discarded input sections .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crti.o .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crti.o .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crti.o + .text 0x00000000 0x48 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o .data 0x00000000 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o + .bss 0x00000000 0x1c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o .rodata 0x00000000 0x24 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o + .init_array 0x00000000 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o + .fini_array 0x00000000 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o + .eh_frame 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o + .ARM.attributes + 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o .text 0x00000000 0x80 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o @@ -63,1543 +32,9 @@ Discarded input sections .ARM.exidx 0x00000000 0x10 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o .ARM.attributes 0x00000000 0x1b c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o - .text 0x00000000 0x0 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - .data 0x00000000 0x0 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - .bss 0x00000000 0x0 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - .text.SystemCoreClockUpdate - 0x00000000 0x94 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - .data.SystemCoreClock - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - .rodata.AHBPrescTable - 0x00000000 0x40 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - .rodata.APBPrescTable - 0x00000000 0x20 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - .text 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj - .data 0x00000000 0x0 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj - .bss 0x00000000 0x0 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj - .text 0x00000000 0x0 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - .data 0x00000000 0x0 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - .bss 0x00000000 0x0 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - .text 0x00000000 0x0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data 0x00000000 0x0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss 0x00000000 0x0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d8 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_da - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_dc - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_de - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e0 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e2 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e4 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e6 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e8 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ea - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ec - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ee - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_f0 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_f2 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_f4 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_f6 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_f8 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_fa - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_fc - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_fe - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_100 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_102 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_104 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_106 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_108 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_10a - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_10c - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_10e - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_110 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_112 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_114 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_116 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_118 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_11a - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_11c - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_11e - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_120 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_128 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_154 - 0x00000000 0x20 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_166 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_178 - 0x00000000 0x58 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_870c.part.0 - 0x00000000 0x38 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_19c - 0x00000000 0x20 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1aa - 0x00000000 0xa src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1ae - 0x00000000 0x12 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1c0 - 0x00000000 0x10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1ce - 0x00000000 0x30 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_32c - 0x00000000 0x20 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_418 - 0x00000000 0x170 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_560 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_588 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_5e8 - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_608 - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_524 - 0x00000000 0x58 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_62a - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_650 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_710 - 0x00000000 0x64 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_774 - 0x00000000 0x108 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7b0 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7bc - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7c8 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7d4 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ab0 - 0x00000000 0x10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ac4 - 0x00000000 0x6c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d04 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_df8 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_108c - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_117c.str1.1 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_117c - 0x00000000 0xec src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_139c - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1438 - 0x00000000 0x34 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1478 - 0x00000000 0x70 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_14d8 - 0x00000000 0x4c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1558 - 0x00000000 0x4c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1598 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_15f0 - 0x00000000 0x6c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1804 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1810 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1830 - 0x00000000 0x4c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_18cc - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_18d2 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1928 - 0x00000000 0x80 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1978 - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1a40 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1a60 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1de0 - 0x00000000 0x38 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1d7c - 0x00000000 0x74 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1e3c - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1e64 - 0x00000000 0x2c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1e90 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1eb8 - 0x00000000 0x7c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_1f00.str1.1 - 0x00000000 0x3 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1f00 - 0x00000000 0x9c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1f3c - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1f5e - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1f62 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1f66 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1f6a - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1f6e - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1f72 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2004 - 0x00000000 0x6c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2040 - 0x00000000 0x64 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_20a0 - 0x00000000 0x50 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_20dc - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2110 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2140 - 0x00000000 0x68 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_21aa - 0x00000000 0x110 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2214 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2218 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_221c - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2220 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2224 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_222e - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2232 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2236 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_223a - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_223e - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2242 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2246 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_224a - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_224e - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2252 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2256 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_225a - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_225e - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2262 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2270 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2274 - 0x00000000 0x12 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2266 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_227a - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_228c - 0x00000000 0x90 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_22be - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_22c2 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_22c6 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_22f8 - 0x00000000 0x54 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_1514.str1.1 - 0x00000000 0x3 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1514 - 0x00000000 0x68 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2342 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_235a - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_235e - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2364 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_236a - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2370 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2376 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_237c - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2382 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2388 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_238e - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2394 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_239c - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_239e - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_23a6 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_2cd0.str1.1 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2cd0 - 0x00000000 0x34 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2cc0 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_2e7c.str1.1 - 0x00000000 0x3 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2e7c - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2e90 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2e94 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2e98 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2ea2 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2eaa - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2eac - 0x00000000 0xe src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2f58 - 0x00000000 0x2c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_301c - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_31b4 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_329c - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_32c8.str1.1 - 0x00000000 0x3 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_32c8 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_32d2 - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_32ea - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_32f8 - 0x00000000 0xe src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3314 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_33ac - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3578 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_3604.str1.1 - 0x00000000 0x3 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3604 - 0x00000000 0x20 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_32dc - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3620 - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_32ee - 0x00000000 0xe src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_32e6 - 0x00000000 0xe src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_37d4 - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3cf0 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3dc8 - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3eec - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3f04 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3f22 - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3f3a - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_3ffc.str1.1 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3ffc - 0x00000000 0x50 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_40dc - 0x00000000 0x50 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3f12 - 0x00000000 0x12 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_425c.str1.1 - 0x00000000 0x3 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_425c - 0x00000000 0x44 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3f18 - 0x00000000 0xe src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_43dc - 0x00000000 0x50 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_4474 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_4478 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_4488 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_448c - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_4498 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_44c4 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_4908.str1.1 - 0x00000000 0x9 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_4908 - 0x00000000 0x38 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_4d48 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_50e4 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_511c - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_52c8.str1.1 - 0x00000000 0x3 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_52c8 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_5578 - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_5678.str1.1 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_5678 - 0x00000000 0x40 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_449a - 0x00000000 0xa src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_4494 - 0x00000000 0xa src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_58e4.str1.1 - 0x00000000 0x3 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_58e4 - 0x00000000 0x3c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_5924.str1.1 - 0x00000000 0x9 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_5924 - 0x00000000 0x38 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_5b28.str1.1 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_5b28 - 0x00000000 0x2c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_5c44 - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_6904.str1.1 - 0x00000000 0x2a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_6904 - 0x00000000 0xac src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_6bc2 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_6caa - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_6eca - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_6f50 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7070 - 0x00000000 0xbc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_739c - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_74d0.str1.1 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_74d0 - 0x00000000 0x34 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_42e8 - 0x00000000 0x3c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3f08 - 0x00000000 0x10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3f00 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_7690.str1.1 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7690 - 0x00000000 0xa4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_782c.str1.1 - 0x00000000 0x1b src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_782c - 0x00000000 0x78 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_7dac.str1.1 - 0x00000000 0x9 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7dac - 0x00000000 0x70 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7ea0 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7fa8 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_82f4 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_830c - 0x00000000 0x30 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_8478.str1.1 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_8478 - 0x00000000 0x50 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_84c8 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_8594 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_859e - 0x00000000 0x5c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_85da.str1.1 - 0x00000000 0xb src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_85da - 0x00000000 0x58 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_864c - 0x00000000 0xdc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_870c - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_874c - 0x00000000 0xe0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_8920 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_8c6e - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_8c8c - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_8cb4 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_8ccc - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_9440.str1.1 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9440 - 0x00000000 0x104 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_87f0 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9532 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9540 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_956e - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9590 - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_95be - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_95c2 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_95de - 0x00000000 0x3c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_960e - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9616 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_961e - 0x00000000 0x10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9644 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_964a - 0x00000000 0xe src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9650 - 0x00000000 0xe src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9660 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_966a - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_96ec - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_96ee - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_96f0 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_96f2 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_96f6 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_96f8 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_96fc - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9706 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9728 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9b30 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9bf4 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9d7c - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9e08 - 0x00000000 0x80 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2074 - 0x00000000 0x3a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_15b0 - 0x00000000 0x34 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a67c - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a92c - 0x00000000 0x64 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1280 - 0x00000000 0x4c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1624 - 0x00000000 0xf4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ab58 - 0x00000000 0x20 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_af60 - 0x00000000 0x3c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_16e8.str1.1 - 0x00000000 0x3 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_16e8 - 0x00000000 0x1fc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_afa4 - 0x00000000 0x5c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_afe0 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b2a8 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_baa4 - 0x00000000 0x3c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_bb0c - 0x00000000 0xb0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_bbc8 - 0x00000000 0xb4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_be44 - 0x00000000 0x64 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_be70 - 0x00000000 0x34 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_c7c.str1.1 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c7c - 0x00000000 0x5c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ebc - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ee4 - 0x00000000 0x5c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_f64 - 0x00000000 0x4c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_1030.str1.1 - 0x00000000 0xb src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1030 - 0x00000000 0x30 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_bf98 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_b10.str1.1 - 0x00000000 0x3 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b10 - 0x00000000 0xd0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ba8 - 0x00000000 0x60 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_5710.str1.1 - 0x00000000 0x3 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_5710 - 0x00000000 0x20 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_446e - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b844 - 0x00000000 0xa0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b8a8 - 0x00000000 0x48 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b2f8 - 0x00000000 0x44 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b2aa - 0x00000000 0xe src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b3f8 - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b590 - 0x00000000 0x10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b550 - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_bfb2 - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_bfca - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_5960.str1.1 - 0x00000000 0x3 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_5960 - 0x00000000 0x3c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b5b4 - 0x00000000 0x130 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_8418 - 0x00000000 0x68 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b6b0 - 0x00000000 0xc4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_9c10.str1.1 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9c10 - 0x00000000 0xb4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b70c - 0x00000000 0x130 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_abd8 - 0x00000000 0x2c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a960 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ac38 - 0x00000000 0x30 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_af00 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b0b8 - 0x00000000 0x38 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_167c - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b510 - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a29c - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a098 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a2d0 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a31a - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a278 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_aff4 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_12a8 - 0x00000000 0x4c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7020 - 0x00000000 0xa8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_54c8.str1.1 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_54c8 - 0x00000000 0xa0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2d94 - 0x00000000 0xb8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2cca - 0x00000000 0x10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_82a8 - 0x00000000 0x20 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_744c.str1.1 - 0x00000000 0x9 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_744c - 0x00000000 0x88 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1f78 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9730 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_5de8 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_5f5c - 0x00000000 0x190 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7714 - 0x00000000 0x2c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3764 - 0x00000000 0x20 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3b40 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2e50 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3684 - 0x00000000 0x4c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3ec0 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_5808 - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_4480 - 0x00000000 0xa src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_62b4 - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a1ac - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_1a74.str1.1 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1a74 - 0x00000000 0x38 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_598c - 0x00000000 0x34 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a2f0 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_7504.str1.1 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7504 - 0x00000000 0x94 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_8204 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_10a0 - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_2d38.part.0.str1.1 - 0x00000000 0xb src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2d38.part.0 - 0x00000000 0x50 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2d38 - 0x00000000 0x12 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2c9c - 0x00000000 0x34 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b02a - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_199c - 0x00000000 0xcc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_6b88 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_381c.str1.1 - 0x00000000 0x3 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_381c - 0x00000000 0x124 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_6cb0 - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_77bc - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2ec8 - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2e86 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_6d10 - 0x00000000 0xe src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_6ef4 - 0x00000000 0x16 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_6bcc - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1fc8 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_96f4 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b638 - 0x00000000 0x138 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_bf04 - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_5b58 - 0x00000000 0x5c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_5cc0 - 0x00000000 0x40 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a960.constprop.0.isra.0 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9e4c - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9eb8 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a710 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a71e - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a72e - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a73e - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a74e - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e94 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_bf4 - 0x00000000 0xbc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a77e - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7408 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a550 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a584 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a5dc - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a600 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_23b0 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_458c - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_59d8 - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7ce0 - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_af00.constprop.0.isra.0 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a06c - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a07c - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a088 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7820 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7588 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a348 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ad94 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ae4c - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a360 - 0x00000000 0xa8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a4fc - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ad64 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ac98 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a518 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a5d0 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a794 - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1e0c - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7cc4 - 0x00000000 0xa src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1cd8 - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1ab8 - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_56b0 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_448e - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_77a8 - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3f64 - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_7f24.str1.1 - 0x00000000 0x3 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7f24 - 0x00000000 0x30 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_5748 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_447a - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3ef6 - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_aa10 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_aa48 - 0x00000000 0x22 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_aa78 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_aabc - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a050 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_aad4 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ab00 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ab40 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_acdc - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_acf4 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_aedc - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9ee8 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ab10 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_6ff8 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ab28 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a9b8 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a7cc - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a61c - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a63c - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_69d0 - 0x00000000 0x78 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_51c0 - 0x00000000 0x30 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c0a0.constprop.0.isra.0 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9f84 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9f14 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9fbc - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ae6c - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_6f60 - 0x00000000 0x20 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1128 - 0x00000000 0x4c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_2580.str1.1 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2580 - 0x00000000 0x1a4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_2b24.str1.1 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2b24 - 0x00000000 0x40 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7cb0 - 0x00000000 0xe src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9f8c - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c000 - 0x00000000 0x20 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c08c - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c0a0 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c0b0 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a5f8 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c0bc - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9f7c - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ad04 - 0x00000000 0x16 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c0cc - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c0e8 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c0f2 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c0fc - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c106 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c110 - 0x00000000 0x10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c128 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c134 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c158 - 0x00000000 0x16 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c22c - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c25c - 0x00000000 0x10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c344 - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c360 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c399 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_c39a.str1.1 - 0x00000000 0x9 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c39a - 0x00000000 0xf8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c710 - 0x00000000 0x50 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_66a - 0x00000000 0x94 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1e4 - 0x00000000 0x1a0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_348 - 0x00000000 0x128 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_508 - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_508.constprop.0 - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a020 - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_96d0 - 0x00000000 0x2c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_95d2 - 0x00000000 0xa src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c73e - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c758 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c766 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c774 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c778 - 0x00000000 0x180 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c8ec - 0x00000000 0x980 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c6e8 - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_c6e8.constprop.0 - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_9756.str1.1 - 0x00000000 0x5 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9756 - 0x00000000 0x21c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9610 - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9622 - 0x00000000 0xe src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9634 - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_968e - 0x00000000 0xbc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_96e4 - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9558 - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9748 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_962c - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9710 - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9b3c - 0x00000000 0xc4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9ab4 - 0x00000000 0xcc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_8d08.str1.1 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_8d08 - 0x00000000 0x4c0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_87d0 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_78bc.str1.1 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_78bc - 0x00000000 0x84 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .rodata.function_7b74.str1.1 - 0x00000000 0x12 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_7b74 - 0x00000000 0x64 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1fec - 0x00000000 0x10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_8af8 - 0x00000000 0xb4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_87f6 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_8934 - 0x00000000 0xac src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_87ea - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_8808 - 0x00000000 0x70 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_87fc - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_974e - 0x00000000 0x16 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_85bc - 0x00000000 0x2c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_cfd8 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_cff8 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d024 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d02e - 0x00000000 0x194 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a34 - 0x00000000 0x2c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a64 - 0x00000000 0x40 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d0ec - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d100 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d148 - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d2ba - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d2e4 - 0x00000000 0x16 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d316 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d330 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d340 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d344 - 0x00000000 0x30 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d50e - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d54e - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d578 - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d5d6 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d654 - 0x00000000 0x2e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.unlikely.function_d69c - 0x00000000 0x80 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d6f0 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.unlikely.function_d6f2 - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d784 - 0x00000000 0x34 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d7e0 - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d5e2 - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d804 - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.unlikely.function_d854 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d86e - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.unlikely.function_d870 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d890 - 0x00000000 0x70 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d8b0 - 0x00000000 0x10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d8c0 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d8d0 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d904 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d920 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d93c - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d944 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d954 - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d970 - 0x00000000 0x22 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d9b0 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d9c4 - 0x00000000 0xa src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d9d2 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d9d8 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d9e4 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d9f0 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_d9fe - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_da16 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_da40 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.unlikely.function_da56 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_da90 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_dae2 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_daf0 - 0x00000000 0x10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_db32 - 0x00000000 0x68 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_db88 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_db9a - 0x00000000 0x20 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_dbda - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_dbde - 0x00000000 0x48 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_dc2e - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_dc8c - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_dc94 - 0x00000000 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.unlikely.function_dcfc - 0x00000000 0x44 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ddd0 - 0x00000000 0x5c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_de2c - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_de40 - 0x00000000 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_dea8 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e060 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e0da - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e0e4 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e100 - 0x00000000 0xf4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e1b6 - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e1c6 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e210 - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e22a - 0x00000000 0x1c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e264 - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e278 - 0x00000000 0x20 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e294 - 0x00000000 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e2a0 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e2a8 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e2b4 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e2c0 - 0x00000000 0x10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e2cc - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e30c - 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e32c - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e354 - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e378 - 0x00000000 0x38 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e398 - 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e2d4 - 0x00000000 0x4c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e3b8 - 0x00000000 0x24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e240 - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e3dc - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e1d6 - 0x00000000 0x10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e3f8 - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e414 - 0x00000000 0x13c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e500 - 0x00000000 0xc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e518 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e5de - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_143be - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1f7cc - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2361a - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_23648 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_255c2 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_255e2 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2660c - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_32478 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_328c4 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3bf4a - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_45d44 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1d5c38 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_2098ac - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_23a37a - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_23c1d6 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_35f8a6 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_360100 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_362652 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_364d5a - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_3d09a6 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_44df04 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_4759dc - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_9c7b94 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a37d3c - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a93540 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_a9452e - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_b9b844 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_bf60d4 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_e9d196 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_10dd868 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_10ddda0 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_10ddde0 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_111c280 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1223186 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_12dc27c - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1305104 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1414692 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_14d99cc - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1599670 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_18d672e - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1a3b336 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1c65720 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1cdf99a - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_1dc156e - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_20001388 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_202ed3f6 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_fe00e3ce - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_fe43c266 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_fe8b13b2 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_fe9804c0 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_feead194 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ff30e4c2 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ff3e529a - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text.function_ff43a262 - 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g10 0x00000000 0x1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g108 0x00000000 0x1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g117 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g130 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g18 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g27 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g28 0x00000000 0x1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g29 0x00000000 0x1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g30 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g31 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g32 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g33 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g34 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g35 0x00000000 0x1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g37 0x00000000 0x1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g40 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g43 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g46 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g47 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g48 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g51 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .bss.g52 0x00000000 0x1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g100 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g101 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g103 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g104 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g105 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g107 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g109 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g110 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g112 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g113 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g114 0x00000000 0x1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g115 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g116 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g118 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g119 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g120 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g122 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g125 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g127 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g128 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g129 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g22 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g36 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g38 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g39 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g4 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g41 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g42 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g49 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g5 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g50 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g53 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g54 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g55 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g56 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g57 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g58 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g59 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g6 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g60 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g61 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g64 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g65 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g66 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g67 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g68 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g69 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g70 0x00000000 0x1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g72 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g73 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g74 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g75 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g77 0x00000000 0x1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g78 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g79 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g8 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g80 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g81 0x00000000 0x1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g83 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g84 0x00000000 0x1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g85 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g86 0x00000000 0x2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g88 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g89 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g92 0x00000000 0x1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g93 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g94 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g96 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g98 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .data.g99 0x00000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-abort.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-abort.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-abort.o) - .text.abort 0x00000000 0xe c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-abort.o) - .debug_frame 0x00000000 0x28 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-abort.o) - .ARM.attributes - 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-abort.o) + .text 0x00000000 0x0 src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj + .data 0x00000000 0x0 src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj + .bss 0x00000000 0x0 src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-exit.o) .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-exit.o) .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-exit.o) @@ -1621,6 +56,11 @@ Discarded input sections .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-init.o) .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-init.o) .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-init.o) + .text.__libc_init_array + 0x00000000 0x48 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-init.o) + .debug_frame 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-init.o) + .ARM.attributes + 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-init.o) .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-memset.o) .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-memset.o) .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-memset.o) @@ -1628,193 +68,6 @@ Discarded input sections .debug_frame 0x00000000 0x20 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-memset.o) .ARM.attributes 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-memset.o) - .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) - .text._init_signal_r - 0x00000000 0x2a c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) - .text._signal_r - 0x00000000 0x32 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) - .text._raise_r - 0x00000000 0x54 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) - .text.__sigtramp_r - 0x00000000 0x46 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) - .text.raise 0x00000000 0x14 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) - .text.signal 0x00000000 0x14 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) - .text._init_signal - 0x00000000 0x10 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) - .text.__sigtramp - 0x00000000 0x14 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) - .debug_frame 0x00000000 0xe0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) - .ARM.attributes - 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) - .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) - .text._kill_r 0x00000000 0x24 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) - .text._getpid_r - 0x00000000 0x8 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) - .debug_frame 0x00000000 0x44 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) - .ARM.attributes - 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) - .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) - .text.sbrk_aligned - 0x00000000 0x44 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) - .text._malloc_r - 0x00000000 0xec c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) - .bss.__malloc_free_list - 0x00000000 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) - .bss.__malloc_sbrk_start - 0x00000000 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) - .debug_frame 0x00000000 0x50 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) - .ARM.attributes - 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) - .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-reent.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-reent.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-reent.o) - .text.cleanup_glue - 0x00000000 0x1a c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-reent.o) - .text._reclaim_reent - 0x00000000 0xcc c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-reent.o) - .bss.errno 0x00000000 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-reent.o) - .debug_frame 0x00000000 0x48 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-reent.o) - .ARM.attributes - 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-reent.o) - .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-sbrkr.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-sbrkr.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-sbrkr.o) - .text._sbrk_r 0x00000000 0x24 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-sbrkr.o) - .debug_frame 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-sbrkr.o) - .ARM.attributes - 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-sbrkr.o) - .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-mlock.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-mlock.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-mlock.o) - .text.__malloc_lock - 0x00000000 0x10 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-mlock.o) - .text.__malloc_unlock - 0x00000000 0x10 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-mlock.o) - .debug_frame 0x00000000 0x40 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-mlock.o) - .ARM.attributes - 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-mlock.o) - .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-freer.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-freer.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-freer.o) - .text._free_r 0x00000000 0x94 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-freer.o) - .debug_frame 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-freer.o) - .ARM.attributes - 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-freer.o) - .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .text.__retarget_lock_init - 0x00000000 0x2 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .text.__retarget_lock_init_recursive - 0x00000000 0x2 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .text.__retarget_lock_close - 0x00000000 0x2 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .text.__retarget_lock_close_recursive - 0x00000000 0x2 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .text.__retarget_lock_acquire - 0x00000000 0x2 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .text.__retarget_lock_acquire_recursive - 0x00000000 0x2 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .text.__retarget_lock_try_acquire - 0x00000000 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .text.__retarget_lock_try_acquire_recursive - 0x00000000 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .text.__retarget_lock_release - 0x00000000 0x2 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .text.__retarget_lock_release_recursive - 0x00000000 0x2 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .bss.__lock___arc4random_mutex - 0x00000000 0x1 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .bss.__lock___at_quick_exit_mutex - 0x00000000 0x1 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .bss.__lock___atexit_recursive_mutex - 0x00000000 0x1 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .bss.__lock___dd_hash_mutex - 0x00000000 0x1 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .bss.__lock___env_recursive_mutex - 0x00000000 0x1 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .bss.__lock___malloc_recursive_mutex - 0x00000000 0x1 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .bss.__lock___sfp_recursive_mutex - 0x00000000 0x1 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .bss.__lock___sinit_recursive_mutex - 0x00000000 0x1 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .bss.__lock___tz_mutex - 0x00000000 0x1 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .debug_frame 0x00000000 0xb0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .ARM.attributes - 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - .text 0x00000000 0x14 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_thumb1_case_shi.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_thumb1_case_shi.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_thumb1_case_shi.o) - .ARM.attributes - 0x00000000 0x1e c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_thumb1_case_shi.o) - .text 0x00000000 0x114 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_udivsi3.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_udivsi3.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_udivsi3.o) - .debug_frame 0x00000000 0x20 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_udivsi3.o) - .ARM.attributes - 0x00000000 0x1e c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_udivsi3.o) - .text 0x00000000 0x1d4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_divsi3.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_divsi3.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_divsi3.o) - .debug_frame 0x00000000 0x20 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_divsi3.o) - .ARM.attributes - 0x00000000 0x1e c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_divsi3.o) - .text 0x00000000 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_dvmd_tls.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_dvmd_tls.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_dvmd_tls.o) - .ARM.attributes - 0x00000000 0x1e c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_dvmd_tls.o) - .text 0x00000000 0x40 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(fixsfsi.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(fixsfsi.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(fixsfsi.o) - .debug_frame 0x00000000 0x20 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(fixsfsi.o) - .ARM.attributes - 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(fixsfsi.o) - .text 0x00000000 0x9c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(floatsisf.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(floatsisf.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(floatsisf.o) - .debug_frame 0x00000000 0x30 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(floatsisf.o) - .ARM.attributes - 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(floatsisf.o) - .text 0x00000000 0x3c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_clzsi2.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_clzsi2.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_clzsi2.o) - .ARM.attributes - 0x00000000 0x1e c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_clzsi2.o) - .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(getpid.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(getpid.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(getpid.o) - .stab 0x00000000 0x24 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(getpid.o) - .text._getpid 0x00000000 0x10 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(getpid.o) - .debug_frame 0x00000000 0x20 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(getpid.o) - .ARM.attributes - 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(getpid.o) - .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(kill.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(kill.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(kill.o) - .stab 0x00000000 0x18 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(kill.o) - 0x24 (size before relaxing) - .text._kill 0x00000000 0x10 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(kill.o) - .debug_frame 0x00000000 0x20 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(kill.o) - .ARM.attributes - 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(kill.o) - .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(sbrk.o) - .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(sbrk.o) - .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(sbrk.o) - .text._sbrk 0x00000000 0x1c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(sbrk.o) - .bss.heap_end.0 - 0x00000000 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(sbrk.o) - .debug_frame 0x00000000 0x20 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(sbrk.o) - .ARM.attributes - 0x00000000 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(sbrk.o) .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(_exit.o) .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(_exit.o) .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(_exit.o) @@ -1832,12 +85,15 @@ Discarded input sections .text 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtn.o .data 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtn.o .bss 0x00000000 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtn.o + .init 0x00000000 0x8 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtn.o + .fini 0x00000000 0x8 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtn.o + .ARM.attributes + 0x00000000 0x1e c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtn.o Memory Configuration Name Origin Length Attributes -RAM 0x20000000 0x00002000 xrw -FLASH 0x08000000 0x00008000 xr +PROGRAM 0x20000000 0x00001bd8 xrw *default* 0x00000000 0xffffffff Linker script and memory map @@ -1846,10 +102,7 @@ LOAD c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/ LOAD c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o LOAD c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o LOAD c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a -LOAD src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj -LOAD src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -LOAD src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj -LOAD src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj +LOAD src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj LOAD c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libstdc++_nano.a LOAD c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libm.a LOAD c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a @@ -1870,1430 +123,143 @@ LOAD c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../ END GROUP LOAD c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtend.o LOAD c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtn.o - 0x20002000 _estack = 0x20002000 - 0x00000200 _Min_Heap_Size = 0x200 - 0x00000400 _Min_Stack_Size = 0x400 -.isr_vector 0x08000000 0xb8 - 0x08000000 . = ALIGN (0x4) - *(.isr_vector) - .isr_vector 0x08000000 0xb8 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj - 0x08000000 g_pfnVectors - 0x080000b8 . = ALIGN (0x4) - -.text 0x080000b8 0xa24 - 0x080000b8 . = ALIGN (0x4) - *(.text) - .text 0x080000b8 0x48 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o +.text 0x20000000 0x1a + 0x20000000 _text = . + *(.entry*) + .entry 0x20000000 0x6 src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj + 0x20000000 entry *(.text*) - .text.SystemInit - 0x08000100 0x2 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - 0x08000100 SystemInit - *fill* 0x08000102 0x2 - .text.Reset_Handler - 0x08000104 0x50 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj - 0x08000104 Reset_Handler - .text.Default_Handler - 0x08000154 0x2 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj - 0x08000154 TIM1_CC_IRQHandler - 0x08000154 HardFault_Handler - 0x08000154 SysTick_Handler - 0x08000154 PendSV_Handler - 0x08000154 NMI_Handler - 0x08000154 I2C1_IRQHandler - 0x08000154 RTC_TAMP_IRQHandler - 0x08000154 SPI1_IRQHandler - 0x08000154 DMA1_Ch4_5_DMAMUX1_OVR_IRQHandler - 0x08000154 EXTI2_3_IRQHandler - 0x08000154 ADC1_IRQHandler - 0x08000154 I2C2_IRQHandler - 0x08000154 TIM17_IRQHandler - 0x08000154 TIM16_IRQHandler - 0x08000154 TIM3_IRQHandler - 0x08000154 EXTI4_15_IRQHandler - 0x08000154 RCC_IRQHandler - 0x08000154 DMA1_Channel1_IRQHandler - 0x08000154 Default_Handler - 0x08000154 TIM14_IRQHandler - 0x08000154 EXTI0_1_IRQHandler - 0x08000154 SPI2_IRQHandler - 0x08000154 SVC_Handler - 0x08000154 WWDG_IRQHandler - 0x08000154 DMA1_Channel2_3_IRQHandler - 0x08000154 USART2_IRQHandler - 0x08000154 FLASH_IRQHandler - 0x08000154 USART1_IRQHandler - 0x08000154 TIM1_BRK_UP_TRG_COM_IRQHandler - .text.__asm_nop - 0x08000156 0x4 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - 0x08000156 __asm_nop .text.startup.main - 0x0800015a 0xa src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - 0x0800015a main - .text.function_750 - 0x08000164 0x2c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x08000164 function_750 - .text.function_7e0 - 0x08000190 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x08000190 function_7e0 - .text.function_a50 - 0x080001a8 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x080001a8 function_a50 - .text.function_a90 - 0x080001c0 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x080001c0 function_a90 - .text.function_b8d0 - 0x080001d4 0x174 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x080001d4 function_b8d0 - .text.function_bf70 - 0x08000348 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x08000348 function_bf70 - .text.function_bfe4 - 0x08000360 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x08000360 function_bfe4 - .text.function_b05c - 0x08000374 0x60 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x08000374 function_b05c - .text.function_b810 - 0x080003d4 0x14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x080003d4 function_b810 - .text.function_c014 - 0x080003e8 0x58 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x080003e8 function_c014 - .text.function_bacc - 0x08000440 0x58 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x08000440 function_bacc - .text.function_c268 - 0x08000498 0x188 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x08000498 function_c268 - .text.function_ba6c - 0x08000620 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x08000620 function_ba6c - .text.function_b768 - 0x08000648 0x12 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x08000648 function_b768 - *fill* 0x0800065a 0x2 - .text.function_c36c - 0x0800065c 0x44 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x0800065c function_c36c - .text.function_c674 - 0x080006a0 0x4c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x080006a0 function_c674 - .text.function_7f4 - 0x080006ec 0x308 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x080006ec function_7f4 - .text.function_9dbc - 0x080009f4 0x18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x080009f4 function_9dbc - .text.function_af80 - 0x08000a0c 0x12 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x08000a0c function_af80 - *fill* 0x08000a1e 0x2 - .text.function_c6b8 - 0x08000a20 0x28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x08000a20 function_c6b8 - .text.function_c0 - 0x08000a48 0x2c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x08000a48 function_c0 - .text.entry_point - 0x08000a74 0x8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x08000a74 entry_point - .text.__libc_init_array - 0x08000a7c 0x48 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-init.o) - 0x08000a7c __libc_init_array - *(.glue_7) - .glue_7 0x08000ac4 0x0 linker stubs - *(.glue_7t) - .glue_7t 0x08000ac4 0x0 linker stubs - *(.eh_frame) - .eh_frame 0x08000ac4 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o - *(.init) - .init 0x08000ac4 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crti.o - 0x08000ac4 _init - .init 0x08000ac8 0x8 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtn.o - *(.fini) - .fini 0x08000ad0 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crti.o - 0x08000ad0 _fini - .fini 0x08000ad4 0x8 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtn.o - 0x08000adc . = ALIGN (0x4) - 0x08000adc _etext = . + 0x20000006 0x14 src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj + 0x20000006 main + 0x2000001a _etext = . -.vfp11_veneer 0x08000adc 0x0 - .vfp11_veneer 0x08000adc 0x0 linker stubs +.glue_7 0x2000001c 0x0 + .glue_7 0x2000001c 0x0 linker stubs -.v4_bx 0x08000adc 0x0 - .v4_bx 0x08000adc 0x0 linker stubs +.glue_7t 0x2000001c 0x0 + .glue_7t 0x2000001c 0x0 linker stubs -.iplt 0x08000adc 0x0 - .iplt 0x08000adc 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o +.vfp11_veneer 0x2000001c 0x0 + .vfp11_veneer 0x2000001c 0x0 linker stubs -.rodata 0x08000adc 0x8 - 0x08000adc . = ALIGN (0x4) - *(.rodata) +.v4_bx 0x2000001c 0x0 + .v4_bx 0x2000001c 0x0 linker stubs + +.init 0x2000001c 0x4 + .init 0x2000001c 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crti.o + 0x2000001c _init + +.fini 0x20000020 0x4 + .fini 0x20000020 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crti.o + 0x20000020 _fini + +.iplt 0x20000024 0x0 + .iplt 0x20000024 0x0 src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj + +.rel.dyn 0x20000024 0x0 + .rel.iplt 0x20000024 0x0 src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj + +.data 0x00000000 0x0 + 0x00000000 _data = . *(.rodata*) - .rodata.str1.1 - 0x08000adc 0x6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x08000ae4 . = ALIGN (0x4) - *fill* 0x08000ae2 0x2 - -.rel.dyn 0x08000ae4 0x0 - .rel.iplt 0x08000ae4 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o - -.ARM.extab - *(.ARM.extab* .gnu.linkonce.armextab.*) - -.ARM 0x08000ae4 0x0 - 0x08000ae4 __exidx_start = . - *(.ARM.exidx*) - 0x08000ae4 __exidx_end = . - -.preinit_array 0x08000ae4 0x0 - 0x08000ae4 PROVIDE (__preinit_array_start = .) - *(.preinit_array*) - 0x08000ae4 PROVIDE (__preinit_array_end = .) - -.init_array 0x08000ae4 0x4 - 0x08000ae4 PROVIDE (__init_array_start = .) - *(SORT_BY_NAME(.init_array.*)) - *(.init_array*) - .init_array 0x08000ae4 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o - 0x08000ae8 PROVIDE (__init_array_end = .) - -.fini_array 0x08000ae8 0x4 - [!provide] PROVIDE (__fini_array_start = .) - *(SORT_BY_NAME(.fini_array.*)) - *(.fini_array*) - .fini_array 0x08000ae8 0x4 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o - [!provide] PROVIDE (__fini_array_end = .) - 0x08000aec _sidata = LOADADDR (.data) - -.data 0x20000000 0x38 load address 0x08000aec - 0x20000000 . = ALIGN (0x4) - 0x20000000 _sdata = . - *(.data) *(.data*) - .data.g1 0x20000000 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000000 g1 - .data.g106 0x20000004 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000004 g106 - .data.g123 0x20000008 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000008 g123 - .data.g124 0x2000000c 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x2000000c g124 - .data.g15 0x20000010 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000010 g15 - .data.g25 0x20000014 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000014 g25 - .data.g44 0x20000018 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000018 g44 - .data.g62 0x2000001c 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x2000001c g62 - .data.g63 0x20000020 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000020 g63 - .data.g76 0x20000024 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000024 g76 - .data.g87 0x20000028 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000028 g87 - .data.g90 0x2000002c 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x2000002c g90 - .data.g91 0x20000030 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000030 g91 - .data.g97 0x20000034 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000034 g97 - 0x20000038 . = ALIGN (0x4) - 0x20000038 _edata = . + 0x00000000 _edata = . -.igot.plt 0x20000038 0x0 load address 0x08000b24 - .igot.plt 0x20000038 0x0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o - 0x20000038 . = ALIGN (0x4) +.igot.plt 0x20000024 0x0 + .igot.plt 0x20000024 0x0 src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj -.bss 0x20000038 0x7c load address 0x08000b24 - 0x20000038 _sbss = . - 0x20000038 __bss_start__ = _sbss - *(.bss) - .bss 0x20000038 0x1c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o +.bss 0x20000024 0x0 + 0x20000024 __bss_start__ = . + 0x20000024 _bss = . *(.bss*) - .bss.g102 0x20000054 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000054 g102 - .bss.g11 0x20000058 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000058 g11 - .bss.g111 0x2000005c 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x2000005c g111 - .bss.g12 0x20000060 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000060 g12 - .bss.g121 0x20000064 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000064 g121 - .bss.g126 0x20000068 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000068 g126 - .bss.g13 0x2000006c 0x1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x2000006c g13 - *fill* 0x2000006d 0x3 - .bss.g14 0x20000070 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000070 g14 - .bss.g16 0x20000074 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000074 g16 - .bss.g17 0x20000078 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000078 g17 - .bss.g19 0x2000007c 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x2000007c g19 - .bss.g2 0x20000080 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000080 g2 - .bss.g20 0x20000084 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000084 g20 - .bss.g21 0x20000088 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000088 g21 - .bss.g23 0x2000008c 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x2000008c g23 - .bss.g24 0x20000090 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000090 g24 - .bss.g26 0x20000094 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000094 g26 - .bss.g3 0x20000098 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x20000098 g3 - .bss.g45 0x2000009c 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x2000009c g45 - .bss.g7 0x200000a0 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x200000a0 g7 - .bss.g71 0x200000a4 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x200000a4 g71 - .bss.g82 0x200000a8 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x200000a8 g82 - .bss.g9 0x200000ac 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x200000ac g9 - .bss.g95 0x200000b0 0x4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x200000b0 g95 *(COMMON) - 0x200000b4 . = ALIGN (0x4) - 0x200000b4 _ebss = . - 0x200000b4 __bss_end__ = _ebss + 0x20000024 _ebss = . + 0x20000024 __bss_end__ = . -._user_heap_stack - 0x200000b4 0x604 load address 0x08000b24 - 0x200000b8 . = ALIGN (0x8) - *fill* 0x200000b4 0x4 - 0x200000b8 PROVIDE (end = .) - [!provide] PROVIDE (_end = .) - 0x200002b8 . = (. + _Min_Heap_Size) - *fill* 0x200000b8 0x200 - 0x200006b8 . = (. + _Min_Stack_Size) - *fill* 0x200002b8 0x400 - 0x200006b8 . = ALIGN (0x8) - -/DISCARD/ - libc.a(*) - libm.a(*) - libgcc.a(*) +.stack 0x20000024 0x0 + 0x20000024 _stack = . + *(.stack*) + 0x20000024 _estack = . +OUTPUT(src\ocl_loader\ocl_loader elf32-littlearm) +LOAD linker stubs .ARM.attributes 0x00000000 0x28 - *(.ARM.attributes) .ARM.attributes 0x00000000 0x1e c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crti.o .ARM.attributes - 0x0000001e 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o - .ARM.attributes - 0x0000004a 0x2c src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - .ARM.attributes - 0x00000076 0x22 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj - .ARM.attributes - 0x00000098 0x2c src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - .ARM.attributes - 0x000000c4 0x2c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .ARM.attributes - 0x000000f0 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-init.o) - .ARM.attributes - 0x0000011c 0x1e c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtn.o -OUTPUT(src\decompiled\decompiled elf32-littlearm) -LOAD linker stubs -LOAD c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc.a -LOAD c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libm.a -LOAD c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a - -.debug_info 0x00000000 0x1e1e6 - .debug_info 0x00000000 0x337 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - .debug_info 0x00000337 0x22 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj - .debug_info 0x00000359 0xe3 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - .debug_info 0x0000043c 0x1ddaa src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - -.debug_abbrev 0x00000000 0x633 - .debug_abbrev 0x00000000 0x131 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - .debug_abbrev 0x00000131 0x12 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj - .debug_abbrev 0x00000143 0x8f src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - .debug_abbrev 0x000001d2 0x461 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - -.debug_loc 0x00000000 0x1eb81 - .debug_loc 0x00000000 0xe0 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - .debug_loc 0x000000e0 0x1eaa1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - -.debug_aranges 0x00000000 0x11f0 - .debug_aranges - 0x00000000 0x28 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - .debug_aranges - 0x00000028 0x28 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj - .debug_aranges - 0x00000050 0x28 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - .debug_aranges - 0x00000078 0x1178 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - -.debug_ranges 0x00000000 0x26f8 - .debug_ranges 0x00000000 0x18 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - .debug_ranges 0x00000018 0x20 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj - .debug_ranges 0x00000038 0x18 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - .debug_ranges 0x00000050 0x26a8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - -.debug_line 0x00000000 0xe02c - .debug_line 0x00000000 0x297 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - .debug_line 0x00000297 0xb1 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj - .debug_line 0x00000348 0x93 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - .debug_line 0x000003db 0xdc51 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - -.debug_str 0x00000000 0x35ea - .debug_str 0x00000000 0x2c9 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - 0x30b (size before relaxing) - .debug_str 0x000002c9 0x5e src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj - 0x88 (size before relaxing) - .debug_str 0x00000327 0x129 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - 0x1d7 (size before relaxing) - .debug_str 0x00000450 0x319a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - 0x335a (size before relaxing) + 0x0000001e 0x2c src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj .comment 0x00000000 0x49 - .comment 0x00000000 0x49 src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj + .comment 0x00000000 0x49 src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj 0x4a (size before relaxing) - .comment 0x00000049 0x4a src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - .comment 0x00000049 0x4a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -.debug_frame 0x00000000 0x3a70 - .debug_frame 0x00000000 0x3c src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - .debug_frame 0x0000003c 0x38 src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - .debug_frame 0x00000074 0x39d0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - .debug_frame 0x00003a44 0x2c c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-init.o) +.debug_info 0x00000000 0x13f + .debug_info 0x00000000 0x13f src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj -.stabstr 0x00000000 0x76 - .stabstr 0x00000000 0x76 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(getpid.o) +.debug_abbrev 0x00000000 0xcd + .debug_abbrev 0x00000000 0xcd src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj + +.debug_loc 0x00000000 0x71 + .debug_loc 0x00000000 0x71 src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj + +.debug_aranges 0x00000000 0x28 + .debug_aranges + 0x00000000 0x28 src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj + +.debug_ranges 0x00000000 0x18 + .debug_ranges 0x00000000 0x18 src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj + +.debug_line 0x00000000 0xce + .debug_line 0x00000000 0xce src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj + +.debug_str 0x00000000 0x1a6 + .debug_str 0x00000000 0x1a6 src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj + 0x1ab (size before relaxing) + +.debug_frame 0x00000000 0x38 + .debug_frame 0x00000000 0x38 src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj Cross Reference Table Symbol File -ADC1_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -AHBPrescTable src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj -APBPrescTable src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj -DMA1_Ch4_5_DMAMUX1_OVR_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -DMA1_Channel1_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -DMA1_Channel2_3_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -Default_Handler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -EXTI0_1_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -EXTI2_3_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -EXTI4_15_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -FLASH_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -HardFault_Handler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -I2C1_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -I2C2_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -NMI_Handler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -PendSV_Handler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -RCC_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -RTC_TAMP_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -Reset_Handler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -SPI1_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -SPI2_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -SVC_Handler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -SysTick_Handler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -SystemCoreClock src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj -SystemCoreClockUpdate src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj -SystemInit src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj - src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -TIM14_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -TIM16_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -TIM17_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -TIM1_BRK_UP_TRG_COM_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -TIM1_CC_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -TIM3_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -USART1_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -USART2_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -WWDG_IRQHandler src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -__aeabi_f2iz c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(fixsfsi.o) - src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__aeabi_i2f c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(floatsisf.o) - src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__aeabi_idiv c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_divsi3.o) - src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj -__aeabi_idiv0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_dvmd_tls.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_divsi3.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_udivsi3.o) -__aeabi_idivmod c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_divsi3.o) -__aeabi_ldiv0 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_dvmd_tls.o) -__aeabi_uidiv c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_udivsi3.o) - src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/system_stm32g0xx.c.obj -__aeabi_uidivmod c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_udivsi3.o) -__asm_adr src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_bxns src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_cdp src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_cdpgt src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_cdplo src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_cdpne src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_cpsid src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_cpsie src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_dsb src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_ldc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_ldcne src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_mcrrvc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_mcrvc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_mrsgt src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_nop src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_rfedb src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_rfeia src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_sadd16ne src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_smlaldx src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_smmlar src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_stcgt src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_stcgt_1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_stcvc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_svceq src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_svchi src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_svclo src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_svcne src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_svcvc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_sxtb src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_sxth src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -__asm_vqadd_s8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj __bss_end__ c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o __bss_start__ c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o __call_exitprocs c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-exit.o) -__clzsi2 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_clzsi2.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(floatsisf.o) __deregister_frame_info c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o -__divsi3 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_divsi3.o) __dso_handle c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o -__gnu_thumb1_case_shi c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_thumb1_case_shi.o) - src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj __init_array_end c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-init.o) __init_array_start c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-init.o) __libc_fini_array c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o __libc_init_array c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-init.o) - src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o -__lock___arc4random_mutex c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) -__lock___at_quick_exit_mutex c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) -__lock___atexit_recursive_mutex c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) -__lock___dd_hash_mutex c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) -__lock___env_recursive_mutex c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) -__lock___malloc_recursive_mutex c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-mlock.o) -__lock___sfp_recursive_mutex c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) -__lock___sinit_recursive_mutex c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) -__lock___tz_mutex c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) -__malloc_free_list c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-freer.o) -__malloc_lock c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-mlock.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-freer.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) -__malloc_sbrk_start c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) -__malloc_unlock c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-mlock.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-freer.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) __preinit_array_end c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-init.o) __preinit_array_start c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-init.o) __register_frame_info c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crtbegin.o -__retarget_lock_acquire c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) -__retarget_lock_acquire_recursive c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-mlock.o) -__retarget_lock_close c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) -__retarget_lock_close_recursive c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) -__retarget_lock_init c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) -__retarget_lock_init_recursive c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) -__retarget_lock_release c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) -__retarget_lock_release_recursive c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-mlock.o) -__retarget_lock_try_acquire c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) -__retarget_lock_try_acquire_recursive c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-lock.o) __sf_fake_stderr c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-impure.o) __sf_fake_stdin c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-impure.o) __sf_fake_stdout c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-impure.o) -__sigtramp c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) -__sigtramp_r c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) __stack c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o -__udivsi3 c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp\libgcc.a(_udivsi3.o) -_ebss src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -_edata src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -_estack src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj _exit c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(_exit.o) c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-exit.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-abort.o) _fini c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crti.o -_free_r c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-freer.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-reent.o) -_getpid c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(getpid.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) -_getpid_r c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) _global_impure_ptr c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-impure.o) c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-exit.o) _impure_ptr c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-impure.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-reent.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) _init c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/thumb/v6-m/nofp/crti.o c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-init.o) -_init_signal c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) -_init_signal_r c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) -_kill c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(kill.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) -_kill_r c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) _mainCRTStartup c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o -_malloc_r c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) -_raise_r c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) -_reclaim_reent c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-reent.o) -_sbrk c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(sbrk.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-sbrkr.o) -_sbrk_r c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-sbrkr.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-nano-mallocr.o) -_sbss src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -_sdata src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -_sidata src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj -_signal_r c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) _stack_init c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o _start c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o -abort c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-abort.o) - src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj atexit c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o -cleanup_glue c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-reent.o) -end c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(sbrk.o) -entry_point src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj - src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj -errno c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-reent.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(kill.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libnosys.a(getpid.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-sbrkr.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signalr.o) +entry src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj exit c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-exit.o) c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o -function_100 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_102 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1030 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_104 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_106 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_108 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_108c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_10a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_10a0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_10c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_10dd868 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_10ddda0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_10ddde0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_10e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_110 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_111c280 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_112 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1128 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_114 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_116 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_117c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_118 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_11a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_11c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_11e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_120 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1223186 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_128 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1280 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_12a8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_12dc27c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1305104 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_139c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1414692 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1438 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_143be src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1478 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_14d8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_14d99cc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1514 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_154 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1558 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1598 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1599670 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_15b0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_15f0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1624 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_166 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_167c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_16e8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_178 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1804 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1810 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1830 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_18cc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_18d2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_18d672e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1928 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1978 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_199c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_19c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1a3b336 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1a40 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1a60 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1a74 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1aa src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1ab8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1ae src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1c0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1c65720 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1cd8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1cdf99a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1ce src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1d5c38 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1d7c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1dc156e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1de0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1e0c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1e3c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1e4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1e64 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1e90 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1eb8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1f00 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1f3c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1f5e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1f62 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1f66 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1f6a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1f6e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1f72 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1f78 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1f7cc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1fc8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_1fec src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_20001388 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2004 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_202ed3f6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2040 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2074 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2098ac src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_20a0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_20dc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2110 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2140 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_21aa src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2214 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2218 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_221c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2220 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2224 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_222e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2232 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2236 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_223a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_223e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2242 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2246 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_224a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_224e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2252 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2256 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_225a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_225e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2262 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2266 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2270 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2274 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_227a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_228c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_22be src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_22c2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_22c6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_22f8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2342 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_235a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_235e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2361a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2364 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_23648 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_236a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2370 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2376 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_237c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2382 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2388 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_238e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2394 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_239c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_239e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_23a37a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_23a6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_23b0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_23c1d6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_255c2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_255e2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2580 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2660c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2b24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2c9c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2cc0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2cca src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2cd0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2d38 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2d94 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2e50 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2e7c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2e86 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2e90 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2e94 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2e98 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2ea2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2eaa src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2eac src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2ec8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_2f58 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_301c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_31b4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_32478 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_328c4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_329c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_32c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_32c8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_32d2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_32dc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_32e6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_32ea src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_32ee src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_32f8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3314 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_33ac src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_348 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3578 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_35f8a6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_360100 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3604 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3620 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_362652 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_364d5a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3684 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3764 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_37d4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_381c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3b40 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3bf4a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3cf0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3d09a6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3dc8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3ec0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3eec src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3ef6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3f00 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3f04 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3f08 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3f12 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3f18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3f22 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3f3a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3f64 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_3ffc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_40dc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_418 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_425c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_42e8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_43dc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_446e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_4474 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_4478 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_447a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_4480 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_4488 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_448c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_448e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_4494 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_4498 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_449a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_44c4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_44df04 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_458c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_45d44 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_4759dc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_4908 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_4d48 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_508 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_50e4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_511c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_51c0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_524 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_52c8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_54c8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_5578 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_560 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_5678 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_56b0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_5710 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_5748 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_5808 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_588 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_58e4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_5924 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_5960 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_598c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_59d8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_5b28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_5b58 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_5c44 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_5cc0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_5de8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_5e8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_5f5c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_608 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_62a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_62b4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_650 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_66a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_6904 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_69d0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_6b88 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_6bc2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_6bcc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_6caa src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_6cb0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_6d10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_6eca src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_6ef4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_6f50 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_6f60 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_6ff8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7020 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7070 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_710 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_739c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7408 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_744c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_74d0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_750 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7504 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7588 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7690 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7714 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_774 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_77a8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_77bc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7820 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_782c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_78bc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7b0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7b74 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7bc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7c8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7cb0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7cc4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7ce0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7d4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7dac src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7e0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7ea0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7f24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7f4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_7fa8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_8204 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_82a8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_82f4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_830c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_8418 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_8478 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_84c8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_8594 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_859e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_85bc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_85da src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_864c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_870c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_874c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_87d0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_87ea src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_87f0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_87f6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_87fc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_8808 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_8920 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_8934 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_8af8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_8c6e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_8c8c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_8cb4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_8ccc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_8d08 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9440 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9532 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9540 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9558 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_956e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9590 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_95be src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_95c2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_95d2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_95de src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_960e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9610 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9616 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_961e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9622 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_962c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9634 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9644 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_964a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9650 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9660 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_966a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_968e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_96d0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_96e4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_96ec src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_96ee src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_96f0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_96f2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_96f4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_96f6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_96f8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_96fc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9706 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9710 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9728 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9730 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9748 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_974e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9756 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9ab4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9b30 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9b3c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9bf4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9c10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9c7b94 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9d7c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9dbc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9e08 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9e4c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9eb8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9ee8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9f14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9f7c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9f84 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9f8c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_9fbc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a020 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a050 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a06c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a07c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a088 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a098 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a1ac src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a278 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a29c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a2d0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a2f0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a31a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a34 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a348 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a360 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a37d3c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a4fc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a50 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a518 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a550 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a584 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a5d0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a5dc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a5f8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a600 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a61c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a63c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a64 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a67c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a710 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a71e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a72e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a73e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a74e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a77e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a794 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a7cc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a90 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a92c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a93540 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a9452e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a960 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_a9b8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_aa10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_aa48 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_aa78 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_aabc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_aad4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ab0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ab00 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ab10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ab28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ab40 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ab58 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_abd8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ac38 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ac4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ac98 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_acdc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_acf4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ad04 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ad64 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ad94 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ae4c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ae6c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_aedc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_af00 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_af60 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_af80 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_afa4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_afe0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_aff4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b02a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b05c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b0b8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b2a8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b2aa src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b2f8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b3f8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b510 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b550 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b590 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b5b4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b638 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b6b0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b70c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b768 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b810 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b844 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b8a8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b8d0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_b9b844 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ba6c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ba8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_baa4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_bacc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_bb0c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_bbc8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_be44 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_be70 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_bf04 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_bf4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_bf60d4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_bf70 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_bf98 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_bfb2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_bfca src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_bfe4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c000 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c014 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c08c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c0a0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c0b0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c0bc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c0cc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c0e8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c0f2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c0fc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c106 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c110 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c128 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c134 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c158 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c22c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c25c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c268 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c344 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c360 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c36c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c399 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c39a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c674 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c6b8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c6e8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c710 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c73e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c758 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c766 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c774 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c778 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c7c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_c8ec src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_cfd8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_cff8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d024 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d02e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d04 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d0ec src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d100 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d148 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d2ba src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d2e4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d316 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d330 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d340 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d344 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d50e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d54e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d578 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d5d6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d5e2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d654 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d69c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d6f0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d6f2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d784 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d7e0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d804 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d854 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d86e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d870 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d890 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d8b0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d8c0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d8d0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d904 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d920 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d93c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d944 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d954 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d970 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d9b0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d9c4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d9d2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d9d8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d9e4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d9f0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_d9fe src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_da src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_da16 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_da40 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_da56 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_da90 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_dae2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_daf0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_db32 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_db88 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_db9a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_dbda src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_dbde src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_dc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_dc2e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_dc8c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_dc94 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_dcfc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ddd0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_de src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_de2c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_de40 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_dea8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_df8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e060 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e0da src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e0e4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e100 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e1b6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e1c6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e1d6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e210 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e22a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e240 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e264 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e278 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e294 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e2a0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e2a8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e2b4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e2c0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e2cc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e2d4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e30c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e32c src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e354 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e378 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e398 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e3b8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e3dc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e3f8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e414 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e500 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e518 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e5de src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e94 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_e9d196 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ea src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ebc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ec src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ee src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ee4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_f0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_f2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_f4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_f6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_f64 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_f8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_fa src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_fc src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_fe src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_fe00e3ce src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_fe43c266 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_fe8b13b2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_fe9804c0 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_feead194 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ff30e4c2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ff3e529a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -function_ff43a262 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g1 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g10 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g100 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g101 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g102 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g103 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g104 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g105 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g106 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g107 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g108 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g109 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g11 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g110 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g111 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g112 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g113 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g114 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g115 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g116 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g117 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g118 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g119 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g12 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g120 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g121 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g122 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g123 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g124 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g125 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g126 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g127 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g128 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g129 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g13 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g130 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g14 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g15 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g16 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g17 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g18 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g19 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g2 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g20 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g21 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g22 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g23 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g24 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g25 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g26 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g27 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g28 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g29 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g3 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g30 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g31 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g32 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g33 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g34 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g35 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g36 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g37 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g38 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g39 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g40 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g41 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g42 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g43 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g44 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g45 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g46 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g47 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g48 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g49 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g5 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g50 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g51 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g52 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g53 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g54 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g55 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g56 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g57 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g58 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g59 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g6 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g60 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g61 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g62 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g63 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g64 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g65 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g66 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g67 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g68 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g69 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g7 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g70 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g71 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g72 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g73 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g74 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g75 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g76 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g77 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g78 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g79 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g8 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g80 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g81 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g82 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g83 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g84 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g85 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g86 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g87 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g88 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g89 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g9 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g90 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g91 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g92 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g93 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g94 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g95 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g96 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g97 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g98 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g99 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -g_pfnVectors src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj hardware_init_hook c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o -main src/decompiled/CMakeFiles/decompiled.dir/main.cpp.obj - src/decompiled/CMakeFiles/decompiled.dir/__/mcu_target_common/startup_stm32g030xx.s.obj +main src/ocl_loader/CMakeFiles/ocl_loader.dir/main.cpp.obj c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o memset c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-memset.o) c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o -raise c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) - c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-abort.o) -signal c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp\libc_nano.a(lib_a-signal.o) software_init_hook c:/progra~2/gnuarm~1/102021~1.10/bin/../lib/gcc/arm-none-eabi/10.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/crt0.o -unknown_1340494 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -unknown_37eeb4 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -unknown_4fd722 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -unknown_dc0480 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -unknown_fea3fa4a src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -unknown_ff37ff2e src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj -unknown_ff9fda84 src/decompiled/CMakeFiles/decompiled.dir/decompiled.c.obj diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 14d0f8f..3624c19 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1 +1,2 @@ -add_subdirectory(decompiled) \ No newline at end of file +add_subdirectory(decompiled) +add_subdirectory(ocl_loader) \ No newline at end of file diff --git a/src/ocl_loader/CMakeLists.txt b/src/ocl_loader/CMakeLists.txt new file mode 100644 index 0000000..9db5088 --- /dev/null +++ b/src/ocl_loader/CMakeLists.txt @@ -0,0 +1,62 @@ +set(NAME ocl_loader) +set(MCU_TARGET_FILES_DIR ../mcu_target_common) + + +add_executable(${NAME} + main.c +) + +target_link_libraries(${NAME} + mcu_drivers +) + +target_include_directories(${NAME} PUBLIC + ./ + Drivers/CMSIS/Device/ST/STM32G0xx/Include + Drivers/CMSIS/DSP/Include + Drivers/CMSIS/Include +) + +target_compile_definitions(${NAME} PRIVATE + ${STM32_DEFINES} + $<$:DEBUG_ENABLED> +) + +target_compile_options(${NAME} PRIVATE + -mthumb -mcpu=cortex-m0plus -mfpu=auto -mfloat-abi=soft -fno-exceptions + -msoft-float -Wall $<$:-Wno-register> -Wno-unknown-pragmas + -O${OPTI_FLAG} $<$:-fno-rtti> + $<$:--debug -DDEBUG> + -ffunction-sections -fdata-sections -gdwarf-3 + -nostartfiles -fno-strict-aliasing +) + +target_link_options(${NAME} PRIVATE + #-print-multi-lib + -T ${CMAKE_CURRENT_SOURCE_DIR}/ram.lds #${CMAKE_SOURCE_DIR}/ + -mcpu=cortex-m0plus + -mthumb + -mfpu=auto + -mfloat-abi=soft #lets go fpu + -specs=nosys.specs + -specs=nano.specs + -lc + -lm + -lnosys + -Wl,-Map=${PROJECT_NAME}.map,--cref + -Wl,--gc-sections + -Wl,--print-memory-usage + -Wstack-usage=128 + -Wno-register +) + +add_custom_command(TARGET ${NAME} + POST_BUILD + COMMAND arm-none-eabi-size ${NAME} +) +#convert to hex +add_custom_command(TARGET ${NAME} + POST_BUILD + COMMAND arm-none-eabi-objcopy -O ihex ${NAME} ${NAME}.hex + COMMAND arm-none-eabi-objcopy -O binary ${NAME} ${NAME}.bin +) \ No newline at end of file diff --git a/src/ocl_loader/main.c b/src/ocl_loader/main.c new file mode 100644 index 0000000..75c194d --- /dev/null +++ b/src/ocl_loader/main.c @@ -0,0 +1,189 @@ +#include "registers.hpp" +#include +#include "stm32l4x.h" + +static inline __attribute__((always_inline)) +void copy_buffer_u32(uint32_t *dst, uint32_t *src, int len) +{ + for (int i = 0; i < len; i++) + dst[i] = src[i]; +} + +/* this function is assumes that fifo_size is multiple of flash_word_size + * this condition is ensured by target_run_flash_async_algorithm + */ + +void write(volatile struct stm32l4_work_area *work_area, + uint8_t *fifo_end, + uint8_t *target_address, + uint32_t count) +{ + volatile uint32_t *flash_sr = (uint32_t *) work_area->params.flash_sr_addr; + volatile uint32_t *flash_cr = (uint32_t *) work_area->params.flash_cr_addr; + + /* optimization to avoid reading from memory each time */ + uint8_t *rp_cache = work_area->fifo.rp; + + /* fifo_start is used to wrap when we reach fifo_end */ + uint8_t *fifo_start = rp_cache; + + /* enable flash programming */ + *flash_cr = FLASH_PG; + + while (count) { + /* optimization to avoid reading from memory each time */ + uint8_t *wp_cache = work_area->fifo.wp; + if (wp_cache == 0) + break; /* aborted by target_run_flash_async_algorithm */ + + int32_t fifo_size = wp_cache - rp_cache; + if (fifo_size < 0) { + /* consider the linear fifo, we will wrap later */ + fifo_size = fifo_end - rp_cache; + } + + /* wait for at least a flash word */ + while (fifo_size >= work_area->params.flash_word_size) { + copy_buffer_u32((uint32_t *)target_address, + (uint32_t *)rp_cache, + work_area->params.flash_word_size / 4); + + /* update target_address and rp_cache */ + target_address += work_area->params.flash_word_size; + rp_cache += work_area->params.flash_word_size; + + /* wait for the busy flag */ + while (*flash_sr & work_area->params.flash_sr_bsy_mask) + ; + + if (*flash_sr & FLASH_ERROR) { + work_area->fifo.rp = 0; /* set rp to zero 0 on error */ + goto write_end; + } + + /* wrap if reach the fifo_end, and update rp in memory */ + if (rp_cache >= fifo_end) + rp_cache = fifo_start; + + /* flush the rp cache value, + * so target_run_flash_async_algorithm can fill the circular fifo */ + work_area->fifo.rp = rp_cache; + + /* update fifo_size and count */ + fifo_size -= work_area->params.flash_word_size; + count--; + } + } + +write_end: + /* disable flash programming */ + *flash_cr = 0; + + /* soft break the loader */ + __asm("bkpt 0"); +} + +/* by enabling this define 'DEBUG': + * the main() function can help help debugging the loader algo + * note: the application should be linked into RAM */ + +/* #define DEBUG */ + +#ifdef DEBUG +/* device selector: STM32L5 | STM32U5 | STM32WB | STM32WL | STM32WL_CPU2 | STM32G0Bx | ... */ +#define STM32U5 + +/* when using a secure device, and want to test the secure programming enable this define */ +/* #define SECURE */ + +#if defined(STM32U5) +# define FLASH_WORD_SIZE 16 +#else +# define FLASH_WORD_SIZE 8 +#endif + +#if defined(STM32WB) || defined(STM32WL) +# define FLASH_BASE 0x58004000 +#else +# define FLASH_BASE 0x40022000 +#endif + +#if defined(STM32G0Bx) +# define FLASH_BSY_MASK (FLASH_BSY | FLASH_BSY2) +#else +# define FLASH_BSY_MASK FLASH_BSY +#endif + +#if defined(STM32L5) || defined(STM32U5) +# ifdef SECURE +# define FLASH_KEYR_OFFSET 0x0c +# define FLASH_SR_OFFSET 0x24 +# define FLASH_CR_OFFSET 0x2c +# else +# define FLASH_KEYR_OFFSET 0x08 +# define FLASH_SR_OFFSET 0x20 +# define FLASH_CR_OFFSET 0x28 +# endif +#elif defined(STM32WL_CPU2) +# define FLASH_KEYR_OFFSET 0x08 +# define FLASH_SR_OFFSET 0x60 +# define FLASH_CR_OFFSET 0x64 +#else +# define FLASH_KEYR_OFFSET 0x08 +# define FLASH_SR_OFFSET 0x10 +# define FLASH_CR_OFFSET 0x14 +#endif + +#define FLASH_KEYR (uint32_t *)((FLASH_BASE) + (FLASH_KEYR_OFFSET)) +#define FLASH_SR (uint32_t *)((FLASH_BASE) + (FLASH_SR_OFFSET)) +#define FLASH_CR (uint32_t *)((FLASH_BASE) + (FLASH_CR_OFFSET)) + +int main() +{ + const uint32_t count = 2; + const uint32_t buf_size = count * FLASH_WORD_SIZE; + const uint32_t work_area_size = sizeof(struct stm32l4_work_area) + buf_size; + + uint8_t work_area_buf[work_area_size]; + struct stm32l4_work_area *workarea = (struct stm32l4_work_area *)work_area_buf; + + /* fill the workarea struct */ + workarea->params.flash_sr_addr = (uint32_t)(FLASH_SR); + workarea->params.flash_cr_addr = (uint32_t)(FLASH_CR); + workarea->params.flash_word_size = FLASH_WORD_SIZE; + workarea->params.flash_sr_bsy_mask = FLASH_BSY_MASK; + /* note: the workarea->stack is not used, in this configuration */ + + /* programming the existing memory raw content in workarea->fifo.buf */ + /* feel free to fill the memory with magical values ... */ + + workarea->fifo.wp = (uint8_t *)(&workarea->fifo.buf + buf_size); + workarea->fifo.rp = (uint8_t *)&workarea->fifo.buf; + + /* unlock the flash */ + *FLASH_KEYR = KEY1; + *FLASH_KEYR = KEY2; + + /* erase sector 0 */ + *FLASH_CR = FLASH_PER | FLASH_STRT; + while (*FLASH_SR & FLASH_BSY) + ; + + /* flash address, should be aligned to FLASH_WORD_SIZE */ + uint8_t *target_address = (uint8_t *) 0x8000000; + + write(workarea, + (uint8_t *)(workarea + work_area_size), + target_address, + count); + + while (1) + ; +} +#endif /* DEBUG */ + +__attribute__ ((section(".entry"))) void entry(void) +{ + main(); +} + diff --git a/src/ocl_loader/ocl.h b/src/ocl_loader/ocl.h new file mode 100644 index 0000000..e69de29 diff --git a/src/ocl_loader/ram.lds b/src/ocl_loader/ram.lds new file mode 100644 index 0000000..f4abb33 --- /dev/null +++ b/src/ocl_loader/ram.lds @@ -0,0 +1,44 @@ +ENTRY( entry ) + +/* System memory map */ +MEMORY +{ + /* Application is stored in and executes from SRAM */ + PROGRAM (RWX) : ORIGIN = 0x20000000, LENGTH = 0x1BD8 +} + +/* Section allocation in memory */ +SECTIONS +{ + .text : + { + _text = .; + *(.entry*) + *(.text*) + _etext = .; + } > PROGRAM + + .data : + { _data = .; + *(.rodata*) + *(.data*) + _edata = .; + } + + .bss : + { + __bss_start__ = .; + _bss = .; + *(.bss*) + *(COMMON) + _ebss = .; + __bss_end__ = .; + } > PROGRAM + + .stack : + { + _stack = .; + *(.stack*) + _estack = .; + } > PROGRAM +} diff --git a/src/ocl_loader/registers.hpp b/src/ocl_loader/registers.hpp new file mode 100644 index 0000000..0c12512 --- /dev/null +++ b/src/ocl_loader/registers.hpp @@ -0,0 +1,18 @@ +#pragma once + +struct TFlash +{ + unsigned int CFG; + unsigned int ADDR; + unsigned int WDATA; + unsigned int START; + unsigned int ST; + unsigned int LOCK; + unsigned int UNLOCK; + unsigned int MASK; + unsigned int ERASETIME; + unsigned int PROGTIME; +}; + +#define FLASH_BASAE 0x4006F000 +#define FLASH ((TFlash*)FLASH_BASAE) \ No newline at end of file diff --git a/src/ocl_loader/stm32l4x.h b/src/ocl_loader/stm32l4x.h new file mode 100644 index 0000000..acab383 --- /dev/null +++ b/src/ocl_loader/stm32l4x.h @@ -0,0 +1,152 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +/*************************************************************************** + * Copyright (C) 2015 by Uwe Bonnes * + * bon@elektron.ikp.physik.tu-darmstadt.de * + ***************************************************************************/ + +#ifndef OPENOCD_FLASH_NOR_STM32L4X +#define OPENOCD_FLASH_NOR_STM32L4X +#include + +/* IMPORTANT: this file is included by stm32l4x driver and flashloader, + * so please when changing this file, do not forget to check the flashloader */ + +/* FIXME: #include "helper/bits.h" cause build errors when compiling + * the flashloader, for now just redefine the needed 'BIT 'macro */ + +#ifndef BIT +#define BIT(nr) (1UL << (nr)) +#endif + +/* FLASH_CR register bits */ +#define FLASH_PG BIT(0) +#define FLASH_PER BIT(1) +#define FLASH_MER1 BIT(2) +#define FLASH_PAGE_SHIFT 3 +#define FLASH_BKER BIT(11) +#define FLASH_BKER_G0 BIT(13) +#define FLASH_MER2 BIT(15) +#define FLASH_STRT BIT(16) +#define FLASH_OPTSTRT BIT(17) +#define FLASH_EOPIE BIT(24) +#define FLASH_ERRIE BIT(25) +#define FLASH_OBL_LAUNCH BIT(27) +#define FLASH_OPTLOCK BIT(30) +#define FLASH_LOCK BIT(31) + +/* FLASH_SR register bits */ +#define FLASH_BSY BIT(16) +#define FLASH_BSY2 BIT(17) + +/* Fast programming not used => related errors not used*/ +#define FLASH_PGSERR BIT(7) /* Programming sequence error */ +#define FLASH_SIZERR BIT(6) /* Size error */ +#define FLASH_PGAERR BIT(5) /* Programming alignment error */ +#define FLASH_WRPERR BIT(4) /* Write protection error */ +#define FLASH_PROGERR BIT(3) /* Programming error */ +#define FLASH_OPERR BIT(1) /* Operation error */ +#define FLASH_EOP BIT(0) /* End of operation */ +#define FLASH_ERROR (FLASH_PGSERR | FLASH_SIZERR | FLASH_PGAERR | \ + FLASH_WRPERR | FLASH_PROGERR | FLASH_OPERR) + +/* register unlock keys */ +#define KEY1 0x45670123 +#define KEY2 0xCDEF89AB + +/* option register unlock key */ +#define OPTKEY1 0x08192A3B +#define OPTKEY2 0x4C5D6E7F + +/* FLASH_OPTR register bits */ +#define FLASH_RDP_MASK 0xFF +#define FLASH_G0_DUAL_BANK BIT(21) +#define FLASH_G4_DUAL_BANK BIT(22) +#define FLASH_L4_DUAL_BANK BIT(21) +#define FLASH_L4R_DBANK BIT(22) +#define FLASH_LRR_DB1M BIT(21) +#define FLASH_L5_DBANK BIT(22) +#define FLASH_L5_DB256 BIT(21) +#define FLASH_U5_DUALBANK BIT(21) +#define FLASH_TZEN BIT(31) + +/* FLASH secure block based bank 1/2 register offsets */ +#define FLASH_SECBB1(X) (0x80 + 4 * (X - 1)) +#define FLASH_SECBB2(X) (0xA0 + 4 * (X - 1)) + +#define FLASH_SECBB_SECURE 0xFFFFFFFF +#define FLASH_SECBB_NON_SECURE 0 + +/* IDCODE register possible addresses */ +#define DBGMCU_IDCODE_G0 0x40015800 +#define DBGMCU_IDCODE_L4_G4 0xE0042000 +#define DBGMCU_IDCODE_L5 0xE0044000 +#define UID64_DEVNUM 0x1FFF7580 +#define UID64_IDS 0x1FFF7584 +#define UID64_IDS_STM32WL 0x0080E115 + +/* Supported device IDs */ +#define DEVID_STM32L47_L48XX 0x415 +#define DEVID_STM32L43_L44XX 0x435 +#define DEVID_STM32C01XX 0x443 +#define DEVID_STM32C03XX 0x453 +#define DEVID_STM32G05_G06XX 0x456 +#define DEVID_STM32G07_G08XX 0x460 +#define DEVID_STM32L49_L4AXX 0x461 +#define DEVID_STM32L45_L46XX 0x462 +#define DEVID_STM32L41_L42XX 0x464 +#define DEVID_STM32G03_G04XX 0x466 +#define DEVID_STM32G0B_G0CXX 0x467 +#define DEVID_STM32G43_G44XX 0x468 +#define DEVID_STM32G47_G48XX 0x469 +#define DEVID_STM32L4R_L4SXX 0x470 +#define DEVID_STM32L4P_L4QXX 0x471 +#define DEVID_STM32L55_L56XX 0x472 +#define DEVID_STM32G49_G4AXX 0x479 +#define DEVID_STM32U57_U58XX 0x482 +#define DEVID_STM32WB1XX 0x494 +#define DEVID_STM32WB5XX 0x495 +#define DEVID_STM32WB3XX 0x496 +#define DEVID_STM32WLE_WL5XX 0x497 + +/* known Flash base addresses */ +#define STM32_FLASH_BANK_BASE 0x08000000 +#define STM32_FLASH_S_BANK_BASE 0x0C000000 + +/* offset between non-secure and secure flash registers */ +#define STM32L5_REGS_SEC_OFFSET 0x10000000 + +/* 100 bytes as loader stack should be large enough for the loader to operate */ +#define LDR_STACK_SIZE 100 + +struct stm32l4_work_area { + struct stm32l4_loader_params { + uint32_t flash_sr_addr; + uint32_t flash_cr_addr; + uint32_t flash_word_size; + uint32_t flash_sr_bsy_mask; + } params; + uint8_t stack[LDR_STACK_SIZE]; + struct flash_async_algorithm_circbuf { + /* note: stm32l4_work_area struct is shared between the loader + * and stm32l4x flash driver. + * + * '*wp' and '*rp' pointers' size is 4 bytes each since stm32l4x + * devices have 32-bit processors. + * however when used in openocd code, their size depends on the host + * if the host is 32-bit, then the size is 4 bytes each. + * if the host is 64-bit, then the size is 8 bytes each. + * to avoid this size difference, change their types depending on the + * usage (pointers for the loader, and 32-bit integers in openocd code). + */ +#ifdef OPENOCD_CONTRIB_LOADERS_FLASH_STM32_STM32L4X + uint8_t *wp; + uint8_t *rp; +#else + uint32_t wp; + uint32_t rp; +#endif /* OPENOCD_CONTRIB_LOADERS_FLASH_STM32_STM32L4X */ + } fifo; +}; + +#endif diff --git a/tools/dumps/Piotr — osobiste — skrót.lnk b/tools/dumps/Piotr — osobiste — skrót.lnk new file mode 100644 index 0000000000000000000000000000000000000000..937d41db73cdda2b0d3c03e73e4eab0cded37cc4 GIT binary patch literal 769 zcmeZaU|?VrVFHp23ClXa)g@ zLPiJ$Cv6z47~~z(VtN^kUD=&y2P^qLdMp1-je(Itjp6-1WD{W~!Auqbn&Ae-GC&M6 z6-4U-F$lNCceIkjmh~P{feQPzGcrK+Iea0i;2ops1(>!h(=R4L(zIK7R9DG2vdohUHrhzx($i z^aSra!A<2oJL+!BaubqY4D<*m1H*zqpmB!50l{w#_TF-4=yYHH2;^jad2!KrD12G(c7#6`Gek>4!+`B9*S;Kbf zCBd!N7!LT~l(^ss6qf@j0J&EJh|#?qgA^n&4CwI((#gPJ3B(}7H;U!DtnDrESnlDV nx5T!hM;0ia0aD-r#L7Y!{;unlb6><*(X@bn8Q8xdIS>E>2)+0xC000}] ;#set address in flash + write_memory 0x4006F008 32 $value ;#set data + write_memory 0x4006F010 32 {0x01} ;#set OPSTART=1 + while {1} { + set status [read_memory 0x4006F014 32 1] + if {($status & 0x4) != 0} { + break + } + } + uv_wait_busy +} + +proc uv_wait_busy {} { + while {1} { + set status [read_memory 0x4006F014 32 1] + if {($status & 0x2) == 0} { + break + } + } +} + +proc write_image {filename address} { + global _SECTOR_SIZE + + set fs [file size $filename] + set fd [open $filename "rb"] + + uv_clear_sectors [expr {2*($fs+$_SECTOR_SIZE-1)/$_SECTOR_SIZE}] + uv_flash_unlock + + set addr $address + while {![eof $fd]} { + set data [read $fd 4] + if {[string length $data] == 4} { + set b0 [scan [string index $data 0] %c] + set b1 [scan [string index $data 1] %c] + set b2 [scan [string index $data 2] %c] + set b3 [scan [string index $data 3] %c] + set i_data [expr {$b0 | $b1 << 8 | $b2 << 16 | $b3 << 24}] + + echo [format "Writing 0x%04x to address 0x%04x (%02d %%)" $i_data $addr [expr {(100*($addr+3)/$fs)}]] + uv_flash_write $addr $i_data + incr addr 4 + } + } + uv_flash_lock + + close $fd +} \ No newline at end of file diff --git a/tools/dumps/dump1.bin b/tools/dumps/dump1.bin new file mode 100644 index 0000000000000000000000000000000000000000..03c2dc246449c33d4772a486701845440322d6ec GIT binary patch literal 65536 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 U3J0!m;0gz>aNr6D{@gk6|7wZ5>Hq)$ literal 0 HcmV?d00001 diff --git a/tools/dumps/output.bin b/tools/dumps/output.bin new file mode 100644 index 0000000000000000000000000000000000000000..4707d31953284f246dd42f5c4fddc7f473f60e79 GIT binary patch literal 65536 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 U3J0!m;0gz>aNr6D{@gk6|7wZ5>Hq)$ literal 0 HcmV?d00001 diff --git a/tools/dumps/output_00000_10000.bin b/tools/dumps/output_00000_10000.bin new file mode 100644 index 0000000000000000000000000000000000000000..fc446b2940f0ad1770c74590724f693e56089286 GIT binary patch literal 65536 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 literal 0 HcmV?d00001 diff --git a/tools/dumps/test.bin b/tools/dumps/test.bin new file mode 100644 index 0000000000000000000000000000000000000000..ac7bcf56efce9451ee55e9f80c9a2ab4f1f4aa2e GIT binary patch literal 65536 zcmeI#ze|--7zgmz8&(db4h4bG&=e8edy4{zA|e8V=m!!+i;YD@2<4ztLxZ#l5eZEa zNJ2qS1SyCV{Q=R|644SN6hw=r(u?@w85-W<;e3Sax#w^_zR%|w?(HNUaGt1pW#j|4bPsKm&zB08qwYd6w<12n;>lO4Y^(?LLHoohB-1lqp#l)X;<2S!w zoS%KO<9^qJxqaVWJ)QZwwExME(S@;V%U937ZJd67`Fj8Cz}V#YyNA86KQ``+-aT;Z z_=gKGkA0qdwCDHFQ=NO?k9;{X)H*nP`%|mcI@E5q+wH^6Bh6N8V!qkl_+RY^5FkL{ ze+8ze2M1UGW~L~LM$xhMy}V`R{mJHyo^2~@bLF*bdr@?)ZvOrBjuge(S9wu%-&+{o z-P+mN*Djhpt9O;3u@WFafB*pk`3R)u5BWbO6YpI9kJmF#On?A^s(}2T&uper0t5&U zAW)Y;b-pO~@_#82f0h5^_fQ1{2oR9}>zahzOMn0Y0tE6ANKI7oe@Z6ax%?lmXP%e< z0RmM4`9Gi8Or-<}5FkLHE`jQNQSRmcQX>8;|Htp43J4G&Aph4j3AvX50RjXFJq5V7v*05FD2ry@_+mus(=6i0`h-dlaPA}5FkK+ zKt2MgiAw%Y$;3OC|Ks({6B8gnpei8$=QEqBlmGz&1PIh6P@ONzz5HKF#9!tA_&rns z0RjZ%|GFk2_YxpLfB=Df1X2@~{GXDEcP{_O>zOAeK!8A1K>p8XHd8490t5&Us7v54 DfEuJr literal 0 HcmV?d00001