diff --git a/ZDBMS/BMS_CC/.settings/language.settings.xml b/ZDBMS/BMS_CC/.settings/language.settings.xml
index d15ddd3..5df2bf4 100644
--- a/ZDBMS/BMS_CC/.settings/language.settings.xml
+++ b/ZDBMS/BMS_CC/.settings/language.settings.xml
@@ -5,7 +5,7 @@
-
+
diff --git a/ZDBMS/BMS_CC/User/main.c b/ZDBMS/BMS_CC/User/main.c
index 0009698..1778e3b 100644
--- a/ZDBMS/BMS_CC/User/main.c
+++ b/ZDBMS/BMS_CC/User/main.c
@@ -19,6 +19,8 @@
*/
#include "debug.h"
+#include "../init/inc/init.h"
+#include "../app/inc/app.h"
/* Global typedef */
@@ -33,18 +35,24 @@
*
* @return none
*/
+
int main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
SystemCoreClockUpdate();
Delay_Init();
USART_Printf_Init(115200);
+
+ all_hardWare_init();
printf("SystemClk:%d\r\n", SystemCoreClock);
printf( "ChipID:%08x\r\n", DBGMCU_GetCHIPID() );
+ uint8_t i = 1;
while(1)
{
+
Delay_Ms(1000);
+ GPIO_WriteBit(GPIOC, GPIO_Pin_13, (i==0) ? (i=Bit_SET):(i=Bit_RESET)); //翻转GPIO
printf("This is printf example cc\r\n");
}
}
diff --git a/ZDBMS/BMS_CC/User/system_ch32l103.c b/ZDBMS/BMS_CC/User/system_ch32l103.c
index 73ec2c8..8cd8f7e 100644
--- a/ZDBMS/BMS_CC/User/system_ch32l103.c
+++ b/ZDBMS/BMS_CC/User/system_ch32l103.c
@@ -16,7 +16,7 @@
* reset the HSI is used as SYSCLK source).
* If none of the define below is enabled, the HSI is used as System clock source.
*/
-//#define SYSCLK_FREQ_HSE HSE_VALUE
+#define SYSCLK_FREQ_HSE HSE_VALUE
//#define SYSCLK_FREQ_48MHz_HSE 48000000
//#define SYSCLK_FREQ_56MHz_HSE 56000000
//#define SYSCLK_FREQ_72MHz_HSE 72000000
@@ -25,7 +25,7 @@
//#define SYSCLK_FREQ_48MHz_HSI 48000000
//#define SYSCLK_FREQ_56MHz_HSI 56000000
//#define SYSCLK_FREQ_72MHz_HSI 72000000
-#define SYSCLK_FREQ_96MHz_HSI 96000000
+//#define SYSCLK_FREQ_96MHz_HSI 96000000
//#define SYSCLK_FREQ_HSI_LP HSI_LP_VALUE /* Baud rate support less than 62.5Kbps when using UART */
/* Clock Definitions */
diff --git a/ZDBMS/BMS_CC/app/inc/app.h b/ZDBMS/BMS_CC/app/inc/app.h
new file mode 100644
index 0000000..13afec5
--- /dev/null
+++ b/ZDBMS/BMS_CC/app/inc/app.h
@@ -0,0 +1,24 @@
+/*
+ * app.h
+ *
+ * Created on: 2025年2月24日
+ * Author: Cerlink
+ */
+
+#ifndef APP_INC_APP_H_
+#define APP_INC_APP_H_
+
+#include "ch32l103_conf.h"
+
+#include "../../app/inc/timeIT.h"
+
+
+/*
+ * 定时器相关
+ */
+extern volatile uint8_t g_timer1SFlag; //1S定时标志
+extern volatile uint8_t g_timer50MsFlag; //20Ms定时标志
+
+
+
+#endif /* APP_INC_APP_H_ */
diff --git a/ZDBMS/BMS_CC/app/inc/timeIT.h b/ZDBMS/BMS_CC/app/inc/timeIT.h
new file mode 100644
index 0000000..90e6982
--- /dev/null
+++ b/ZDBMS/BMS_CC/app/inc/timeIT.h
@@ -0,0 +1,14 @@
+/*
+ * timeIT.h
+ *
+ * Created on: 2025年2月25日
+ * Author: Cerlink
+ */
+
+#ifndef APP_INC_TIMEIT_H_
+#define APP_INC_TIMEIT_H_
+
+#include "ch32l103_conf.h"
+
+
+#endif /* APP_INC_TIMEIT_H_ */
diff --git a/ZDBMS/BMS_CC/app/src/timeIT.c b/ZDBMS/BMS_CC/app/src/timeIT.c
new file mode 100644
index 0000000..5c14b0a
--- /dev/null
+++ b/ZDBMS/BMS_CC/app/src/timeIT.c
@@ -0,0 +1,37 @@
+/*
+ * timeIT.c
+ *
+ * Created on: 2025年2月25日
+ * Author: Cerlink
+ */
+
+#include "../../app/inc/timeIT.h"
+
+//定时器2
+void TIM2_IRQHandler(void) __attribute__((interrupt("WCH-Interrupt-fast")));
+
+uint8_t Ms_Times_50 = 0;//50Ms的5Ms次数
+uint8_t S_Times_1 = 0;//1S的5Ms次数
+volatile uint8_t g_timer50MsFlag = 0;
+volatile uint8_t g_timer1SFlag = 0;
+//定时器中断
+void TIM2_IRQHandler(void)
+{
+ if(TIM_GetITStatus(TIM2, TIM_IT_Update) != RESET) //检查TIM2中断是否发生。
+ {
+ Ms_Times_50++;
+ S_Times_1++;
+ if(Ms_Times_50 >= 10)
+ {
+ Ms_Times_50 = 0;
+ g_timer50MsFlag = 1;
+ }
+ if(S_Times_1 >= 200)
+ {
+ S_Times_1 = 0;
+ g_timer1SFlag = 1;
+ }
+
+ TIM_ClearITPendingBit(TIM2,TIM_IT_Update); //清除TIM2的中断挂起位。
+ }
+}
diff --git a/ZDBMS/BMS_CC/init/inc/gpio.h b/ZDBMS/BMS_CC/init/inc/gpio.h
new file mode 100644
index 0000000..d7438d1
--- /dev/null
+++ b/ZDBMS/BMS_CC/init/inc/gpio.h
@@ -0,0 +1,8 @@
+#ifndef __GPIO_H
+#define __GPIO_H
+
+#include "ch32l103_conf.h"
+
+void all_gpio_Init(void);
+
+#endif //__GPIO_H
diff --git a/ZDBMS/BMS_CC/init/inc/init.h b/ZDBMS/BMS_CC/init/inc/init.h
new file mode 100644
index 0000000..c7b3900
--- /dev/null
+++ b/ZDBMS/BMS_CC/init/inc/init.h
@@ -0,0 +1,20 @@
+/*
+ * init.h
+ *
+ * Created on: 2025年2月24日
+ * Author: Cerlink
+ */
+
+#ifndef INIT_INC_INIT_H_
+#define INIT_INC_INIT_H_
+
+#include "ch32l103_conf.h"
+
+#include "../init/inc/gpio.h"
+#include "../init/inc/tim.h"
+
+void all_hardWare_init(void);
+
+
+
+#endif /* INIT_INC_INIT_H_ */
diff --git a/ZDBMS/BMS_CC/init/inc/tim.h b/ZDBMS/BMS_CC/init/inc/tim.h
new file mode 100644
index 0000000..e2fd6d0
--- /dev/null
+++ b/ZDBMS/BMS_CC/init/inc/tim.h
@@ -0,0 +1,17 @@
+/*
+ * tim.h
+ *
+ * Created on: 2025年2月24日
+ * Author: Cerlink
+ */
+
+#ifndef INIT_INC_TIM_H_
+#define INIT_INC_TIM_H_
+
+#include "ch32l103_conf.h"
+
+void all_tim_Init(void);
+
+
+
+#endif /* INIT_INC_TIM_H_ */
diff --git a/ZDBMS/BMS_CC/init/src/gpio.c b/ZDBMS/BMS_CC/init/src/gpio.c
new file mode 100644
index 0000000..ea3e43c
--- /dev/null
+++ b/ZDBMS/BMS_CC/init/src/gpio.c
@@ -0,0 +1,26 @@
+#include "../../init/inc/gpio.h"
+
+/*
+ * LED初始化
+ */
+static void LED_Init(void)
+{
+ GPIO_InitTypeDef GPIO_InitStructure; //定义一个GPIO_InitTypeDef类型的结构体
+
+ RCC_PB2PeriphClockCmd(RCC_PB2Periph_GPIOC, ENABLE); //使能与LED相关的GPIO端口时钟
+
+ GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13; //配置GPIO引脚
+ GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //设置GPIO模式为推挽输出
+ GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //设置GPIO口输出速度
+ GPIO_Init(GPIOC, &GPIO_InitStructure); //调用库函数,初始化GPIOC
+
+ GPIO_SetBits(GPIOC,GPIO_Pin_13); //设置引脚输出高电平
+}
+
+/*
+ * 初始化所有GPIO
+ */
+void all_gpio_Init(void)
+{
+ LED_Init();
+}
diff --git a/ZDBMS/BMS_CC/init/src/init.c b/ZDBMS/BMS_CC/init/src/init.c
new file mode 100644
index 0000000..dab339c
--- /dev/null
+++ b/ZDBMS/BMS_CC/init/src/init.c
@@ -0,0 +1,14 @@
+/*
+ * init.c
+ *
+ * Created on: 2025年2月24日
+ * Author: Cerlink
+ */
+
+#include "../../init/inc/init.h"
+
+void all_hardWare_init(void)
+{
+ all_gpio_Init();
+ all_tim_Init();
+}
diff --git a/ZDBMS/BMS_CC/init/src/tim.c b/ZDBMS/BMS_CC/init/src/tim.c
new file mode 100644
index 0000000..bb32f0c
--- /dev/null
+++ b/ZDBMS/BMS_CC/init/src/tim.c
@@ -0,0 +1,49 @@
+/*
+ * tim.c
+ *
+ * Created on: 2025年2月24日
+ * Author: Cerlink
+ */
+
+#include "../../init/inc/tim.h"
+
+
+/*
+ * 初始化时钟2,作为定时基准使用
+ */
+static void TIM2_Int_Init(u16 arr,u16 psc)
+{
+ TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
+ NVIC_InitTypeDef NVIC_InitStructure;
+
+ RCC_PB1PeriphClockCmd(RCC_PB1Periph_TIM2, ENABLE); //使能TIM1时钟
+
+ TIM_TimeBaseStructure.TIM_Period = arr; //指定下次更新事件时要加载到活动自动重新加载寄存器中的周期值。
+ TIM_TimeBaseStructure.TIM_Prescaler = psc; //指定用于划分TIM时钟的预分频器值。
+ TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; //时钟分频因子
+ TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; //TIM计数模式,向上计数模式
+ TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure); //根据指定的参数初始化TIMx的时间基数单位
+
+ TIM_ITConfig(TIM2,TIM_IT_Update,ENABLE ); //使能TIM2中断,允许更新中断
+
+ //初始化TIM NVIC,设置中断优先级分组
+ NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQn; //TIM2中断
+ NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; //设置抢占优先级0
+ NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3; //设置响应优先级3
+ NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //使能通道1中断
+ NVIC_Init(&NVIC_InitStructure); //初始化NVIC
+
+ TIM_Cmd(TIM2, ENABLE); //TIM2使能
+}
+
+
+/*
+ * 初始化所有时钟
+ */
+void all_tim_Init(void)
+{
+ TIM2_Int_Init(4999, 7);//5Ms一个中断
+}
+
+
+
diff --git a/ZDBMS/BMS_CC/obj/BMS_CC.elf b/ZDBMS/BMS_CC/obj/BMS_CC.elf
index 8edf5b7..1a153ab 100644
Binary files a/ZDBMS/BMS_CC/obj/BMS_CC.elf and b/ZDBMS/BMS_CC/obj/BMS_CC.elf differ
diff --git a/ZDBMS/BMS_CC/obj/BMS_CC.hex b/ZDBMS/BMS_CC/obj/BMS_CC.hex
index 77804f0..5e6f513 100644
--- a/ZDBMS/BMS_CC/obj/BMS_CC.hex
+++ b/ZDBMS/BMS_CC/obj/BMS_CC.hex
@@ -1,22 +1,22 @@
-:040000006F00C0408D
-:100004000000000000000000480200004A02000056
-:10001400000000000A0400000000000000000000CE
-:100024000A0400000A0400000000000000000000B0
-:100034000A040000000000000A04000000000000A0
-:100044000A0400000A0400000A0400000A04000074
-:100054000A0400000A0400000A0400000A04000064
-:100064000A0400000A0400000A0400000A04000054
-:100074000A0400000A0400000A0400000A04000044
-:100084000A0400000A0400000A0400000A04000034
-:100094000A0400000A0400000A0400000A04000024
-:1000A4000A0400000A0400000A0400000A04000014
-:1000B4000A0400000A0400000A0400000A04000004
-:1000C4000A0400000A0400000A0400000A040000F4
-:1000D4000A0400000A0400000A0400000A040000E4
-:1000E4000A0400000A0400000A0400000A040000D4
-:1000F4000A0400000A0400000A0400000A040000C4
-:100104000A0400000A040000000000000A040000C1
-:100114000A040000000000000000000000000000CD
+:040000006F008052BB
+:100004000000000000000000300300003203000084
+:1000140000000000260500000000000000000000B1
+:100024002605000026050000000000000000000076
+:100034002605000000000000260500000000000066
+:100044002605000026050000260500002605000000
+:1000540026050000260500002605000026050000F0
+:1000640026050000260500002605000026050000E0
+:1000740026050000260500002605000026050000D0
+:1000840026050000260500002605000026050000C0
+:1000940026050000260500002605000026050000B0
+:1000A40026050000260500002605000026050000A0
+:1000B400D4020000260500002605000026050000E5
+:1000C4002605000026050000260500002605000080
+:1000D4002605000026050000260500002605000070
+:1000E4002605000026050000260500002605000060
+:1000F4002605000026050000260500002605000050
+:10010400260500002605000000000000260500006A
+:1001140026050000000000000000000000000000B0
:1001240000000000000000000000000000000000CB
:0C013400000000000000000000000000BF
:10014000397101436EC619A0397141536AC866CA34
@@ -35,454 +35,492 @@
:10021000B7002300B700828093F5F50F9396850011
:10022000D58D93960501D58D61B7939627009702DA
:10023000000096968682E78086FA9680C1171D8F09
-:100240003E96E374C3F8A5B701A0B707EFBE37E742
-:1002500000E0938707083CC701A0EFF27FF1054556
-:10026000DD231122EF00E07B716513050520EF000F
-:10027000B000B707002083A5070837250000130545
-:1002800005CEEF00900A3124AA853725000013051A
-:1002900005CFEF009009372400001305803EEF00E2
-:1002A000407A130504D0EF009019C5BFEFF25FEC60
-:1002B000371402401C403707FF0893E717001CC0A3
-:1002C0005C40F98F5CC01C403707F7FE6D17F98F53
-:1002D0001CC01C403707FCFF7D17F98F1CC05C4019
-:1002E000370701FF7D17F98F5CC0B7079F001CC45B
-:1002F000512EB7270240094798C33747024083274A
-:10030000078093E707012320F7805C403707C1FF90
-:100310007D175CC05C405CC05C4093E707405CC0FC
-:100320005C40F98F5CC05C4037072800D98F5CC007
-:100330001C4037070001D98F1CC0B71702409843F3
-:1003400093166700E3DD06FED843B7160240719BA3
-:10035000D8C3D84313672700D8C32147DC42B18BE9
-:10036000E39EE7FE05BDB7160240DC4237070020DA
-:100370001146B18B13070708638FC70221466381BB
-:10038000C70495EB9C42918B9DC7B7470F0093879D
-:1003900007241CC3B7170240DC43918393F6F70090
-:1003A000B707002093870700B69794231C43B3D761
-:1003B000D7001CC38280B7177A0093870720D1BF6C
-:1003C000DC42D4424166C983BD8BF18E8907454624
-:1003D0006393C700C94781EEB746024083A60680F3
-:1003E000C18A89CEB7167A009386062021A8B7164F
-:1003F0000240D4421396E600E35606FEB7163D00CF
-:1004000093860690B387D70269B701A097010020B1
-:1004100093814147175100201301C1BE17250000E9
-:100420001305C599970500209385C5BD1386818165
-:1004300063FAC5008322050023A05500110591052C
-:10044000E3EAC5FE13858181938501846377B50056
-:10045000232005001105E36DB5FEFD42739002BC3B
-:100460008D4273904280930280087390023097020D
-:100470000000938262B993E2320073905230EFF041
-:10048000FFE297020000938282DD739012347300C2
-:10049000203003A5C18182809C4513F7070113F822
-:1004A000F70001C7D8413368E8008E2113F7F50F34
-:1004B00039C318418146854E3D4F930F8002930208
-:1004C0008004214E3396DE00B3F8C5006311160395
-:1004D0009398260033131F011343F3FF3377E30090
-:1004E000B318180133E7E800639FF70550C9850684
-:1004F000E39AC6FD18C11307F00F6375B7045441A2
-:100500002146854E3D4F930F800293028004414E59
-:10051000B398CE0033F715016392E8021317260053
-:1005200001173313EF001343F3FFB376D3003317F0
-:10053000E800D98E639DF701232A15010506E3190A
-:10054000C6FD54C18280E39457FA10C94DB7E397B2
-:1005500057FE23281501DDB7370700C0B377E50044
-:100560006395E708370701405C439356B501584F40
-:100570009D8A9DE6F99BB70600FFFD16758F89C918
-:1005800093160501C182D58FB706FF01758D498F7E
-:10059000B7060007D58FB7060140DCC2D8CE8280EF
-:1005A00005466396C600F59BB70680FFF9B7094676
-:1005B0006396C600ED9BB706E8FFC1B70D4663968C
-:1005C000C600DD9BB706FCFF4DBF11466397C60012
-:1005D00093F7F7F3B706C0FF4DB71546E391C6FA98
-:1005E00093F7F7CFB706E0FF49BF370700406391A5
-:1005F000E702B7070140D84F4205B367A70089E576
-:100600001345F5FFB377E500370701405CCF8280E3
-:10061000A9E337080140B707300003264800131745
-:100620000501B376F50041836396F602B70600F93B
-:10063000FD16B377D60003264800F18E2322D8009A
-:1006400091C5558112053315A700C98F37070140A1
-:100650005CC382809317B50063D0070293570501EE
-:1006600093F6F7008D47B397D70093C7F7FFF18F45
-:10067000B7060007D58FE9B7935755019207B3170F
-:10068000F700E5B7EFF2DFAE37F4FF1F0327447240
-:100690003706003E4111931797019346F7FFF18FFC
-:1006A000060737063E00718FD98F37060001139772
-:1006B0009600718FD98FBD824167F98E02C202C444
-:1006C00002C6D58F23A0F182035784728545239CEF
-:1006D000E180032704721305D00323A2E1820327DC
-:1006E000447023AEE180035704732394E182152CF8
-:1006F0008327447037073A101307077093F7F7F012
-:100700006383E710636AF700370732101307077037
-:10071000638FE7064101BDBC37073B101307077025
-:10072000638BE70837073D1013070770E394E7FE74
-:1007300085452165153537140140E1779304800420
-:100740004C00130504807C8226C6B93385679387E5
-:1007500087334C00130504C07C8226C6353B914785
-:100760007C824C0093078002130504C03EC62D33E3
-:10077000F9774C00371501407C8226C6313B8D4706
-:100780007C8226C64C0013050440393361B7E177FB
-:100790003715014093C707C0130480044C001305AC
-:1007A00005C07C8222C6CD3989677C8222C64C0076
-:1007B00037150140D9BF85452165793B3714014084
-:1007C000E177930480044C00130504807C8226C6E4
-:1007D000E131930700214C00130504C07C8226C63A
-:1007E000653991477C824C0093078002130504C051
-:1007F0003EC65D31F9774C00371501407C8226C634
-:1008000061398947B5BFB7140140E1779387077015
-:10081000130480044C00138504807C8222C6AD3909
-:10082000930790E34C00138504C07C8222C6AD314F
-:1008300091477C824C0093078002138504C03EC61A
-:10084000A139F9779DB723A6A1828280371702408C
-:100850005C439146B18B638CD706A146638ED70665
-:10086000BDE71C43918BA5C7B7470F0093870724AB
-:100870001CC1371602405C423707002013070701EE
-:100880009183BD8BBA9794231C41B3D7D7005CC129
-:100890005442A1829D8ABA969422B3D6D70014C539
-:1008A0005442AD829D8A36971423B3D6D70054C5DF
-:1008B0005842634C07005C42B98313F737009387B3
-:1008C0004180BA979C23B3D7F6021CC98280B71720
-:1008D0007A009387072069BF5C435843C166C98388
-:1008E000BD8B758F8907C5466393D700C94701EF54
-:1008F0003747024003270780418B09CF37177A001B
-:100900001307072021A83717024058439316E70022
-:10091000E3D606FE37173D0013070790B387E702BB
-:1009200081BF99C5371702401C4F5D8D08CF82806B
-:10093000B7170240984F1345F5FF798D88CF828015
-:10094000EFF21F831629F577FD17F58FF621DA25CB
-:100950007971D58F1EA95625FD779387379FF58F1F
-:10096000D6212A842EC6D58F9625D58FB625D58F2C
-:100970005EA55E29C207C18393F7F7CFD98F5EA921
-:100980006808E935B747014093870780B245631A85
-:10099000F404A25756246547B387E702C206C1860E
-:1009A000984163D20604060752244206B3D7E702F1
-:1009B000130740064186B3D6E702B3F7E702920673
-:1009C000635506028E0793872703B3D7E70213F711
-:1009D0007700B367D700C207C1831EA445616FF0DB
-:1009E0006FFB925745BF0A07C1B79207938727034A
-:1009F000B3D7E702BD8BD58FF9BF91C55E250967D7
-:100A0000D98F5EA582805A25F977FD17F98FD5BF5A
-:100A100093F5F51F4EA182800A216D8D3335A0001C
-:100A20008280B707002083A707080967130707F428
-:100A3000B3D7E702C207C1832399F1822398F182D9
-:100A40008280B7F700E0D8438146799BD8C303D7AB
-:100A500001833306A70290CBD4CB984313670701D9
-:100A600098C398431367170298C3D843058B75DF63
-:100A70009843799B98C38280EFF28FEF2A841165A7
-:100A8000011185451105713D930700207C823715C2
-:100A900001408D473EC44C00E147130505803EC62A
-:100AA000E53A22C837440140B70708000C0813058F
-:100AB00004803ECC02CA231E01005935854513052A
-:100AC0000480253F05616FF0EFECEFF2CFE8B7440B
-:100AD0000140AE8932890144938404806345240136
-:100AE0004A856FF08FEA930500042685353765DD6A
-:100AF000B38789008385070026850504C205C18167
-:100B0000013FE9BF138781801C43938601843E9592
-:100B1000636BD500B75600209386068063E5A60078
-:100B200008C33E858280FD57EDBF39713EDA2ED273
-:100B300032D436D63AD842DC46DE9387C18022CC06
-:100B4000804326CA06CEAA8409C41C4C99E3228598
-:100B5000ED290C4454102686228536C6EF0070120B
-:100B6000F2406244D24421618280011126CA4AC8FF
-:100B700006CE22CC4EC652C4AA842E8901C51C4D75
-:100B800091E3E1219C4C804499E326857D299717C8
-:100B900000009387E71A631BF402C0405E24A18B18
-:100BA000B1C71C48A1C7FD59294A1C448345090007
-:100BB000FD17B1E91CC463DD07062286A945268519
-:100BC0006120FD576308F502294535A097170000FD
-:100BD000938707196314F4008044C9B7971700007E
-:100BE00093870714E31CF4FAC0444DBFA285268501
-:100BF000112A55D97D55F2406244D2444249B24946
-:100C0000224A056182801CC4050963D70700184C7D
-:100C100063CAE700638845011C401387170018C0AA
-:100C20008CA361B7228626850520E31035F9D9B754
-:100C30001C401387170018C0294798A371B79387E2
-:100C4000C180AA85884315B7011122CC26CA4AC89B
-:100C500006CE4EC6AA842E89328401C51C4D91E36E
-:100C6000ED26971700009387A70D6317F406C04081
-:100C70001C4C1CC45E24A18BC1C31C48B5CF1C48AE
-:100C800008409379F90F1379F90F1D8D5C4863467D
-:100C9000F500A2852685692C25E51C440505FD1770
-:100CA0001CC41C401387170018C0238037015C4800
-:100CB0006388A7005E24858B81CBA9476316F90062
-:100CC000A2852685B5240DEDF24062444A85D244C2
-:100CD0004249B2490561828097170000938747080F
-:100CE0006314F400804469B79717000093874703A3
-:100CF000E310F4F8C044ADBFA2852685212041D180
-:100D00007D59D9B741119387C18026C2844322C43B
-:100D10004AC006C62A892E8489C49C4C99E326853C
-:100D20002D26971700009387A701631BF402C0408C
-:100D30000317C40093170701C18393F68700ADEA38
-:100D400093F6070195EEA5472320F90013670704E2
-:100D50005AA47D55B2402244924402494101828006
-:100D6000971700009387C7FF6314F4008044C9B746
-:100D7000971700009387C7FAE31CF4FAC0444DBFED
-:100D8000918B9DC34C5889C9930744046384F50033
-:100D90004A853123232A04025E242322040093F788
-:100DA000B7FD5EA41C481CC05E2493E787005EA4C8
-:100DB0001C4899EB5E241307002093F707286385EE
-:100DC000E700A2854A85A1215E2413F717001DC301
-:100DD0005C4823240400B307F0401CCC1C480145A8
-:100DE000B5FB8317C40013F707082DD793E7070453
-:100DF0005EA485B7898B014791E3584818C4F9BFB1
-:100E0000DE25011122CC26CA06CE4AC84EC613F7EB
-:100E10008700AA842E8479EBD841634DE000B84165
-:100E2000634AE0000145F2406244D2444249B2497B
-:100E30000561828058547DD703A904009396370139
-:100E400023A0040063DB060670485E24918B99C7DB
-:100E50005C401D8E5C5899C33C401D8E5C540C5008
-:100E6000814626858297FD575A24631DF5009440DC
-:100E7000F54763E8D706B70740208507B3D7D70003
-:100E8000858BA5C31C48232204001CC0931737017F
-:100E900063D80700FD576314F5009C4091E368C8D0
-:100EA0004C5823A02401BDDD930744046384F5005E
-:100EB0002685F526232A0402B5B70C50014685463F
-:100EC00026850297FD572A86E311F5F89C40B5DF89
-:100ED00075476385E70059476393E70423A024011E
-:100EE00091B7136707045AA47D5535BF83A905013F
-:100EF000E38A09F203A905008D8B23A0350133098C
-:100F00003941014791E3D84918C4E35D20F11C54ED
-:100F10000C50CA864E86268582976347A0005E24C1
-:100F200093E707045EA4C9B7AA993309A940F1BFA2
-:100F30009C49B9CF011122CC06CE2A8411C51C4D83
-:100F400081E72EC61922B24597170000938747DF25
-:100F5000639BF5004C408397C50095C7228562448A
-:100F6000F240056171BD97170000938767DF6394B6
-:100F7000F5000C44CDB797170000938767DAE39C20
-:100F8000F5FC4C44C9BFF2406244014505618280D2
-:100F900001458280411122C406C62A844EA572A54D
-:100FA0002320050023220500232405002322050613
-:100FB00023280500232A0500232C0500214681450E
-:100FC0001305C505EFF0CF9D97170000938747B134
-:100FD0005CD097170000938767B31CD49717000065
-:100FE000938747B75CD4971700009387A7B900D0C1
-:100FF0001CD8B240224441018280970500009385AD
-:1010000065F3A9A2411126C2130680069384F5FF59
-:10101000B384C4024AC02E8922C406C693854407FD
-:101020001D262A8401CD2320050023222501310518
-:1010300008C4138684068145EFF08F962285B2405E
-:10104000224492440249410182801C4DADE341118A
-:1010500006C622C497070000938767FA1CD59387BA
-:1010600001819C4323240504232605042328050429
-:101070006314F50085471CCD2A841D2848C02285AD
-:10108000052808C422852D2048C4484001469145C2
-:10109000113708440546A545F53D48440946C9456C
-:1010A000D53D85471CCCB2402244410182808280DC
-:1010B00041119387018126C284434AC006C69C4CD5
-:1010C00022C42A8999E3268549379384840480447D
-:1010D000DC40FD1763D607009C40B9CF8440C5BFF4
-:1010E0000317C40039E7C1778507232204062320AC
-:1010F000040023220400232404005CC423280400E9
-:10110000232A0400232C0400214681451305C4052D
-:10111000EFF00F89232A0402232C04022324040461
-:10112000232604042285B24022449244024941010C
-:1011300082801304840671BF91454A85E13588C0D9
-:1011400051FDB1472320F9000144E9BF797122D450
-:101150004AD052CC56CA5AC85EC606D626D24ECE01
-:101160002A8AAE8A130485040149054BFD5B09EC0C
-:10117000B25022544A8592540259F249624AD24AE4
-:10118000424BB24B45618280044483294400FD19DF
-:1011900063D409000040E1BFDE24637BFB0083973A
-:1011A000E40063877701A6855285829A3369A90096
-:1011B00093848406E9BF1971A6DAAE848395E500AD
-:1011C000A2DC86DE328463DB0500DE2423A0060079
-:1011D00093F7070885E7930700401DA0300836C63F
-:1011E000EF00D01FB246E34205FE7247BD67F98F9C
-:1011F0007977BA9793B717009CC2F1BF93070004A1
-:101200001CC0F6506654D654014509618280DE2523
-:10121000011122CC06CE26CA4AC8898B2E8489CFDA
-:10122000930774041CC01CC885475CC8F240624424
-:10123000D24442490561828074003000AA84A53FEF
-:10124000A2452A892685012219E98317C40013F7CC
-:10125000072069FFF19B93E727005EA4D1B79707AA
-:1012600000009387C7D99CD45E2408C008C893E7C0
-:1012700007085EA4A2475CC8B24781CF8315E4008B
-:101280002685EF00501811C55E24F19B93E71700E7
-:101290005EA45E243369F9002316240141BFDDC139
-:1012A00083A7C5FF411122C406C626C21384C5FF09
-:1012B00063D307003E94AA84EF00B01B9387418359
-:1012C0009C4381EF2322040023AA81822244B2405E
-:1012D0002685924441016F00F019637EF4001440AA
-:1012E0003307D4006396E7009843DC43369718C071
-:1012F0005CC0D9BFBA87D84319C3E37DE4FE9443E9
-:101300003386D700631F86001040B29694C333869D
-:10131000D700E31DC7FA10435843B29694C3D8C30D
-:1013200075B76375C400B1479CC04DB71040B30694
-:10133000C4006316D70014435843B29614C058C073
-:10134000C0C369B78280011126CA93843500F19821
-:1013500006CE22CC4AC84EC6A104B14763F3F404BA
-:10136000B14463E2B4042A89EF00B010938741834B
-:1013700098433A8439E0938781839C4391E7814580
-:101380004A85052F23ACA182A6854A851D27FD59D4
-:1013900063193507B1472320F9004A85EF00900D06
-:1013A00029A0E3D004FCB1471CC10145F2406244CE
-:1013B000D2444249B249056182801C40858F63CF87
-:1013C0000702AD4663F6F6001CC03E9404C031A08F
-:1013D0005C406313870223AAF1824A85EF009009DB
-:1013E0001305B4009307440061993307F5405DDFAE
-:1013F0003A94898F1CC05DBF5CC3C5B7228740404B
-:1014000095BF130435007198E30285FCB305A44031
-:101410004A854525E31C35FBB5BF1C46FD171CC698
-:1014200063DA0700184E63C5E700A9476394F50027
-:101430006FF09F811C422E851387170018C28CA362
-:101440008280011122CC26CA4AC84EC652C406CE9A
-:101450002A89AE893284B304D6007D5A631494007D
-:10146000014501A80C204E864A85453F0504E31737
-:1014700045FFF2406244D2444249B249224A0561E2
-:101480008280357122CD26CB4AC94EC706CF52C5C0
-:1014900056C35AC1DEDEE2DCE6DAAA89AE843289BE
-:1014A000368401C51C4D91E34D3697170000938794
-:1014B00027896397F40C83A44900DE24A18BFDC324
-:1014C0009C48EDC393070002A304F10293070003B5
-:1014D00002D22305F10222C6930B5002971A000094
-:1014E000938A0A8A054C294B4A841C2099C3639E1F
-:1014F000770DB30C2441638D0C00E6864A86A685E1
-:101500004E858137FD57630FF51C9256E69636D20D
-:101510001C206389071CFD571309140002C802CE62
-:101520003ECA02CCA309010482D4834509001546B2
-:101530005685252713041900C24751E913F70701FF
-:1015400009C713070002A309E10413F7870009C7BD
-:101550001307B002A309E104834609001307A002A0
-:10156000638FE606F2474A84814625461820930594
-:101570001400130707FD6377E60AB5CA3ECE85A8B7
-:10158000970700009387C77D6395F40083A48900C3
-:101590002DB7970700009387A778E390F4F283A410
-:1015A000C90021BFA6854E85EFF0CFF501DD7D5541
-:1015B000FA406A44DA444A49BA492A4A9A4A0A4BE2
-:1015C000F65B665CD65C0D618280050439BF33052D
-:1015D00055413315AC00C98F3EC82289B9B732478F
-:1015E00093064700184336C6634707023ACE1820D1
-:1015F0009307E002631DF70418309307A002631BF2
-:10160000F702B2470904138747009C433AC663C1F7
-:1016100007023ECA2DA83307E04093E727003ACEE1
-:101620003EC8F1B7B387670385462E84BA973DBF9E
-:10163000FD57C5B7050402CA8146814725461820D3
-:1016400093051400130707FD6374E606F9F20C20F6
-:101650000D461705000013052573012511CD9707C9
-:101660000000938767721D8D93070004B397A7004E
-:10167000424505045D8D2AC80C2019461705000057
-:101680001305C570130914002304B102F92335C1F1
-:1016900097F7FFFF9387079795E74247B24713777E
-:1016A000071009CF91073EC69257D2973ED22DBD63
-:1016B000B387670385462E84BA9751B79D07E19B90
-:1016C000A107D5B77800970600009386C6D726866F
-:1016D0000C084E8597000000E7000000FD572A8A9D
-:1016E000E314F5FCDE2493F70704E39207EC1255AC
-:1016F000C1B57800970600009386E6D426860C08CC
-:101700004E85012AE1BF797156CA9C49BA8A98452B
-:1017100022D426D24ECE52CC06D64AD05AC85EC665
-:10172000AA892E84B284368A63D3E700BA879CC024
-:101730000347340419C385079CC01C4093F7070274
-:1017400081C79C4089079CC0032904001379690064
-:10175000631A0900130B9401FD5B5C449840998F58
-:10176000634CF9041C408346340493F70702B336F4
-:10177000D000A5EB13063404D2854E85829AFD571E
-:101780006303F5041C4011469840998B54448144EE
-:101790006397C700B384E64063D3040081441C44CC
-:1017A00018486354F700998FBE94014969047D5B22
-:1017B00063982405014509A885465A86D2854E8539
-:1017C000829A631E75017D55B2502254925402597B
-:1017D000F249624AD24A424BB24B456182800509C6
-:1017E000ADBF3307D40013060003A301C7040347AA
-:1017F000540493871600A2978906A381E7049DBF2E
-:1018000085462286D2854E85829AE30E65FB0509C0
-:1018100045B7797122D426D24AD04ECE06D652CCC4
-:1018200056CA5AC8B689942D930790063289AA845D
-:101830002E8413863504638DF60263E2D706930780
-:1018400080056385F61863EDD700638D0620930746
-:101850003004638EF60A930A24042301D404C9A039
-:10186000930730066385F60A93074006E395F6FE74
-:101870001C40084393F6070893054500C5C61C4164
-:101880000CC363D807001307D002B307F040A301CD
-:10189000E404970600009386E64F294765A893075E
-:1018A00000076381F61663E5D7029307E0066388B5
-:1018B000F6189307F006E390F6FA0C401C4313F871
-:1018C0000508138547006307080608C39C4385A8DD
-:1018D00093075007E383F6FE930780076388F612A9
-:1018E00093073007E399F6F61C43D0418145938670
-:1018F000470014C383AA07005685852601C5330512
-:10190000554148C05C401CC8A301040461A81C43A5
-:10191000930A2404938647009C4314C32301F404D0
-:101920008547D5B793F607041C410CC3B9DAC20743
-:10193000C18781BF93F5050408C3C9D99E23130746
-:10194000F0066386E60E970600009386A6442947B4
-:10195000A30104044C400CC463C5050008406D9904
-:1019600008C099E3B28A89CDB28AB3F5E702FD1ABD
-:10197000B6958C212380BA00B3D5E70263FFE70A4E
-:10198000A147631EF7001C40858B91CB58401C4833
-:1019900063C7E70093070003A38FFAFEFD1A33061F
-:1019A000564110C84E87CA867000A2852685A13B85
-:1019B0007D5A631D450B7D55B250225492540259F5
-:1019C000F249624AD24A424B45618280A382D504E1
-:1019D000970600009386063C0C40084313F8050860
-:1019E0001C411105630D080208C313F7150001C758
-:1019F00093E505020CC04147A1FF0C4093F5F5FDAE
-:101A00000CC0B9B79C4193E707029CC193078007BC
-:101A1000A302F404970600009386063975BF13F8F5
-:101A2000050408C3E30308FCC207C1837DBF970612
-:101A3000000093862636214721BFAE873DB79441EB
-:101A40001C43CC4913F806081385470063060800B9
-:101A500008C39C438CC339A008C393F606049C4377
-:101A6000F5DA8EA323280400B28A2DBF14485686C7
-:101A7000CA8526858299E30045F51C40898B8DE750
-:101A8000B2474844E35AF5F23E853DB7854656864F
-:101A9000CA8526858299E30065F3050A5C443247CE
-:101AA000998FE345FAFEE9BF014A930A94017D5BF1
-:101AB000F5B7411122C42A842E8523AE018206C6C1
-:101AC000EFF04F84FD576317F5009387C1839C4364
-:101AD00091C31CC0B240224441018280411122C402
-:101AE0002E848395E50006C67922634905007C486B
-:101AF000AA977CC8B2402244410182805E247D774F
-:101B00007D17F98F5EA4FDB7DE25011122CC26CA10
-:101B10004AC84EC606CE93F70710AA842E8432898F
-:101B2000B68991C78395E5008946014609225E245E
-:101B30007D777D17F98F5EA48315E4006244F2403F
-:101B4000CE864A86B24942492685D244056125A8F7
-:101B5000411122C42E848395E50006C6C928FD578D
-:101B60005A24631AF500FD77FD17F98F5EA4B24081
-:101B70002244410182808567D98F5EA468C8C5BFB1
-:101B80008395E50005A8411122C42A842E85B285DB
-:101B9000368623AE018206C6EFE03FF3FD5763179A
-:101BA000F5009387C1839C4391C31CC0B24022447B
-:101BB00041018280411122C42A842E8523AE0182F4
-:101BC00006C6C520FD576317F5009387C1839C4364
-:101BD00091C31CC0B240224441018280411122C401
-:101BE0002A842E85B28523AE018206C6C920FD5700
-:101BF0006317F5009387C1839C4391C31CC0B24017
-:101C0000224441018280411122C42A842E8523AEC0
-:101C1000018206C65D20FD576317F5009387C183D7
-:101C20009C4391C31CC0B2402244410182804111B7
-:101C300022C42A842E85B285368623AE018206C64A
-:101C40005920FD576317F5009387C1839C4391C3C7
-:101C50001CC0B24022444101828093F5F50F2A96C0
-:101C60006314C500014582801C21E38EB7FE050583
-:101C7000C5BF82808280411122C42A842E85B2850C
-:101C8000368623AE018206C6A920FD576317F500EC
-:101C90009387C1839C4391C31CC0B240224441013D
-:101CA00082809307800523AEF1827D558280930761
-:101CB000800523AEF1827D5582809307800523AE97
-:101CC000F182014582809307800523AEF1827D5524
-:101CD00082809307800523AEF1827D5582800000CB
-:101CE00053797374656D436C6B3A25640D0A00007B
-:101CF0004368697049443A253038780D0A0000007D
-:101D000054686973206973207072696E7466206507
-:101D100078616D706C652063630D00000000000049
-:101D200000000000000000000000000000000000B3
-:101D300000000000000000000000000000000000A3
-:101D40000000000000000000000000000000000093
-:101D50000000000000000000000000000000000083
-:101D60000000000000000000000000000000000073
-:101D7000000000000000000000000000232D302BB8
-:101D800020000000686C4C0065666745464700000F
-:101D900030313233343536373839414243444546A1
-:101DA0000000000030313233343536373839616263
-:081DB000636465660000000099
-:101DB80000000000000000000102030406070809F3
-:101DC80000000000010203040102030406070809D9
-:101DD800000000003C1D00005C1D00001C1D0000F0
-:101DE80000000000000000000000000000000000EB
-:101DF80000000000000000000000000000000000DB
-:101E080000000000000000000000000000000000CA
-:101E180000000000000000000000000000000000BA
-:101E280000000000000000000000000000000000AA
-:101E380000D8B80502040608C000002020000020D1
-:081E4800200000200000000052
+:100240003E96E374C3F8A5B7EFF29FF241118545DE
+:100250004145EF00F00489677C82C1473EC64C00EF
+:100260008D47371501403EC4B126896537150140D9
+:100270001121410105B7EFF2BFEFF937112019BF86
+:10028000EFF21FEF011185450545EF00500385672B
+:10029000938777383ECA4C089D47370500403ECCCF
+:1002A000231E0100EF0090030546854537050040F9
+:1002B000EF00B00B9307C0027C868D475C87680017
+:1002C00085473EC84D2D854537050040EF00700835
+:1002D0000561C9B5854537050040EF00300A39C5CD
+:1002E00093859181938681819C21982213869181A7
+:1002F000850705071377F70F93F7F70F9CA198A2CF
+:10030000A54563F7E500238006008546A38DD180CF
+:100310001307700C6377F700054723000600238D51
+:10032000E180854537050040EF00D006730020309E
+:1003300001A0B707EFBE37E700E0938707083CC787
+:1003400001A0EFF2FFE205452525252AEF007013F5
+:10035000716513050520EF003018313FB707002005
+:1003600083A5070837250000130505F4EF001022C8
+:100370003D2CAA8537250000130505F5EF00102157
+:100380000544B72400001305803EEF00901101CC16
+:1003900001460144896537150140F92C138504F69F
+:1003A000EF001030CDB705460544EDB7EFF25FDC46
+:1003B000371402401C403707FF08411193E717002C
+:1003C0001CC05C40F98F5CC01C403707F7FE6D17FE
+:1003D000F98F1CC01C403707FCFF7D17F98F1CC02C
+:1003E0005C40370701FF7D17F98F5CC0B7079F009E
+:1003F0001CC4752E02C402C6B727024023A0070002
+:100400001C404167B7160240D98F1CC03706020056
+:1004100005679C42F18F3EC6A24785073EC4B2479E
+:1004200081E7A247E397E7FEB71702409C43139783
+:10043000E7006350070485473EC632478547631C83
+:10044000F702B7170240D843B7160240D8C3D843C3
+:10045000D8C3D843D8C3D843719BD8C3D8431367F4
+:100460001700D8C31147DC42B18BE39EE7FE410180
+:1004700015B302C6D9B7372702401C43F19B1CC3F2
+:10048000FDB7B7160240DC42370700201146B18B9A
+:1004900013070708638FC70221466381C70495EBE2
+:1004A0009C42918B9DC7B7470F00938707241CC3BD
+:1004B000B7170240DC43918393F6F700B70700209B
+:1004C00093870700B69794231C43B3D7D7001CC368
+:1004D0008280B7177A0093870720D1BFDC42D442CD
+:1004E0004166C983BD8BF18E890745466393C7007A
+:1004F000C94781EEB746024083A60680C18A89CEED
+:10050000B7167A009386062021A8B7160240D44277
+:100510001396E600E35606FEB7163D009386069056
+:10052000B387D70269B701A0970100209381813575
+:1005300017510020130101AD17250000130505AE6A
+:1005400097050020938505AC1386818163FAC50069
+:100550008322050023A0550011059105E3EAC5FE9D
+:1005600013858181938541846377B500232005003D
+:100570001105E36DB5FEFD42739002BC8D42739090
+:1005800042809302800873900230970200009382A9
+:10059000A2A793E2320073905230EFF03FE197024E
+:1005A0000000938242DA739012347300203003A566
+:1005B000018282809C4513F7070113F8F70001C7F9
+:1005C000D8413368E8008E2113F7F50F39C318417D
+:1005D0008146854E3D4F930F800293028004214E49
+:1005E0003396DE00B3F8C500631116039398260016
+:1005F00033131F011343F3FF3377E300B3181801DC
+:1006000033E7E800639FF70550C98506E39AC6FD06
+:1006100018C11307F00F6375B70454412146854E86
+:100620003D4F930F800293028004414EB398CE0059
+:1006300033F715016392E8021317260001173313ED
+:10064000EF001343F3FFB376D3003317E800D98EDE
+:10065000639DF701232A15010506E319C6FD54C160
+:100660008280E39457FA10C94DB7E39757FE2328C9
+:100670001501DDB70CC9828019C20CC982804CC932
+:100680008280370700C0B377E5006395E708370736
+:1006900001405C439356B501584F9D8A9DE6F99BF6
+:1006A000B70600FFFD16758F89C993160501C18233
+:1006B000D58FB706FF01758D498FB7060007D58F17
+:1006C000B7060140DCC2D8CE828005466396C600DC
+:1006D000F59BB70680FFF9B709466396C600ED9B08
+:1006E000B706E8FFC1B70D466396C600DD9BB706A7
+:1006F000FCFF4DBF11466397C60093F7F7F3B706AB
+:10070000C0FF4DB71546E391C6FA93F7F7CFB7068A
+:10071000E0FF49BF370700406391E702B707014098
+:10072000D84F4205B367A70089E51345F5FFB377B6
+:10073000E500370701405CCF8280A9E3370801401C
+:10074000B70730000326480013170501B376F500FC
+:1007500041836396F602B70600F9FD16B377D6001B
+:1007600003264800F18E2322D80091C55581120539
+:100770003315A700C98F370701405CC382809317E8
+:10078000B50063D007029357050193F6F7008D4734
+:10079000B397D70093C7F7FFF18FB7060007D58F40
+:1007A000E9B7935755019207B317F700E5B7EFF292
+:1007B0003F9C37F4FF1F032744723706003E411168
+:1007C000931797019346F7FFF18F060737063E0010
+:1007D000718FD98F3706000113979600718FD98FCB
+:1007E000BD824167F98E02C202C402C6D58F23A220
+:1007F000F182035784728545239EE18003270472AA
+:100800001305D00323A4E1820327447023A0E182CF
+:10081000035704732396E1826124832744703707CA
+:100820003A101307077093F7F7F06383E710636AD2
+:10083000F7003707321013070770638FE70641018F
+:1008400091BA37073B1013070770638BE708370728
+:100850003D1013070770E394E7FE854521651535C4
+:1008600037140140E177930480044C0013050480A1
+:100870007C8226C681338567938787334C001305B6
+:1008800004C07C8226C63D3391477C824C0093078E
+:100890008002130504C03EC6313BF9774C00371582
+:1008A00001407C8226C639338D477C8226C64C00A7
+:1008B00013050440013361B7E1773715014093C751
+:1008C00007C0130480044C00130505C07C8222C6B7
+:1008D000D53189677C8222C64C0037150140D9BFCB
+:1008E00085452165793B37140140E1779304800405
+:1008F0004C00130504807C8226C66D3993070021C5
+:100900004C00130504C07C8226C66D3191477C8261
+:100910004C0093078002130504C03EC66139F97785
+:100920004C00371501407C8226C669318947B5BF26
+:10093000B7140140E17793870770130480044C00DB
+:10094000138504807C8222C6B531930790E34C0066
+:10095000138504C07C8222C6B13991477C824C0049
+:1009600093078002138504C03EC6A931F9779DB76D
+:1009700023A8A182828003A70183854714216310E5
+:10098000F7021C31639CE7023C21960793E707F8C6
+:1009900037E700E093F7F70F36972300F740054756
+:1009A00093D756003317D700544189CE9387070455
+:1009B0008A07B7E600E0B69798C38280EDF33C2142
+:1009C0009607F9B793870706E5B7371702405C43E8
+:1009D0009146B18B638CD706A146638ED706BDE7DF
+:1009E0001C43918BA5C7B7470F00938707241CC1F1
+:1009F000371602405C423707002013070701918336
+:100A0000BD8BBA9794231C41B3D7D7005CC1544225
+:100A1000A1829D8ABA969422B3D6D70014C55442B7
+:100A2000AD829D8A36971423B3D6D70054C5584259
+:100A3000634C07005C42B98313F73700938741800A
+:100A4000BA979C23B3D7F6021CC98280B7177A00E5
+:100A50009387072069BF5C435843C166C983BD8B38
+:100A6000758F8907C5466393D700C94701EF37479C
+:100A7000024003270780418B09CF37177A001307FD
+:100A8000072021A83717024058439316E700E3D602
+:100A900006FE37173D0013070790B387E70281BFB3
+:100AA00099C5371702401C4F5D8D08CF8280B7175C
+:100AB0000240984F1345F5FF798D88CF828099C504
+:100AC000371702405C4F5D8D48CF8280B7170240D8
+:100AD000D84F1345F5FF798DC8CF82801E21373757
+:100AE0000140130707C0C207C1836300E50237074F
+:100AF0000040630CE500130707406308E500371763
+:100B00000040130707806316E500FA2193F7F7F812
+:100B1000D98F9A2593F7F7CFC207C183D98F37179B
+:100B200000401EA1130707809C416310E5025CD5BD
+:100B3000DE211EB5B7370140938707C06314F50067
+:100B4000BC251EB985475EA98280C207C1835EB5F8
+:100B5000C5B71E2189C593E717001EA18280C20771
+:100B6000C183F99BC207C183CDBF5E2501C6DD8D60
+:100B70004EA5828093C5F5FFFD8DDDBF1E294A2558
+:100B8000ED8F4205418189C76D8D3335A00082808C
+:100B90000145828093C5F5FFC205C1810EA98280FF
+:100BA000EFF20FDD1629F577FD17F58FF621DA251F
+:100BB0007971D58F1EA95625FD779387379FF58FBD
+:100BC000D6212A842EC6D58F9625D58FB625D58FCA
+:100BD0005EA55E29C207C18393F7F7CFD98F5EA9BF
+:100BE0006808E533B747014093870780B245631A29
+:100BF000F404A25756246547B387E702C206C186AC
+:100C0000984163D20604060752244206B3D7E7028E
+:100C1000130740064186B3D6E702B3F7E702920610
+:100C2000635506028E0793872703B3D7E70213F7AE
+:100C30007700B367D700C207C1831EA445616FF078
+:100C40006FD5925745BF0A07C1B79207938727030D
+:100C5000B3D7E702BD8BD58FF9BF91C55E25096774
+:100C6000D98F5EA582805A25F977FD17F98FD5BFF8
+:100C700093F5F51F4EA182800A216D8D3335A000BA
+:100C80008280B707002083A707080967130707F4C6
+:100C9000B3D7E702C207C183239BF182239AF18273
+:100CA0008280B7F700E0D8438146799BD8C303D749
+:100CB00041833306A70290CBD4CB98431367070137
+:100CC00098C398431367170298C3D843058B75DF01
+:100CD0009843799B98C38280EFF28FC92A8411656B
+:100CE0000111854511056D3B930700207C82371566
+:100CF00001408D473EC44C00E147130505803EC6C8
+:100D0000EFF05F8B22C837440140B70708000C089A
+:100D1000130504803ECC02CA231E010051358545CF
+:100D2000130504801D3F05616FF0CFC6EFF2AFC21F
+:100D3000B7440140AE8932890144938404806345FD
+:100D400024014A856FF06FC49305000426852D3772
+:100D500065DDB38789008385070026850504C20504
+:100D6000C1813937E9BF138781801C439386418451
+:100D70003E95636BD500B75600209386068063E5E9
+:100D8000A60008C33E858280FD57EDBF39713EDA6B
+:100D90002ED232D436D63AD842DC46DE9387C18092
+:100DA00022CC804326CA06CEAA8409C41C4C99E3EF
+:100DB0002285ED290C4454102686228536C6EF0084
+:100DC0007012F2406244D24421618280011126CA2D
+:100DD0004AC806CE22CC4EC652C4AA842E8901C56A
+:100DE0001C4D91E3E1219C4C804499E326857D29AB
+:100DF000971700009387C71A631BF402C0405E2454
+:100E0000A18BB1C71C48A1C7FD59294A1C44834581
+:100E10000900FD17B1E91CC463DD07062286A94558
+:100E200026856120FD576308F502294535A09717EF
+:100E300000009387E7186314F4008044C9B797173C
+:100E400000009387E713E31CF4FAC0444DBFA2856A
+:100E50002685112A55D97D55F2406244D244424933
+:100E6000B249224A056182801CC4050963D7070084
+:100E7000184C63CAE700638845011C4013871700BC
+:100E800018C08CA361B7228626850520E31035F9AA
+:100E9000D9B71C401387170018C0294798A371B70A
+:100EA0009387C180AA85884315B7011122CC26CA31
+:100EB0004AC806CE4EC6AA842E89328401C51C4D6E
+:100EC00091E3ED26971700009387870D6317F406CB
+:100ED000C0401C4C1CC45E24A18BC1C31C48B5CFB0
+:100EE0001C4808409379F90F1379F90F1D8D5C4860
+:100EF0006346F500A2852685692C25E51C44050579
+:100F0000FD171CC41C401387170018C0238037012D
+:100F10005C486388A7005E24858B81CBA947631654
+:100F2000F900A2852685B5240DEDF24062444A857C
+:100F3000D2444249B24905618280971700009387E5
+:100F400027086314F400804469B79717000093875B
+:100F50002703E310F4F8C044ADBFA2852685212005
+:100F600041D17D59D9B741119387C18026C28443AD
+:100F700022C44AC006C62A892E8489C49C4C99E39F
+:100F800026852D269717000093878701631BF4029F
+:100F9000C0400317C40093170701C18393F687006D
+:100FA000ADEA93F6070195EEA5472320F9001367F4
+:100FB00007045AA47D55B24022449244024941019B
+:100FC0008280971700009387A7FF6314F400804482
+:100FD000C9B7971700009387A7FAE31CF4FAC04437
+:100FE0004DBF918B9DC34C5889C9930744046384BA
+:100FF000F5004A853123232A04025E2423220400BB
+:1010000093F7B7FD5EA41C481CC05E2493E78700DD
+:101010005EA41C4899EB5E241307002093F7072871
+:101020006385E700A2854A85A1215E2413F7170096
+:101030001DC35C4823240400B307F0401CCC1C48AB
+:101040000145B5FB8317C40013F707082DD793E7B5
+:1010500007045EA485B7898B014791E3584818C4FB
+:10106000F9BFDE25011122CC26CA06CE4AC84EC6DB
+:1010700013F78700AA842E8479EBD841634DE000F2
+:10108000B841634AE0000145F2406244D24442491B
+:10109000B2490561828058547DD703A90400939614
+:1010A000370123A0040063DB060670485E24918BA1
+:1010B00099C75C401D8E5C5899C33C401D8E5C54A2
+:1010C0000C50814626858297FD575A24631DF500F2
+:1010D0009440F54763E8D706B70740208507B3D7A4
+:1010E000D700858BA5C31C48232204001CC093177E
+:1010F000370163D80700FD576314F5009C4091E366
+:1011000068C84C5823A02401BDDD930744046384C0
+:10111000F5002685F526232A0402B5B70C500146B2
+:10112000854626850297FD572A86E311F5F89C40EF
+:10113000B5DF75476385E70059476393E70423A04C
+:10114000240191B7136707045AA47D5535BF83A9BD
+:101150000501E38A09F203A905008D8B23A035015F
+:1011600033093941014791E3D84918C4E35D20F1BF
+:101170001C540C50CA864E86268582976347A00071
+:101180005E2493E707045EA4C9B7AA993309A9406E
+:10119000F1BF9C49B9CF011122CC06CE2A8411C5DA
+:1011A0001C4D81E72EC61922B24597170000938780
+:1011B00027DF639BF5004C408397C50095C72285C8
+:1011C0006244F240056171BD97170000938747DFC5
+:1011D0006394F5000C44CDB797170000938747DA66
+:1011E000E39CF5FC4C44C9BFF240624401450561F3
+:1011F000828001458280411122C406C62A844EA500
+:1012000072A52320050023220500232405002322A4
+:10121000050623280500232A0500232C0500214666
+:1012200081451305C505EFE0BFF7971700009387C9
+:1012300047B15CD097170000938767B31CD497170A
+:101240000000938747B75CD4971700009387A7B92E
+:1012500000D01CD8B2402244410182809705000092
+:10126000938565F3A9A2411126C2130680069384D3
+:10127000F5FFB384C4024AC02E8922C406C69385F2
+:1012800044071D262A8401CD2320050023222501A1
+:10129000310508C4138684068145EFE07FF022857E
+:1012A000B240224492440249410182801C4DADE388
+:1012B000411106C622C497070000938767FA1CD520
+:1012C000938701819C4323240504232605042328B6
+:1012D00005046314F50085471CCD2A841D2848C0E9
+:1012E0002285052808C422852D2048C4484001468F
+:1012F0009145113708440546A545F53D4844094642
+:10130000C945D53D85471CCCB2402244410182806D
+:10131000828041119387018126C284434AC006C658
+:101320009C4C22C42A8999E32685493793848404F6
+:101330008044DC40FD1763D607009C40B9CF844051
+:10134000C5BF0317C40039E7C17785072322040608
+:101350002320040023220400232404005CC4232847
+:101360000400232A0400232C040021468145130590
+:10137000C405EFE0FFE2232A0402232C0402232405
+:101380000404232604042285B240224492440249E4
+:10139000410182801304840671BF91454A85E1357D
+:1013A00088C051FDB1472320F9000144E9BF79719C
+:1013B00022D44AD052CC56CA5AC85EC606D626D2C5
+:1013C0004ECE2A8AAE8A130485040149054BFD5B83
+:1013D00009ECB25022544A8592540259F249624AA9
+:1013E000D24A424BB24B4561828004448329440077
+:1013F000FD1963D409000040E1BFDE24637BFB00DC
+:101400008397E40063877701A6855285829A3369C2
+:10141000A90093848406E9BF1971A6DAAE84839586
+:10142000E500A2DC86DE328463DB0500DE2423A037
+:10143000060093F7070885E7930700401DA03008D2
+:1014400036C6EF00D01FB246E34205FE7247BD67C5
+:10145000F98F7977BA9793B717009CC2F1BF9307BA
+:1014600000041CC0F6506654D654014509618280C0
+:10147000DE25011122CC06CE26CA4AC8898B2E84CD
+:1014800089CF930774041CC01CC885475CC8F24010
+:101490006244D24442490561828074003000AA84CB
+:1014A000A53FA2452A892685012219E98317C40090
+:1014B00013F7072069FFF19B93E727005EA4D1B7DC
+:1014C000970700009387C7D99CD45E2408C008C83A
+:1014D00093E707085EA4A2475CC8B24781CF831593
+:1014E000E4002685EF00501811C55E24F19B93E7B8
+:1014F00017005EA45E243369F9002316240141BF5E
+:10150000DDC183A7C5FF411122C406C626C21384CC
+:10151000C5FF63D307003E94AA84EF00B01B9387F6
+:1015200081839C4381EF2322040023AC81822244E7
+:10153000B2402685924441016F00F019637EF400A9
+:1015400014403307D4006396E7009843DC43369792
+:1015500018C05CC0D9BFBA87D84319C3E37DE4FE85
+:1015600094433386D700631F86001040B29694C31D
+:101570003386D700E31DC7FA10435843B29694C38D
+:10158000D8C375B76375C400B1479CC04DB7104050
+:10159000B306C4006316D70014435843B29614C070
+:1015A00058C0C0C369B78280011126CA9384350030
+:1015B000F19806CE22CC4AC84EC6A104B14763F3C7
+:1015C000F404B14463E2B4042A89EF00B0109387B5
+:1015D000818398433A8439E09387C1839C4391E7A0
+:1015E00081454A85052F23AEA182A6854A851D2700
+:1015F000FD5963193507B1472320F9004A85EF00EB
+:10160000900D29A0E3D004FCB1471CC10145F24074
+:101610006244D2444249B249056182801C40858FB0
+:1016200063CF0702AD4663F6F6001CC03E9404C0CB
+:1016300031A05C406313870223ACF1824A85EF003E
+:1016400090091305B4009307440061993307F540EE
+:101650005DDF3A94898F1CC05DBF5CC3C5B722872C
+:10166000404095BF130435007198E30285FCB30533
+:10167000A4404A854525E31C35FBB5BF1C46FD1734
+:101680001CC663DA0700184E63C5E700A9476394D8
+:10169000F5006FF09F811C422E851387170018C23A
+:1016A0008CA38280011122CC26CA4AC84EC652C4DD
+:1016B00006CE2A89AE893284B304D6007D5A6314DB
+:1016C0009400014501A80C204E864A85453F05043B
+:1016D000E31745FFF2406244D2444249B249224AEC
+:1016E00005618280357122CD26CB4AC94EC706CF0F
+:1016F00052C556C35AC1DEDEE2DCE6DAAA89AE8400
+:101700003289368401C51C4D91E34D369717000090
+:10171000938707896397F40C83A44900DE24A18B87
+:10172000FDC39C48EDC393070002A304F102930795
+:10173000000302D22305F10222C6930B5002971A2E
+:101740000000938AEA89054C294B4A841C2099C3DE
+:10175000639E770DB30C2441638D0C00E6864A86A8
+:10176000A6854E858137FD57630FF51C9256E69688
+:1017700036D21C206389071CFD571309140002C8C8
+:1017800002CE3ECA02CCA309010482D483450900DB
+:1017900015465685252713041900C24751E913F74A
+:1017A000070109C713070002A309E10413F7870023
+:1017B00009C71307B002A309E10483460900130710
+:1017C000A002638FE606F2474A8481462546182028
+:1017D00093051400130707FD6377E60AB5CA3ECEEA
+:1017E00085A8970700009387A77D6395F40083A4DD
+:1017F00089002DB79707000093878778E390F4F26C
+:1018000083A4C90021BFA6854E85EFF0CFF501DD89
+:101810007D55FA406A44DA444A49BA492A4A9A4A02
+:101820000A4BF65B665CD65C0D618280050439BFAD
+:10183000330555413315AC00C98F3EC82289B9B76D
+:10184000324793064700184336C6634707023ACE2D
+:1018500018209307E002631DF70418309307A002D5
+:10186000631BF702B2470904138747009C433AC63B
+:1018700063C107023ECA2DA83307E04093E7270063
+:101880003ACE3EC8F1B7B387670385462E84BA9730
+:101890003DBFFD57C5B7050402CA814681472546AD
+:1018A000182093051400130707FD6374E606F9F288
+:1018B0000C200D461705000013050573012511CDF9
+:1018C00097070000938747721D8D93070004B39715
+:1018D000A700424505045D8D2AC80C20194617054E
+:1018E00000001305A570130914002304B102F923A5
+:1018F00035C197E7FFFF9387E77095E74247B24707
+:101900001377071009CF91073EC69257D2973ED260
+:101910002DBDB387670385462E84BA9751B79D07BF
+:10192000E19BA107D5B77800970600009386C6D73C
+:1019300026860C084E8597000000E7000000FD5742
+:101940002A8AE314F5FCDE2493F70704E39207ECFC
+:101950001255C1B57800970600009386E6D4268616
+:101960000C084E85012AE1BF797156CA9C49BA8A92
+:10197000984522D426D24ECE52CC06D64AD05AC84A
+:101980005EC6AA892E84B284368A63D3E700BA87FA
+:101990009CC00347340419C385079CC01C4093F7BF
+:1019A000070281C79C4089079CC003290400137962
+:1019B0006900631A0900130B9401FD5B5C449840B5
+:1019C000998F634CF9041C408346340493F7070253
+:1019D000B336D000A5EB13063404D2854E85829A27
+:1019E000FD576303F5041C4011469840998B5444FD
+:1019F00081446397C700B384E64063D30400814405
+:101A00001C4418486354F700998FBE940149690437
+:101A10007D5B63982405014509A885465A86D285D1
+:101A20004E85829A631E75017D55B25022549254A0
+:101A30000259F249624AD24A424BB24B4561828016
+:101A40000509ADBF3307D40013060003A301C70483
+:101A50000347540493871600A2978906A381E704DD
+:101A60009DBF85462286D2854E85829AE30E65FB10
+:101A7000050945B7797122D426D24AD04ECE06D672
+:101A800052CC56CA5AC8B689942D9307900632890B
+:101A9000AA842E8413863504638DF60263E2D7068A
+:101AA000930780056385F61863EDD700638D0620E4
+:101AB00093073004638EF60A930A24042301D404A6
+:101AC000C9A0930730066385F60A93074006E3959D
+:101AD000F6FE1C40084393F6070893054500C5C66B
+:101AE0001C410CC363D807001307D002B307F040B2
+:101AF000A301E404970600009386C64F294765A812
+:101B0000930700076381F61663E5D7029307E006A3
+:101B10006388F6189307F006E390F6FA0C401C432E
+:101B200013F80508138547006307080608C39C439C
+:101B300085A893075007E383F6FE93078007638821
+:101B4000F61293073007E399F6F61C43D04181451E
+:101B50009386470014C383AA07005685852601C5CE
+:101B60003305554148C05C401CC8A301040461A86A
+:101B70001C43930A2404938647009C4314C3230107
+:101B8000F4048547D5B793F607041C410CC3B9DAB2
+:101B9000C207C18781BF93F5050408C3C9D99E2335
+:101BA0001307F0066386E60E9706000093868644C8
+:101BB0002947A30104044C400CC463C50500084038
+:101BC0006D9908C099E3B28A89CDB28AB3F5E7026C
+:101BD000FD1AB6958C212380BA00B3D5E70263FFC6
+:101BE000E70AA147631EF7001C40858B91CB584044
+:101BF0001C4863C7E70093070003A38FFAFEFD1A92
+:101C00003306564110C84E87CA867000A2852685C5
+:101C1000A13B7D5A631D450B7D55B2502254925411
+:101C20000259F249624AD24A424B45618280A382FC
+:101C3000D504970600009386E63B0C40084313F852
+:101C400005081C411105630D080208C313F71500B0
+:101C500001C793E505020CC04147A1FF0C4093F575
+:101C6000F5FD0CC0B9B79C4193E707029CC19307EF
+:101C70008007A302F404970600009386E63875BF38
+:101C800013F8050408C3E30308FCC207C1837DBF42
+:101C90009706000093860636214721BFAE873DB7E1
+:101CA00094411C43CC4913F806081385470063068A
+:101CB000080008C39C438CC339A008C393F60604EC
+:101CC0009C43F5DA8EA323280400B28A2DBF144862
+:101CD0005686CA8526858299E30045F51C40898B86
+:101CE0008DE7B2474844E35AF5F23E853DB7854655
+:101CF0005686CA8526858299E30065F3050A5C4409
+:101D00003247998FE345FAFEE9BF014A930A9401ED
+:101D10007D5BF5B7411122C42A842E8523A001845E
+:101D200006C6EFF04F84FD576317F50093870184D3
+:101D30009C4391C31CC0B2402244410182804111A6
+:101D400022C42E848395E50006C6792263490500E6
+:101D50007C48AA977CC8B2402244410182805E241C
+:101D60007D777D17F98F5EA4FDB7DE25011122CCAA
+:101D700026CA4AC84EC606CE93F70710AA842E84F8
+:101D80003289B68991C78395E500894601460922C3
+:101D90005E247D777D17F98F5EA48315E40062448D
+:101DA000F240CE864A86B24942492685D244056130
+:101DB00025A8411122C42E848395E50006C6C928B2
+:101DC000FD575A24631AF500FD77FD17F98F5EA4BD
+:101DD000B2402244410182808567D98F5EA468C8E1
+:101DE000C5BF8395E50005A8411122C42A842E852C
+:101DF000B285368623A0018406C6EFE03FF3FD5787
+:101E00006317F500938701849C4391C31CC0B240C3
+:101E1000224441018280411122C42A842E8523A0BC
+:101E2000018406C6C520FD576317F500938701841A
+:101E30009C4391C31CC0B2402244410182804111A5
+:101E400022C42A842E85B28523A0018406C6C92017
+:101E5000FD576317F500938701849C4391C31CC011
+:101E6000B240224441018280411122C42A842E853D
+:101E700023A0018406C65D20FD576317F5009387F4
+:101E800001849C4391C31CC0B24022444101828022
+:101E9000411122C42A842E85B285368623A001846E
+:101EA00006C65920FD576317F500938701849C43AC
+:101EB00091C31CC0B24022444101828093F5F50FCA
+:101EC0002A966314C500014582801C21E38EB7FE6B
+:101ED0000505C5BF82808280411122C42A842E85D7
+:101EE000B285368623A0018406C6A920FD57631754
+:101EF000F500938701849C4391C31CC0B2402244E7
+:101F0000410182809307800523A0F1847D55828062
+:101F10009307800523A0F1847D5582809307800577
+:101F200023A0F184014582809307800523A0F184DA
+:101F30007D5582809307800523A0F1847D558280A2
+:101F400053797374656D436C6B3A25640D0A000018
+:101F50004368697049443A253038780D0A0000001A
+:101F600054686973206973207072696E74662065A5
+:101F700078616D706C652063630D000000000000E7
+:101F80000000000000000000000000000000000051
+:101F90000000000000000000000000000000000041
+:101FA0000000000000000000000000000000000031
+:101FB0000000000000000000000000000000000021
+:101FC0000000000000000000000000000000000011
+:101FD000000000000000000000000000232D302B56
+:101FE00020000000686C4C006566674546470000AD
+:101FF000303132333435363738394142434445463F
+:102000000000000030313233343536373839616200
+:08201000636465660000000036
+:102018000000000000000000010203040607080990
+:102028000000000001020304010203040607080976
+:10203800000000009C1F0000BC1F00007C1F000067
+:102048000000000000000000000000000000000088
+:102058000000000000000000000000000000000078
+:102068000000000000000000000000000000000068
+:102078000000000000000000000000000000000058
+:102088000000000000000000000000000000000048
+:1020980000127A0002040608C40000202000002074
+:0820A8002000002000000000F0
:00000001FF
diff --git a/ZDBMS/BMS_CC/obj/BMS_CC.lst b/ZDBMS/BMS_CC/obj/BMS_CC.lst
index 78b5721..3e26f03 100644
--- a/ZDBMS/BMS_CC/obj/BMS_CC.lst
+++ b/ZDBMS/BMS_CC/obj/BMS_CC.lst
@@ -7,10 +7,10 @@ start address 0x00000000
Program Header:
LOAD off 0x00001000 vaddr 0x00000000 paddr 0x00000000 align 2**12
- filesz 0x00001db8 memsz 0x00001db8 flags r-x
- LOAD off 0x00003000 vaddr 0x20000000 paddr 0x00001db8 align 2**12
- filesz 0x00000098 memsz 0x000000c0 flags rw-
- LOAD off 0x00003800 vaddr 0x20004800 paddr 0x20004800 align 2**12
+ filesz 0x00002018 memsz 0x00002018 flags r-x
+ LOAD off 0x00004000 vaddr 0x20000000 paddr 0x00002018 align 2**12
+ filesz 0x00000098 memsz 0x000000c4 flags rw-
+ LOAD off 0x00004800 vaddr 0x20004800 paddr 0x20004800 align 2**12
filesz 0x00000000 memsz 0x00000800 flags rw-
Sections:
@@ -19,49 +19,49 @@ Idx Name Size VMA LMA File off Algn
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .vector 0000013c 00000004 00000004 00001004 2**1
CONTENTS, ALLOC, LOAD, READONLY, CODE
- 2 .text 00001c78 00000140 00000140 00001140 2**2
+ 2 .text 00001ed8 00000140 00000140 00001140 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
- 3 .fini 00000000 00001db8 00001db8 00003098 2**0
+ 3 .fini 00000000 00002018 00002018 00004098 2**0
CONTENTS, ALLOC, LOAD, CODE
- 4 .dalign 00000000 20000000 20000000 00003098 2**0
+ 4 .dalign 00000000 20000000 20000000 00004098 2**0
CONTENTS
- 5 .dlalign 00000000 00001db8 00001db8 00003098 2**0
+ 5 .dlalign 00000000 00002018 00002018 00004098 2**0
CONTENTS
- 6 .data 00000098 20000000 00001db8 00003000 2**2
+ 6 .data 00000098 20000000 00002018 00004000 2**2
CONTENTS, ALLOC, LOAD, DATA
- 7 .bss 00000028 20000098 00001e50 00003098 2**2
+ 7 .bss 0000002c 20000098 000020b0 00004098 2**2
ALLOC
- 8 .stack 00000800 20004800 20004800 00003800 2**0
+ 8 .stack 00000800 20004800 20004800 00004800 2**0
ALLOC
- 9 .debug_info 0000857c 00000000 00000000 00003098 2**0
+ 9 .debug_info 0000e480 00000000 00000000 00004098 2**0
CONTENTS, READONLY, DEBUGGING
- 10 .debug_abbrev 0000197a 00000000 00000000 0000b614 2**0
+ 10 .debug_abbrev 000027ae 00000000 00000000 00012518 2**0
CONTENTS, READONLY, DEBUGGING
- 11 .debug_aranges 00000430 00000000 00000000 0000cf90 2**3
+ 11 .debug_aranges 00000790 00000000 00000000 00014cc8 2**3
CONTENTS, READONLY, DEBUGGING
- 12 .debug_ranges 000003e0 00000000 00000000 0000d3c0 2**3
+ 12 .debug_ranges 00000780 00000000 00000000 00015458 2**3
CONTENTS, READONLY, DEBUGGING
- 13 .debug_line 00004fb9 00000000 00000000 0000d7a0 2**0
+ 13 .debug_line 00008fdf 00000000 00000000 00015bd8 2**0
CONTENTS, READONLY, DEBUGGING
- 14 .debug_str 000018fc 00000000 00000000 00012759 2**0
+ 14 .debug_str 000025da 00000000 00000000 0001ebb7 2**0
CONTENTS, READONLY, DEBUGGING
- 15 .comment 00000033 00000000 00000000 00014055 2**0
+ 15 .comment 00000033 00000000 00000000 00021191 2**0
CONTENTS, READONLY
- 16 .debug_frame 000010a0 00000000 00000000 00014088 2**2
+ 16 .debug_frame 0000178c 00000000 00000000 000211c4 2**2
CONTENTS, READONLY, DEBUGGING
- 17 .debug_loc 00001a6d 00000000 00000000 00015128 2**0
+ 17 .debug_loc 000034c5 00000000 00000000 00022950 2**0
CONTENTS, READONLY, DEBUGGING
- 18 .stab 00000084 00000000 00000000 00016b98 2**2
+ 18 .stab 00000084 00000000 00000000 00025e18 2**2
CONTENTS, READONLY, DEBUGGING
- 19 .stabstr 00000117 00000000 00000000 00016c1c 2**0
+ 19 .stabstr 00000117 00000000 00000000 00025e9c 2**0
CONTENTS, READONLY, DEBUGGING
SYMBOL TABLE:
00000000 l d .init 00000000 .init
00000004 l d .vector 00000000 .vector
00000140 l d .text 00000000 .text
-00001db8 l d .fini 00000000 .fini
+00002018 l d .fini 00000000 .fini
20000000 l d .dalign 00000000 .dalign
-00001db8 l d .dlalign 00000000 .dlalign
+00002018 l d .dlalign 00000000 .dlalign
20000000 l d .data 00000000 .data
20000098 l d .bss 00000000 .bss
20004800 l d .stack 00000000 .stack
@@ -78,6 +78,10 @@ SYMBOL TABLE:
00000000 l d .stabstr 00000000 .stabstr
00000000 l df *ABS* 00000000 ./Startup/startup_ch32l103.o
00000004 l .vector 00000000 _vector_base
+00000000 l df *ABS* 00000000 gpio.c
+00000000 l df *ABS* 00000000 init.c
+00000000 l df *ABS* 00000000 tim.c
+00000000 l df *ABS* 00000000 timeIT.c
00000000 l df *ABS* 00000000 ch32l103_it.c
00000000 l df *ABS* 00000000 main.c
00000000 l df *ABS* 00000000 system_ch32l103.c
@@ -87,10 +91,11 @@ SYMBOL TABLE:
00000000 l df *ABS* 00000000 ch32l103_rcc.c
20000010 l O .data 00000010 PBHBPrescTable
20000084 l O .data 00000004 ADCPrescTable
+00000000 l df *ABS* 00000000 ch32l103_tim.c
00000000 l df *ABS* 00000000 ch32l103_usart.c
00000000 l df *ABS* 00000000 debug.c
-200000b0 l O .bss 00000002 p_ms
-200000b2 l O .bss 00000002 p_us
+200000b4 l O .bss 00000002 p_ms
+200000b6 l O .bss 00000002 p_us
20000088 l O .data 00000004 curbrk.5011
00000000 l df *ABS* 00000000 printf.c
00000000 l df *ABS* 00000000 puts.c
@@ -98,13 +103,13 @@ SYMBOL TABLE:
00000000 l df *ABS* 00000000 wsetup.c
00000000 l df *ABS* 00000000 fflush.c
00000000 l df *ABS* 00000000 findfp.c
-00000f94 l F .text 00000066 std
+000011f6 l F .text 00000066 std
00000000 l df *ABS* 00000000 fwalk.c
00000000 l df *ABS* 00000000 makebuf.c
00000000 l df *ABS* 00000000 nano-mallocr.c
00000000 l df *ABS* 00000000 nano-mallocr.c
00000000 l df *ABS* 00000000 nano-vfprintf.c
-0000141a l F .text 00000028 __sfputc_r
+0000167c l F .text 00000028 __sfputc_r
00000000 l df *ABS* 00000000 nano-vfprintf_i.c
00000000 l df *ABS* 00000000 sbrkr.c
00000000 l df *ABS* 00000000 stdio.c
@@ -124,321 +129,337 @@ SYMBOL TABLE:
00000000 l df *ABS* 00000000 impure.c
20000020 l O .data 00000060 impure_data
00000000 l df *ABS* 00000000 reent.c
-0000040a w .text 00000000 EXTI2_IRQHandler
-00001c06 g F .text 00000028 _isatty_r
-00000b6a g F .text 000000d4 _puts_r
-00001c2e g F .text 0000002c _lseek_r
-00000b2a g F .text 00000040 printf
+00000526 w .text 00000000 EXTI2_IRQHandler
+00001e68 g F .text 00000028 _isatty_r
+00000dcc g F .text 000000d4 _puts_r
+00001e90 g F .text 0000002c _lseek_r
+00000d8c g F .text 00000040 printf
20000880 g .data 00000000 __global_pointer$
00000148 g F .text 00000028 .hidden __riscv_save_8
-0000040a w .text 00000000 TIM1_CC_IRQHandler
-00001b50 g F .text 00000030 __sseek
-0000104a g F .text 00000066 __sinit
-00000c48 g F .text 000000bc __swbuf_r
-0000024a g F .text 00000010 HardFault_Handler
-00001004 g F .text 00000046 __sfmoreglue
-00001c74 g F .text 00000002 __malloc_unlock
-0000040a w .text 00000000 USBPD_IRQHandler
+00000526 w .text 00000000 TIM1_CC_IRQHandler
+2000009b g O .bss 00000001 g_timer50MsFlag
+00001db2 g F .text 00000030 __sseek
+000012ac g F .text 00000066 __sinit
+00000eaa g F .text 000000bc __swbuf_r
+00000332 g F .text 00000010 HardFault_Handler
+00001266 g F .text 00000046 __sfmoreglue
+00001ed6 g F .text 00000002 __malloc_unlock
+00000526 w .text 00000000 USBPD_IRQHandler
00000194 g F .text 0000000c .hidden __riscv_restore_3
-0000040a w .text 00000000 SysTick_Handler
-0000040a w .text 00000000 PVD_IRQHandler
+00000526 w .text 00000000 SysTick_Handler
+00000976 g F .text 00000054 NVIC_Init
+00000526 w .text 00000000 PVD_IRQHandler
00000180 g F .text 00000020 .hidden __riscv_restore_10
-00000248 g F .text 00000002 NMI_Handler
-0000040a w .text 00000000 EXTI3_IRQHandler
+00000276 g F .text 0000000a all_hardWare_init
+00000330 g F .text 00000002 NMI_Handler
+00000526 w .text 00000000 EXTI3_IRQHandler
00000148 g F .text 00000028 .hidden __riscv_save_11
-00000492 g F .text 00000006 DBGMCU_GetCHIPID
-00000a18 g F .text 0000000a USART_GetFlagStatus
-00001bdc g F .text 0000002a _fstat_r
-200000a8 g O .bss 00000002 USBPD_CFG
-200000bc g O .bss 00000004 errno
+000005ae g F .text 00000006 DBGMCU_GetCHIPID
+20000099 g O .bss 00000001 S_Times_1
+00000c78 g F .text 0000000a USART_GetFlagStatus
+00001e3e g F .text 0000002a _fstat_r
+200000ac g O .bss 00000002 USBPD_CFG
+200000c0 g O .bss 00000004 errno
20000098 g .bss 00000000 _sbss
00000800 g *ABS* 00000000 __stack_size
-00000a78 g F .text 00000052 USART_Printf_Init
-0000040a w .text 00000000 USBFS_IRQHandler
+00000cd8 g F .text 00000054 USART_Printf_Init
+00000526 w .text 00000000 USBFS_IRQHandler
00000194 g F .text 0000000c .hidden __riscv_restore_2
-00000ffa g F .text 0000000a _cleanup_r
-00000558 g F .text 0000012c GPIO_PinRemapConfig
-0000040a w .text 00000000 EXTI0_IRQHandler
-0000040a w .text 00000000 I2C2_EV_IRQHandler
-0000040a w .text 00000000 LPTIM_IRQHandler
-00000c3e g F .text 0000000a puts
+0000125c g F .text 0000000a _cleanup_r
+00000682 g F .text 0000012c GPIO_PinRemapConfig
+00000526 w .text 00000000 EXTI0_IRQHandler
+00000526 w .text 00000000 I2C2_EV_IRQHandler
+00000526 w .text 00000000 LPTIM_IRQHandler
+00000b52 g F .text 00000018 TIM_Cmd
+00000ea0 g F .text 0000000a puts
+00000248 g F .text 0000002e all_gpio_Init
20000080 g O .data 00000004 SystemCoreClock
-00001cae g F .text 0000000c _fstat
+00001f10 g F .text 0000000c _fstat
00000004 g .init 00000000 _einit
+00000b94 g F .text 0000000c TIM_ClearITPendingBit
00000140 g F .text 00000030 .hidden __riscv_save_12
-00000498 g F .text 000000c0 GPIO_Init
-0000040a w .text 00000000 Break_Point_Handler
+000005b4 g F .text 000000c0 GPIO_Init
+00000526 w .text 00000000 Break_Point_Handler
00000180 g F .text 00000020 .hidden __riscv_restore_11
-200000ac g O .bss 00000004 NVIC_Priority_Group
-0000040a w .text 00000000 SPI1_IRQHandler
-000009fa g F .text 00000016 USART_Cmd
-00001ab2 g F .text 0000002a _sbrk_r
-2000009c g O .bss 00000004 CHIPID
-0000040a w .text 00000000 TAMPER_IRQHandler
+200000b0 g O .bss 00000004 NVIC_Priority_Group
+00000526 w .text 00000000 SPI1_IRQHandler
+00000c5a g F .text 00000016 USART_Cmd
+00001d14 g F .text 0000002a _sbrk_r
+200000a0 g O .bss 00000004 CHIPID
+00000526 w .text 00000000 TAMPER_IRQHandler
00000170 g F .text 0000000c .hidden __riscv_save_1
00000194 g F .text 0000000c .hidden __riscv_restore_0
-00001c76 g F .text 0000002c _read_r
+00001ed8 g F .text 0000002c _read_r
00000156 g F .text 0000001a .hidden __riscv_save_7
-0000040a w .text 00000000 Ecall_M_Mode_Handler
+00000526 w .text 00000000 Ecall_M_Mode_Handler
20004800 g .stack 00000000 _heap_end
-00001cba g F .text 0000000c _isatty
+00001f1c g F .text 0000000c _isatty
20000090 g O .data 00000004 _global_impure_ptr
0000018a g F .text 00000016 .hidden __riscv_restore_5
-20000098 g O .bss 00000002 ADC_Trim
-0000040a w .text 00000000 DMA1_Channel4_IRQHandler
-00000b04 g F .text 00000026 _sbrk
+2000009c g O .bss 00000002 ADC_Trim
+00000526 w .text 00000000 DMA1_Channel4_IRQHandler
+00000d66 g F .text 00000026 _sbrk
+20000098 g O .bss 00000001 Ms_Times_50
0000018a g F .text 00000016 .hidden __riscv_restore_6
-0000040a w .text 00000000 USART3_IRQHandler
-0000040a w .text 00000000 RTC_IRQHandler
-200000c0 g .bss 00000000 _ebss
-0000040a w .text 00000000 DMA1_Channel7_IRQHandler
-0000040a w .text 00000000 CAN1_RX1_IRQHandler
-00000a22 g F .text 00000020 Delay_Init
-00000922 g F .text 0000001e RCC_PB2PeriphClockCmd
-00000684 g F .text 000001c2 GPIO_IPD_Unused
-0000040a w .text 00000000 USBPDWakeUp_IRQHandler
-0000040a w .text 00000000 TIM4_IRQHandler
+00000526 w .text 00000000 USART3_IRQHandler
+00000526 w .text 00000000 RTC_IRQHandler
+200000c4 g .bss 00000000 _ebss
+00000526 w .text 00000000 DMA1_Channel7_IRQHandler
+00000526 w .text 00000000 CAN1_RX1_IRQHandler
+00000c82 g F .text 00000020 Delay_Init
+00000aa0 g F .text 0000001e RCC_PB2PeriphClockCmd
+000007ae g F .text 000001c2 GPIO_IPD_Unused
+00000526 w .text 00000000 USBPDWakeUp_IRQHandler
+00000674 g F .text 00000004 GPIO_SetBits
+00000526 w .text 00000000 TIM4_IRQHandler
00000148 g F .text 00000028 .hidden __riscv_save_9
-00001d1c g O .text 00000020 __sf_fake_stderr
+00000678 g F .text 0000000a GPIO_WriteBit
+00001f7c g O .text 00000020 __sf_fake_stderr
00000156 g F .text 0000001a .hidden __riscv_save_4
-0000040a w .text 00000000 I2C1_EV_IRQHandler
-0000040a w .text 00000000 USART4_IRQHandler
-0000084c g F .text 000000d6 RCC_GetClocksFreq
-0000040a w .text 00000000 DMA1_Channel6_IRQHandler
-00001442 g F .text 00000040 __sfputs_r
-200000a4 g O .bss 00000004 TS_Val
-00001c5a g F .text 00000018 memchr
-00000940 g F .text 000000ba USART_Init
-0000129e g F .text 000000a8 _free_r
-0000040a w .text 00000000 TIM3_IRQHandler
-0000040a w .text 00000000 RCC_IRQHandler
+00000526 w .text 00000000 I2C1_EV_IRQHandler
+00000526 w .text 00000000 USART4_IRQHandler
+00000b7c g F .text 00000018 TIM_GetITStatus
+000009ca g F .text 000000d6 RCC_GetClocksFreq
+00000526 w .text 00000000 DMA1_Channel6_IRQHandler
+000016a4 g F .text 00000040 __sfputs_r
+200000a8 g O .bss 00000004 TS_Val
+00001ebc g F .text 00000018 memchr
+00000ba0 g F .text 000000ba USART_Init
+00001500 g F .text 000000a8 _free_r
+00000526 w .text 00000000 TIM3_IRQHandler
+00000526 w .text 00000000 RCC_IRQHandler
00000170 g F .text 0000000c .hidden __riscv_save_3
-0000040a w .text 00000000 TIM1_TRG_COM_IRQHandler
-0000040a w .text 00000000 DMA1_Channel1_IRQHandler
+00000526 w .text 00000000 TIM1_TRG_COM_IRQHandler
+00000526 w .text 00000000 DMA1_Channel1_IRQHandler
00000000 g .init 00000000 _start
-00001cc6 g F .text 0000000c _lseek
-0000040a w .text 00000000 EXTI15_10_IRQHandler
-0000040a w .text 00000000 ADC_IRQHandler
-200000a0 g O .bss 00000004 OPA_Trim
-0000040a w .text 00000000 DMA1_Channel8_IRQHandler
-00001bb4 g F .text 00000028 _close_r
+2000009a g O .bss 00000001 g_timer1SFlag
+00001f28 g F .text 0000000c _lseek
+00000abe g F .text 0000001e RCC_PB1PeriphClockCmd
+00000526 w .text 00000000 EXTI15_10_IRQHandler
+00000b6a g F .text 00000012 TIM_ITConfig
+00000526 w .text 00000000 ADC_IRQHandler
+200000a4 g O .bss 00000004 OPA_Trim
+00000526 w .text 00000000 DMA1_Channel8_IRQHandler
+00001e16 g F .text 00000028 _close_r
20000000 g .dalign 00000000 _data_vma
-00000d04 g F .text 000000fc __swsetup_r
-0000040a w .text 00000000 EXTI9_5_IRQHandler
-000010b0 g F .text 0000009c __sfp
+00000f66 g F .text 000000fc __swsetup_r
+00000526 w .text 00000000 EXTI9_5_IRQHandler
+00001312 g F .text 0000009c __sfp
00000148 g F .text 00000028 .hidden __riscv_save_10
-00001adc g F .text 0000002c __sread
-00001c72 g F .text 00000002 __malloc_lock
+00001d3e g F .text 0000002c __sread
+00001ed4 g F .text 00000002 __malloc_lock
0000018a g F .text 00000016 .hidden __riscv_restore_4
00000180 g F .text 00000020 .hidden __riscv_restore_8
-00000f30 g F .text 00000064 _fflush_r
+00001192 g F .text 00000064 _fflush_r
00000156 g F .text 0000001a .hidden __riscv_save_6
-0000040a w .text 00000000 SPI2_IRQHandler
-00001d3c g O .text 00000020 __sf_fake_stdin
+00000526 w .text 00000000 SPI2_IRQHandler
+00001f9c g O .text 00000020 __sf_fake_stdin
000001a0 g F .text 000000a8 memset
00000180 g F .text 00000020 .hidden __riscv_restore_9
0000018a g F .text 00000016 .hidden __riscv_restore_7
-0000025a g F .text 00000052 main
-00001b80 g F .text 00000006 __sclose
-00001346 g F .text 000000d4 _malloc_r
-0000040a w .text 00000000 DMA1_Channel5_IRQHandler
-0000040a w .text 00000000 EXTI4_IRQHandler
-00000a42 g F .text 00000036 Delay_Ms
-0000040a w .text 00000000 USB_LP_CAN1_RX0_IRQHandler
-000002ac g F .text 000000ba SystemInit
-00000b2a g F .text 00000040 iprintf
-0000040a w .text 00000000 USB_HP_CAN1_TX_IRQHandler
+00000342 g F .text 0000006a main
+00001de2 g F .text 00000006 __sclose
+000015a8 g F .text 000000d4 _malloc_r
+00000526 w .text 00000000 DMA1_Channel5_IRQHandler
+00000526 w .text 00000000 EXTI4_IRQHandler
+00000ca2 g F .text 00000036 Delay_Ms
+00000526 w .text 00000000 USB_LP_CAN1_RX0_IRQHandler
+000003ac g F .text 000000d6 SystemInit
+00000d8c g F .text 00000040 iprintf
+00000526 w .text 00000000 USB_HP_CAN1_TX_IRQHandler
00000000 g .init 00000000 _sinit
-0000040a w .text 00000000 CMPWakeUp_IRQHandler
-00001b86 g F .text 0000002e _write_r
-0000040a w .text 00000000 DMA1_Channel3_IRQHandler
-00001706 g F .text 0000010c _printf_common
+00000526 w .text 00000000 CMPWakeUp_IRQHandler
+00001de8 g F .text 0000002e _write_r
+00000526 w .text 00000000 DMA1_Channel3_IRQHandler
+00001968 g F .text 0000010c _printf_common
2000008c g O .data 00000004 _impure_ptr
-0000040a w .text 00000000 TIM1_UP_IRQHandler
-00000e00 g F .text 00000130 __sflush_r
-0000040a w .text 00000000 LPTIMWakeUp_IRQHandler
-0000040a w .text 00000000 WWDG_IRQHandler
-0000040a w .text 00000000 Ecall_U_Mode_Handler
-0000040a w .text 00000000 TIM2_IRQHandler
+00000526 w .text 00000000 TIM1_UP_IRQHandler
+00001062 g F .text 00000130 __sflush_r
+00000526 w .text 00000000 LPTIMWakeUp_IRQHandler
+00000526 w .text 00000000 WWDG_IRQHandler
+00000526 w .text 00000000 Ecall_U_Mode_Handler
+000002d4 g F .text 0000005c TIM2_IRQHandler
20005000 g .stack 00000000 _eusrstack
00000170 g F .text 0000000c .hidden __riscv_save_2
-0000040a w .text 00000000 SW_Handler
-0000040a w .text 00000000 TIM1_BRK_IRQHandler
-000011b6 g F .text 00000058 __swhatbuf_r
-00000a10 g F .text 00000008 USART_SendData
-0000040a w .text 00000000 OPA_IRQHandler
-0000040a w .text 00000000 EXTI1_IRQHandler
+00000526 w .text 00000000 SW_Handler
+00000526 w .text 00000000 TIM1_BRK_IRQHandler
+00001418 g F .text 00000058 __swhatbuf_r
+00000c70 g F .text 00000008 USART_SendData
+00000526 w .text 00000000 OPA_IRQHandler
+00000526 w .text 00000000 EXTI1_IRQHandler
00000156 g F .text 0000001a .hidden __riscv_save_5
-00000aca g F .text 0000003a _write
+00000d2c g F .text 0000003a _write
20000098 g .data 00000000 _edata
-200000c0 g .bss 00000000 _end
-0000040a w .text 00000000 RTCAlarm_IRQHandler
-00001db8 g .dlalign 00000000 _data_lma
-0000040a w .text 00000000 USART2_IRQHandler
-00001b08 g F .text 00000048 __swrite
-00001482 g F .text 00000284 _vfiprintf_r
-0000114c g F .text 0000006a _fwalk_reent
-00000366 g F .text 000000a4 SystemCoreClockUpdate
-0000040a w .text 00000000 I2C2_ER_IRQHandler
-0000040a w .text 00000000 DMA1_Channel2_IRQHandler
-00001d5c g O .text 00000020 __sf_fake_stdout
+200000c4 g .bss 00000000 _end
+00000adc g F .text 00000076 TIM_TimeBaseInit
+00000526 w .text 00000000 RTCAlarm_IRQHandler
+00002018 g .dlalign 00000000 _data_lma
+00000526 w .text 00000000 USART2_IRQHandler
+00001d6a g F .text 00000048 __swrite
+000016e4 g F .text 00000284 _vfiprintf_r
+000013ae g F .text 0000006a _fwalk_reent
+00000482 g F .text 000000a4 SystemCoreClockUpdate
+00000526 w .text 00000000 I2C2_ER_IRQHandler
+00000526 w .text 00000000 DMA1_Channel2_IRQHandler
+00001fbc g O .text 00000020 __sf_fake_stdout
20000000 g O .data 00000010 HBPrescTable
0000017c g F .text 00000024 .hidden __riscv_restore_12
-00001cd2 g F .text 0000000c _read
-0000040c w .text 00000000 handle_reset
-0000040a w .text 00000000 CAN1_SCE_IRQHandler
+00001f34 g F .text 0000000c _read
+00000528 w .text 00000000 handle_reset
+00000526 w .text 00000000 CAN1_SCE_IRQHandler
+00000526 w .text 00000000 FLASH_IRQHandler
00000170 g F .text 0000000c .hidden __riscv_save_0
-0000040a w .text 00000000 FLASH_IRQHandler
-0000040a w .text 00000000 USBFSWakeUp_IRQHandler
-0000040a w .text 00000000 USART1_IRQHandler
-0000120e g F .text 00000090 __smakebuf_r
-00001812 g F .text 000002a0 _printf_i
-200000b8 g O .bss 00000004 __malloc_sbrk_start
-0000040a w .text 00000000 I2C1_ER_IRQHandler
-00000846 g F .text 00000006 NVIC_PriorityGroupConfig
-200000b4 g O .bss 00000004 __malloc_free_list
+00000526 w .text 00000000 USBFSWakeUp_IRQHandler
+00000526 w .text 00000000 USART1_IRQHandler
+00001470 g F .text 00000090 __smakebuf_r
+00001a74 g F .text 000002a0 _printf_i
+200000bc g O .bss 00000004 __malloc_sbrk_start
+00000526 w .text 00000000 I2C1_ER_IRQHandler
+00000970 g F .text 00000006 NVIC_PriorityGroupConfig
+200000b8 g O .bss 00000004 __malloc_free_list
00000194 g F .text 0000000c .hidden __riscv_restore_1
-00001482 g F .text 00000284 _vfprintf_r
-00001ca2 g F .text 0000000c _close
+000016e4 g F .text 00000284 _vfprintf_r
+00000280 g F .text 00000054 all_tim_Init
+00001f04 g F .text 0000000c _close
Disassembly of section .init:
00000000 <_sinit>:
- 0: 40c0006f j 40c
+ 0: 5280006f j 528
Disassembly of section .vector:
00000004 <_vector_base>:
...
- c: 0248 addi a0,sp,260
+ c: 0330 addi a2,sp,392
e: 0000 unimp
- 10: 024a slli tp,tp,0x12
+ 10: 0332 slli t1,t1,0xc
12: 0000 unimp
14: 0000 unimp
16: 0000 unimp
- 18: 040a slli s0,s0,0x2
+ 18: 0526 slli a0,a0,0x9
...
22: 0000 unimp
- 24: 040a slli s0,s0,0x2
+ 24: 0526 slli a0,a0,0x9
26: 0000 unimp
- 28: 040a slli s0,s0,0x2
+ 28: 0526 slli a0,a0,0x9
...
32: 0000 unimp
- 34: 040a slli s0,s0,0x2
+ 34: 0526 slli a0,a0,0x9
36: 0000 unimp
38: 0000 unimp
3a: 0000 unimp
- 3c: 040a slli s0,s0,0x2
+ 3c: 0526 slli a0,a0,0x9
3e: 0000 unimp
40: 0000 unimp
42: 0000 unimp
- 44: 040a slli s0,s0,0x2
+ 44: 0526 slli a0,a0,0x9
46: 0000 unimp
- 48: 040a slli s0,s0,0x2
+ 48: 0526 slli a0,a0,0x9
4a: 0000 unimp
- 4c: 040a slli s0,s0,0x2
+ 4c: 0526 slli a0,a0,0x9
4e: 0000 unimp
- 50: 040a slli s0,s0,0x2
+ 50: 0526 slli a0,a0,0x9
52: 0000 unimp
- 54: 040a slli s0,s0,0x2
+ 54: 0526 slli a0,a0,0x9
56: 0000 unimp
- 58: 040a slli s0,s0,0x2
+ 58: 0526 slli a0,a0,0x9
5a: 0000 unimp
- 5c: 040a slli s0,s0,0x2
+ 5c: 0526 slli a0,a0,0x9
5e: 0000 unimp
- 60: 040a slli s0,s0,0x2
+ 60: 0526 slli a0,a0,0x9
62: 0000 unimp
- 64: 040a slli s0,s0,0x2
+ 64: 0526 slli a0,a0,0x9
66: 0000 unimp
- 68: 040a slli s0,s0,0x2
+ 68: 0526 slli a0,a0,0x9
6a: 0000 unimp
- 6c: 040a slli s0,s0,0x2
+ 6c: 0526 slli a0,a0,0x9
6e: 0000 unimp
- 70: 040a slli s0,s0,0x2
+ 70: 0526 slli a0,a0,0x9
72: 0000 unimp
- 74: 040a slli s0,s0,0x2
+ 74: 0526 slli a0,a0,0x9
76: 0000 unimp
- 78: 040a slli s0,s0,0x2
+ 78: 0526 slli a0,a0,0x9
7a: 0000 unimp
- 7c: 040a slli s0,s0,0x2
+ 7c: 0526 slli a0,a0,0x9
7e: 0000 unimp
- 80: 040a slli s0,s0,0x2
+ 80: 0526 slli a0,a0,0x9
82: 0000 unimp
- 84: 040a slli s0,s0,0x2
+ 84: 0526 slli a0,a0,0x9
86: 0000 unimp
- 88: 040a slli s0,s0,0x2
+ 88: 0526 slli a0,a0,0x9
8a: 0000 unimp
- 8c: 040a slli s0,s0,0x2
+ 8c: 0526 slli a0,a0,0x9
8e: 0000 unimp
- 90: 040a slli s0,s0,0x2
+ 90: 0526 slli a0,a0,0x9
92: 0000 unimp
- 94: 040a slli s0,s0,0x2
+ 94: 0526 slli a0,a0,0x9
96: 0000 unimp
- 98: 040a slli s0,s0,0x2
+ 98: 0526 slli a0,a0,0x9
9a: 0000 unimp
- 9c: 040a slli s0,s0,0x2
+ 9c: 0526 slli a0,a0,0x9
9e: 0000 unimp
- a0: 040a slli s0,s0,0x2
+ a0: 0526 slli a0,a0,0x9
a2: 0000 unimp
- a4: 040a slli s0,s0,0x2
+ a4: 0526 slli a0,a0,0x9
a6: 0000 unimp
- a8: 040a slli s0,s0,0x2
+ a8: 0526 slli a0,a0,0x9
aa: 0000 unimp
- ac: 040a slli s0,s0,0x2
+ ac: 0526 slli a0,a0,0x9
ae: 0000 unimp
- b0: 040a slli s0,s0,0x2
+ b0: 0526 slli a0,a0,0x9
b2: 0000 unimp
- b4: 040a slli s0,s0,0x2
+ b4: 02d4 addi a3,sp,324
b6: 0000 unimp
- b8: 040a slli s0,s0,0x2
+ b8: 0526 slli a0,a0,0x9
ba: 0000 unimp
- bc: 040a slli s0,s0,0x2
+ bc: 0526 slli a0,a0,0x9
be: 0000 unimp
- c0: 040a slli s0,s0,0x2
+ c0: 0526 slli a0,a0,0x9
c2: 0000 unimp
- c4: 040a slli s0,s0,0x2
+ c4: 0526 slli a0,a0,0x9
c6: 0000 unimp
- c8: 040a slli s0,s0,0x2
+ c8: 0526 slli a0,a0,0x9
ca: 0000 unimp
- cc: 040a slli s0,s0,0x2
+ cc: 0526 slli a0,a0,0x9
ce: 0000 unimp
- d0: 040a slli s0,s0,0x2
+ d0: 0526 slli a0,a0,0x9
d2: 0000 unimp
- d4: 040a slli s0,s0,0x2
+ d4: 0526 slli a0,a0,0x9
d6: 0000 unimp
- d8: 040a slli s0,s0,0x2
+ d8: 0526 slli a0,a0,0x9
da: 0000 unimp
- dc: 040a slli s0,s0,0x2
+ dc: 0526 slli a0,a0,0x9
de: 0000 unimp
- e0: 040a slli s0,s0,0x2
+ e0: 0526 slli a0,a0,0x9
e2: 0000 unimp
- e4: 040a slli s0,s0,0x2
+ e4: 0526 slli a0,a0,0x9
e6: 0000 unimp
- e8: 040a slli s0,s0,0x2
+ e8: 0526 slli a0,a0,0x9
ea: 0000 unimp
- ec: 040a slli s0,s0,0x2
+ ec: 0526 slli a0,a0,0x9
ee: 0000 unimp
- f0: 040a slli s0,s0,0x2
+ f0: 0526 slli a0,a0,0x9
f2: 0000 unimp
- f4: 040a slli s0,s0,0x2
+ f4: 0526 slli a0,a0,0x9
f6: 0000 unimp
- f8: 040a slli s0,s0,0x2
+ f8: 0526 slli a0,a0,0x9
fa: 0000 unimp
- fc: 040a slli s0,s0,0x2
+ fc: 0526 slli a0,a0,0x9
fe: 0000 unimp
- 100: 040a slli s0,s0,0x2
+ 100: 0526 slli a0,a0,0x9
102: 0000 unimp
- 104: 040a slli s0,s0,0x2
+ 104: 0526 slli a0,a0,0x9
106: 0000 unimp
- 108: 040a slli s0,s0,0x2
+ 108: 0526 slli a0,a0,0x9
10a: 0000 unimp
10c: 0000 unimp
10e: 0000 unimp
- 110: 040a slli s0,s0,0x2
+ 110: 0526 slli a0,a0,0x9
112: 0000 unimp
- 114: 040a slli s0,s0,0x2
+ 114: 0526 slli a0,a0,0x9
...
Disassembly of section .text:
@@ -563,2749 +584,3008 @@ Disassembly of section .text:
242: f8c374e3 bgeu t1,a2,1ca
246: b7a5 j 1ae
-00000248 :
- 248: a001 j 248
+00000248 :
+ 248: f29ff2ef jal t0,170 <__riscv_save_0>
+ 24c: 1141 addi sp,sp,-16
+ 24e: 4585 li a1,1
+ 250: 4541 li a0,16
+ 252: 04f000ef jal ra,aa0
+ 256: 6789 lui a5,0x2
+ 258: 827c sh a5,4(sp)
+ 25a: 47c1 li a5,16
+ 25c: c63e sw a5,12(sp)
+ 25e: 004c addi a1,sp,4
+ 260: 478d li a5,3
+ 262: 40011537 lui a0,0x40011
+ 266: c43e sw a5,8(sp)
+ 268: 26b1 jal 5b4
+ 26a: 6589 lui a1,0x2
+ 26c: 40011537 lui a0,0x40011
+ 270: 2111 jal 674
+ 272: 0141 addi sp,sp,16
+ 274: b705 j 194 <__riscv_restore_0>
-0000024a :
- 24a: beef07b7 lui a5,0xbeef0
- 24e: e000e737 lui a4,0xe000e
- 252: 08078793 addi a5,a5,128 # beef0080 <_eusrstack+0x9eeeb080>
- 256: c73c sw a5,72(a4)
- 258: a001 j 258
+00000276 :
+ 276: efbff2ef jal t0,170 <__riscv_save_0>
+ 27a: 37f9 jal 248
+ 27c: 2011 jal 280
+ 27e: bf19 j 194 <__riscv_restore_0>
-0000025a :
- 25a: f17ff2ef jal t0,170 <__riscv_save_0>
- 25e: 4505 li a0,1
- 260: 23dd jal 846
- 262: 2211 jal 366
- 264: 7be000ef jal ra,a22
- 268: 6571 lui a0,0x1c
- 26a: 20050513 addi a0,a0,512 # 1c200 <_data_lma+0x1a448>
- 26e: 00b000ef jal ra,a78
- 272: 200007b7 lui a5,0x20000
- 276: 0807a583 lw a1,128(a5) # 20000080
- 27a: 00002537 lui a0,0x2
- 27e: ce050513 addi a0,a0,-800 # 1ce0 <_read+0xe>
- 282: 0a9000ef jal ra,b2a
- 286: 2431 jal 492
- 288: 85aa mv a1,a0
- 28a: 00002537 lui a0,0x2
- 28e: cf050513 addi a0,a0,-784 # 1cf0 <_read+0x1e>
- 292: 099000ef jal ra,b2a
- 296: 00002437 lui s0,0x2
- 29a: 3e800513 li a0,1000
- 29e: 7a4000ef jal ra,a42
- 2a2: d0040513 addi a0,s0,-768 # 1d00 <_read+0x2e>
- 2a6: 199000ef jal ra,c3e
- 2aa: bfc5 j 29a
+00000280 :
+ 280: ef1ff2ef jal t0,170 <__riscv_save_0>
+ 284: 1101 addi sp,sp,-32
+ 286: 4585 li a1,1
+ 288: 4505 li a0,1
+ 28a: 035000ef jal ra,abe
+ 28e: 6785 lui a5,0x1
+ 290: 38778793 addi a5,a5,903 # 1387 <__sfp+0x75>
+ 294: ca3e sw a5,20(sp)
+ 296: 084c addi a1,sp,20
+ 298: 479d li a5,7
+ 29a: 40000537 lui a0,0x40000
+ 29e: cc3e sw a5,24(sp)
+ 2a0: 00011e23 sh zero,28(sp)
+ 2a4: 039000ef jal ra,adc
+ 2a8: 4605 li a2,1
+ 2aa: 4585 li a1,1
+ 2ac: 40000537 lui a0,0x40000
+ 2b0: 0bb000ef jal ra,b6a
+ 2b4: 02c00793 li a5,44
+ 2b8: 867c sh a5,12(sp)
+ 2ba: 478d li a5,3
+ 2bc: 875c sb a5,14(sp)
+ 2be: 0068 addi a0,sp,12
+ 2c0: 4785 li a5,1
+ 2c2: c83e sw a5,16(sp)
+ 2c4: 2d4d jal 976
+ 2c6: 4585 li a1,1
+ 2c8: 40000537 lui a0,0x40000
+ 2cc: 087000ef jal ra,b52
+ 2d0: 6105 addi sp,sp,32
+ 2d2: b5c9 j 194 <__riscv_restore_0>
-000002ac :
- 2ac: ec5ff2ef jal t0,170 <__riscv_save_0>
- 2b0: 40021437 lui s0,0x40021
- 2b4: 401c lw a5,0(s0)
- 2b6: 08ff0737 lui a4,0x8ff0
- 2ba: 0017e793 ori a5,a5,1
- 2be: c01c sw a5,0(s0)
- 2c0: 405c lw a5,4(s0)
- 2c2: 8ff9 and a5,a5,a4
- 2c4: c05c sw a5,4(s0)
- 2c6: 401c lw a5,0(s0)
- 2c8: fef70737 lui a4,0xfef70
- 2cc: 176d addi a4,a4,-5
- 2ce: 8ff9 and a5,a5,a4
- 2d0: c01c sw a5,0(s0)
- 2d2: 401c lw a5,0(s0)
- 2d4: fffc0737 lui a4,0xfffc0
- 2d8: 177d addi a4,a4,-1
- 2da: 8ff9 and a5,a5,a4
- 2dc: c01c sw a5,0(s0)
- 2de: 405c lw a5,4(s0)
- 2e0: ff010737 lui a4,0xff010
- 2e4: 177d addi a4,a4,-1
- 2e6: 8ff9 and a5,a5,a4
- 2e8: c05c sw a5,4(s0)
- 2ea: 009f07b7 lui a5,0x9f0
- 2ee: c41c sw a5,8(s0)
- 2f0: 2e51 jal 684
- 2f2: 400227b7 lui a5,0x40022
- 2f6: 4709 li a4,2
- 2f8: c398 sw a4,0(a5)
- 2fa: 40024737 lui a4,0x40024
- 2fe: 80072783 lw a5,-2048(a4) # 40023800 <_eusrstack+0x2001e800>
- 302: 0107e793 ori a5,a5,16
- 306: 80f72023 sw a5,-2048(a4)
- 30a: 405c lw a5,4(s0)
- 30c: ffc10737 lui a4,0xffc10
- 310: 177d addi a4,a4,-1
- 312: c05c sw a5,4(s0)
- 314: 405c lw a5,4(s0)
- 316: c05c sw a5,4(s0)
- 318: 405c lw a5,4(s0)
- 31a: 4007e793 ori a5,a5,1024
- 31e: c05c sw a5,4(s0)
- 320: 405c lw a5,4(s0)
- 322: 8ff9 and a5,a5,a4
- 324: c05c sw a5,4(s0)
- 326: 405c lw a5,4(s0)
- 328: 00280737 lui a4,0x280
- 32c: 8fd9 or a5,a5,a4
- 32e: c05c sw a5,4(s0)
- 330: 401c lw a5,0(s0)
- 332: 01000737 lui a4,0x1000
- 336: 8fd9 or a5,a5,a4
- 338: c01c sw a5,0(s0)
- 33a: 400217b7 lui a5,0x40021
- 33e: 4398 lw a4,0(a5)
- 340: 00671693 slli a3,a4,0x6
- 344: fe06dde3 bgez a3,33e
- 348: 43d8 lw a4,4(a5)
- 34a: 400216b7 lui a3,0x40021
- 34e: 9b71 andi a4,a4,-4
- 350: c3d8 sw a4,4(a5)
- 352: 43d8 lw a4,4(a5)
- 354: 00276713 ori a4,a4,2
- 358: c3d8 sw a4,4(a5)
- 35a: 4721 li a4,8
- 35c: 42dc lw a5,4(a3)
- 35e: 8bb1 andi a5,a5,12
- 360: fee79ee3 bne a5,a4,35c
- 364: bd05 j 194 <__riscv_restore_0>
+000002d4 :
+ 2d4: 4585 li a1,1
+ 2d6: 40000537 lui a0,0x40000
+ 2da: 0a3000ef jal ra,b7c
+ 2de: c539 beqz a0,32c
+ 2e0: 81918593 addi a1,gp,-2023 # 20000099
+ 2e4: 81818693 addi a3,gp,-2024 # 20000098 <_edata>
+ 2e8: 219c lbu a5,0(a1)
+ 2ea: 2298 lbu a4,0(a3)
+ 2ec: 81918613 addi a2,gp,-2023 # 20000099
+ 2f0: 0785 addi a5,a5,1
+ 2f2: 0705 addi a4,a4,1
+ 2f4: 0ff77713 andi a4,a4,255
+ 2f8: 0ff7f793 andi a5,a5,255
+ 2fc: a19c sb a5,0(a1)
+ 2fe: a298 sb a4,0(a3)
+ 300: 45a5 li a1,9
+ 302: 00e5f763 bgeu a1,a4,310
+ 306: 00068023 sb zero,0(a3)
+ 30a: 4685 li a3,1
+ 30c: 80d18da3 sb a3,-2021(gp) # 2000009b
+ 310: 0c700713 li a4,199
+ 314: 00f77763 bgeu a4,a5,322
+ 318: 4705 li a4,1
+ 31a: 00060023 sb zero,0(a2)
+ 31e: 80e18d23 sb a4,-2022(gp) # 2000009a
+ 322: 4585 li a1,1
+ 324: 40000537 lui a0,0x40000
+ 328: 06d000ef jal ra,b94
+ 32c: 30200073 mret
-00000366 :
- 366: 400216b7 lui a3,0x40021
- 36a: 42dc lw a5,4(a3)
- 36c: 20000737 lui a4,0x20000
- 370: 4611 li a2,4
- 372: 8bb1 andi a5,a5,12
- 374: 08070713 addi a4,a4,128 # 20000080
- 378: 02c78f63 beq a5,a2,3b6
- 37c: 4621 li a2,8
- 37e: 04c78163 beq a5,a2,3c0
- 382: eb95 bnez a5,3b6
- 384: 429c lw a5,0(a3)
- 386: 8b91 andi a5,a5,4
- 388: c79d beqz a5,3b6
- 38a: 000f47b7 lui a5,0xf4
- 38e: 24078793 addi a5,a5,576 # f4240 <_data_lma+0xf2488>
- 392: c31c sw a5,0(a4)
- 394: 400217b7 lui a5,0x40021
- 398: 43dc lw a5,4(a5)
- 39a: 8391 srli a5,a5,0x4
- 39c: 00f7f693 andi a3,a5,15
- 3a0: 200007b7 lui a5,0x20000
- 3a4: 00078793 mv a5,a5
- 3a8: 97b6 add a5,a5,a3
- 3aa: 2394 lbu a3,0(a5)
- 3ac: 431c lw a5,0(a4)
- 3ae: 00d7d7b3 srl a5,a5,a3
- 3b2: c31c sw a5,0(a4)
- 3b4: 8082 ret
- 3b6: 007a17b7 lui a5,0x7a1
- 3ba: 20078793 addi a5,a5,512 # 7a1200 <_data_lma+0x79f448>
- 3be: bfd1 j 392
- 3c0: 42dc lw a5,4(a3)
- 3c2: 42d4 lw a3,4(a3)
- 3c4: 6641 lui a2,0x10
- 3c6: 83c9 srli a5,a5,0x12
- 3c8: 8bbd andi a5,a5,15
- 3ca: 8ef1 and a3,a3,a2
- 3cc: 0789 addi a5,a5,2
- 3ce: 4645 li a2,17
- 3d0: 00c79363 bne a5,a2,3d6
- 3d4: 47c9 li a5,18
- 3d6: ee81 bnez a3,3ee
- 3d8: 400246b7 lui a3,0x40024
- 3dc: 8006a683 lw a3,-2048(a3) # 40023800 <_eusrstack+0x2001e800>
- 3e0: 8ac1 andi a3,a3,16
- 3e2: ce89 beqz a3,3fc
- 3e4: 007a16b7 lui a3,0x7a1
- 3e8: 20068693 addi a3,a3,512 # 7a1200 <_data_lma+0x79f448>
- 3ec: a821 j 404
- 3ee: 400216b7 lui a3,0x40021
- 3f2: 42d4 lw a3,4(a3)
- 3f4: 00e69613 slli a2,a3,0xe
- 3f8: fe0656e3 bgez a2,3e4
- 3fc: 003d16b7 lui a3,0x3d1
- 400: 90068693 addi a3,a3,-1792 # 3d0900 <_data_lma+0x3ceb48>
- 404: 02d787b3 mul a5,a5,a3
- 408: b769 j 392
+00000330 :
+ 330: a001 j 330
-0000040a :
- 40a: a001 j 40a
+00000332 :
+ 332: beef07b7 lui a5,0xbeef0
+ 336: e000e737 lui a4,0xe000e
+ 33a: 08078793 addi a5,a5,128 # beef0080 <_eusrstack+0x9eeeb080>
+ 33e: c73c sw a5,72(a4)
+ 340: a001 j 340
-0000040c :
- 40c: 20000197 auipc gp,0x20000
- 410: 47418193 addi gp,gp,1140 # 20000880 <__global_pointer$>
- 414: 20005117 auipc sp,0x20005
- 418: bec10113 addi sp,sp,-1044 # 20005000 <_eusrstack>
- 41c: 00002517 auipc a0,0x2
- 420: 99c50513 addi a0,a0,-1636 # 1db8 <_data_lma>
- 424: 20000597 auipc a1,0x20000
- 428: bdc58593 addi a1,a1,-1060 # 20000000 <_data_vma>
- 42c: 81818613 addi a2,gp,-2024 # 20000098 <_edata>
- 430: 00c5fa63 bgeu a1,a2,444
- 434: 00052283 lw t0,0(a0)
- 438: 0055a023 sw t0,0(a1)
- 43c: 0511 addi a0,a0,4
- 43e: 0591 addi a1,a1,4
- 440: fec5eae3 bltu a1,a2,434
- 444: 81818513 addi a0,gp,-2024 # 20000098 <_edata>
- 448: 84018593 addi a1,gp,-1984 # 200000c0 <_ebss>
- 44c: 00b57763 bgeu a0,a1,45a
- 450: 00052023 sw zero,0(a0)
- 454: 0511 addi a0,a0,4
- 456: feb56de3 bltu a0,a1,450
- 45a: 42fd li t0,31
- 45c: bc029073 csrw 0xbc0,t0
- 460: 428d li t0,3
- 462: 80429073 csrw 0x804,t0
- 466: 08800293 li t0,136
- 46a: 30029073 csrw mstatus,t0
- 46e: 00000297 auipc t0,0x0
- 472: b9628293 addi t0,t0,-1130 # 4 <_einit>
- 476: 0032e293 ori t0,t0,3
- 47a: 30529073 csrw mtvec,t0
- 47e: e2fff0ef jal ra,2ac
- 482: 00000297 auipc t0,0x0
- 486: dd828293 addi t0,t0,-552 # 25a
- 48a: 34129073 csrw mepc,t0
- 48e: 30200073 mret
+00000342 :
+ 342: e2fff2ef jal t0,170 <__riscv_save_0>
+ 346: 4505 li a0,1
+ 348: 2525 jal 970
+ 34a: 2a25 jal 482
+ 34c: 137000ef jal ra,c82
+ 350: 6571 lui a0,0x1c
+ 352: 20050513 addi a0,a0,512 # 1c200 <_data_lma+0x1a1e8>
+ 356: 183000ef jal ra,cd8
+ 35a: 3f31 jal 276
+ 35c: 200007b7 lui a5,0x20000
+ 360: 0807a583 lw a1,128(a5) # 20000080
+ 364: 00002537 lui a0,0x2
+ 368: f4050513 addi a0,a0,-192 # 1f40 <_read+0xc>
+ 36c: 221000ef jal ra,d8c
+ 370: 2c3d jal 5ae
+ 372: 85aa mv a1,a0
+ 374: 00002537 lui a0,0x2
+ 378: f5050513 addi a0,a0,-176 # 1f50 <_read+0x1c>
+ 37c: 211000ef jal ra,d8c
+ 380: 4405 li s0,1
+ 382: 000024b7 lui s1,0x2
+ 386: 3e800513 li a0,1000
+ 38a: 119000ef jal ra,ca2
+ 38e: cc01 beqz s0,3a6
+ 390: 4601 li a2,0
+ 392: 4401 li s0,0
+ 394: 6589 lui a1,0x2
+ 396: 40011537 lui a0,0x40011
+ 39a: 2cf9 jal 678
+ 39c: f6048513 addi a0,s1,-160 # 1f60 <_read+0x2c>
+ 3a0: 301000ef jal ra,ea0
+ 3a4: b7cd j 386
+ 3a6: 4605 li a2,1
+ 3a8: 4405 li s0,1
+ 3aa: b7ed j 394
-00000492 :
- 492: 81c1a503 lw a0,-2020(gp) # 2000009c
- 496: 8082 ret
+000003ac :
+ 3ac: dc5ff2ef jal t0,170 <__riscv_save_0>
+ 3b0: 40021437 lui s0,0x40021
+ 3b4: 401c lw a5,0(s0)
+ 3b6: 08ff0737 lui a4,0x8ff0
+ 3ba: 1141 addi sp,sp,-16
+ 3bc: 0017e793 ori a5,a5,1
+ 3c0: c01c sw a5,0(s0)
+ 3c2: 405c lw a5,4(s0)
+ 3c4: 8ff9 and a5,a5,a4
+ 3c6: c05c sw a5,4(s0)
+ 3c8: 401c lw a5,0(s0)
+ 3ca: fef70737 lui a4,0xfef70
+ 3ce: 176d addi a4,a4,-5
+ 3d0: 8ff9 and a5,a5,a4
+ 3d2: c01c sw a5,0(s0)
+ 3d4: 401c lw a5,0(s0)
+ 3d6: fffc0737 lui a4,0xfffc0
+ 3da: 177d addi a4,a4,-1
+ 3dc: 8ff9 and a5,a5,a4
+ 3de: c01c sw a5,0(s0)
+ 3e0: 405c lw a5,4(s0)
+ 3e2: ff010737 lui a4,0xff010
+ 3e6: 177d addi a4,a4,-1
+ 3e8: 8ff9 and a5,a5,a4
+ 3ea: c05c sw a5,4(s0)
+ 3ec: 009f07b7 lui a5,0x9f0
+ 3f0: c41c sw a5,8(s0)
+ 3f2: 2e75 jal 7ae
+ 3f4: c402 sw zero,8(sp)
+ 3f6: c602 sw zero,12(sp)
+ 3f8: 400227b7 lui a5,0x40022
+ 3fc: 0007a023 sw zero,0(a5) # 40022000 <_eusrstack+0x2001d000>
+ 400: 401c lw a5,0(s0)
+ 402: 6741 lui a4,0x10
+ 404: 400216b7 lui a3,0x40021
+ 408: 8fd9 or a5,a5,a4
+ 40a: c01c sw a5,0(s0)
+ 40c: 00020637 lui a2,0x20
+ 410: 6705 lui a4,0x1
+ 412: 429c lw a5,0(a3)
+ 414: 8ff1 and a5,a5,a2
+ 416: c63e sw a5,12(sp)
+ 418: 47a2 lw a5,8(sp)
+ 41a: 0785 addi a5,a5,1
+ 41c: c43e sw a5,8(sp)
+ 41e: 47b2 lw a5,12(sp)
+ 420: e781 bnez a5,428
+ 422: 47a2 lw a5,8(sp)
+ 424: fee797e3 bne a5,a4,412
+ 428: 400217b7 lui a5,0x40021
+ 42c: 439c lw a5,0(a5)
+ 42e: 00e79713 slli a4,a5,0xe
+ 432: 04075063 bgez a4,472
+ 436: 4785 li a5,1
+ 438: c63e sw a5,12(sp)
+ 43a: 4732 lw a4,12(sp)
+ 43c: 4785 li a5,1
+ 43e: 02f71c63 bne a4,a5,476
+ 442: 400217b7 lui a5,0x40021
+ 446: 43d8 lw a4,4(a5)
+ 448: 400216b7 lui a3,0x40021
+ 44c: c3d8 sw a4,4(a5)
+ 44e: 43d8 lw a4,4(a5)
+ 450: c3d8 sw a4,4(a5)
+ 452: 43d8 lw a4,4(a5)
+ 454: c3d8 sw a4,4(a5)
+ 456: 43d8 lw a4,4(a5)
+ 458: 9b71 andi a4,a4,-4
+ 45a: c3d8 sw a4,4(a5)
+ 45c: 43d8 lw a4,4(a5)
+ 45e: 00176713 ori a4,a4,1
+ 462: c3d8 sw a4,4(a5)
+ 464: 4711 li a4,4
+ 466: 42dc lw a5,4(a3)
+ 468: 8bb1 andi a5,a5,12
+ 46a: fee79ee3 bne a5,a4,466
+ 46e: 0141 addi sp,sp,16
+ 470: b315 j 194 <__riscv_restore_0>
+ 472: c602 sw zero,12(sp)
+ 474: b7d9 j 43a
+ 476: 40022737 lui a4,0x40022
+ 47a: 431c lw a5,0(a4)
+ 47c: 9bf1 andi a5,a5,-4
+ 47e: c31c sw a5,0(a4)
+ 480: b7fd j 46e
-00000498 :
- 498: 459c lw a5,8(a1)
- 49a: 0107f713 andi a4,a5,16
- 49e: 00f7f813 andi a6,a5,15
- 4a2: c701 beqz a4,4aa
- 4a4: 41d8 lw a4,4(a1)
- 4a6: 00e86833 or a6,a6,a4
- 4aa: 218e lhu a1,0(a1)
- 4ac: 0ff5f713 andi a4,a1,255
- 4b0: c339 beqz a4,4f6
- 4b2: 4118 lw a4,0(a0)
- 4b4: 4681 li a3,0
- 4b6: 4e85 li t4,1
- 4b8: 4f3d li t5,15
- 4ba: 02800f93 li t6,40
- 4be: 04800293 li t0,72
- 4c2: 4e21 li t3,8
- 4c4: 00de9633 sll a2,t4,a3
- 4c8: 00c5f8b3 and a7,a1,a2
- 4cc: 03161163 bne a2,a7,4ee
- 4d0: 00269893 slli a7,a3,0x2
- 4d4: 011f1333 sll t1,t5,a7
- 4d8: fff34313 not t1,t1
- 4dc: 00e37733 and a4,t1,a4
- 4e0: 011818b3 sll a7,a6,a7
- 4e4: 00e8e733 or a4,a7,a4
- 4e8: 05f79f63 bne a5,t6,546
- 4ec: c950 sw a2,20(a0)
- 4ee: 0685 addi a3,a3,1
- 4f0: fdc69ae3 bne a3,t3,4c4
- 4f4: c118 sw a4,0(a0)
- 4f6: 0ff00713 li a4,255
- 4fa: 04b77563 bgeu a4,a1,544
- 4fe: 4154 lw a3,4(a0)
- 500: 4621 li a2,8
- 502: 4e85 li t4,1
- 504: 4f3d li t5,15
- 506: 02800f93 li t6,40
- 50a: 04800293 li t0,72
- 50e: 4e41 li t3,16
- 510: 00ce98b3 sll a7,t4,a2
- 514: 0115f733 and a4,a1,a7
- 518: 02e89263 bne a7,a4,53c
- 51c: 00261713 slli a4,a2,0x2
- 520: 1701 addi a4,a4,-32
- 522: 00ef1333 sll t1,t5,a4
- 526: fff34313 not t1,t1
- 52a: 00d376b3 and a3,t1,a3
- 52e: 00e81733 sll a4,a6,a4
- 532: 8ed9 or a3,a3,a4
- 534: 01f79d63 bne a5,t6,54e
- 538: 01152a23 sw a7,20(a0)
- 53c: 0605 addi a2,a2,1
- 53e: fdc619e3 bne a2,t3,510
- 542: c154 sw a3,4(a0)
- 544: 8082 ret
- 546: fa5794e3 bne a5,t0,4ee
- 54a: c910 sw a2,16(a0)
- 54c: b74d j 4ee
- 54e: fe5797e3 bne a5,t0,53c
- 552: 01152823 sw a7,16(a0)
- 556: b7dd j 53c
+00000482 :
+ 482: 400216b7 lui a3,0x40021
+ 486: 42dc lw a5,4(a3)
+ 488: 20000737 lui a4,0x20000
+ 48c: 4611 li a2,4
+ 48e: 8bb1 andi a5,a5,12
+ 490: 08070713 addi a4,a4,128 # 20000080
+ 494: 02c78f63 beq a5,a2,4d2
+ 498: 4621 li a2,8
+ 49a: 04c78163 beq a5,a2,4dc
+ 49e: eb95 bnez a5,4d2
+ 4a0: 429c lw a5,0(a3)
+ 4a2: 8b91 andi a5,a5,4
+ 4a4: c79d beqz a5,4d2
+ 4a6: 000f47b7 lui a5,0xf4
+ 4aa: 24078793 addi a5,a5,576 # f4240 <_data_lma+0xf2228>
+ 4ae: c31c sw a5,0(a4)
+ 4b0: 400217b7 lui a5,0x40021
+ 4b4: 43dc lw a5,4(a5)
+ 4b6: 8391 srli a5,a5,0x4
+ 4b8: 00f7f693 andi a3,a5,15
+ 4bc: 200007b7 lui a5,0x20000
+ 4c0: 00078793 mv a5,a5
+ 4c4: 97b6 add a5,a5,a3
+ 4c6: 2394 lbu a3,0(a5)
+ 4c8: 431c lw a5,0(a4)
+ 4ca: 00d7d7b3 srl a5,a5,a3
+ 4ce: c31c sw a5,0(a4)
+ 4d0: 8082 ret
+ 4d2: 007a17b7 lui a5,0x7a1
+ 4d6: 20078793 addi a5,a5,512 # 7a1200 <_data_lma+0x79f1e8>
+ 4da: bfd1 j 4ae
+ 4dc: 42dc lw a5,4(a3)
+ 4de: 42d4 lw a3,4(a3)
+ 4e0: 6641 lui a2,0x10
+ 4e2: 83c9 srli a5,a5,0x12
+ 4e4: 8bbd andi a5,a5,15
+ 4e6: 8ef1 and a3,a3,a2
+ 4e8: 0789 addi a5,a5,2
+ 4ea: 4645 li a2,17
+ 4ec: 00c79363 bne a5,a2,4f2
+ 4f0: 47c9 li a5,18
+ 4f2: ee81 bnez a3,50a
+ 4f4: 400246b7 lui a3,0x40024
+ 4f8: 8006a683 lw a3,-2048(a3) # 40023800 <_eusrstack+0x2001e800>
+ 4fc: 8ac1 andi a3,a3,16
+ 4fe: ce89 beqz a3,518
+ 500: 007a16b7 lui a3,0x7a1
+ 504: 20068693 addi a3,a3,512 # 7a1200 <_data_lma+0x79f1e8>
+ 508: a821 j 520
+ 50a: 400216b7 lui a3,0x40021
+ 50e: 42d4 lw a3,4(a3)
+ 510: 00e69613 slli a2,a3,0xe
+ 514: fe0656e3 bgez a2,500
+ 518: 003d16b7 lui a3,0x3d1
+ 51c: 90068693 addi a3,a3,-1792 # 3d0900 <_data_lma+0x3ce8e8>
+ 520: 02d787b3 mul a5,a5,a3
+ 524: b769 j 4ae
-00000558 :
- 558: c0000737 lui a4,0xc0000
- 55c: 00e577b3 and a5,a0,a4
- 560: 08e79563 bne a5,a4,5ea
- 564: 40010737 lui a4,0x40010
- 568: 435c lw a5,4(a4)
- 56a: 01b55693 srli a3,a0,0x1b
- 56e: 4f58 lw a4,28(a4)
- 570: 8a9d andi a3,a3,7
- 572: e69d bnez a3,5a0
- 574: 9bf9 andi a5,a5,-2
- 576: ff0006b7 lui a3,0xff000
- 57a: 16fd addi a3,a3,-1
- 57c: 8f75 and a4,a4,a3
- 57e: c989 beqz a1,590
- 580: 01051693 slli a3,a0,0x10
- 584: 82c1 srli a3,a3,0x10
- 586: 8fd5 or a5,a5,a3
- 588: 01ff06b7 lui a3,0x1ff0
- 58c: 8d75 and a0,a0,a3
- 58e: 8f49 or a4,a4,a0
- 590: 070006b7 lui a3,0x7000
- 594: 8fd5 or a5,a5,a3
- 596: 400106b7 lui a3,0x40010
- 59a: c2dc sw a5,4(a3)
- 59c: ced8 sw a4,28(a3)
- 59e: 8082 ret
- 5a0: 4605 li a2,1
- 5a2: 00c69663 bne a3,a2,5ae
- 5a6: 9bf5 andi a5,a5,-3
- 5a8: ff8006b7 lui a3,0xff800
- 5ac: b7f9 j 57a
- 5ae: 4609 li a2,2
- 5b0: 00c69663 bne a3,a2,5bc
- 5b4: 9bed andi a5,a5,-5
- 5b6: ffe806b7 lui a3,0xffe80
- 5ba: b7c1 j 57a
- 5bc: 460d li a2,3
- 5be: 00c69663 bne a3,a2,5ca
- 5c2: 9bdd andi a5,a5,-9
- 5c4: fffc06b7 lui a3,0xfffc0
- 5c8: bf4d j 57a
- 5ca: 4611 li a2,4
- 5cc: 00c69763 bne a3,a2,5da
- 5d0: f3f7f793 andi a5,a5,-193
- 5d4: ffc006b7 lui a3,0xffc00
- 5d8: b74d j 57a
- 5da: 4615 li a2,5
- 5dc: fac691e3 bne a3,a2,57e
- 5e0: cff7f793 andi a5,a5,-769
- 5e4: ffe006b7 lui a3,0xffe00
- 5e8: bf49 j 57a
- 5ea: 40000737 lui a4,0x40000
- 5ee: 02e79163 bne a5,a4,610
- 5f2: 400107b7 lui a5,0x40010
- 5f6: 4fd8 lw a4,28(a5)
- 5f8: 0542 slli a0,a0,0x10
- 5fa: 00a767b3 or a5,a4,a0
- 5fe: e589 bnez a1,608
- 600: fff54513 not a0,a0
- 604: 00e577b3 and a5,a0,a4
- 608: 40010737 lui a4,0x40010
- 60c: cf5c sw a5,28(a4)
- 60e: 8082 ret
- 610: e3a9 bnez a5,652
- 612: 40010837 lui a6,0x40010
- 616: 003007b7 lui a5,0x300
- 61a: 00482603 lw a2,4(a6) # 40010004 <_eusrstack+0x2000b004>
- 61e: 01051713 slli a4,a0,0x10
- 622: 00f576b3 and a3,a0,a5
- 626: 8341 srli a4,a4,0x10
- 628: 02f69663 bne a3,a5,654
- 62c: f90006b7 lui a3,0xf9000
- 630: 16fd addi a3,a3,-1
- 632: 00d677b3 and a5,a2,a3
- 636: 00482603 lw a2,4(a6)
- 63a: 8ef1 and a3,a3,a2
- 63c: 00d82223 sw a3,4(a6)
- 640: c591 beqz a1,64c
- 642: 8155 srli a0,a0,0x15
- 644: 0512 slli a0,a0,0x4
- 646: 00a71533 sll a0,a4,a0
- 64a: 8fc9 or a5,a5,a0
- 64c: 40010737 lui a4,0x40010
- 650: c35c sw a5,4(a4)
- 652: 8082 ret
- 654: 00b51793 slli a5,a0,0xb
- 658: 0207d063 bgez a5,678
- 65c: 01055793 srli a5,a0,0x10
- 660: 00f7f693 andi a3,a5,15
- 664: 478d li a5,3
- 666: 00d797b3 sll a5,a5,a3
- 66a: fff7c793 not a5,a5
- 66e: 8ff1 and a5,a5,a2
- 670: 070006b7 lui a3,0x7000
- 674: 8fd5 or a5,a5,a3
- 676: b7e9 j 640
- 678: 01555793 srli a5,a0,0x15
- 67c: 0792 slli a5,a5,0x4
- 67e: 00f717b3 sll a5,a4,a5
- 682: b7e5 j 66a
+00000526 :
+ 526: a001 j 526
-00000684 :
- 684: aedff2ef jal t0,170 <__riscv_save_0>
- 688: 1ffff437 lui s0,0x1ffff
- 68c: 72442703 lw a4,1828(s0) # 1ffff724 <_data_lma+0x1fffd96c>
- 690: 3e000637 lui a2,0x3e000
- 694: 1141 addi sp,sp,-16
- 696: 01971793 slli a5,a4,0x19
- 69a: fff74693 not a3,a4
- 69e: 8ff1 and a5,a5,a2
- 6a0: 0706 slli a4,a4,0x1
- 6a2: 003e0637 lui a2,0x3e0
- 6a6: 8f71 and a4,a4,a2
- 6a8: 8fd9 or a5,a5,a4
- 6aa: 01000637 lui a2,0x1000
- 6ae: 00969713 slli a4,a3,0x9
- 6b2: 8f71 and a4,a4,a2
- 6b4: 8fd9 or a5,a5,a4
- 6b6: 82bd srli a3,a3,0xf
- 6b8: 6741 lui a4,0x10
- 6ba: 8ef9 and a3,a3,a4
- 6bc: c202 sw zero,4(sp)
- 6be: c402 sw zero,8(sp)
- 6c0: c602 sw zero,12(sp)
- 6c2: 8fd5 or a5,a5,a3
- 6c4: 82f1a023 sw a5,-2016(gp) # 200000a0
- 6c8: 72845703 lhu a4,1832(s0)
- 6cc: 4585 li a1,1
- 6ce: 80e19c23 sh a4,-2024(gp) # 20000098 <_edata>
- 6d2: 72042703 lw a4,1824(s0)
- 6d6: 03d00513 li a0,61
- 6da: 82e1a223 sw a4,-2012(gp) # 200000a4
- 6de: 70442703 lw a4,1796(s0)
- 6e2: 80e1ae23 sw a4,-2020(gp) # 2000009c
- 6e6: 73045703 lhu a4,1840(s0)
- 6ea: 82e19423 sh a4,-2008(gp) # 200000a8
- 6ee: 2c15 jal 922
- 6f0: 70442783 lw a5,1796(s0)
- 6f4: 103a0737 lui a4,0x103a0
- 6f8: 70070713 addi a4,a4,1792 # 103a0700 <_data_lma+0x1039e948>
- 6fc: f0f7f793 andi a5,a5,-241
- 700: 10e78363 beq a5,a4,806 <__stack_size+0x6>
- 704: 00f76a63 bltu a4,a5,718
- 708: 10320737 lui a4,0x10320
- 70c: 70070713 addi a4,a4,1792 # 10320700 <_data_lma+0x1031e948>
- 710: 06e78f63 beq a5,a4,78e
- 714: 0141 addi sp,sp,16
- 716: bcbd j 194 <__riscv_restore_0>
- 718: 103b0737 lui a4,0x103b0
- 71c: 70070713 addi a4,a4,1792 # 103b0700 <_data_lma+0x103ae948>
- 720: 08e78b63 beq a5,a4,7b6
- 724: 103d0737 lui a4,0x103d0
- 728: 70070713 addi a4,a4,1792 # 103d0700 <_data_lma+0x103ce948>
- 72c: fee794e3 bne a5,a4,714
- 730: 4585 li a1,1
- 732: 6521 lui a0,0x8
- 734: 3515 jal 558
- 736: 40011437 lui s0,0x40011
- 73a: 77e1 lui a5,0xffff8
- 73c: 04800493 li s1,72
- 740: 004c addi a1,sp,4
- 742: 80040513 addi a0,s0,-2048 # 40010800 <_eusrstack+0x2000b800>
- 746: 827c sh a5,4(sp)
- 748: c626 sw s1,12(sp)
- 74a: 33b9 jal 498
- 74c: 6785 lui a5,0x1
- 74e: 33878793 addi a5,a5,824 # 1338 <_free_r+0x9a>
- 752: 004c addi a1,sp,4
- 754: c0040513 addi a0,s0,-1024
- 758: 827c sh a5,4(sp)
- 75a: c626 sw s1,12(sp)
- 75c: 3b35 jal 498
- 75e: 4791 li a5,4
- 760: 827c sh a5,4(sp)
- 762: 004c addi a1,sp,4
- 764: 02800793 li a5,40
- 768: c0040513 addi a0,s0,-1024
- 76c: c63e sw a5,12(sp)
- 76e: 332d jal 498
- 770: 77f9 lui a5,0xffffe
- 772: 004c addi a1,sp,4
- 774: 40011537 lui a0,0x40011
- 778: 827c sh a5,4(sp)
- 77a: c626 sw s1,12(sp)
- 77c: 3b31 jal 498
- 77e: 478d li a5,3
- 780: 827c sh a5,4(sp)
- 782: c626 sw s1,12(sp)
- 784: 004c addi a1,sp,4
- 786: 40040513 addi a0,s0,1024
- 78a: 3339 jal 498
- 78c: b761 j 714
- 78e: 77e1 lui a5,0xffff8
- 790: 40011537 lui a0,0x40011
- 794: c007c793 xori a5,a5,-1024
- 798: 04800413 li s0,72
- 79c: 004c addi a1,sp,4
- 79e: c0050513 addi a0,a0,-1024 # 40010c00 <_eusrstack+0x2000bc00>
- 7a2: 827c sh a5,4(sp)
- 7a4: c622 sw s0,12(sp)
- 7a6: 39cd jal 498
- 7a8: 6789 lui a5,0x2
- 7aa: 827c sh a5,4(sp)
- 7ac: c622 sw s0,12(sp)
- 7ae: 004c addi a1,sp,4
- 7b0: 40011537 lui a0,0x40011
- 7b4: bfd9 j 78a
- 7b6: 4585 li a1,1
- 7b8: 6521 lui a0,0x8
- 7ba: 3b79 jal 558
- 7bc: 40011437 lui s0,0x40011
- 7c0: 77e1 lui a5,0xffff8
- 7c2: 04800493 li s1,72
- 7c6: 004c addi a1,sp,4
- 7c8: 80040513 addi a0,s0,-2048 # 40010800 <_eusrstack+0x2000b800>
- 7cc: 827c sh a5,4(sp)
- 7ce: c626 sw s1,12(sp)
- 7d0: 31e1 jal 498
- 7d2: 21000793 li a5,528
- 7d6: 004c addi a1,sp,4
- 7d8: c0040513 addi a0,s0,-1024
- 7dc: 827c sh a5,4(sp)
- 7de: c626 sw s1,12(sp)
- 7e0: 3965 jal 498
- 7e2: 4791 li a5,4
- 7e4: 827c sh a5,4(sp)
- 7e6: 004c addi a1,sp,4
- 7e8: 02800793 li a5,40
- 7ec: c0040513 addi a0,s0,-1024
- 7f0: c63e sw a5,12(sp)
- 7f2: 315d jal 498
- 7f4: 77f9 lui a5,0xffffe
- 7f6: 004c addi a1,sp,4
- 7f8: 40011537 lui a0,0x40011
- 7fc: 827c sh a5,4(sp)
- 7fe: c626 sw s1,12(sp)
- 800: 3961 jal 498
- 802: 4789 li a5,2
- 804: bfb5 j 780
- 806: 400114b7 lui s1,0x40011
- 80a: 77e1 lui a5,0xffff8
- 80c: 70078793 addi a5,a5,1792 # ffff8700 <_eusrstack+0xdfff3700>
- 810: 04800413 li s0,72
- 814: 004c addi a1,sp,4
- 816: 80048513 addi a0,s1,-2048 # 40010800 <_eusrstack+0x2000b800>
- 81a: 827c sh a5,4(sp)
- 81c: c622 sw s0,12(sp)
- 81e: 39ad jal 498
- 820: e3900793 li a5,-455
- 824: 004c addi a1,sp,4
- 826: c0048513 addi a0,s1,-1024
- 82a: 827c sh a5,4(sp)
- 82c: c622 sw s0,12(sp)
- 82e: 31ad jal 498
- 830: 4791 li a5,4
- 832: 827c sh a5,4(sp)
- 834: 004c addi a1,sp,4
- 836: 02800793 li a5,40
- 83a: c0048513 addi a0,s1,-1024
- 83e: c63e sw a5,12(sp)
- 840: 39a1 jal 498
- 842: 77f9 lui a5,0xffffe
- 844: b79d j 7aa
+00000528 :
+ 528: 20000197 auipc gp,0x20000
+ 52c: 35818193 addi gp,gp,856 # 20000880 <__global_pointer$>
+ 530: 20005117 auipc sp,0x20005
+ 534: ad010113 addi sp,sp,-1328 # 20005000 <_eusrstack>
+ 538: 00002517 auipc a0,0x2
+ 53c: ae050513 addi a0,a0,-1312 # 2018 <_data_lma>
+ 540: 20000597 auipc a1,0x20000
+ 544: ac058593 addi a1,a1,-1344 # 20000000 <_data_vma>
+ 548: 81818613 addi a2,gp,-2024 # 20000098 <_edata>
+ 54c: 00c5fa63 bgeu a1,a2,560
+ 550: 00052283 lw t0,0(a0)
+ 554: 0055a023 sw t0,0(a1)
+ 558: 0511 addi a0,a0,4
+ 55a: 0591 addi a1,a1,4
+ 55c: fec5eae3 bltu a1,a2,550
+ 560: 81818513 addi a0,gp,-2024 # 20000098 <_edata>
+ 564: 84418593 addi a1,gp,-1980 # 200000c4 <_ebss>
+ 568: 00b57763 bgeu a0,a1,576
+ 56c: 00052023 sw zero,0(a0)
+ 570: 0511 addi a0,a0,4
+ 572: feb56de3 bltu a0,a1,56c
+ 576: 42fd li t0,31
+ 578: bc029073 csrw 0xbc0,t0
+ 57c: 428d li t0,3
+ 57e: 80429073 csrw 0x804,t0
+ 582: 08800293 li t0,136
+ 586: 30029073 csrw mstatus,t0
+ 58a: 00000297 auipc t0,0x0
+ 58e: a7a28293 addi t0,t0,-1414 # 4 <_einit>
+ 592: 0032e293 ori t0,t0,3
+ 596: 30529073 csrw mtvec,t0
+ 59a: e13ff0ef jal ra,3ac
+ 59e: 00000297 auipc t0,0x0
+ 5a2: da428293 addi t0,t0,-604 # 342
+ 5a6: 34129073 csrw mepc,t0
+ 5aa: 30200073 mret
-00000846 :
- 846: 82a1a623 sw a0,-2004(gp) # 200000ac
- 84a: 8082 ret
+000005ae :
+ 5ae: 8201a503 lw a0,-2016(gp) # 200000a0
+ 5b2: 8082 ret
-0000084c :
- 84c: 40021737 lui a4,0x40021
- 850: 435c lw a5,4(a4)
- 852: 4691 li a3,4
- 854: 8bb1 andi a5,a5,12
- 856: 06d78c63 beq a5,a3,8ce
- 85a: 46a1 li a3,8
- 85c: 06d78e63 beq a5,a3,8d8
- 860: e7bd bnez a5,8ce
- 862: 431c lw a5,0(a4)
- 864: 8b91 andi a5,a5,4
- 866: c7a5 beqz a5,8ce
- 868: 000f47b7 lui a5,0xf4
- 86c: 24078793 addi a5,a5,576 # f4240 <_data_lma+0xf2488>
- 870: c11c sw a5,0(a0)
- 872: 40021637 lui a2,0x40021
- 876: 425c lw a5,4(a2)
- 878: 20000737 lui a4,0x20000
- 87c: 01070713 addi a4,a4,16 # 20000010
- 880: 8391 srli a5,a5,0x4
- 882: 8bbd andi a5,a5,15
- 884: 97ba add a5,a5,a4
- 886: 2394 lbu a3,0(a5)
- 888: 411c lw a5,0(a0)
- 88a: 00d7d7b3 srl a5,a5,a3
- 88e: c15c sw a5,4(a0)
- 890: 4254 lw a3,4(a2)
- 892: 82a1 srli a3,a3,0x8
- 894: 8a9d andi a3,a3,7
- 896: 96ba add a3,a3,a4
- 898: 2294 lbu a3,0(a3)
- 89a: 00d7d6b3 srl a3,a5,a3
- 89e: c514 sw a3,8(a0)
- 8a0: 4254 lw a3,4(a2)
- 8a2: 82ad srli a3,a3,0xb
- 8a4: 8a9d andi a3,a3,7
- 8a6: 9736 add a4,a4,a3
- 8a8: 2314 lbu a3,0(a4)
- 8aa: 00d7d6b3 srl a3,a5,a3
- 8ae: c554 sw a3,12(a0)
- 8b0: 4258 lw a4,4(a2)
- 8b2: 00074c63 bltz a4,8ca
- 8b6: 425c lw a5,4(a2)
- 8b8: 83b9 srli a5,a5,0xe
- 8ba: 0037f713 andi a4,a5,3
- 8be: 80418793 addi a5,gp,-2044 # 20000084
- 8c2: 97ba add a5,a5,a4
- 8c4: 239c lbu a5,0(a5)
- 8c6: 02f6d7b3 divu a5,a3,a5
- 8ca: c91c sw a5,16(a0)
- 8cc: 8082 ret
- 8ce: 007a17b7 lui a5,0x7a1
- 8d2: 20078793 addi a5,a5,512 # 7a1200 <_data_lma+0x79f448>
- 8d6: bf69 j 870
- 8d8: 435c lw a5,4(a4)
- 8da: 4358 lw a4,4(a4)
- 8dc: 66c1 lui a3,0x10
- 8de: 83c9 srli a5,a5,0x12
- 8e0: 8bbd andi a5,a5,15
- 8e2: 8f75 and a4,a4,a3
- 8e4: 0789 addi a5,a5,2
- 8e6: 46c5 li a3,17
- 8e8: 00d79363 bne a5,a3,8ee
- 8ec: 47c9 li a5,18
- 8ee: ef01 bnez a4,906
- 8f0: 40024737 lui a4,0x40024
- 8f4: 80072703 lw a4,-2048(a4) # 40023800 <_eusrstack+0x2001e800>
- 8f8: 8b41 andi a4,a4,16
- 8fa: cf09 beqz a4,914
- 8fc: 007a1737 lui a4,0x7a1
- 900: 20070713 addi a4,a4,512 # 7a1200 <_data_lma+0x79f448>
- 904: a821 j 91c
- 906: 40021737 lui a4,0x40021
- 90a: 4358 lw a4,4(a4)
- 90c: 00e71693 slli a3,a4,0xe
- 910: fe06d6e3 bgez a3,8fc
- 914: 003d1737 lui a4,0x3d1
- 918: 90070713 addi a4,a4,-1792 # 3d0900 <_data_lma+0x3ceb48>
- 91c: 02e787b3 mul a5,a5,a4
- 920: bf81 j 870
+000005b4 :
+ 5b4: 459c lw a5,8(a1)
+ 5b6: 0107f713 andi a4,a5,16
+ 5ba: 00f7f813 andi a6,a5,15
+ 5be: c701 beqz a4,5c6
+ 5c0: 41d8 lw a4,4(a1)
+ 5c2: 00e86833 or a6,a6,a4
+ 5c6: 218e lhu a1,0(a1)
+ 5c8: 0ff5f713 andi a4,a1,255
+ 5cc: c339 beqz a4,612
+ 5ce: 4118 lw a4,0(a0)
+ 5d0: 4681 li a3,0
+ 5d2: 4e85 li t4,1
+ 5d4: 4f3d li t5,15
+ 5d6: 02800f93 li t6,40
+ 5da: 04800293 li t0,72
+ 5de: 4e21 li t3,8
+ 5e0: 00de9633 sll a2,t4,a3
+ 5e4: 00c5f8b3 and a7,a1,a2
+ 5e8: 03161163 bne a2,a7,60a
+ 5ec: 00269893 slli a7,a3,0x2
+ 5f0: 011f1333 sll t1,t5,a7
+ 5f4: fff34313 not t1,t1
+ 5f8: 00e37733 and a4,t1,a4
+ 5fc: 011818b3 sll a7,a6,a7
+ 600: 00e8e733 or a4,a7,a4
+ 604: 05f79f63 bne a5,t6,662
+ 608: c950 sw a2,20(a0)
+ 60a: 0685 addi a3,a3,1
+ 60c: fdc69ae3 bne a3,t3,5e0
+ 610: c118 sw a4,0(a0)
+ 612: 0ff00713 li a4,255
+ 616: 04b77563 bgeu a4,a1,660
+ 61a: 4154 lw a3,4(a0)
+ 61c: 4621 li a2,8
+ 61e: 4e85 li t4,1
+ 620: 4f3d li t5,15
+ 622: 02800f93 li t6,40
+ 626: 04800293 li t0,72
+ 62a: 4e41 li t3,16
+ 62c: 00ce98b3 sll a7,t4,a2
+ 630: 0115f733 and a4,a1,a7
+ 634: 02e89263 bne a7,a4,658
+ 638: 00261713 slli a4,a2,0x2
+ 63c: 1701 addi a4,a4,-32
+ 63e: 00ef1333 sll t1,t5,a4
+ 642: fff34313 not t1,t1
+ 646: 00d376b3 and a3,t1,a3
+ 64a: 00e81733 sll a4,a6,a4
+ 64e: 8ed9 or a3,a3,a4
+ 650: 01f79d63 bne a5,t6,66a
+ 654: 01152a23 sw a7,20(a0)
+ 658: 0605 addi a2,a2,1
+ 65a: fdc619e3 bne a2,t3,62c
+ 65e: c154 sw a3,4(a0)
+ 660: 8082 ret
+ 662: fa5794e3 bne a5,t0,60a
+ 666: c910 sw a2,16(a0)
+ 668: b74d j 60a
+ 66a: fe5797e3 bne a5,t0,658
+ 66e: 01152823 sw a7,16(a0)
+ 672: b7dd j 658
-00000922 :
- 922: c599 beqz a1,930
- 924: 40021737 lui a4,0x40021
- 928: 4f1c lw a5,24(a4)
- 92a: 8d5d or a0,a0,a5
- 92c: cf08 sw a0,24(a4)
- 92e: 8082 ret
- 930: 400217b7 lui a5,0x40021
- 934: 4f98 lw a4,24(a5)
- 936: fff54513 not a0,a0
- 93a: 8d79 and a0,a0,a4
- 93c: cf88 sw a0,24(a5)
- 93e: 8082 ret
+00000674 :
+ 674: c90c sw a1,16(a0)
+ 676: 8082 ret
-00000940 :
- 940: 831ff2ef jal t0,170 <__riscv_save_0>
- 944: 2916 lhu a3,16(a0)
- 946: 77f5 lui a5,0xffffd
- 948: 17fd addi a5,a5,-1
- 94a: 8ff5 and a5,a5,a3
- 94c: 21f6 lhu a3,6(a1)
- 94e: 25da lhu a4,12(a1)
- 950: 7179 addi sp,sp,-48
- 952: 8fd5 or a5,a5,a3
- 954: a91e sh a5,16(a0)
- 956: 2556 lhu a3,12(a0)
- 958: 77fd lui a5,0xfffff
- 95a: 9f378793 addi a5,a5,-1549 # ffffe9f3 <_eusrstack+0xdfff99f3>
- 95e: 8ff5 and a5,a5,a3
- 960: 21d6 lhu a3,4(a1)
- 962: 842a mv s0,a0
- 964: c62e sw a1,12(sp)
- 966: 8fd5 or a5,a5,a3
- 968: 2596 lhu a3,8(a1)
- 96a: 8fd5 or a5,a5,a3
- 96c: 25b6 lhu a3,10(a1)
- 96e: 8fd5 or a5,a5,a3
- 970: a55e sh a5,12(a0)
- 972: 295e lhu a5,20(a0)
- 974: 07c2 slli a5,a5,0x10
- 976: 83c1 srli a5,a5,0x10
- 978: cff7f793 andi a5,a5,-769
- 97c: 8fd9 or a5,a5,a4
- 97e: a95e sh a5,20(a0)
- 980: 0868 addi a0,sp,28
- 982: 35e9 jal 84c
- 984: 400147b7 lui a5,0x40014
- 988: 80078793 addi a5,a5,-2048 # 40013800 <_eusrstack+0x2000e800>
- 98c: 45b2 lw a1,12(sp)
- 98e: 04f41a63 bne s0,a5,9e2
- 992: 57a2 lw a5,40(sp)
- 994: 2456 lhu a3,12(s0)
- 996: 4765 li a4,25
- 998: 02e787b3 mul a5,a5,a4
- 99c: 06c2 slli a3,a3,0x10
- 99e: 86c1 srai a3,a3,0x10
- 9a0: 4198 lw a4,0(a1)
- 9a2: 0406d263 bgez a3,9e6
- 9a6: 0706 slli a4,a4,0x1
- 9a8: 2452 lhu a2,12(s0)
- 9aa: 0642 slli a2,a2,0x10
- 9ac: 02e7d7b3 divu a5,a5,a4
- 9b0: 06400713 li a4,100
- 9b4: 8641 srai a2,a2,0x10
- 9b6: 02e7d6b3 divu a3,a5,a4
- 9ba: 02e7f7b3 remu a5,a5,a4
- 9be: 0692 slli a3,a3,0x4
- 9c0: 02065563 bgez a2,9ea
- 9c4: 078e slli a5,a5,0x3
- 9c6: 03278793 addi a5,a5,50
- 9ca: 02e7d7b3 divu a5,a5,a4
- 9ce: 0077f713 andi a4,a5,7
- 9d2: 00d767b3 or a5,a4,a3
- 9d6: 07c2 slli a5,a5,0x10
- 9d8: 83c1 srli a5,a5,0x10
- 9da: a41e sh a5,8(s0)
- 9dc: 6145 addi sp,sp,48
- 9de: fb6ff06f j 194 <__riscv_restore_0>
- 9e2: 5792 lw a5,36(sp)
- 9e4: bf45 j 994
- 9e6: 070a slli a4,a4,0x2
- 9e8: b7c1 j 9a8
- 9ea: 0792 slli a5,a5,0x4
- 9ec: 03278793 addi a5,a5,50
- 9f0: 02e7d7b3 divu a5,a5,a4
- 9f4: 8bbd andi a5,a5,15
- 9f6: 8fd5 or a5,a5,a3
- 9f8: bff9 j 9d6
+00000678 :
+ 678: c219 beqz a2,67e
+ 67a: c90c sw a1,16(a0)
+ 67c: 8082 ret
+ 67e: c94c sw a1,20(a0)
+ 680: 8082 ret
-000009fa :
- 9fa: c591 beqz a1,a06
- 9fc: 255e lhu a5,12(a0)
- 9fe: 6709 lui a4,0x2
- a00: 8fd9 or a5,a5,a4
- a02: a55e sh a5,12(a0)
- a04: 8082 ret
- a06: 255a lhu a4,12(a0)
- a08: 77f9 lui a5,0xffffe
- a0a: 17fd addi a5,a5,-1
- a0c: 8ff9 and a5,a5,a4
- a0e: bfd5 j a02
+00000682 :
+ 682: c0000737 lui a4,0xc0000
+ 686: 00e577b3 and a5,a0,a4
+ 68a: 08e79563 bne a5,a4,714
+ 68e: 40010737 lui a4,0x40010
+ 692: 435c lw a5,4(a4)
+ 694: 01b55693 srli a3,a0,0x1b
+ 698: 4f58 lw a4,28(a4)
+ 69a: 8a9d andi a3,a3,7
+ 69c: e69d bnez a3,6ca
+ 69e: 9bf9 andi a5,a5,-2
+ 6a0: ff0006b7 lui a3,0xff000
+ 6a4: 16fd addi a3,a3,-1
+ 6a6: 8f75 and a4,a4,a3
+ 6a8: c989 beqz a1,6ba
+ 6aa: 01051693 slli a3,a0,0x10
+ 6ae: 82c1 srli a3,a3,0x10
+ 6b0: 8fd5 or a5,a5,a3
+ 6b2: 01ff06b7 lui a3,0x1ff0
+ 6b6: 8d75 and a0,a0,a3
+ 6b8: 8f49 or a4,a4,a0
+ 6ba: 070006b7 lui a3,0x7000
+ 6be: 8fd5 or a5,a5,a3
+ 6c0: 400106b7 lui a3,0x40010
+ 6c4: c2dc sw a5,4(a3)
+ 6c6: ced8 sw a4,28(a3)
+ 6c8: 8082 ret
+ 6ca: 4605 li a2,1
+ 6cc: 00c69663 bne a3,a2,6d8
+ 6d0: 9bf5 andi a5,a5,-3
+ 6d2: ff8006b7 lui a3,0xff800
+ 6d6: b7f9 j 6a4
+ 6d8: 4609 li a2,2
+ 6da: 00c69663 bne a3,a2,6e6
+ 6de: 9bed andi a5,a5,-5
+ 6e0: ffe806b7 lui a3,0xffe80
+ 6e4: b7c1 j 6a4
+ 6e6: 460d li a2,3
+ 6e8: 00c69663 bne a3,a2,6f4
+ 6ec: 9bdd andi a5,a5,-9
+ 6ee: fffc06b7 lui a3,0xfffc0
+ 6f2: bf4d j 6a4
+ 6f4: 4611 li a2,4
+ 6f6: 00c69763 bne a3,a2,704
+ 6fa: f3f7f793 andi a5,a5,-193
+ 6fe: ffc006b7 lui a3,0xffc00
+ 702: b74d j 6a4
+ 704: 4615 li a2,5
+ 706: fac691e3 bne a3,a2,6a8
+ 70a: cff7f793 andi a5,a5,-769
+ 70e: ffe006b7 lui a3,0xffe00
+ 712: bf49 j 6a4
+ 714: 40000737 lui a4,0x40000
+ 718: 02e79163 bne a5,a4,73a
+ 71c: 400107b7 lui a5,0x40010
+ 720: 4fd8 lw a4,28(a5)
+ 722: 0542 slli a0,a0,0x10
+ 724: 00a767b3 or a5,a4,a0
+ 728: e589 bnez a1,732
+ 72a: fff54513 not a0,a0
+ 72e: 00e577b3 and a5,a0,a4
+ 732: 40010737 lui a4,0x40010
+ 736: cf5c sw a5,28(a4)
+ 738: 8082 ret
+ 73a: e3a9 bnez a5,77c
+ 73c: 40010837 lui a6,0x40010
+ 740: 003007b7 lui a5,0x300
+ 744: 00482603 lw a2,4(a6) # 40010004 <_eusrstack+0x2000b004>
+ 748: 01051713 slli a4,a0,0x10
+ 74c: 00f576b3 and a3,a0,a5
+ 750: 8341 srli a4,a4,0x10
+ 752: 02f69663 bne a3,a5,77e