From c7141fe743752b66fa5f31bc7f78e82c8db5d60a Mon Sep 17 00:00:00 2001 From: n2232 Date: Thu, 8 Sep 2011 08:24:07 +0000 Subject: [PATCH] =?UTF-8?q?=E2=96=A02.0F=20=20SDK3.1=20=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=20=E3=83=BB=E5=8A=A0=E9=80=9F=E5=BA=A6=E3=82=BB=E3=83=B3?= =?UTF-8?q?=E3=82=B5=E3=82=BB=E3=82=AB=E3=83=B3=E3=83=89=E3=83=99=E3=83=B3?= =?UTF-8?q?=E3=83=80=E5=AF=BE=E5=BF=9C=E3=81=AB=E8=90=BD=E3=81=A8=E3=81=97?= =?UTF-8?q?=E7=A9=B4=E3=80=81=E5=8A=A0=E9=80=9F=E5=BA=A6=E3=82=BB=E3=83=B3?= =?UTF-8?q?=E3=82=B5=E3=81=8C=E5=A3=8A=E3=82=8C=E3=81=A6=E3=81=84=E3=82=8B?= =?UTF-8?q?/=E5=A4=96=E3=82=8C=E3=81=A6=E3=81=84=E3=82=8B=E3=81=A7NAK?= =?UTF-8?q?=E3=82=92=E8=BF=94=E3=81=97=E7=B6=9A=E3=81=91=E3=82=8B=E3=82=88?= =?UTF-8?q?=E3=81=86=E3=81=AA=E3=81=A8=E3=81=8D=E3=80=81WDT=E3=83=AA?= =?UTF-8?q?=E3=82=BB=E3=83=83=E3=83=88=E3=81=97=E3=81=A6=E3=81=84=E3=81=9F?= =?UTF-8?q?=E3=80=82(accero.c)=20=E3=83=BB=E5=8A=A0=E9=80=9F=E5=BA=A6?= =?UTF-8?q?=E3=82=BB=E3=83=B3=E3=82=B5=E3=82=A8=E3=83=A9=E3=83=BC=E3=83=AA?= =?UTF-8?q?=E3=83=88=E3=83=A9=E3=82=A4=E5=A4=B1=E6=95=97=E6=99=82=E3=80=81?= =?UTF-8?q?=E5=BE=A9=E5=B8=B0=E6=9D=A1=E4=BB=B6=E3=81=8C=E3=80=81=E3=80=8C?= =?UTF-8?q?=E4=BD=95=E5=BA=A6=E3=82=82=E5=8A=A0=E9=80=9F=E5=BA=A6=E3=82=BB?= =?UTF-8?q?=E3=83=B3=E3=82=B5on=E3=81=AB=E3=81=97=E3=81=A6=E3=82=AB?= =?UTF-8?q?=E3=82=A6=E3=83=B3=E3=82=BF=E3=81=8C=E3=82=AA=E3=83=BC=E3=83=90?= =?UTF-8?q?=E3=83=BC=E3=83=95=E3=83=AD=E3=83=BC=E3=81=99=E3=82=8B=E3=80=8D?= =?UTF-8?q?=E3=82=92=E4=BF=AE=E6=AD=A3(accero.c)=20=E3=83=BBDI=5Fwt=5Fchk?= =?UTF-8?q?=E3=82=92#ifdef=E3=81=A7disable=E3=81=AB=E3=81=97=E3=81=9F?= =?UTF-8?q?=E3=81=A8=E3=81=8D=E3=80=81=E3=81=9F=E3=81=A0=E3=81=AEDI()?= =?UTF-8?q?=E3=81=AB=E3=81=AA=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB=E5=AE=9F?= =?UTF-8?q?=E8=A3=85=E3=82=92=E5=A4=89=E6=9B=B4=E3=80=82=20=E3=83=BB#ifdef?= =?UTF-8?q?=20=5Firq=5Fdebug=5F=E3=80=80=E3=81=AE=E5=AE=9F=E8=A3=85?= =?UTF-8?q?=E3=81=8C=E3=82=88=E3=81=8F=E3=81=AA=E3=81=8B=E3=81=A3=E3=81=9F?= =?UTF-8?q?=EF=BC=88=E7=84=A1=E9=A7=84=E3=81=ABROM=E3=82=92=E6=B6=88?= =?UTF-8?q?=E8=B2=BB=EF=BC=89=E3=80=80=E3=81=AE=E3=82=92=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?=E3=80=82=E3=81=BE=E3=82=8B=E3=81=BE=E3=82=8B=E5=8F=96=E3=82=8A?= =?UTF-8?q?=E9=99=A4=E3=81=8B=E3=82=8C=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB?= =?UTF-8?q?=E3=81=97=E3=81=9F(ini=5FVECT.c)=20=E3=83=BB=E9=9B=91=E5=A4=9A?= =?UTF-8?q?=E9=96=A2=E6=95=B0=E3=82=92util=5Ffuncs.c=E3=81=AB=E5=88=87?= =?UTF-8?q?=E3=82=8A=E5=87=BA=E3=81=97=E3=80=82ROM=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=99=82=E3=81=AB=E4=BE=BF=E5=88=A9=E3=81=A8=E3=81=84=E3=81=86?= =?UTF-8?q?=E3=81=AE=E3=82=82=E3=81=82=E3=82=8B=20=E3=83=BBWDI=E3=83=AA?= =?UTF-8?q?=E3=82=BB=E3=83=83=E3=83=88=E3=81=97=E3=81=9F=E3=81=A8=E3=81=8D?= =?UTF-8?q?=E3=81=AE=E8=BF=BD=E8=B7=A1=E7=94=A8=E3=81=ABWDI=E3=83=AA?= =?UTF-8?q?=E3=82=BB=E3=83=83=E3=83=88=E3=83=99=E3=82=AF=E3=82=BF=E3=82=92?= =?UTF-8?q?=E4=BD=BF=E3=81=88=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB=EF=BC=88?= =?UTF-8?q?#ifdef=E5=88=87=E3=82=8A=E6=9B=BF=E3=81=88)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-05-23%20-%20ctr.7z%20+%20svn_v1.068.zip/ctr/svn/ctr_mcu@407 013db118-44a6-b54f-8bf7-843cb86687b1 --- trunk/accero.c | 134 ++--- trunk/bsr.hex | 980 ++++++++++++++++++------------------- trunk/bsr.lmf | Bin 178040 -> 173988 bytes trunk/bsr_k0r.map | 510 +++++++++---------- trunk/config.h | 3 + trunk/hoge.bin | Bin 16387 -> 16387 bytes trunk/i2c_mcu.c | 3 +- trunk/ini_VECT.c | 77 +-- trunk/led_cam.c | 1 - trunk/magic.c | 1 + trunk/pedo_alg_thre_det2.c | 1 - trunk/renge/renge.c | 3 +- trunk/task_misc.c | 3 +- trunk/task_sys.c | 2 +- trunk/user_define.h | 7 +- trunk/util_funcs.c | 65 +++ trunk/util_funcs.h | 16 + trunk/vreg_ctr.c | 1 - trunk/yav_mcu_bsr.plg | 202 +------- trunk/yav_mcu_bsr.prj | 146 +++--- trunk/yav_mcu_bsr.prk | 10 +- 21 files changed, 1034 insertions(+), 1131 deletions(-) create mode 100644 trunk/util_funcs.c create mode 100644 trunk/util_funcs.h diff --git a/trunk/accero.c b/trunk/accero.c index 505c300..652cfd7 100644 --- a/trunk/accero.c +++ b/trunk/accero.c @@ -72,12 +72,14 @@ #define ACC_RAW_DATA_SIZE 6 +// ======================================================== +static u8 acc_retry_count; // 加速度センサ読み出し時、エラーだったときリトライする。回数数える + + // ======================================================== task_status tsk_soft_int( ); -extern void DI_wt_chk(); - /********************************************//** @@ -90,16 +92,16 @@ extern void DI_wt_chk(); ***********************************************/ task_status_immed tski_cbk_accero( ) { // (疑似)isrから登録されます - static u8 err_count; u8 acc_dat_buff[ ACC_RAW_DATA_SIZE ]; // 加速度センサデータレジスタへの反映 if( iic_mcu_read( IIC_SLA_ACCEL, ( ACC_REG_X | ACC_REG_FLG_BURST_ACCESS ), ACC_RAW_DATA_SIZE, acc_dat_buff ) != ERR_SUCCESS ) { - err_count ++; - if( err_count < 8 ) + // SLA NAK // + if( acc_retry_count < 4 ) { + acc_retry_count ++; // リトライ return( ERR_CONTINUE ); } @@ -114,10 +116,12 @@ task_status_immed tski_cbk_accero( ) } else { - memcpy( &vreg_ctr[VREG_C_ACC_XL], acc_dat_buff, ACC_RAW_DATA_SIZE ); - - err_count = 0; // 正常時パス // + DI_wt_chk(); + memcpy( &vreg_ctr[VREG_C_ACC_XL], acc_dat_buff, ACC_RAW_DATA_SIZE ); + EI(); + + acc_retry_count = 0; // 加速度更新&割り込み if( (( vreg_ctr[VREG_C_ACC_CONFIG] & VREG_BITMASK_ACC_CONF_ACQ ) != 0 ) && ( system_status.pwr_state == ON ) @@ -176,68 +180,73 @@ task_status_immed tski_acc_setup( ) { // 加速度 on/off設定する + u8 str_send_buf[4]; + + str_send_buf[1] = 0x00; // ctrl2 HPF:normal, filterd, HPF for IRQ : dis/dis, HPF coeff:norm + + // ピン不足のため、TSとそれ以外(回路違い)を区別して設定 + if( system_status.model == MODEL_TS_BOARD ) { - u8 str_send_buf[4]; + str_send_buf[2] = bits8(0,0,0,0, 0,0,1,0); + } + else + { + str_send_buf[2] = bits8(0,0,0,1, 0,0,0,0); + } + str_send_buf[3] = 0x80; // ctrl3 block update:enable, MSB first, scale: +-2G(default), selftest: dis - str_send_buf[1] = 0x00; // ctrl2 HPF:normal, filterd, HPF for IRQ : dis/dis, HPF coeff:norm + { + u8 acc_setting_sent = ( vreg_ctr[VREG_C_ACC_CONFIG] & + ( VREG_BITMASK_ACC_CONF_HOSU | VREG_BITMASK_ACC_CONF_ACQ )); - // ピン不足のため、TSとそれ以外(回路違い)を区別して設定 - if( system_status.model == MODEL_TS_BOARD ) + if( acc_setting_sent == 0 ) { - str_send_buf[2] = bits8(0,0,0,0, 0,0,1,0); + // 完全停止 + PMK23 = 1; + str_send_buf[0] = + ( ACC_BITS_PM_PDN << ACC_bP_PM0 | 0 << ACC_bP_DR0 | ACC_BITS_ALL_AXIS_ON ); } else { - str_send_buf[2] = bits8(0,0,0,1, 0,0,0,0); + // on 100Hz 自動取り込み + PMK23 = 0; + str_send_buf[0] = + ( ACC_BITS_PM_NORM << ACC_bP_PM0 + | ACC_BITS_DR_100Hz << ACC_bP_DR0 + | ACC_BITS_ALL_AXIS_ON ); } - str_send_buf[3] = 0x80; // ctrl3 block update:enable, MSB first, scale: +-2G(default), selftest: dis - - { - u8 acc_setting_sent = ( vreg_ctr[VREG_C_ACC_CONFIG] & - ( VREG_BITMASK_ACC_CONF_HOSU | VREG_BITMASK_ACC_CONF_ACQ )); - - do{ - EI(); - if( acc_setting_sent == 0 ) - { - PMK23 = 1; - // 完全停止 - str_send_buf[0] = - ( ACC_BITS_PM_PDN << ACC_bP_PM0 | 0 << ACC_bP_DR0 | ACC_BITS_ALL_AXIS_ON ); - } - else - { - PMK23 = 0; - // 100Hz 自動取り込み - str_send_buf[0] = - ( ACC_BITS_PM_NORM << ACC_bP_PM0 - | ACC_BITS_DR_100Hz << ACC_bP_DR0 - | ACC_BITS_ALL_AXIS_ON ); - } - // 実書き込み兼、通信できたかフラグ更新 - if( iic_mcu_write( IIC_SLA_ACCEL, ( ACC_REG_CTRL1 | ACC_REG_FLG_BURST_ACCESS ), 4, str_send_buf ) == I2C_ERR_NOSLAVE ) - { - vreg_ctr[ VREG_C_STATUS_1 ] |= REG_BIT_ACCERO_ERR; - }else{ - vreg_ctr[ VREG_C_STATUS_1 ] &= ~REG_BIT_ACCERO_ERR; - } + // 実書き込み兼、通信できたかフラグ更新 + if( iic_mcu_write( IIC_SLA_ACCEL, ( ACC_REG_CTRL1 | ACC_REG_FLG_BURST_ACCESS ), 4, str_send_buf ) == I2C_ERR_NOSLAVE ) + { + // センサ反応無し。タスクは削除しなくてはならない。 + vreg_ctr[ VREG_C_STATUS_1 ] |= REG_BIT_ACCERO_ERR; + return ( ERR_FINISED ); + // おしまい + } + // else - // カラ読み。前回のゴミを読み捨て - if( ACC_VALID ) - { - if( system_status.pwr_state == ON ) - { - u8 temp[ACC_RAW_DATA_SIZE]; - iic_mcu_read( IIC_SLA_ACCEL, ( ACC_REG_X | ACC_REG_FLG_BURST_ACCESS ), 6, temp ); - } - } + // センサ設定成功 正常パス + vreg_ctr[ VREG_C_STATUS_1 ] &= ~REG_BIT_ACCERO_ERR; + acc_retry_count = 0; - // センサに書きにいっている最中にSoCがまた書き換えてしまうかもしれない - DI_wt_chk(); - }while( acc_setting_sent != ( vreg_ctr[VREG_C_ACC_CONFIG] & - ( VREG_BITMASK_ACC_CONF_HOSU | VREG_BITMASK_ACC_CONF_ACQ )) ); - + // 前回のゴミが有ればカラ読み + if( ACC_VALID ) + { + if( system_status.pwr_state == ON ) + { + u8 temp[ACC_RAW_DATA_SIZE]; + iic_mcu_read( IIC_SLA_ACCEL, ( ACC_REG_X | ACC_REG_FLG_BURST_ACCESS ), 6, temp ); + } + } + + // センサに書きにいっている最中にSoCがまた書き換えてしまうかもしれない + DI_wt_chk(); + if( acc_setting_sent != ( vreg_ctr[VREG_C_ACC_CONFIG] & + ( VREG_BITMASK_ACC_CONF_HOSU | VREG_BITMASK_ACC_CONF_ACQ ))) + { + // DI状態のまま帰る + return ( ERR_CONTINUE ); // ちょっと間をおいて再度書きにくる // もっとよい実装? } } @@ -255,11 +264,12 @@ task_status_immed tski_acc_setup( ) __interrupt void intp23_ACC_ready( ) { EI(); - if( ( vreg_ctr[VREG_C_ACC_CONFIG] & 0x03 ) != 0x00 ) + if( ( vreg_ctr[VREG_C_ACC_CONFIG] & 0x03 ) != 0x00 ) { - if( ( system_status.pwr_state == ON ) || ( system_status.pwr_state == SLEEP ) ) + // 加速度センサ on + if( ( system_status.pwr_state == ON ) || ( system_status.pwr_state == SLEEP ) ) { - if( ACC_VALID ) +// if( ACC_VALID ) // 確認不要 { renge_task_immed_add( tski_cbk_accero ); } diff --git a/trunk/bsr.hex b/trunk/bsr.hex index a4a1192..fed659d 100644 --- a/trunk/bsr.hex +++ b/trunk/bsr.hex @@ -1,13 +1,13 @@ -:02000000F50CFD -:04001000214723471A -:02001C00CF48CB -:0200240076491B -:02002A00C149CA -:08003400EE4A914AEA4A694DC7 -:02004A00254748 -:02005A005F47FE -:02006200EE4C62 -:06008000824BBB4B054C56 +:02000000F10C01 +:0400100039473B47EA +:02001C00E748B3 +:020024008E4903 +:02002A00D949B2 +:08003400064BA94A024B474D9F +:02004A003D4730 +:02005A007747E6 +:02006200054D4A +:060080009A4BD34B1D4C0E :0400C0007EFBFF04C0 :0A00C4001B339499E033F240BFAA09 :1000CE00C7C1FBF8FFCEABACC736F00071F4C6610A @@ -33,8 +33,8 @@ :10020E00275FCE2EFCCF1105F8CF120511CF35008A :10021E0002CF370019CF530006CBEEFEFFCE38319A :10022E00CE3970CF38050A308700BF1801BF1A01CA -:10023E00BF1C01BF1E01D7D7C7F616FD6A04FDCF3E -:10024E000931329308713293717AFAEF0C717AFA9E +:10023E00BF1C01BF1E01D7D7C7F616FD6A04717B1E +:10024E00FA31329308713293717AFAEF0C717AFAAD :10025E00A7F647DFE95203EF01F2C6D7C7C1C1FBCC :10026E00F8FF17A1C1E0C18C0A70C18C0270FD8B22 :10027E00021006629D508C01721004C6D7C7C1FBD6 @@ -81,7 +81,7 @@ :10050E00D851FDD303A451FD4704713393F2C6D7DE :10051E00C72008FBF8FFFD6B085014C15008FD9D65 :10052E0007C0CC07048C074C14DE0C8C07318EFDF3 -:10053E00D709615907EFEECC07048C074C1461C83C +:10053E00D309615907EFEECC07048C074C1461C840 :10054E00ED0C06CC06008C064C0461C8EDEB0530B4 :10055E000AF9BC02F6BBCEABAC31B2D109C73641FB :10056E00057184C6DEF3F1C73641057184C661DCC0 @@ -90,16 +90,16 @@ :10059E00057184C6DEC3F1C73641057184C661DCC0 :1005AE000E059C055040C18C07318E31AD128C0664 :1005BE00318E318D03BDD831FFBDDADADAADD8FD1B -:1005CE00A30CC0D2DD0C5008C15014FD9D07C0FD18 -:1005DE00600B8C05D1DF06615906ED54058C073191 -:1005EE008EFDDB09D2DD0C5008C15014FD9D07C0F5 -:1005FE00FD600B8C05D1DF06615907ED4805716072 +:1005CE009F0CC0D2DD0C5008C15014FD9D07C0FD1C +:1005DE005C0B8C05D1DF06615906ED54058C073195 +:1005EE008EFDD709D2DD0C5008C15014FD9D07C0F9 +:1005FE00FD5C0B8C05D1DF06615907ED4805716076 :10060E005005CC0400CC05008C054C09DE2B8C0566 :10061E00318E04F61FC1317B9EFDC41189728C058B :10062E00318E04F64F14896142DF03F6EF01E66066 :10063E000E049C04615905EFCF41001140F81F3A9A -:10064E0061E86159048C04D1DF08FD610BFD730C68 -:10065E00EF0C5008C15014FD9D07C0FD600B100833 +:10064E0061E86159048C04D1DF08FD5D0BFD6F0C70 +:10065E00EF0C5008C15014FD9D07C0FD5C0B100837 :10066E00C6D7C72004FBF8FF712B24CC0100F6BCC3 :10067E0002AC02440900DE3EAC0204F60F14410047 :10068E00118972AC020C5014896142DF03F6EF013E @@ -116,24 +116,24 @@ :10073E002BC0CE3708CBE4FFFFCBE6FFF7CED4FFBE :10074E00CF370008F5120561FDE6BC02F6614902DD :10075E00DD9F00000000617902EFF1FD6B08D2DF32 -:10076E00FA5008C15014FD9D07C0D2FD600B100455 +:10076E00FA5008C15014FD9D07C0D2FD5C0B100459 :10077E00C6D73184BD02EFFA717BBDCBE4FFFFCB50 :10078E00E6FFFFCBD4FFFF717ABED7717BBED7C712 :10079E00C1200CFBF8FF8C0C318E31ADC1317B9D2D :1007AE00D4C0BC068DD49C088C149C0B8C14318E3A -:1007BE00040C00128C0B318EBDD813FD320F61C8A4 -:1007CE00ED6608CEABACCC05068C0B318EFDD30995 -:1007DE00D2DD158C0B318EFDD7096169058C05D1E3 +:1007BE00040C00128C0B318EBDD813FD2E0F61C8A8 +:1007CE00ED6608CEABACCC05068C0B318EFDCF0999 +:1007DE00D2DD158C0B318EFDD3096169058C05D1E7 :1007EE00DFE7FD9907E2EF71CC0A008C0A4C04DEBC :1007FE0054F6BC02300AF9BBAC06148C089EFD11EF :10080E008972AB146299AC06A1BC0661790061795C :10081E0002F0E1614902DFE05040C18C0B318E31B4 :10082E00AD128C0A318E318D03BDD831FFBDDADAAF -:10083E00DAADD8FDA30CC0D2DD06FD9907E2EF19A3 -:10084E0061590AEFA68C0B318EFDDB09D2DD03E276 +:10083E00DAADD8FD9F0CC0D2DD06FD9907E2EF19A7 +:10084E0061590AEFA68C0B318EFDD709D2DD03E27A :10085E00EF0761590BEDBA07F2100EC6D7C7717BC1 -:10086E009D717BFAFD8007300AF9FD860AFD110A9B -:10087E00C6D7FD6B08FD600BFD9907F5ABFFF2D7F0 +:10086E009D717BFAFD8007300AF9FD820AFD0D0AA3 +:10087E00C6D7FD6B08FD5C0BFD9907F5ABFFF2D7F4 :10088E00C7310497067110B3FBEF047118B3FB8FD9 :10089E00B3FB7B8A76D1DD278FB3FB9D8A665C0224 :1008AE00D1DD1C8FB3FB5C02D1DD0B5040C150106B @@ -154,100 +154,100 @@ :10099E00CFFEFBFFCFFAFBFFCFFBFBFFD7C7C1C1DB :1009AE00FBF8FFCEABAC8C02D1DD12616902305C7C :1009BE0003BBF6614900DDEE618900EFF51004C658 -:0509CE00D7717BFAD790 -:1009D3005208EF065203EF025206FEE600FE1B002A -:1009E300DC16089F03088F0408089F040862FE248E -:1009F30000089F0408EEBF00EEBA00C1C514410E03 -:100A030011D9D0FF118FD1FF312E45C4C0D7F23198 -:100A1300A2C401E2D79DE261DD4C09DF12717BFACA -:100A2300C18F06089F25FDC0CF060800EE270031C1 -:100A3300F2FA04CF0608004C00DF05D50008DD16E6 -:100A430061DD717BFAD50608DD0ACDE31F61CD6157 -:100A5300CDEE160061CDFED40061FFFE9A00FCF8D6 -:100A6300FF0EFEB20061CDFED5004C09DF0EC18F33 -:100A730006086F25FD9F0608C0EE0400CF06080098 -:100A8300F8E3D75200EF025202FE3700CF24FD00F5 -:100A9300CF060800BF0408C716629F000841001173 -:100AA3008F1A209B4100118F1B209F0108C6510004 -:100AB300FE62FFEF025205CF060800C1510CFE0A89 -:100AC30000C0D7C1511DFE0200C0D761DD717BFAA2 -:100AD30070CEC0A59EC47CFF9EC4609EC461CDD76A -:100AE30061DD717BFAC18EC45C1BFED6FFCF0608A5 -:100AF30001FED7FFC061CDD731F2FA1AC1AEE4BF10 -:100B030016FDAEE6BF18FDAED4BF1AFD30FFFFBE23 -:100B1300E4BEE6BED4C0D731F2FA11C1AF16FDBEB2 -:100B2300E4AF18FDBEE6AF1AFDBED4C0D7C1BF1CEB -:100B3300FD13BF1EFD15BF20FD17BF22FDC0D7AF9C -:100B43001CFDDB1EFDEB20FDFB22FDD7534B30527A -:100B53005430324E323030475631323000FFC150BC -:100B6300FEFEAB0061DD717BFACF060800FE0A00D2 -:100B7300FEA4FF61CDF8E3EECF00C7FB0408BF1668 -:100B8300FD8FC0009C05C5C337040600BF18FD35A3 -:100B930036C50B300000522BFE6600C2C4C630734C -:100BA3000BB800300000B8022004AF18FDB80030C5 -:100BB3000F00B802AF16FD61FF520AFE3AFFECF8D0 -:100BC300FF0E717BFAC1C7FB04088C05C65C80FE6F -:100BD3000200C0D761DD717BFA70CFC0FFA59FC053 -:100BE300007CFF9FC000609FC00061CDD7618BFE7A -:100BF300E2FF717BBE410011FB000017CEFC0061D8 -:100C0300CB089EFDF31161C999A58392DFF7D7FE47 -:100C1300B1FED524FDDF23C1CF0308035109FEF440 -:100C2300FDC0D2DF37FE3800A20408CF0308075106 -:100C330009FEE1FDD2B20408DF22C7FB04083183B9 -:100C430002C6D7C6510AFECCFD624C1FDF06CF2475 -:100C5300FD01EF04CF24FD00C0EE5BFEC0EE55FEA8 -:100C6300C7C1FB04088B31196C0161589BC0C6D7FF -:100C7300717BFAFE4DFEAF0408040600C11436D79B -:100C83000B300000522DF3FE77FF8FC000FE2BFECA -:100C930061CF5C807C8073C0041900CEFC0F61CBF4 -:100CA300C55404EF03C55417FE18FEC7360008BB2E -:100CB300629C0288089C03D1DD334C41DE2F70F126 -:100CC300312DB161090033081C000851FF612A412D -:100CD3000E118FD0FF613B118FD1FF6138DC0E8B7A -:100CE3005C03DF0964C6C4FE2BFDEECAFDC6C4EE79 -:020CF300C3FD3F -:100CF50061CF5100718C7109FECBF800FEFCC90172 -:100D050000F6BF00F953C0F693935820FEDFF94172 -:100D150000367A4D34CCFCEF05118B99A7A5174405 -:100D2500C44DDFF53602F930CCFCEF04CC0000A74A -:100D350047DFF9410036C44D3420FEEF05118B998C -:100D4500A7A51744D44DDFF53630FE3092FEEF04EB -:100D5500CC0000A747DFF9FCCE0000EFFE61DD7196 -:100D65007BFABEF0ADD8BEF200AEF661CDD7C36159 -:100D7500DD717BFABEF0ADD8BEF200DBF6FFADDC6F -:100D8500BEF000AEF6BDD8AEF40312ADDABEF20089 -:100D9500AEF661CD03BDDAC2D7C3F33174D908838A -:100DA500C1F626D8BDD8C031750683C312F623C255 -:100DB500FDC00D93DF0312F623C2D7440000DD26E4 -:100DC50061DD717BFACFE80080BEF6F6BEF4BEF2B7 -:100DD500ADD8BEF0CFE800818FE8003103FAAEF060 -:100DE500F5E80061CDD7B1D7C3F33174D90883C114 -:100DF500F626D8BDD8C0317505C312F623C2FD0E3F -:100E05000E93DF0312F623C2D7440000DD2761DD10 -:100E1500717BFACFE80080BEF6F6BEF4BEF2ADD81F -:100E2500BEF0CFE800818FE8003103FAAFE000F5AE -:100E3500E80061CDD7ADD8D7C3F33174DB0F83C1DB -:100E4500F626D8BDD861317026DABDDAC031750D08 -:100E550083C312F626DCBDDC61317023C2FD760E3C -:100E650093DF0CF626D8BDD861317026DABDDAC21B -:100E7500D7C161686BDC6BDDC0DD2F61DD717BFA8D -:100E8500CFE80080BEF4ADDCBEF6ADD8BEF0ADDA7D -:100E9500BEF2CFE800818FE8003103FAAEF0BDD88D -:100EA500AEF2BDDAF5E80061CDD7F6BDD8BDDAD72B -:100EB5008292DD2B61DD717BFACFE80080BEF0F612 -:100EC500BEF2BEF46208BEF6CFE800818FE80031BD -:100ED50003FAAFE0006072AEF0F5E80061CDD760CF -:100EE50072F6B1D706DABDDAADDC06D8BDD861D861 -:100EF500A6DAD7D1DD17C1C3DAD89DD8ADDA311C52 -:100F050061EEB4D8DFF8BDDA13BDD8C2C0D7D1DDE4 -:100F15001BC1C3DADA9DDAADD8311E33311E337108 -:100F2500F9B4DADFF4BDD813BDDAC2C0D746D8DDCF -:100F35000771FF7177D971C0D75BDB9DDB605BDA29 -:100F45009DDAADDC5BD9085BD808BDD8D7C3C7F33C -:100F5500728EFDC162314C410036704D1161A07237 -:070F6500C09EFD62C6C2D769 -:0A0FF60031383A31323A3536000046 -:0A20000031383A31323A353600002B +:0109CE00D751 +:1009CF005208EF065203EF025206FEE600FE1B002E +:1009DF00DC16089F03088F0408089F040862FE2492 +:1009EF0000089F0408EEBF00EEBA00C1C514410E07 +:1009FF0011D9D0FF118FD1FF312E45C4C0D7F2319D +:100A0F00A2C401E2D79DE261DD4C09DF12717BFACE +:100A1F00C18F06089F25FDC0CF060800EE270031C5 +:100A2F00F2FA04CF0608004C00DF05D50008DD16EA +:100A3F0061DD717BFAD50608DD0ACDE31F61CD615B +:100A4F00CDEE160061CDFED40061FFFE9A00FCF8DA +:100A5F00FF0EFEB20061CDFED5004C09DF0EC18F37 +:100A6F0006086F25FD9F0608C0EE0400CF0608009C +:100A7F00F8E3D75200EF025202FE3700CF24FD00F9 +:100A8F00CF060800BF0408C716629F000841001177 +:100A9F008F1A209B4100118F1B209F0108C6510008 +:100AAF00FE62FFEF025205CF060800C1510CFE0A8D +:100ABF0000C0D7C1511DFE0200C0D761DD717BFAA6 +:100ACF0070CEC0A59EC47CFF9EC4609EC461CDD76E +:100ADF0061DD717BFAC18EC45C1BFED6FFCF0608A9 +:100AEF0001FED7FFC061CDD731F2FA1AC1AEE4BF14 +:100AFF0016FDAEE6BF18FDAED4BF1AFD30FFFFBE28 +:100B0F00E4BEE6BED4C0D731F2FA11C1AF16FDBEB6 +:100B1F00E4AF18FDBEE6AF1AFDBED4C0D7C1BF1CEF +:100B2F00FD13BF1EFD15BF20FD17BF22FDC0D7AFA0 +:100B3F001CFDDB1EFDEB20FDFB22FDD7534B30527E +:100B4F005430324E323030475631323000FFC150C0 +:100B5F00FEFEAB0061DD717BFACF060800FE0A00D6 +:100B6F00FEA4FF61CDF8E3EECF00C7FB0408BF166C +:100B7F00FD8FC0009C05C5C337040600BF18FD35A7 +:100B8F0036C10B300000522BFE6600C2C4C6306F58 +:100B9F000BB800300000B8022004AF18FDB80030C9 +:100BAF000F00B802AF16FD61FF520AFE3AFFECF8D4 +:100BBF00FF0E717BFAC1C7FB04088C05C65C80FE73 +:100BCF000200C0D761DD717BFA70CFC0FFA59FC057 +:100BDF00007CFF9FC000609FC00061CDD7618BFE7E +:100BEF00E2FF717BBE410011FB000017CEFC0061DC +:100BFF00CB089EFDF31161C999A58392DFF7D7FE4C +:100C0F00B1FED524FDDF23C1CF0308035109FEF444 +:100C1F00FDC0D2DF37FE3800A20408CF030807510A +:100C2F0009FEE1FDD2B20408DF22C7FB04083183BD +:100C3F0002C6D7C6510AFECCFD624C1FDF06CF2479 +:100C4F00FD01EF04CF24FD00C0EE5BFEC0EE55FEAC +:100C5F00C7C1FB04088B31196C0161589BC0C6D703 +:100C6F00717BFAFE4DFEAF0408040600C11436D3A3 +:100C7F000B300000522DF3FE77FF8FC000FE2BFECE +:100C8F0061CF5C807C8073C0041900CEFC0F61CBF8 +:100C9F00C55404EF03C55417FE18FEC7360008BB32 +:100CAF00629C0288089C03D1DD334C41DE2F70F12A +:100CBF00312DB161090033081C000851FF612A4131 +:100CCF000E118FD0FF613B118FD1FF6138DC0E8B7E +:100CDF005C03DF0964C6C4FE2BFDEECAFDC6C4EE7D +:020CEF00C3FD43 +:100CF10061CF5100718C7109FECBF800FEFCC90176 +:100D010000F6BF00F953C0F693935820FEDFF94176 +:100D11000036584D34CCFCEF05118B99A7A517442B +:100D2100A24DDFF53602F930CCFCEF04CC0000A770 +:100D310047DFF9410036A24D3420FEEF05118B99B2 +:100D4100A7A51744B24DDFF53630FE3092FEEF0411 +:100D5100CC0000A747DFF9FCCE0000EFFE61DD719A +:100D61007BFABEF0ADD8BEF200AEF661CDD7C3615D +:100D7100DD717BFABEF0ADD8BEF200DBF6FFADDC73 +:100D8100BEF000AEF6BDD8AEF40312ADDABEF2008D +:100D9100AEF661CD03BDDAC2D7C3F33174D908838E +:100DA100C1F626D8BDD8C031750683C312F623C259 +:100DB100FDBC0D93DF0312F623C2D7440000DD26EC +:100DC10061DD717BFACFE80080BEF6F6BEF4BEF2BB +:100DD100ADD8BEF0CFE800818FE8003103FAAEF064 +:100DE100F5E80061CDD7B1D7C3F33174D90883C118 +:100DF100F626D8BDD8C0317505C312F623C2FD0A47 +:100E01000E93DF0312F623C2D7440000DD2761DD14 +:100E1100717BFACFE80080BEF6F6BEF4BEF2ADD823 +:100E2100BEF0CFE800818FE8003103FAAFE000F5B2 +:100E3100E80061CDD7ADD8D7C3F33174DB0F83C1DF +:100E4100F626D8BDD861317026DABDDAC031750D0C +:100E510083C312F626DCBDDC61317023C2FD720E44 +:100E610093DF0CF626D8BDD861317026DABDDAC21F +:100E7100D7C161686BDC6BDDC0DD2F61DD717BFA91 +:100E8100CFE80080BEF4ADDCBEF6ADD8BEF0ADDA81 +:100E9100BEF2CFE800818FE8003103FAAEF0BDD891 +:100EA100AEF2BDDAF5E80061CDD7F6BDD8BDDAD72F +:100EB1008292DD2B61DD717BFACFE80080BEF0F616 +:100EC100BEF2BEF46208BEF6CFE800818FE80031C1 +:100ED10003FAAFE0006072AEF0F5E80061CDD760D3 +:100EE10072F6B1D706DABDDAADDC06D8BDD861D865 +:100EF100A6DAD7D1DD17C1C3DAD89DD8ADDA311C56 +:100F010061EEB4D8DFF8BDDA13BDD8C2C0D7D1DDE8 +:100F11001BC1C3DADA9DDAADD8311E33311E33710C +:100F2100F9B4DADFF4BDD813BDDAC2C0D746D8DDD3 +:100F31000771FF7177D971C0D75BDB9DDB605BDA2D +:100F41009DDAADDC5BD9085BD808BDD8D7C3C7F340 +:100F5100728EFDC162314C4100364E4D1161A0725D +:070F6100C09EFD62C6C2D76D +:0A0FF60031373A31343A333200004B +:0A20000031373A31343A3332000030 :10200A0005214F7B9EC5E9000104080D12171C1F0C :10201A00080100001F003B005A0078009700B50035 :10202A00D400F300110130014E01192634445362E1 @@ -339,9 +339,9 @@ :10257C00A441ED0C26F4418D309D3F8D305070D62A :10258C0012307351230480001231FF318E039D40B1 :10259C009FAEFBF68D407C804C95DC1B8D40318FC3 -:1025AC00241400EA38BDD8AA44FD620D1231FF3163 +:1025AC00241400EA38BDD8AA44FD5E0D1231FF3167 :1025BC008E03318F16EF198D40318F241400EA38B9 -:1025CC00BDD8AA46FD620D1231FF318E03318F1634 +:1025CC00BDD8AA46FD5E0D1231FF318E03318F1638 :1025DC00EA388A427217F3031644000171FE61C88F :1025EC0036FF001701DE02F61617BD78C7500CFD3A :1025FC00012BC0D2DF068D309D3FEF047100B2FB82 @@ -351,7 +351,7 @@ :10263C004617040600FDF92BD2DD0F7100B2FB71B9 :10264C000392CC0500711293EF2D7108B2FB8C062E :10265C00318E318D080E07081C00BBEA388A407297 -:10266C00ABFDB50EBB8C019C05D1DF08CC0501CCB4 +:10266C00ABFDB10EBB8C019C05D1DF08CC0501CCB8 :10267C000400EF038B9C0417040600FD042CD2DD30 :10268C0006CC06C8CC07008C069FB1FB8C06318E9D :10269C00318D080E07081C00BD34AD344401A5DC97 @@ -451,7 +451,7 @@ :102C7C007AFAFDAB23F504F98F06F931051B5003E5 :102C8C00FD472B625C01D161E8CF04F902CFAFFBA9 :102C9C0064710407714192EF10F671040761101210 -:102CAC00F6B1236061FB714192FD5730FDCE42714C +:102CAC00F6B1236061FB714192FD5730FDDD42713D :102CBC002295712BE7618461A461EDEFF8D7714027 :102CCC00F00071783002713AE6713BE2713BEA71C7 :102CDC003BEE8F10055CFC9F1005CF34024AE55289 @@ -461,8 +461,8 @@ :102D1C003002D7717830027148F000D7C788061698 :102D2C0066614FDD0967614EDE0396EF01866672C0 :102D3C00C6D7C7161714AA0412A943DD29AA041270 -:102D4C00A923FDD44DC3AC02FDD44D13C2BDD81381 -:102D5C00FD320FDE0C1714AA0212AA0403BA04EFF8 +:102D4C00A923FDB24DC3AC02FDB24D13C2BDD813C5 +:102D5C00FD2E0FDE0C1714AA0212AA0403BA04EFFC :102D6C00051714A9BA04AC041231FF319E03317F4C :102D7C00087208C6D77100F200304400BFB60130AB :102D8C000188BF9001300984BF9E01BF9C01BF9A8E @@ -483,7 +483,7 @@ :102E7C00AA0412F6231231FF31AE03316FBA02C627 :102E8C00D7C7C1FBF8FF8C085080D612AB1413B90E :102E9C00AB14AA0412A92312D927FBF133BDD81302 -:102EAC00FD9E0DBA02C0C6D731049401D74004F977 +:102EAC00FD9A0DBA02C0C6D731049401D74004F97B :102EBC0002DF10F6BE64BE6EBE6ABF8EFBBF94FB13 :102ECC00BF9AFB31749314308AFBFD762E3090FB45 :102EDC00FD762E3096FBFD762EEF713114940D712C @@ -511,7 +511,7 @@ :10303C000B9E31449413714394717B9E8FDCFB9EE9 :10304C009A8FDDFB9E9B717A9EC6D7CFA7FB5CCF78 :10305C00A8FB5FCFC8FB5DCFFCFB36CFFDFBC9E502 -:10306C00D3FBD7C7CFA4FB12CFA5FB0ECFCCFBFF56 +:10306C00D3FBD7C7CFA4FB12CFA5FB0FCFCCFBFF55 :10307C00F5CDFBF5CEFBF5CFFBF5D0FB5600664C42 :10308C0064DE08723826FB0086EFF3C6D7C78806C5 :10309C001617F1E73403002361E3EDBE332361F827 @@ -531,8 +531,8 @@ :10317C0061F8ED92332361F8ED8333EDC03334A65F :10318C00FB89615F99EDCA333036296194667367A8 :10319C0018A4FBEDCA3340A9FB6ADF1340AAFB68F5 -:1031AC00DF0D674C6CDF08300B406194713AD567CA -:1031BC009FABFBEDCA3367D1DD0C303B3B619434E4 +:1031AC00DF0D674C6CDF08301A406194713AD567BB +:1031BC009FABFBEDCA3367D1DD0C304A3B619434D5 :1031CC00C4FB89616F99EDCA33675C02D1DD0730AE :1031DC00BF2A6194EF0B675C01D1DD0530C42A6115 :1031EC0094675C3CD1DD0F30C92A6194675C3C72FA @@ -557,10 +557,10 @@ :10331C00DF05710B9EEFED679E99710B9E9FDBFB9A :10332C00EDCA33714294675C7F9FDCFBEDCA33714D :10333C004294675C3F9FDDFBEDCA33675C3F9FDEC9 -:10334C00FBEF7B675C1F9FDFFBEF733004396194ED -:10335C00679FE4FBEF6830D1386194679FE5FBEF22 -:10336C005D30EA386194679FE8FBEF52675C01D1EE -:10337C00DD4CFDCE42EF474A58C8DE42E85867188C +:10334C00FBEF7B675C1F9FDFFBEF73300A396194E7 +:10335C00679FE4FBEF6830D7386194679FE5FBEF1C +:10336C005D30F0386194679FE8FBEF52675C01D1E8 +:10337C00DD4CFDDD42EF474A58C8DE42E85867187D :10338C005AFAA458EF38679D58EF33675C01D1DDCA :10339C0005711202EF03711302675C02D1DD057136 :1033AC002202EF03712302679FD3FBEF1167318E6B @@ -570,12 +570,12 @@ :1033EC00318E316D08616A08128F03FC5C80312AC2 :1033FC006162EF56664C3DDF08AE90BD5AF85AEF4D :10340C0049664C3EDF04F85BEF40664C4FDF05FD30 -:10341C00F642EF36664C61DF08E858095AFA72EF4B -:10342C0029664C7FDF05FDB13BEF1F664C4EDF0B71 +:10341C000543EF36664C61DF08E858095AFA72EF3B +:10342C0029664C7FDF05FDC03BEF1F664C4EDF0B62 :10343C00310496045210EF12F2EF0F664C5BDC0471 :10344C0052FFEF06667309A4FB72C6D7C78806162F :10345C0017F1241000240500DC07244C00DD17EFC5 -:10346C0017FDCF0917F104A4FB1489617F99717AB8 +:10346C0017717BFA17F104A4FB1489617F99717AA7 :10347C00FA715294EF02A458C6D7C7C1C1FBF8FF2A :10348C004004F903DD064004F904DF38717BFA8C43 :10349C00027309ACFB5E0AD1DF278C02318E04A4C7 @@ -586,7 +586,7 @@ :1034EC0025DD3D23DD1725DD1C23DD0523DD2BEF3D :1034FC003B710295679F06FCCD5F03EF2F675C83E2 :10350C009F03FCEF27675C039F05FC675C034C0281 -:10351C0061F8712296FDE444EF12679F07FCEF0CF3 +:10351C0061F8712296FDF344EF12679F07FCEF0CE4 :10352C006791DF08E0C15012FD8634C0C6D7C716BC :10353C0017F1E7240000DD2A23DD1E240300DD073C :10354C0024FB00DD24EF2531329605308000EF019D @@ -622,10 +622,10 @@ :10372C00F000710BE772C6D7C7C1C1FBF8FF8FFC65 :10373C00FB4E02DC03F2EF318C024FFDFBDC04523A :10374C00FFEF268C022FFCFB706131318D128FFD47 -:10375C00FB2FFCFB70613133BDD813FDC00DBB4496 +:10375C00FB2FFCFB70613133BDD813FDBC0DBB449A :10376C000001DC03F690BB8B721004C6D7C7C1FBFB :10377C00F8FFAC0814A91489708B6128706131FDB5 -:10378C00D44D1344030071FEDC23AC08148A04816D +:10378C00B24D1344030071FEDC23AC08148A04818F :10379C009A04AC08148A044C11DC10A9148B99AC53 :1037AC000814CA0200AC0814CA0310EF72AC081457 :1037BC00CA0400AC0814A914894DDE0AAC08148A9A @@ -638,355 +638,353 @@ :10382C00C6D7ED3138C75600664C0ADE0BF0317E38 :10383C0012F67810FC86EFF0C6D7C7200CFBF8FF09 :10384C0017040600C15006C150A8C15030FD8B02B0 -:10385C001006D2DD1BA4684A6808DE03E2EF62346E -:10386C00E4FB895CFC99FD04397110B2FBF2EF5159 -:10387C00300600C117040600C130E9FBFDDC4D1019 -:10388C0004F4688FE4FB5C01D1DD264004F903DF0E -:10389C00205010C180FD8634C0C736100571D4C6C7 -:1038AC00DE0F17C15006C150A8C15030FD8B02105D -:1038BC00064004F903DD064004F90461F8FD1040EC -:1038CC00F2100CC6D7D9E5FBC15030FD6A02C062BC -:1038DC009FE8FB5008C15011FD8634C0F2D7D9E8DF -:1038EC00FBC1D9E7FBC15030FDFE0210045008C1EA -:1038FC005011FD8634C0F2D7C7200CFBF8FFCC0961 -:10390C00004007F901DF05CC0A02EF03CC0A10CC0A -:10391C000B808FE4FB5C039C07717AFA8C07D1DF78 -:10392C0008717AD5CC0807EF06717BD5CC082F1718 -:10393C00040800C15004C150A0C15030FD35031023 -:10394C0006624C02DF067110B2FBEF047118B2FB79 -:10395C00C736100571D4C6DE164004F903DF101704 -:10396C00A1C15006C150A8C15030FD8B021006FDFC -:10397C00CF098FE4FB5C034E07DF9EF2100CC6D719 -:10398C00D504F9DF03F6BD6A4004F901DD0AD474ED -:10399C00DD03B474D7CD74038F04F9318FE723DDC5 -:1039AC000B24020024030061C8EDB13A8F06F931F3 -:1039BC00233E301B00466ADF0AE0C15010FD8634FE -:1039CC00C0EF1D307701466ADF165002C15010FD62 -:1039DC008634C0F64670DF088FC8FB5010D6BD7019 -:1039EC00F64670DD36B6704670DF30711293EF2BF1 -:1039FC00301B00466ADF13F64672DF18E0C1501028 -:103A0C00FD8634C0C9725307EF0A307701466A61EC -:103A1C00F8711293F6467261E8B6723154960871D9 -:103A2C004395F6BD6AEF1431449505F6BD6AEF0B6C -:103A3C00A66AF6466A61F8C96AFFFF316296194AAE -:103A4C006C05DE16A46C4A6C05DF0FA46C5004C127 -:103A5C005010FD8634C0EF02F46C316496194A6E36 -:103A6C0005DE16A46E4A6E05DF0FA46E5008C15019 -:103A7C0010FD8634C0EF02F46ED46FDD03B46FD743 -:103A8C00317296174A6D05DE14A46D4A6D05DF0D73 -:103A9C00A46D5010C1FD8634C0EF02F46D4A6D0662 -:103AAC0061F8CD6F25D7C736100571D4DE063046C8 -:103ABC00386194D24004F903DF1C3122070530F140 -:103ACC002961943154950C7153955080C15012FD5D -:103ADC008634C0FDE73AFD0D3BC6D78F03FC5C0175 -:103AEC00D1DD1DD477DD03B477D7CD77098D604B4D -:103AFC0076DD0D8D609D765040C15012FD8634C030 -:103B0C00D74004F903DD04F6BD1AD7D5D0FBDF0886 -:103B1C00F6461ADD19B61AD7D9CCFBF1461ADD0ECA -:103B2C00D9CCFB12AD1A43DE03A61AD7B61AD7C7E7 -:103B3C00FDCF098FC4FB76F5C4FB717AFA5C10D10A -:103B4C0061E8716295665C0FD1DD57665C01D1DD71 -:103B5C0005F504F9EF4C665C02D1DD11E0C15003B0 -:103B6C00FD362BC0711300711B20710303665C04BE -:103B7C00D1DD11711300711B20D503FC61F87103A9 -:103B8C0003FDD434665C08D161E87103035005FD74 -:103B9C00AB097102035003C1FD362BC0711A20FD15 -:103BAC00DE2AF2C6D7C756FF4A461361C8ED8B3CD6 -:103BBC008F06F9311505300400EF0F8F06F93145EA -:103BCC0005300500EF04D907F9F1609F28FC8D78CA -:103BDC009F29FC713492E661301271049261DC31E0 -:103BEC00196162629F2AFCE52BFC311402053080BE -:103BFC0000EF01F6C131449605304000EF01F6C2EA -:103C0C00616B08616A08C131340405302000EF0192 -:103C1C00F6C2616B08616A08C131240205300800E4 -:103C2C00EF01F6C2616B08616A08C1317496053008 -:103C3C000400EF01F6C2616B08616A08C131649639 -:103C4C0004E6A1EF01F6C2616B08616A08C1315448 -:103C5C009603E6EF01F6C2616B08616A9F2CFCF1DA -:103C6C0071240461DC9F26FCF171540761DC9F27F1 -:103C7C00FCD846F10104ECFC14A9148976A4466620 -:103C8C0072C6D7C7FDCF088F04F9318FE724000027 -:103C9C0061F8ED693E23DD1B2361F8ED733D236173 -:103CAC00F8EDEF3D2361F8ED383E2361F8ED0C3F64 -:103CBC00ED663EF6BD707113934005F901DF2C31B2 -:103CCC0034961B466ADD04F424EF02A4244A2465CE -:103CDC00DC0FF6BD6AF504F9712295ED8E3FFDAB54 -:103CEC0023AD6A440A0061D8ED8E3F714295FD6A9E -:103CFC0004716392FDAB234007F903DF0971229530 -:103D0C00F504F9ED8E3FFD0F2640B1FB9BDE0971EA -:103D1C002295F504F9ED8E3F714A2771401105711A -:103D2C00301105713A22715A2271501105FD3B294F -:103D3C00D2DD09712295F504F9ED8E3F7110350035 -:103D4C00CF37001D714012054005F901DD06400515 -:103D5C00F903DF05F5CDFBEF04CFCDFB03CF04F961 -:103D6C0002FD2129ED8E3FFD192CFDCA2C714A9DB7 -:103D7C00FDD434FD6F30F537FF712BE0F505F9718B -:103D8C002295CBE43FEFCBE6F6F0FD6A04713BD411 -:103D9C007112027123028F06F93105285004FD4778 -:103DAC002B625C03318E315D34B3FB8961689950B1 -:103DBC0002FD472BD2DD067170B3FBEF047178B3B3 -:103DCC00FBFDAB23FD812D710806F9CF04F9038FA0 -:103DDC00A6FB5C02D1DD095080C15010FD8634C0B9 -:103DEC00ED8E3FFD903F3164952FA47AD47ADD0897 -:103DFC0031A4E00A31020C06712BE0FDFC3F31A42A -:103E0C00E01731040C13712BE05027C15005FD361F -:103E1C002BC0CF04F904712295FDF13F8F06F931C7 -:103E2C00250731349603F504F9ED8E3FFD903F31B3 -:103E3C00020C14F0C15005FD362BC05005FDAB092A -:103E4C00FDFC3FCF04F903FDF13F8F06F931250747 -:103E5C0031349603F504F9ED8E3FF504F9CFCDFB23 -:103E6C0003F5CEFBF5D0FB717293F6426CFF61E863 -:103E7C00ED8E3FF6BD70711393F5E4FBFD043971C3 -:103E8C007AFAFDDA2DFD6C2CFD1F2D714B9D7113F3 -:103E9C000271230231349302EFFACE3708CBE4BF20 -:103EAC00FFCBE6FFF3CED4FFF5B4FBF5B5FBF5B6CF -:103EBC00FBF5B7FBCF37000971481205F6BEE0BE23 -:103ECC00E2BED0716A27FDB329714307714B27718C -:103EDC0048100571481105713810057138110571BC -:103EEC003302713B22715302715B227158100571C0 -:103EFC00581105CF04F905714295F6BD6AFD980974 -:103F0C00F505F9F42431349604D432DD20E505F9B5 -:103F1C00E504F98F06F9312569F5F8FBF5F6FB5048 -:103F2C002EFDAB09CF05F903E504F9EF55FDBE04F1 -:103F3C00FD3E23717301713204714302710392715E -:103F4C00629231949E02EFFA712AE7CEA409F5F33E -:103F5C00003104070261FDCFF30080F466FDCF0849 -:103F6C00CEA40831329606CF04F905EF09714395BA -:103F7C00E505F9E504F9712BE78F06F9312503F511 -:103F8C0004F9C6D7D47BDF19310200585003FD4722 -:103F9C002B625C01D1DF07F504F9712295D7E47B24 -:103FAC00D74A7BF0DF073104003AF47BD74A7BC851 -:103FBC00DF0AF504F9712295CD7BF0D731020008A8 -:103FCC004A7BFFDD1FA47BD7F0C15004FD362BC00C -:103FDC008FB3FB5C9F9FB3FB7110C4FB303B3B6109 -:103FEC0094CD7BF0D731149306F504F9712295D753 -:103FFC00716395F47A717207FD4502717307D7FDF1 -:10400C001E05F2D7C7200CFBF8FFFDCF098FEAFB8A -:10401C00F0F9E9FBF303FDD44D13BC048FECFBF07A -:10402C00F9EBFBF303FDD44D13BC028FEEFBF0F95F -:10403C00EDFBF303FDD44D13BB717AFAAC04BDD880 -:10404C00F6BDDAAC04311EBDDCF6BDDEFD730DAD84 -:10405C00D8BDDCADDABDDEAC02BDD8F6BDDAAC0243 -:10406C00311EDADCC3DADEC3BDDCF6BDDEFD730D5A -:10407C00C0BDDEC0BDDCADDEFDE90EADD8BDDCAD36 -:10408C00DABDDEABBDD8F6BDDAAB311EDADCC3DA95 -:10409C00DEC3BDDCF6BDDEFD730DC0BDDEC0BDDC18 -:1040AC00ADDEFDE90EDADAADD8FDDF43C3C58D8890 -:1040BC005C3FF0317E0440FC14C2C0B9A488F6BC4D -:1040CC0008BC0A9C078C074C2EDD3D8D880E0770B2 -:1040DC00F161DC605C3FF0317E127940FCBDD8F6BA -:1040EC00BDDA8C0773095C22318FBDDC70BDDEFD3F -:1040FC00730DAC08BDDCAC0AFDE90EADDABC0AAD43 -:10410C00D8BC08615907EFBDAC08BDD8AC0ABDDA04 -:10411C00C9DC0004F6FD3D0EC9DCFFFFF6FD3E0FC9 -:10412C00ADD8BD82AF3AFC4682DD11AF3CFCBF3E40 -:10413C00FCAF3AFCBF3CFCAD82BF3AFCAF3CFC424E -:10414C003EFCDC46AF3AFC423CFCDE3EAD26423A3D -:10415C00FCDE374A2A16DC1A4A2AA0DE138D844B61 -:10416C002ADE0DAF3AFC268644691061C8FDC841B1 -:10417C00F42AAF3AFC445146DC0AAF3AFC2410272F -:10418C00BD28EF0DC928F82AEF074A2AFF61E8A4D9 -:10419C002AAF3EFC423CFCDC18AF3CFC423AFCDE55 -:1041AC0010AF3AFC4628DE09F484AF3AFCBD86EF2A -:1041BC00074A84FF61E8A484100CC6D7C7FDCF0959 -:1041CC00710A9E31929E02EFFA8E949F34FC8E9669 -:1041DC009F35FC8E979F36FC8E989F37FC8E939F55 -:1041EC0038FC8E929F39FC710B9E717AFA8F37FCDA -:1041FC00FD520F76FD5D4313BD80D5EFFBDF0AD575 -:10420C00F0FBDF05D5F1FBDD25F6B14680DF11C9EA -:10421C00803722665C0391DF060A80181A810096AB -:10422C0017FD804413FDA04231049602EF61520643 -:10423C0092926934FC682EFCDFF6AD80BD7EF87C72 -:10424C00F3311C790AF944FEFFDD44D87CF10104FA -:10425C000AF914A944FFFFDF04E6B9EF0BD87CF18F -:10426C0001040AF914A9A1B9FDCF09A0EFFBD5EF00 -:10427C00FBDF1CA0F0FBD5F0FBDF14A0F1FBD5F1AC -:10428C00FBDF0CCFEFFBFFCFF0FBFFCFF1FBFFC64B -:10429C00717AFAD7C716D87CF10744A800DC0571EF -:1042AC000296EF1CF647DD18A47C4A7CA8DC05714D -:1042BC000296EF0CF87CF3311CF6780AF9B7EFE4B0 -:1042CC00C6D7C756A89666F0317E12F6B1780AF9B1 -:1042DC0066D1DFF1FDCF09F5EFFBF5F0FBF5F1FB56 -:1042EC00F47C710396C6717AFAD7C72004FBF8FFE9 -:1042FC00D446DF168D7C9D89FDCF095206929269BA -:10430C002EFC68C0FCDFF6717AFA4A4606DE0EE82F -:10431C004609C0FC9C03A4468C0372EF30F889F369 -:10432C00311C790AF9BB311296058B9C03EF0F8C6B -:10433C00019C03D489DF05CD89A7EF02B489718074 -:10434C0071179661DC61FB7111968C03721004C6B7 -:10435C00D7C72008FBF8FF8F37FCFD520F9C078F47 -:10436C0036FCFD520F9C068F35FCFD520F9C058FC1 -:10437C0034FCFD520F9C048F38FC9C038F39FC9C41 -:10438C00028C06318E0112791A20BB8C075C03D18A -:10439C00DF098C064C0361C86179008C05318EB144 -:1043AC00610900BB313D120103BB8B0E04708C0103 -:1043BC001C00BB8FF4FB4E03DC0E8C034FF4FBDCB8 -:1043CC000B8C024FF5FBDC04AB12EF03ABB11210FC -:1043DC0008C6D7C7C3C12008FBF8FFF661490A61BC -:1043EC00F8614908DF07F7340000ED7C44E6BC04B3 -:1043FC00F6BC06AC0ABC02AC08BBAC06614902AC0C -:10440C000461F8614900DE28AC04BDD8AC06BDDA05 -:10441C00E1FDF80EADDABC06ADD8BC04ABBDD8AC32 -:10442C0002BDDAE1FD130FADDABC02ADD8BBEFCAA9 -:10443C00AC06BC02AC04BBAC08BDD8AC0ABDDAAC53 -:10444C0004BDDCAC06FD760EAC04BDDCAC06FDE9AF -:10445C000EE1FD130FADDABC06ADD8BC04AC0661A1 -:10446C004902AC0461F8614900DCC5AC0214AB1222 -:10447C00100CC6D7C7C12004FBF8FF8F31FCFD52CE -:10448C000F9C034E04DF1CAD7E4680DE07AD8026FC -:10449C007E12EF40F64680DF07467EDD03E7EF3401 -:1044AC00F7EF318C04318EB1128C03318E43DF184F -:1044BC00303822267E0680BB8C045C0391DF05AB72 -:1044CC00041800BBAB12EF0C8C034E04DE0532A9B2 -:1044DC0000EF01F71006C6D7FDCF093122960BF677 -:1044EC00468CDD06B68C717AFAD7712396717AFAFE -:1044FC004004F904DF06715307F42CD7D9CFFBF134 -:10450C00E7240000DD0F23DD1823DD0F23DD4C2312 -:10451C00DD2423DD33715307F42CD7715207F42CAF -:10452C00D7D42CDF07715207E42CEF05715307F435 -:10453C002CC98CFA00D7D42CDF0A715207E42CC991 -:10454C008CFA00D7F5CFFBD7D42CDF0A715307E4D4 -:10455C002CC98CFA00D7CFCFFB02D7FD6B45D7D92E -:10456C0005FCF1E7240000DD0923DD2123DD09230F -:10457C00EF1B715307F42CD7D42CDF07715207E4CF -:10458C002CEF05715307F42CC98C2D01D7715207F0 -:10459C00E42CD731629301D7710394D9CDFBF1E7A9 -:1045AC00240000DD1223DD1923DD1123DD2623DD9C -:1045BC003423DD3923DD3FFD2B46EF3DFD4C46EF2B -:1045CC0038D9CCFBC1AE6CFD282DC0F313BE6C7179 -:1045DC002304EF25F0C1AE6CFD282DC0F313BE6C87 -:1045EC00712304EF14F6BE6C712204EF0CCB6CFF3C -:1045FC0000712304EF03FDC0464004F905DD0640BD -:10460C0004F901DF067123047103943104940FF64D -:10461C00BE64BE6A31220402EF02F690BE6ED7CDA4 -:10462C002E47F48EAE6C317DBFCAFCFD9546D2DFB1 -:10463C000ED9CCFBC1AE6CFD282DC0F313BE6CD7CC -:10464C00FD9546D2DD0DCD2E47F48EAE6C317DBF7F -:10465C00CAFCD7E88E0934205080D6BFC6FC22CACB -:10466C00FCBDD8304700FD9E0DBFC8FC30C6FCFD1C -:10467C003E2DF313BE6CB42ED42EDF0CCD2E47A4DE -:10468C008E4A8E1F61C8F48ED740AFFB0BDC0571D0 -:10469C002304F2D740AFFB0661D831229211F0C14E -:1046AC00AE6CFD282DC0F313BE6C712204EF03FD1C -:1046BC00C046E2D7710294F0C1AE6CFD282DC0F358 -:1046CC0013BE6CA48F4A8F40DC37F48FD890F13135 -:1046DC003F0412FD14D890F1BDD85008FDED0D0823 -:1046EC007208E6D2DD040192DFFC896158D1DD0548 -:1046FC00712204EF03712304A4904A902061C8F442 -:10470C0090D7C73026FDC6D77180717DFADE035273 -:05471C0001D75200D797 -:1047210061FC61FCC1C3C5C7520C929269D4FEC140 -:10473100DFF88EFD708EFCC1717AFA4004F903DF57 -:104741000530F1296194C09EFC609EFD34D4FE5277 -:1047510006C0B9A5A592DFF9C6C4C2C061FC61DF7C -:10476100520C929269D4FEC1DFF88EFD708EFCC1AD -:104771008F4105775C04D1DD06675C01D1DD5031E5 -:104781005494367162077153948FB4FB5FBCFBD1B3 -:10479100DF1B8FB5FB5FBDFBD1DF128FB6FB5FBEA9 -:1047A100FBD1DF098FB7FB5FBFFBD1DD0C316207A6 -:1047B10002EFFA716307716B27711396FD1830F4DC -:1047C100227148500571605005717AFAEDBB486756 -:1047D1005C02D1DD16D422DD124A2202DD0DF42263 -:1047E1007148500571605005717AFA717AFA8D221B -:1047F100318FE7240000DD0823DD1423DD2CEF4A8F -:10480100F4467140500571505005E422EDBB488FCC -:1048110040059D47715050058D479D49D847FDCCB6 -:1048210033629D48CD2202EDBB48675C02D1DD17A2 -:10483100675C10D1DD05CD2203EF0F714850057182 -:10484100605005F422EF73CD22044A2203DF108D5C -:10485100489F4005D848C1D847FD5834C0EF1F8F45 -:10486100400576717447DC054A4702DE06716050E7 -:1048710005EF47C7D847FD9930C071505005D84959 -:10488100F1242900DD27240400DD22242200DD1D7E -:10489100241100DD0C240100DD13241E00DD0EEFC8 -:1048A1000A4A4760DF07CD4761EF02A4474A220366 -:1048B100DF08D847FDCC33629D48C09EFC609EFD59 -:1048C10034D4FE5206C0B9A5A592DFF961FCC1C37B -:1048D100C5C7520C929269D4FEC1DFF88EFD708E6D -:1048E100FCC1717AFA51405F0401D1DD06F616A7C9 -:1048F10047DFF2300400BF2401F6BF2A01300B0B61 -:10490100BF2801FD4502300B0FBF2801FD450230D4 -:104911000F0FBF2801710AE6F6420C01DD33AF0427 -:1049210001BF0C0131529329715293710BE2D84DA1 -:10493100FDB7033184BD02EFFACBB422FBD84FF1AE -:10494100BEB8714BE1714BE5710ABD8D4E9E44EFCE -:104951000C715393714AE5717BBD713393C09EFC19 -:10496100609EFD34D4FE5206C0B9A5A592DFF9C6FA -:10497100C4C2C061FCC1C5717AFAD44CDD0BEA4AEC -:10498100899E44A64AB44CEF33710AE6300400BF55 -:104991002401F6BF2A01300B0BBF280100000000E3 -:1049A10000000000510FBF280100000000000000BE -:1049B10000500FBF2801712393713393C4C061FC70 -:1049C10061EF520C929269D4FEC1DFF88EFD708EB8 -:1049D100FCC12006FBF8FF71503002CEABACCC0419 -:1049E10000F6BB31B2E210617900F6614900DFF3F4 -:1049F10071603002ED7B4A8E519C03713BE28C0366 -:104A01005C02D1DD1E8C035C08D1DF0971503002DC -:104A1100CC0400EFCC8C0570FD3A35629E50CC047D -:104A210002EFBE8C035C03D1DF408E509C027150BB -:104A310030028C04D1DF0E8C0270FD8035629C0542 -:104A4100CC0401EF328C044C02DF0671603002EFBE -:104A510029CF34025A716030028C0270C18C05700A -:104A6100FDE234C0CF34024AEF108C035C01D1DD8A -:104A71000671603002EF03EDE2491006C09EFC6052 -:104A81009EFD34D4FE5206C0B9A5A592DFF961FCA2 -:104A9100C1C3C5C7520C929269D4FEC1DFF88EFD25 -:104AA100708EFCC1710A9E31929E02EFFA8FDEFB7D -:104AB1004F96FFDF198FDFFB4F97FFDF118FE0FB71 -:104AC1004F98FFDF095004C15011FD8634C0710BAE -:104AD1009EC09EFC609EFD34D4FE5206C0B9A5A5C1 -:104AE10092DFF9C6C4C2C061FCE46661FCC1C3C502 -:104AF100C7520C929269D4FEC1DFF88EFD708EFC14 -:104B0100C1C1FBF8FF8D1F9C018E31318EE7240658 -:104B110000DD0823DD0E23DD22EF38717AFA8C01E6 -:104B21009D5EEF2F717AFA4007F901DF068C019D36 -:104B31005DEF2051FF2E019D5DEF18717AFA8C0116 -:104B41009D304004F903DD064004F904DF05306DB2 -:104B51002561944031FF09DE05A031FFEF0771584F -:104B6100F000716294710BE3C0C09EFC609EFD3445 -:104B7100D4FE5206C0B9A5A592DFF9C6C4C2C06170 -:104B8100FCC7FDCF09D46661F831249527712395BF -:104B9100D466DD05B466CEABAC717AFA5600664CCC -:104BA1000ADD1172F3311C79D8FCCEFC0061CA61B7 -:104BB100A486EFEA717AFAF2C6D7C7C1C1FBF8FF42 -:104BC100CC01008C014C0ADE36FDCF098C01F0319D -:104BD1007E0410FC14A96168DF09AC02B9717AFA8C -:104BE100F2EF1D8C01F0317E127910FC614902DF78 -:104BF10006717AFAE2EF09717AFA615901EFC4E2BA -:104C01001004C6D7C72004FBF8FFF64210FC61F878 -:104C1100EDE84CFDCF09CC03008C034C0ADE3C8C43 -:104C210003F0317E0410FC14A96168DF05717AFA82 -:104C3100EF29717AFA8C0372F3311C7910FCCEFCE6 -:104C41000061CA629C02D1DF0A8C03F0317E12E658 -:104C51007810FCFDCF09615903EFBECC0200CC01F5 -:104C6100018C02F0317E0410FC14A96168DD788C9E -:104C710002F0317E127910FCE743DF658C014C0AAA -:104C8100DE5F8C01F0317E127910FCE743DD4DFDD2 -:104C9100CF098C01F0317E0410FC14A96168DF1882 -:104CA1006169018C01F0317E12F67810FC8C024EA4 -:104CB10001DCED717AFAEF2F8C01F0317E0410FCEA -:104CC10014A9128C02F0317E337810FC8C01F03182 -:104CD1007E12E67810FC615902717AFA615901EF8E -:104CE1009B615902ED624C00F21004C6D761FF527C -:104CF1000C929269D4FEC1DFF88EFD708EFCC171F9 -:104D01007AFA8FE4FB5C03D1DD184004F903DD0678 -:104D11004004F904DF0C36100571D4DE0530463845 -:104D21006194C09EFC609EFD34D4FE5206C0B9A5BC -:104D3100A592DFF961FC61FC61FC61FC61FC61FC35 -:104D410061FC61FC61FC61FC61FC61FC61FC61FC7A -:104D510061FC61FC61FC61FC61FC61FC61FC61FC6A -:0E4D610061FC61FC61FC61FC61FC61FC61FCB9 -:0A4D700000060C12181E242A30362B -:104D7A00ACFB0000000062FE000000008C39CD355B -:104D8A008C229F45052EB42EE444B23A8E088F3CFD -:104D9A0028FC36FE20FE02F903F929FC30FE2AFC23 -:104DAA002BFC08F926FC6CFF1AFF6EFF6AFF64FFF2 -:0A4DBA0027FC66FF2CFC55555555EB -:104DC400FF0000000000983AF82AFF0000004700A6 -:104DD400317503F7332312D714AEF8C716AC061295 -:104DE400C5AC0416F643DD078B99A7A5B3EFF5C24E -:024DF400C6D720 -:024FF400323E4B -:0A4FF60031383A31323A3536000006 +:10385C001006D2DD1B4A6804DE05A468E2EF68346A +:10386C00E4FB895CFC99FD0A397110B2FBF2EF574D +:10387C00717BFA300600C117040600C130E9FBFD6C +:10388C00BA4D1004717AFAF4688FE4FB5C01D1DD57 +:10389C00264004F903DF205010C180FD8634C0C7D8 +:1038AC0036100571D4C6DE0F17C15006C150A8C121 +:1038BC005030FD8B0210064004F903DD064004F97C +:1038CC000461F8FD1F40F2100CC6D7D9E5FBC150BE +:1038DC0030FD6A02C0629FE8FB5008C15011FD86A2 +:1038EC0034C0F2D7D9E8FBC1D9E7FBC15030FDFE9B +:1038FC000210045008C15011FD8634C0F2D7C72005 +:10390C000CFBF8FFCC09004007F901DF05CC0A02DB +:10391C00EF03CC0A10CC0B808FE4FB5C039C07D12B +:10392C00DF08717AD5CC0807EF06717BD5CC082F50 +:10393C0017040800C15004C150A0C15030FD35031C +:10394C001006624C02DF077110B2FBF2EF357118F2 +:10395C00B2FBF468C736100571D4C6DE164004F904 +:10396C0003DF1017A1C15006C150A8C15030FD8B08 +:10397C00021006717BFA8FE4FB5C034E07DD03E259 +:10398C00EF01F2100CC6D7D504F9DF03F6BD6A407F +:10399C0004F901DD0AD474DD03B474D7CD74038F3C +:1039AC0004F9318FE723DD0B24020024030061C8E6 +:1039BC00EDB83A8F06F931233E301B00466ADF0A18 +:1039CC00E0C15010FD8634C0EF1D307701466ADF30 +:1039DC00165002C15010FD8634C0F64670DF088FB9 +:1039EC00C8FB5010D6BD70F64670DD36B67046700A +:1039FC00DF30711293EF2B301B00466ADF13F64653 +:103A0C0072DF18E0C15010FD8634C0C9725307EF45 +:103A1C000A307701466A61F8711293F6467261E8D2 +:103A2C00B67231549608714395F6BD6AEF14314461 +:103A3C009505F6BD6AEF0BA66AF6466A61F8C96A87 +:103A4C00FFFF316296194A6C05DE16A46C4A6C05B0 +:103A5C00DF0FA46C5004C15010FD8634C0EF02F48B +:103A6C006C316496194A6E05DE16A46E4A6E05DF3B +:103A7C000FA46E5008C15010FD8634C0EF02F46ED6 +:103A8C00D46FDD03B46FD7317296174A6D05DE140F +:103A9C00A46D4A6D05DF0DA46D5010C1FD8634C0B8 +:103AAC00EF02F46D4A6D0661F8CD6F25D7C736105D +:103ABC000571D4DE0E8FB2FB5C02D1DF06304638C6 +:103ACC006194D24004F903DF1C3122070530F1293F +:103ADC0061943154950C7153955080C15012FD86F0 +:103AEC0034C0FDF63AFD1C3BC6D78F03FC5C01D1FC +:103AFC00DD1DD477DD03B477D7CD77098D604B7698 +:103B0C00DD0D8D609D765040C15012FD8634C0D7BE +:103B1C004004F903DD04F6BD1AD7D5D0FBDF08F657 +:103B2C00461ADD19B61AD7D9CCFBF1461ADD0ED9D7 +:103B3C00CCFB12AD1A43DE03A61AD7B61AD7717B8B +:103B4C00FAC78FC4FB76F5C4FB717AFA5C10D161AD +:103B5C00E8716295665C0FD1DD57665C01D1DD05BD +:103B6C00F504F9EF4C665C02D1DD11E0C15003FDA8 +:103B7C00362BC0711300711B20710303665C04D1DA +:103B8C00DD11711300711B20D503FC61F871030367 +:103B9C00FDD434665C08D161E87103035005FDABBC +:103BAC00097102035003C1FD362BC0711A20FDDED2 +:103BBC002AF2C6D7C756FF4A461361C8ED9A3C8F06 +:103BCC0006F9311505300400EF0F8F06F931450564 +:103BDC00300500EF04D907F9F1609F28FC8D789F20 +:103BEC0029FC713492E661301271049261DC311956 +:103BFC006162629F2AFCE52BFC31140205308000C7 +:103C0C00EF01F6C131449605304000EF01F6C26178 +:103C1C006B08616A08C131340405302000EF01F6ED +:103C2C00C2616B08616A08C131240205300800EFDB +:103C3C0001F6C2616B08616A08C1317496053004E3 +:103C4C0000EF01F6C2616B08616A08C13164960429 +:103C5C00E6A1EF01F6C2616B08616A08C1315496A6 +:103C6C0003E6EF01F6C2616B08616A9F2CFCF171EF +:103C7C00240461DC9F26FCF171540761DC9F27FC56 +:103C8C00D846F10104ECFC14A9148976A44666729A +:103C9C00C6D7C7FDCF088F04F9318FE72400006128 +:103CAC00F8ED783E23DD1B2361F8ED823D2361F8AE +:103CBC00EDFE3D2361F8ED473E2361F8ED1B3FED32 +:103CCC00753EF6BD707113934005F901DF2C31344C +:103CDC00961B466ADD04F424EF02A4244A2465DC16 +:103CEC000FF6BD6AF504F9712295ED9D3FFDAB23EE +:103CFC00AD6A440A0061D8ED9D3F714295FD6A049E +:103D0C00716392FDAB234007F903DF09712295F52E +:103D1C0004F9ED9D3FFD0F2640B1FB9BDE0971229E +:103D2C0095F504F9ED9D3F714A27714011057130ED +:103D3C001105713A22715A2271501105FD3B29D29D +:103D4C00DD09712295F504F9ED9D3F71103500CF19 +:103D5C0037001D714012054005F901DD064005F9DB +:103D6C0003DF05F5CDFBEF04CFCDFB03CF04F90248 +:103D7C00FD2129ED9D3FFD192CFDCA2C714A9DFD9D +:103D8C00D434FD6F30F537FF712BE0F505F9712256 +:103D9C0095CBE43FEFCBE6F6F0FD6A04713BD471B2 +:103DAC0012027123028F06F93105285004FD472BAE +:103DBC00625C03318E315D34B3FB896168995002CA +:103DCC00FD472BD2DD067170B3FBEF047178B3FBAA +:103DDC00FDAB23FD812D710806F9CF04F9038FA6E5 +:103DEC00FB5C02D1DD095080C15010FD8634C0ED62 +:103DFC009D3FFD9F3F3164952FA47AD47ADD083125 +:103E0C00A4E00A31020C06712BE0FD0B4031A4E05A +:103E1C001731040C13712BE05027C15005FD362BC4 +:103E2C00C0CF04F904712295FD00408F06F93125AD +:103E3C000731349603F504F9ED9D3FFD9F3F3102A8 +:103E4C000C14F0C15005FD362BC05005FDAB09FD1F +:103E5C000B40CF04F903FD00408F06F931250731E3 +:103E6C00349603F504F9ED9D3FF504F9CFCDFB0332 +:103E7C00F5CEFBF5D0FB717293F6426CFF61E8ED69 +:103E8C009D3FF6BD70711393F5E4FBFD0A39717A11 +:103E9C00FAFDDA2DFD6C2CFD1F2D714B9D7113025B +:103EAC0071230231349302EFFACE3708CBE4BFFF13 +:103EBC00CBE6FFF3CED4FFF5B4FBF5B5FBF5B6FBC3 +:103ECC00F5B7FBCF37000971481205F6BEE0BEE22C +:103EDC00BED0716A27FDB329714307714B27714816 +:103EEC0010057148110571381005713811057133C1 +:103EFC0002713B22715302715B227158100571588B +:103F0C001105CF04F905714295F6BD6AFD9809F5C6 +:103F1C0005F9F42431349604D432DD20E505F9E5B5 +:103F2C0004F98F06F9312569F5F8FBF5F6FB502EEF +:103F3C00FDAB09CF05F903E504F9EF55FDBE04FD12 +:103F4C003E237173017132047143027103927162E9 +:103F5C009231949E02EFFA712AE7CEA409F5F30090 +:103F6C003104070261FDCFF30080F466FDCF08CE6B +:103F7C00A40831329606CF04F905EF09714395E593 +:103F8C0005F9E504F9712BE78F06F9312503F504E2 +:103F9C00F9C6D7D47BDF19310200585003FD472BEB +:103FAC00625C01D1DF07F504F9712295D7E47BD768 +:103FBC004A7BF0DF073104003AF47BD74A7BC8DF39 +:103FCC000AF504F9712295CD7BF0D7310200084A2D +:103FDC007BFFDD1FA47BD7F0C15004FD362BC08FB7 +:103FEC00B3FB5C9F9FB3FB7110C4FB304A3B6194E5 +:103FFC00CD7BF0D731149306F504F9712295D77166 +:10400C006395F47A717207FD4502717307D7FD1E33 +:10401C0005F2D7717BFAC7200CFBF8FF8FEAFBF097 +:10402C00F9E9FBF303FDB24D13BC048FECFBF0F983 +:10403C00EBFBF303FDB24D13BC028FEEFBF0F9ED7D +:10404C00FBF303FDB24D13BB717AFAAC04BDD8F689 +:10405C00BDDAAC04311EBDDCF6BDDEFD6F0DADD896 +:10406C00BDDCADDABDDEAC02BDD8F6BDDAAC0231DA +:10407C001EDADCC3DADEC3BDDCF6BDDEFD6F0DC0BF +:10408C00BDDEC0BDDCADDEFDE50EADD8BDDCADDA10 +:10409C00BDDEABBDD8F6BDDAAB311EDADCC3DADE81 +:1040AC00C3BDDCF6BDDEFD6F0DC0BDDEC0BDDCAD3D +:1040BC00DEFDE50EDADAADD8FDEE43C3C58D885CC6 +:1040CC003FF0317E0440FC14C2C0B9A488F6BC0891 +:1040DC00BC0A9C078C074C2EDD3D8D880E0770F1B9 +:1040EC0061DC605C3FF0317E127940FCBDD8F6BDDE +:1040FC00DA8C0773095C22318FBDDC70BDDEFD6F7D +:10410C000DAC08BDDCAC0AFDE50EADDABC0AADD8D1 +:10411C00BC08615907EFBDAC08BDD8AC0ABDDAC903 +:10412C00DC0004F6FD390EC9DCFFFFF6FD3A0FADDD +:10413C00D8BD82AF3AFC4682DD11AF3CFCBF3EFCE1 +:10414C00AF3AFCBF3CFCAD82BF3AFCAF3CFC423EFC +:10415C00FCDC46AF3AFC423CFCDE3EAD26423AFC6F +:10416C00DE374A2A16DC1A4A2AA0DE138D844B2A23 +:10417C00DE0DAF3AFC268644691061C8FDD741F4C8 +:10418C002AAF3AFC445146DC0AAF3AFC241027BD56 +:10419C0028EF0DC928F82AEF074A2AFF61E8A42A5C +:1041AC00AF3EFC423CFCDC18AF3CFC423AFCDE105F +:1041BC00AF3AFC4628DE09F484AF3AFCBD86EF0723 +:1041CC004A84FF61E8A484100CC6D7717BFAC771CE +:1041DC000A9E31929E02EFFA8E949F34FC8E969F2B +:1041EC0035FC8E979F36FC8E989F37FC8E939F38AC +:1041FC00FC8E929F39FC710B9E717AFA8F37FCFD05 +:10420C004E0F76FD6C4313BD80D5EFFBDF0AD5F066 +:10421C00FBDF05D5F1FBDD25F6B14680DF11C9804A +:10422C003722665C0391DF060A80181A8100961704 +:10423C00FD8F4413FDAF4231049602EF615206929A +:10424C00926934FC682EFCDFF6AD80BD7EF87CF301 +:10425C00311C790AF944FEFFDD44D87CF101040AD3 +:10426C00F914A944FFFFDF04E6B9EF0BD87CF10188 +:10427C00040AF914A9A1B9717BFAA0EFFBD5EFFBE5 +:10428C00DF1CA0F0FBD5F0FBDF14A0F1FBD5F1FB9C +:10429C00DF0CCFEFFBFFCFF0FBFFCFF1FBFFC671C5 +:1042AC007AFAD7C716D87CF10744A800DC0571024E +:1042BC0096EF1CF647DD18A47C4A7CA8DC0571023D +:1042CC0096EF0CF87CF3311CF6780AF9B7EFE4C6DC +:1042DC00D7C756A89666F0317E12F6B1780AF96601 +:1042EC00D1DFF1717BFAF5EFFBF5F0FBF5F1FBF4A7 +:1042FC007C710396C6717AFAD7C72004FBF8FFD4F9 +:10430C0046DF168D7C9D89717BFA52069292692E3E +:10431C00FC68C0FCDFF6717AFA4A4606DE0EE84607 +:10432C0009C0FC9C03A4468C0372EF30F889F3316E +:10433C001C790AF9BB311296058B9C03EF0F8C018B +:10434C009C03D489DF05CD89A7EF02B489718071F4 +:10435C00179661DC61FB7111968C03721004C6D741 +:10436C00C72008FBF8FF8F37FCFD4E0F9C078F36DC +:10437C00FCFD4E0F9C068F35FCFD4E0F9C058F34BB +:10438C00FCFD4E0F9C048F38FC9C038F39FC9C0267 +:10439C008C06318E0112791A20BB8C075C03D1DF9D +:1043AC00098C064C0361C86179008C05318EB161B2 +:1043BC000900BB313D120103BB8B0E04708C011C38 +:1043CC0000BB8FF4FB4E03DC0E8C034FF4FBDC0BB9 +:1043DC008C024FF5FBDC04AB12EF03ABB1121008EF +:1043EC00C6D7C7C3C12008FBF8FFF661490A61F8BC +:1043FC00614908DF07F7340000ED8B44E6BC04F696 +:10440C00BC06AC0ABC02AC08BBAC06614902AC04ED +:10441C0061F8614900DE28AC04BDD8AC06BDDAE118 +:10442C00FDF40EADDABC06ADD8BC04ABBDD8AC0205 +:10443C00BDDAE1FD0F0FADDABC02ADD8BBEFCAACF3 +:10444C0006BC02AC04BBAC08BDD8AC0ABDDAAC04EB +:10445C00BDDCAC06FD720EAC04BDDCAC06FDE50E9D +:10446C00E1FD0F0FADDABC06ADD8BC04AC0661495A +:10447C0002AC0461F8614900DCC5AC0214AB12104B +:10448C000CC6D7C7C12004FBF8FF8F31FCFD4E0FC3 +:10449C009C034E04DF1CAD7E4680DE07AD80267E7D +:1044AC0012EF40F64680DF07467EDD03E7EF34F778 +:1044BC00EF318C04318EB1128C03318E43DF183006 +:1044CC003822267E0680BB8C045C0391DF05AB048E +:1044DC001800BBAB12EF0C8C034E04DE0532A900A6 +:1044EC00EF01F71006C6D7717BFA3122960CF6460F +:1044FC008CDD07B68C717AFAEF7C712396717AFA9F +:10450C004004F904DF07715307F42CEF69D9CFFB92 +:10451C00F1E7240000DD0F23DD1A23DD1023DD532A +:10452C0023DD2723DD38715307F42CEF4971520733 +:10453C00F42CEF42D42CDF07715207E42CEF0571F9 +:10454C005307F42CC98CFA00EF2CD42CDF0B7152CE +:10455C0007E42CC98CFA00EF1DF5CFFBEF18D42C17 +:10456C00DF0B715307E42CC98CFA00EF09CFCFFB9A +:10457C0002EF03FD8345D7D905FCF1E7240000DDEC +:10458C000923DD2123DD0923EF1B715307F42CD7FD +:10459C00D42CDF07715207E42CEF05715307F42C70 +:1045AC00C98C2D01D7715207E42CD731629301D7F6 +:1045BC00710394D9CDFBF1E7240000DD1223DD1942 +:1045CC0023DD1123DD2623DD3423DD3923DD3FFDFF +:1045DC004346EF3DFD6446EF38D9CCFBC1AE6CFDD4 +:1045EC00282DC0F313BE6C712304EF25F0C1AE6C03 +:1045FC00FD282DC0F313BE6C712304EF14F6BE6CB2 +:10460C00712204EF0CCB6CFF00712304EF03FDD877 +:10461C00464004F905DD064004F901DF0671230468 +:10462C007103943104940FF6BE64BE6A3122040205 +:10463C00EF02F690BE6ED7CD2E47F48EAE6C317D68 +:10464C00BFCAFCFDAD46D2DF0ED9CCFBC1AE6CFDB2 +:10465C00282DC0F313BE6CD7FDAD46D2DD0DCD2E8B +:10466C0047F48EAE6C317DBFCAFCD7E88E0934207E +:10467C005080D6BFC6FC22CAFCBDD8304700FD9A7C +:10468C000DBFC8FC30C6FCFD3E2DF313BE6CB42E22 +:10469C00D42EDF0CCD2E47A48E4A8E1F61C8F48E0B +:1046AC00D740AFFB0BDC05712304F2D740AFFB0600 +:1046BC0061D831229211F0C1AE6CFD282DC0F313DC +:1046CC00BE6C712204EF03FDD846E2D7710294F060 +:1046DC00C1AE6CFD282DC0F313BE6CA48F4A8F4065 +:1046EC00DC37F48FD890F1313F0412FD14D890F1DF +:1046FC00BDD85008FDE90D087208E6D2DD04019220 +:10470C00DFFC896158D1DD05712204EF03712304AC +:10471C00A4904A902061C8F490D7C73026FDC6D724 +:0D472C007180717DFADE035201D75200D773 +:1047390061FC61FCC1C3C5C7520C929269D4FEC128 +:10474900DFF88EFD708EFCC1717AFA4004F903DF3F +:104759000530F1296194C09EFC609EFD34D4FE525F +:1047690006C0B9A5A592DFF9C6C4C2C061FC61DF64 +:10477900520C929269D4FEC1DFF88EFD708EFCC195 +:104789008F4105775C04D1DD06675C01D1DD5031CD +:104799005494367162077153948FB4FB5FBCFBD19B +:1047A900DF1B8FB5FB5FBDFBD1DF128FB6FB5FBE91 +:1047B900FBD1DF098FB7FB5FBFFBD1DD0C3162078E +:1047C90002EFFA716307716B27711396FD1830F4C4 +:1047D900227148500571605005717AFAEDD3486726 +:1047E9005C02D1DD16D422DD124A2202DD0DF4224B +:1047F9007148500571605005717AFA717AFA8D2203 +:10480900318FE7240000DD0823DD1423DD2CEF4A76 +:10481900F4467140500571505005E422EDD3488F9C +:1048290040059D47715050058D479D49D847FDCC9E +:1048390033629D48CD2202EDD348675C02D1DD1772 +:10484900675C10D1DD05CD2203EF0F71485005716A +:10485900605005F422EF73CD22044A2203DF108D44 +:10486900489F4005D848C1D847FD5834C0EF1F8F2D +:10487900400576717447DC054A4702DE06716050CF +:1048890005EF47C7D847FD9930C071505005D84941 +:10489900F1242900DD27240400DD22242200DD1D66 +:1048A900241100DD0C240100DD13241E00DD0EEFB0 +:1048B9000A4A4760DF07CD4761EF02A4474A22034E +:1048C900DF08D847FDCC33629D48C09EFC609EFD41 +:1048D90034D4FE5206C0B9A5A592DFF961FCC1C363 +:1048E900C5C7520C929269D4FEC1DFF88EFD708E55 +:1048F900FCC1717AFA51405F0401D1DD06F616A7B1 +:1049090047DFF2300400BF2401F6BF2A01300B0B48 +:10491900BF2801FD4502300B0FBF2801FD450230BC +:104929000F0FBF2801710AE6F6420C01DD33AF040F +:1049390001BF0C0131529329715293710BE2D84D89 +:10494900FDB7033184BD02EFFACBB422FBD84FF196 +:10495900BEB8714BE1714BE5710ABD8D4E9E44EFB6 +:104969000C715393714AE5717BBD713393C09EFC01 +:10497900609EFD34D4FE5206C0B9A5A592DFF9C6E2 +:10498900C4C2C061FCC1C5717AFAD44CDD0BEA4AD4 +:10499900899E44A64AB44CEF33710AE6300400BF3D +:1049A9002401F6BF2A01300B0BBF280100000000CB +:1049B90000000000510FBF280100000000000000A6 +:1049C90000500FBF2801712393713393C4C061FC58 +:1049D90061EF520C929269D4FEC1DFF88EFD708EA0 +:1049E900FCC12006FBF8FF71503002CEABACCC0401 +:1049F90000F6BB31B2E210617900F6614900DFF3DC +:104A090071603002ED934A8E519C03713BE28C0335 +:104A19005C02D1DD1E8C035C08D1DF0971503002C4 +:104A2900CC0400EFCC8C0570FD3A35629E50CC0465 +:104A390002EFBE8C035C03D1DF408E509C027150A3 +:104A490030028C04D1DF0E8C0270FD8035629C052A +:104A5900CC0401EF328C044C02DF0671603002EFA6 +:104A690029CF34025A716030028C0270C18C0570F2 +:104A7900FDE234C0CF34024AEF108C035C01D1DD72 +:104A89000671603002EF03EDFA491006C09EFC6022 +:104A99009EFD34D4FE5206C0B9A5A592DFF961FC8A +:104AA900C1C3C5C7520C929269D4FEC1DFF88EFD0D +:104AB900708EFCC1710A9E31929E02EFFA8FDEFB65 +:104AC9004F96FFDF198FDFFB4F97FFDF118FE0FB59 +:104AD9004F98FFDF095004C15011FD8634C0710B96 +:104AE9009EC09EFC609EFD34D4FE5206C0B9A5A5A9 +:104AF90092DFF9C6C4C2C061FCE46661FCC1C3C5EA +:104B0900C7520C929269D4FEC1DFF88EFD708EFCFB +:104B1900C1C1FBF8FF8D1F9C018E31318EE7240640 +:104B290000DD0823DD0E23DD22EF38717AFA8C01CE +:104B39009D5EEF2F717AFA4007F901DF068C019D1E +:104B49005DEF2051FF2E019D5DEF18717AFA8C01FE +:104B59009D304004F903DD064004F904DF05306D9A +:104B69002561944031FF09DE05A031FFEF07715837 +:104B7900F000716294710BE3C0C09EFC609EFD342D +:104B8900D4FE5206C0B9A5A592DFF9C6C4C2C06158 +:104B9900FC717BFAC7D46661F83124952771239596 +:104BA900D466DD05B466CEABAC717AFA5600664CB4 +:104BB9000ADD1172F3311C79D8FCCEFC0061CA619F +:104BC900A486EFEA717AFAF2C6D7C7C1C1FBF8FF2A +:104BD900CC01008C014C0ADE36717BFA8C01F03174 +:104BE9007E0410FC14A96168DF09AC02B9717AFA74 +:104BF900F2EF1D8C01F0317E127910FC614902DF60 +:104C090006717AFAE2EF09717AFA615901EFC4E2A1 +:104C19001004C6D7C72004FBF8FFF64210FC61F860 +:104C2900EDFF4C717BFA9C038C034C0ADE3C8C0330 +:104C3900F0317E0410FC14A96168DF05717AFAEF7E +:104C490029717AFA8C0372F3311C7910FCCEFC00BD +:104C590061CA629C02D1DF0A8C03F0317E12E678C8 +:104C690010FC717BFA615903EFBECC0200CC010143 +:104C79008C02F0317E0410FC14A96168DD788C0285 +:104C8900F0317E127910FCE743DF658C014C0ADEB6 +:104C99005F8C01F0317E127910FCE743DD4D717BA9 +:104CA900FA8C01F0317E0410FC14A96168DF1861E7 +:104CB90069018C01F0317E12F67810FC8C024E01EC +:104CC900DCED717AFAEF2F8C01F0317E0410FC14BF +:104CD900A9128C02F0317E337810FC8C01F0317E00 +:104CE90012E67810FC615902717AFA615901EF9B59 +:104CF900615902ED794C00F21004C6D761FF520CDC +:104D0900929269D4FEC1DFF88EFD708EFCC1717A72 +:104D1900FA8FE4FB5C03D1DD114004F903DD0640A1 +:104D290004F904DF053046386194C09EFC609EFD9D +:104D390034D4FE5206C0B9A5A592DFF961FC61FC25 +:044D490061FC61FCAC +:0A4D4E0000060C12181E242A30364D +:104D5800ACFB0000000062FE000000009339CD3576 +:104D68008C22B745052EB42EF344B93A8E089E3CE2 +:104D780028FC36FE20FE02F903F929FC30FE2AFC45 +:104D88002BFC08F926FC6CFF1AFF6EFF6AFF64FF14 +:0A4D980027FC66FF2CFC555555550D +:104DA200FF0000000000983AF82AFF0000004700C8 +:104DB200317503F7332312D714AEF8C716AC0612B7 +:104DC200C5AC0416F643DD078B99A7A5B3EFF5C270 +:024DD200C6D742 +:024FF400323F4A +:0A4FF60031373A31343A333200000B :00000001FF  \ No newline at end of file diff --git a/trunk/bsr.lmf b/trunk/bsr.lmf index e011016db854ed2b7214db08763a8255b26c9db8..4e46c24e8f21e80df2cd6569cbb187c9f81da252 100644 GIT binary patch delta 33690 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%0A|pMN7FibMyg+0h>0&LiUW%Bu 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%0D5#r&4 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 lEIis( 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 E0I?`OqW}N^ diff --git a/trunk/i2c_mcu.c b/trunk/i2c_mcu.c index dfc6041..0a093e5 100644 --- a/trunk/i2c_mcu.c +++ b/trunk/i2c_mcu.c @@ -58,7 +58,6 @@ static void iic_mcu_send_re_st( ); static void iic_mcu_send_sp( ); static i2c_err iic_mcu_send_a_byte( u8 ); static i2c_err iic_mcu_call_slave( u8 slave ); -extern void DI_wt_chk(); @@ -407,7 +406,7 @@ __interrupt void int_dma1( ) SIO10 = last_reg_adrs; // 書きっぱなし! 割り込みが発生してDMAスタート return; - // おしまい またね! // + // おしまい } else { diff --git a/trunk/ini_VECT.c b/trunk/ini_VECT.c index fd5fda8..84da25c 100644 --- a/trunk/ini_VECT.c +++ b/trunk/ini_VECT.c @@ -12,7 +12,11 @@ #include "config.h" #ifndef _WIN32 -//#pragma interrupt INTWDTI fn_intwdti // 未使用 + +#ifdef _WDT_CHECK_ +#pragma interrupt INTWDTI fn_intwdti // wdt debug +#endif + //#pragma interrupt INTLVI fn_intlvi // 未使用 //#pragma interrupt INTP0 intp0_slp // SLP (CPUより、要求) ポーリング @@ -84,72 +88,61 @@ /****************************************************/ /* 未使用時のダミー関数定義 */ /****************************************************/ +#ifdef _WDT_CHECK_ __interrupt void fn_intwdti( ) { -#ifdef _irq_debug_ - while( 1 ) + while( 1 ) { NOP(); } -#endif } +#endif +#ifdef _irq_debug_ __interrupt void fn_intlvi( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } __interrupt void fn_intp0(){ -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } __interrupt void fn_intp1( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } // __interrupt void fn_intp2( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif -} -__interrupt void fn_intp3( ) -{ -#ifdef _irq_debug_ - while( 1 ) - { - NOP(); - } -#endif } +__interrupt void fn_intp3( ) +{ + while( 1 ) + { + NOP(); + } +} __interrupt void intp21_RFTx( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } @@ -161,194 +154,160 @@ __interrupt void intp21_RFTx( ) __interrupt void fn_intcmp0( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } __interrupt void fn_intcmp1( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } __interrupt void fn_intdma0( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } //__interrupt void fn_intdma1(){} // i2c_mcu.cにある __interrupt void fn_intst0( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } /* __interrupt void fn_intcsi00(){} */ __interrupt void fn_intsr0( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } /* __interrupt void fn_intcsi01(){} */ __interrupt void fn_intsre0( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } __interrupt void fn_intst1( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } /* __interrupt void fn_intcsi10(){} */ //__interrupt void fn_intiic10(){ while(1){} } __interrupt void fn_intsr1( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } __interrupt void fn_intsre1( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } //__interrupt void fn_intiica(){} // i2c.cにある /* __interrupt void fn_inttm00(){} *//* sub.cにて定義 */ __interrupt void fn_inttm01( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } __interrupt void fn_inttm02( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } __interrupt void fn_inttm03( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } //__interrupt void fn_intad(){ while(1){} } // adc.c __interrupt void fn_intrtc( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } //__interrupt void int_rtcint(){} // rtc.cにある //__interrupt void fn_intkr(){} // main.c __interrupt void fn_intmd( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } __interrupt void fn_inttm04( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } __interrupt void fn_inttm05( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } __interrupt void fn_inttm06( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } __interrupt void fn_inttm07( ) { -#ifdef _irq_debug_ while( 1 ) { NOP(); } -#endif } +#endif + /* ======================================================== diff --git a/trunk/led_cam.c b/trunk/led_cam.c index 12dc020..7d4a1eb 100644 --- a/trunk/led_cam.c +++ b/trunk/led_cam.c @@ -28,7 +28,6 @@ bit cam_led_update; // ======================================================== static void cam_led_twl(); -extern void DI_wt_chk(); diff --git a/trunk/magic.c b/trunk/magic.c index c42b472..5cf42fa 100644 --- a/trunk/magic.c +++ b/trunk/magic.c @@ -8,6 +8,7 @@ $Id$ ***********************************************/ #include "magic.h" +#include "config.h" #ifndef _WIN32 diff --git a/trunk/pedo_alg_thre_det2.c b/trunk/pedo_alg_thre_det2.c index 001f7ec..4e69a04 100644 --- a/trunk/pedo_alg_thre_det2.c +++ b/trunk/pedo_alg_thre_det2.c @@ -43,7 +43,6 @@ typedef struct{ // ======================================================== static u16 get_long_hour(); static u16 calc_hours_spend( u8 ); -extern void DI_wt_chk(); diff --git a/trunk/renge/renge.c b/trunk/renge/renge.c index c7ad624..bab45cc 100644 --- a/trunk/renge/renge.c +++ b/trunk/renge/renge.c @@ -26,6 +26,8 @@ typedef unsigned char u8; #include "..\WDT.h" #include "..\config.h" #include "..\user_define.h" +#include "..\util_funcs.h" + #ifdef _WIN32 #include "../sim/simOnWin.h" @@ -53,7 +55,6 @@ static void renge_task_immed_del(); //****************************************************************************** task_status_immed ( *tasks_immed[ TASK_IMMED_RUN_LIST_MAX ] )(); -extern void DI_wt_chk(); diff --git a/trunk/task_misc.c b/trunk/task_misc.c index 59dfb7e..30b821a 100644 --- a/trunk/task_misc.c +++ b/trunk/task_misc.c @@ -72,7 +72,6 @@ bit reserve_pedo_increnent; // ======================================================== static void update_LED_3D(); static void check_twl_vol_irq(); -extern void DI_wt_chk(); @@ -89,7 +88,7 @@ extern void DI_wt_chk(); void tsk_misc( ) { // 割り込みの取りこぼし? - if( ACC_VALID ) + if( ACC_VALID && ( ( vreg_ctr[ VREG_C_STATUS_1 ] & REG_BIT_ACCERO_ERR ) == 0 )) { if( renge_task_immed_add( tski_cbk_accero ) == ERR_SUCCESS ){ // dbg_nop(); diff --git a/trunk/task_sys.c b/trunk/task_sys.c index 3ecf00a..7b491f0 100644 --- a/trunk/task_sys.c +++ b/trunk/task_sys.c @@ -360,7 +360,7 @@ void tsk_sys( ) // irqマスク設定 KRM = ( KR_SW_POW ); // Mask ではなく、Modeなのだそうだ。紛らわしい - MK0 = ~( INT_MSK0_EXTDC ); + MK0 = ~( INT_MSK0_EXTDC | INT_MSK0_WDTI ); MK1 = ~( INT_MSK1_KR | INT_MSK1_RTCINTVAL ); // INT_MSK1_RTCALARM | RTCアラーム封印中 MK2L = 0xFF; diff --git a/trunk/user_define.h b/trunk/user_define.h index 1d0773a..15d426e 100644 --- a/trunk/user_define.h +++ b/trunk/user_define.h @@ -182,12 +182,17 @@ #define KR_SW_WIFI ( 1 << 4 ) /////////////////////////////////////////////////////////// +#ifdef _WDT_CHECK_ +# define INT_MSK0_WDTI 1<<15 +#else +# define INT_MSK0_WDTI 0 +#endif #define INT_MSK0_IIC_M_DMA 1<<12 #define INT_MSK0_SHELL 1<<7 #define INT_MSK0_EXTDC 1<<6 //#define INT_MSK0_SLP 1<<2 -#define INT_MSK0_RSV ~( INT_MSK0_IIC_M_DMA | INT_MSK0_SHELL | INT_MSK0_EXTDC ) +#define INT_MSK0_RSV ~( INT_MSK0_IIC_M_DMA | INT_MSK0_SHELL | INT_MSK0_EXTDC | INT_MSK0_WDTI ) #define INT_MSK1_KR 1<<11 #define INT_MSK1_RTCINTVAL 1<<10 diff --git a/trunk/util_funcs.c b/trunk/util_funcs.c new file mode 100644 index 0000000..2edea63 --- /dev/null +++ b/trunk/util_funcs.c @@ -0,0 +1,65 @@ +/* ======================================================== + util_funcs + + 雑多なユーティリティ関数 + + $Id$ + ======================================================== */ +#ifndef _WIN32 + +#pragma SFR +#pragma di +#pragma ei +#pragma nop +#pragma stop +#pragma halt +#pragma opc + +#endif +#include "incs_loader.h" +#include "wdt.h" + + + +/********************************************//** + 単位は ms + + NOPを回すだけ、指定時間CPUを *占有します* 。 + + 割り込みとか入るとその分遅れます。 + + 少し誤差あります。 + ***********************************************/ +void wait_ms( u8 ms ){ + u16 fine; + + WDT_Restart(); + while( ms != 0 ){ + ms--; + fine = 860; + while( fine != 0 ){ + fine --; + } + } +} + + + + +extern unsigned char get_ei(); + +#ifdef _DI_WITH_CHECK_ +/********************************************//** + すでに 割り込み禁止状態下チェックしてから割り込み禁止にする + + 評価の結果、現状、#ifdef でチェックせずに DI する + ***********************************************/ +void DI_wt_chk() +{ + if( !get_ei() ) + { + dbg_nop(); + } + DI(); +} +#endif // _DI_WITH_CHECK_ diff --git a/trunk/util_funcs.h b/trunk/util_funcs.h new file mode 100644 index 0000000..4229413 --- /dev/null +++ b/trunk/util_funcs.h @@ -0,0 +1,16 @@ +#ifndef _util_funcs_h_ +#define _util_funcs_h_ + + +void wait_ms( u8 ); + + +# ifdef _DI_WITH_CHECK_ +void DI_wt_chk(); +# else +# define DI_wt_chk() DI() +# endif /* _DI_WITH_CHECK_ */ + + +#endif + diff --git a/trunk/vreg_ctr.c b/trunk/vreg_ctr.c index 6b91ada..5d4b915 100644 --- a/trunk/vreg_ctr.c +++ b/trunk/vreg_ctr.c @@ -43,7 +43,6 @@ bit irq_readed; // AAA extern task_status_immed tski_firm_update(); extern task_status_immed tski_mcu_reset(); extern unsigned char get_ei(); -extern void DI_wt_chk(); diff --git a/trunk/yav_mcu_bsr.plg b/trunk/yav_mcu_bsr.plg index e0a28d8..ee56d42 100644 --- a/trunk/yav_mcu_bsr.plg +++ b/trunk/yav_mcu_bsr.plg @@ -1,181 +1,31 @@ C:\Windows\system32\cmd.exe /c c:\cygwin\bin\touch magic.c -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no loader.c -loader.c(160) : CC78K0R warning W0401: Conversion may lose significant digits -loader.c(161) : CC78K0R warning W0401: Conversion may lose significant digits -Compilation complete, 0 error(s) and 2 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\loader.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no pm.c -pm.c(528) : CC78K0R warning W0401: Conversion may lose significant digits -pm.c(828) : CC78K0R warning W0401: Conversion may lose significant digits -pm.c(832) : CC78K0R warning W0401: Conversion may lose significant digits -pm.c(860) : CC78K0R warning W0401: Conversion may lose significant digits -pm.c(881) : CC78K0R warning W0401: Conversion may lose significant digits -pm.c(948) : CC78K0R warning W0401: Conversion may lose significant digits -pm.c(957) : CC78K0R warning W0401: Conversion may lose significant digits -pm.c(1161) : CC78K0R warning W0401: Conversion may lose significant digits -pm.c(1163) : CC78K0R warning W0401: Conversion may lose significant digits -Compilation complete, 0 error(s) and 9 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\pm.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no i2c_ctr.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\i2c_ctr.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no main.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\main.asm -Assembly complete, 0 error(s) and 0 warning(s) found. "C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no magic.c -magic.c(30) : CC78K0R error E0711: Undeclared 'MCU_VER_MAJOR' ; function '' -magic.c(30) : CC78K0R error E0711: Undeclared 'MCU_VER_MINOR' ; function '' -Compilation complete, 2 error(s) and 0 warning(s) found. +Compilation complete, 0 error(s) and 0 warning(s) found. "C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\magic.asm Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no WDT.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\WDT.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no i2c_mcu.c -i2c_mcu.c(184) : CC78K0R warning W0401: Conversion may lose significant digits -Compilation complete, 0 error(s) and 1 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\i2c_mcu.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no i2c_twl.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\i2c_twl.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no led.c -led.c(89) : CC78K0R warning W0745: Expected function prototype -led.c(354) : CC78K0R warning W0401: Conversion may lose significant digits -Compilation complete, 0 error(s) and 2 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\led.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no rtc.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\rtc.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2m -qvjl2w -sainter_asm -zpb -no vreg_ctr.c -vreg_ctr.c(177) : CC78K0R warning W0401: Conversion may lose significant digits -vreg_ctr.c(178) : CC78K0R warning W0401: Conversion may lose significant digits -vreg_ctr.c(180) : CC78K0R warning W0401: Conversion may lose significant digits -vreg_ctr.c(182) : CC78K0R warning W0401: Conversion may lose significant digits -vreg_ctr.c(183) : CC78K0R warning W0401: Conversion may lose significant digits -vreg_ctr.c(231) : CC78K0R warning W0401: Conversion may lose significant digits -vreg_ctr.c(231) : CC78K0R warning W0401: Conversion may lose significant digits -vreg_ctr.c(236) : CC78K0R warning W0401: Conversion may lose significant digits -vreg_ctr.c(236) : CC78K0R warning W0401: Conversion may lose significant digits -vreg_ctr.c(240) : CC78K0R warning W0401: Conversion may lose significant digits -vreg_ctr.c(240) : CC78K0R warning W0401: Conversion may lose significant digits -vreg_ctr.c(244) : CC78K0R warning W0401: Conversion may lose significant digits -vreg_ctr.c(244) : CC78K0R warning W0401: Conversion may lose significant digits -vreg_ctr.c(248) : CC78K0R warning W0401: Conversion may lose significant digits -Compilation complete, 0 error(s) and 14 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\vreg_ctr.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2m -qvjl2w -sainter_asm -zpb -no vreg_twl.c -vreg_twl.c(68) : CC78K0R warning W0401: Conversion may lose significant digits -vreg_twl.c(72) : CC78K0R warning W0401: Conversion may lose significant digits -Compilation complete, 0 error(s) and 2 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\vreg_twl.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no adc.c -adc.c(104) : CC78K0R warning W0401: Conversion may lose significant digits -adc.c(190) : CC78K0R warning W0401: Conversion may lose significant digits -adc.c(241) : CC78K0R warning W0401: Conversion may lose significant digits -adc.c(305) : CC78K0R warning W0401: Conversion may lose significant digits -adc.c(429) : CC78K0R warning W0745: Expected function prototype -adc.c(458) : CC78K0R warning W0401: Conversion may lose significant digits -adc.c(463) : CC78K0R warning W0401: Conversion may lose significant digits -Compilation complete, 0 error(s) and 7 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\adc.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2m -qvjl2w -sainter_asm -zpb -no renge\renge.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\renge.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no accero.c -accero.c(117) : CC78K0R warning W0745: Expected function prototype -Compilation complete, 0 error(s) and 1 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\accero.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2 -qvjl2w -sainter_asm -zpb -no self_flash.c -self_flash.c(289) : CC78K0R warning W0401: Conversion may lose significant digits -self_flash.c(290) : CC78K0R warning W0401: Conversion may lose significant digits -Compilation complete, 0 error(s) and 2 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\self_flash.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no sw.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\sw.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no task_debug.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\task_debug.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no task_misc.c -task_misc.c(382) : CC78K0R warning W0401: Conversion may lose significant digits -task_misc.c(384) : CC78K0R warning W0401: Conversion may lose significant digits -task_misc.c(396) : CC78K0R warning W0401: Conversion may lose significant digits -Compilation complete, 0 error(s) and 3 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\task_misc.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no task_sys.c -task_sys.c(234) : CC78K0R warning W0401: Conversion may lose significant digits -task_sys.c(570) : CC78K0R warning W0401: Conversion may lose significant digits -Compilation complete, 0 error(s) and 2 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\task_sys.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no pedo_alg_thre_det2.c -pedo_alg_thre_det2.c(105) : CC78K0R warning W0745: Expected function prototype -pedo_alg_thre_det2.c(121) : CC78K0R warning W0401: Conversion may lose significant digits -Compilation complete, 0 error(s) and 2 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\pedo_alg_thre_det2.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no ini_VECT.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\ini_VECT.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no task_status.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\task_status.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no led_cam.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\led_cam.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no led_pow.c -led_pow.c(119) : CC78K0R warning W0401: Conversion may lose significant digits -led_pow.c(124) : CC78K0R warning W0401: Conversion may lose significant digits -led_pow.c(177) : CC78K0R warning W0401: Conversion may lose significant digits -led_pow.c(240) : CC78K0R warning W0401: Conversion may lose significant digits -led_pow.c(271) : CC78K0R warning W0401: Conversion may lose significant digits -Compilation complete, 0 error(s) and 5 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\led_pow.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no hal.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\hal.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no batt_params.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\batt_params.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no voltable.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\voltable.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no pedo_lpf_coeff.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\pedo_lpf_coeff.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no kanaria_c.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\kanaria_c.asm -Assembly complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\bin\cc78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -irenge -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r" -ms -rd2s2 -qvjl2w -sainter_asm -zpb -no util_funcs.c -Compilation complete, 0 error(s) and 0 warning(s) found. -"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\ra78k0r.exe" -c9F0104 -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -pinter_asm -ks -kx inter_asm\util_funcs.asm -Assembly complete, 0 error(s) and 0 warning(s) found. +"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\lk78k0r.exe" -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -obsr.lmf "..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\lib78k0r\s0rm.rel" -gi1B339499E033F240BFAAh -pbsr_k0r.map -nkd -gb7EFBFFh -b"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\lib78k0r\fsl.lib" -bcl0rdm.lib -bcl0rm.lib -bcl0rmf.lib -i"C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\lib78k0r" -dbsr_mcu.dr -s -w2 loader.rel pm.rel i2c_ctr.rel main.rel magic.rel WDT.rel i2c_mcu.rel i2c_twl.rel led.rel rtc.rel vreg_ctr.rel vreg_twl.rel adc.rel renge.rel accero.rel self_flash.rel sw.rel task_debug.rel task_misc.rel task_sys.rel pedo_alg_thre_det2.rel ini_VECT.rel task_status.rel led_cam.rel led_pow.rel hal.rel batt_params.rel voltable.rel pedo_lpf_coeff.rel kanaria.rel kanaria_c.rel get_ei.rel util_funcs.rel +RA78K0R warning W3420: File 'loader.rel' already has had error(s)/warning(s) by 'CC78K' + Read Device File Directory : C:\PROGRAM FILES (X86)\NEC ELECTRONICS TOOLS\DEV\ +RA78K0R warning W3420: File 'pm.rel' already has had error(s)/warning(s) by 'CC78K' +RA78K0R warning W3420: File 'i2c_mcu.rel' already has had error(s)/warning(s) by 'CC78K' +RA78K0R warning W3420: File 'led.rel' already has had error(s)/warning(s) by 'CC78K' +RA78K0R warning W3420: File 'vreg_ctr.rel' already has had error(s)/warning(s) by 'CC78K' +RA78K0R warning W3420: File 'vreg_twl.rel' already has had error(s)/warning(s) by 'CC78K' +RA78K0R warning W3420: File 'adc.rel' already has had error(s)/warning(s) by 'CC78K' +RA78K0R warning W3420: File 'accero.rel' already has had error(s)/warning(s) by 'CC78K' +RA78K0R warning W3420: File 'self_flash.rel' already has had error(s)/warning(s) by 'CC78K' +RA78K0R warning W3420: File 'task_misc.rel' already has had error(s)/warning(s) by 'CC78K' +RA78K0R warning W3420: File 'task_sys.rel' already has had error(s)/warning(s) by 'CC78K' +RA78K0R warning W3420: File 'pedo_alg_thre_det2.rel' already has had error(s)/warning(s) by 'CC78K' +RA78K0R warning W3420: File 'led_pow.rel' already has had error(s)/warning(s) by 'CC78K' + +Link complete, 0 error(s) and 13 warning(s) found. +"C:\Program Files (x86)\NEC Electronics Tools\RA78K0R\W1.33\bin\oc78k0r.exe" -y"c:\program files (x86)\nec electronics tools\dev" -_msgoff -o.\bsr.hex -nu -ki bsr.lmf +Object Conversion Complete, 0 error(s) and 0 warning(s) found. +C:\Windows\system32\cmd.exe /c ruby nec_s_2_bsrbin2.rb bsr.hex +4 +intel-HEX to bsr bin converter + file converted! -Build Total error(s) : 2 Total warning(s) : 52 + +Build Total error(s) : 0 Total warning(s) : 13 diff --git a/trunk/yav_mcu_bsr.prj b/trunk/yav_mcu_bsr.prj index 5e4590a..bb26148 100644 --- a/trunk/yav_mcu_bsr.prj +++ b/trunk/yav_mcu_bsr.prj @@ -1041,6 +1041,79 @@ VfiFileBoot0= VfiFileBoot1=boot.vfi VF78K0Rchk=0 VF78K0Rvs= +[SrcFile] +Source1=loader.c +Source2=pm.c +Source3=i2c_ctr.c +Source4=main.c +Source5=magic.c +Source6=WDT.c +Source7=i2c_mcu.c +Source8=i2c_twl.c +Source9=led.c +Source10=rtc.c +Source11=vreg_ctr.c +Source12=vreg_twl.c +Source13=adc.c +Source14=renge\renge.c +Source15=accero.c +Source16=self_flash.c +Source17=sw.c +Source18=task_debug.c +Source19=task_misc.c +Source20=task_sys.c +Source21=pedo_alg_thre_det2.c +Source22=ini_VECT.c +Source23=task_status.c +Source24=led_cam.c +Source25=led_pow.c +Source26=hal.c +Source27=batt_params.c +Source28=voltable.c +Source29=pedo_lpf_coeff.c +Source30=kanaria.asm +Source31=kanaria_c.c +Source32=get_ei.asm +Source33=util_funcs.c +[IncFile] +Include1=incs_loader.h +Include2=sim\simOnWin.h +Include3=sim\sfrAlias.h +Include4=config.h +Include5=jhl_defs.h +Include6=user_define.h +Include7=hal.h +Include8=bsr_system.h +Include9=renge\renge.h +Include10=renge\renge_defs.h +Include11=renge\renge_task_immediate.h +Include12=vreg_ctr.h +Include13=vreg_twl.h +Include14=loader.h +Include15=i2c_mcu.h +Include16=WDT.h +Include17=..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\fsl.h +Include18=fsl_user.h +Include19=i2c_ctr.h +Include20=pm.h +Include21=rtc.h +Include22=reboot.h +Include23=magic.h +Include24=incs.h +Include25=i2c_twl.h +Include26=accero.h +Include27=pedometer.h +Include28=sw.h +Include29=adc.h +Include30=led.h +Include31=batt_params.h +Include32=pool.h +Include33=i2c_twl_defs.h +Include34=renge\renge_task_intval.h +Include35=..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\math.h +Include36=self_flash.h +Include37=sim\sim_interrupt_decrare.c +Include38=util_funcs.h [Options.LK78K0R 0] Version=100 O0=bsr_k0r.lmf @@ -1334,76 +1407,3 @@ DefaultMode2=1 DefaultMode3=1 DefaultMode4=1 DefaultMode5=1 -[SrcFile] -Source1=loader.c -Source2=pm.c -Source3=i2c_ctr.c -Source4=main.c -Source5=magic.c -Source6=WDT.c -Source7=i2c_mcu.c -Source8=i2c_twl.c -Source9=led.c -Source10=rtc.c -Source11=vreg_ctr.c -Source12=vreg_twl.c -Source13=adc.c -Source14=renge\renge.c -Source15=accero.c -Source16=self_flash.c -Source17=sw.c -Source18=task_debug.c -Source19=task_misc.c -Source20=task_sys.c -Source21=pedo_alg_thre_det2.c -Source22=ini_VECT.c -Source23=task_status.c -Source24=led_cam.c -Source25=led_pow.c -Source26=hal.c -Source27=batt_params.c -Source28=voltable.c -Source29=pedo_lpf_coeff.c -Source30=kanaria.asm -Source31=kanaria_c.c -Source32=get_ei.asm -Source33=util_funcs.c -[IncFile] -Include1=incs_loader.h -Include2=sim\simOnWin.h -Include3=sim\sfrAlias.h -Include4=config.h -Include5=jhl_defs.h -Include6=user_define.h -Include7=hal.h -Include8=bsr_system.h -Include9=renge\renge.h -Include10=renge\renge_defs.h -Include11=renge\renge_task_immediate.h -Include12=vreg_ctr.h -Include13=vreg_twl.h -Include14=loader.h -Include15=i2c_mcu.h -Include16=WDT.h -Include17=..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\fsl.h -Include18=fsl_user.h -Include19=i2c_ctr.h -Include20=pm.h -Include21=rtc.h -Include22=reboot.h -Include23=magic.h -Include24=incs.h -Include25=i2c_twl.h -Include26=accero.h -Include27=pedometer.h -Include28=sw.h -Include29=adc.h -Include30=led.h -Include31=batt_params.h -Include32=pool.h -Include33=i2c_twl_defs.h -Include34=renge\renge_task_intval.h -Include35=..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\math.h -Include36=self_flash.h -Include37=sim\sim_interrupt_decrare.c -Include38=util_funcs.h diff --git a/trunk/yav_mcu_bsr.prk b/trunk/yav_mcu_bsr.prk index 9f3d5b7..7d3f78e 100644 --- a/trunk/yav_mcu_bsr.prk +++ b/trunk/yav_mcu_bsr.prk @@ -1,9 +1,9 @@ [ProjectManager] FrameMax=0 -FrameX=562 -FrameY=3 -FrameCX=1191 -FrameCY=681 +FrameX=25 +FrameY=25 +FrameCX=1440 +FrameCY=850 OpenFile1=i2c_ctr.c,0,655,120,1628,751,0,1,0,0 OpenFile2=kanaria_c.c,0,68,138,763,769,8,5,8,0 OpenFile3=ProjectWindow @@ -17,7 +17,7 @@ OpenFile9=config.h,0,75,75,902,478,29,6,29,0 OpenFile10=i2c_mcu.c,0,175,175,1036,939,1,453,1,0 OpenFile11=main.c,0,402,105,1713,812,0,68,0,0 OpenFile12=OutputWindow -OutputPos=0,21,472,273,1150 +OutputPos=0,260,711,278,1155 ActivePRJ=yav_mcu_bsr.prj [ProjectWindow] ProjectWindowDispType=0