diff --git a/branches/sim/VCProj/bsr_trunk.sdf b/branches/sim/VCProj/bsr_trunk.sdf index 6b44376..6a5a94f 100644 Binary files a/branches/sim/VCProj/bsr_trunk.sdf and b/branches/sim/VCProj/bsr_trunk.sdf differ diff --git a/branches/sim/VCProj/bsr_trunk.suo b/branches/sim/VCProj/bsr_trunk.suo index 0167a4c..fd40a02 100644 Binary files a/branches/sim/VCProj/bsr_trunk.suo and b/branches/sim/VCProj/bsr_trunk.suo differ diff --git a/branches/sim/VCProj/bsr_trunk.vcxproj b/branches/sim/VCProj/bsr_trunk.vcxproj index fc08704..506aae7 100644 --- a/branches/sim/VCProj/bsr_trunk.vcxproj +++ b/branches/sim/VCProj/bsr_trunk.vcxproj @@ -80,6 +80,7 @@ + @@ -113,6 +114,7 @@ + diff --git a/branches/sim/VCProj/bsr_trunk.vcxproj.filters b/branches/sim/VCProj/bsr_trunk.vcxproj.filters index 0e99d42..af77d25 100644 --- a/branches/sim/VCProj/bsr_trunk.vcxproj.filters +++ b/branches/sim/VCProj/bsr_trunk.vcxproj.filters @@ -96,6 +96,9 @@ ソース ファイル + + ソース ファイル + @@ -197,6 +200,9 @@ ヘッダー ファイル + + ヘッダー ファイル + diff --git a/branches/sim/accero.c b/branches/sim/accero.c index bc4f624..96ea6dc 100644 --- a/branches/sim/accero.c +++ b/branches/sim/accero.c @@ -84,7 +84,7 @@ task_status_immed tski_cbk_accero( ) if( iic_mcu_read( IIC_SLA_ACCEL, ( ACC_REG_X | 0x80 ), 6, &vreg_ctr[VREG_C_ACC_XL] ) != ERR_SUCCESS ) { - err_count += 1; + err_count ++; if( err_count < 8 ) { // gC diff --git a/branches/sim/adc.c b/branches/sim/adc.c index 9edf864..ce78004 100644 --- a/branches/sim/adc.c +++ b/branches/sim/adc.c @@ -117,9 +117,9 @@ void tsk_adc( ) if( vol_polling < 5 ) { renge_task_immed_add( tski_vol_update ); - vol_polling = 200 / SYS_INTERVAL_TICK + 5; // 5/sec + vol_polling = (u8)(200 / SYS_INTERVAL_TICK) + 5; // 5/sec } - vol_polling -= 1; + vol_polling --; ADCEN = 1; @@ -281,12 +281,20 @@ static u8 getmean3( u8 * hist ) { if( *hist > *( hist + 2 ) ) { - return( ( *( hist + 1 ) > *( hist + 2 ) ) ? *( hist + 1 ) : *( hist + 2 ) ); + if( *( hist + 1 ) > *( hist + 2 ) ) + { + return( *( hist + 1 ) ); + } + else + { + return( *( hist + 2 ) ); + } } else { return( *hist ); } + }else{ if( *hist > *( hist + 2 ) ) { @@ -294,7 +302,14 @@ static u8 getmean3( u8 * hist ) } else { - return( ( *( hist + 1 ) < *( hist + 2 ) ) ? *( hist + 1 ) : *( hist + 2 ) ); + if( *( hist + 1 ) < *( hist + 2 ) ) + { + return( *( hist + 1 ) ); + } + else + { + return( *( hist + 2 ) ); + } } } } @@ -341,13 +356,14 @@ case ( ADC_SEL_AMB_BRIT ): // case ( ADC_SEL_BATT_TEMP ): EI(); - raw_adc_temperature = adc_data; -#ifdef _DEBUG_BT_TEMP_ - if( vreg_ctr[ VREG_C_COMMAND3 ] == 't' ) - { - raw_adc_temperature = vreg_ctr[ VREG_C_DBG01 ]; - } -#endif + if( vreg_ctr[ VREG_C_HAL_OVW_TEMPERATURE ] == 0xFF ) + { + raw_adc_temperature = adc_data; + } + else + { + raw_adc_temperature = vreg_ctr[ VREG_C_HAL_OVW_TEMPERATURE ]; + } if( (( vreg_ctr[ VREG_C_STATUS_1 ] & REG_BIT_MGIC_ERR ) == 0 ) && (( system_status.pwr_state == ON ) || @@ -374,7 +390,11 @@ case ( ADC_SEL_AMB_BRIT ): // { ADCEN = 0; // ~߂Ă܂ adc_updated = true; - index = ( index == 2 ) ? 0 : ( index + 1 ); // mCY̔zCfbNX + + if( ++index > 2 ) // mCY̔zCfbNX + { + index = 0; + } } ADIF = 0; // ȂƁAÕ`l̃f[^̊ŒɊ荞މ”\ } @@ -454,7 +474,7 @@ static void adc_filter( u8 new_val, filter_work *work ) if( abs( new_val - *( work -> value_used )) > 2 ) { // 傫ꂽ - work -> large_diff_count += 1; + work -> large_diff_count ++; if( work -> large_diff_count > 16 ) { *( work -> value_used ) = new_val; @@ -468,11 +488,11 @@ static void adc_filter( u8 new_val, filter_work *work ) // ߏ̒lłAԂłς΂Ă炻Ɋ񂹂 if( *( work -> value_used ) < new_val ) { - work -> diffs += 1; + work -> diffs ++; } else if( *( work -> value_used ) > new_val ) { - work -> diffs -= 1; + work -> diffs --; } if( --( work -> kikan ) == 0 ) @@ -493,82 +513,3 @@ static void adc_filter( u8 new_val, filter_work *work ) } } - - - -#if 0 -// getmeangp // -__interrupt void int_adc( ) -{ - static u8 hist_3D[3]; - static u8 hist_snd_vol[3]; - static u8 hist_bt_temp[3]; - static u8 index; - - volatile u8 adc_data; - - adc_data = ADCRH; - - switch ( ADS ) - { -/* -case ( ADC_SEL_AMB_BRIT ): // ‹邳 - vreg_ctr[ VREG_C_AMBIENT_BRIGHTNESS ] = adc_data; - break; -*/ - - case ( ADC_SEL_3D ): - hist_3D[index] = adc_data; - EI(); - adc_raw_dep = getmean3( hist_3D ); - break; - - case ( ADC_SEL_VOL ): - hist_snd_vol[index] = adc_data; - EI(); - if( system_status.model == MODEL_TS_BOARD ) - { - adc_raw_vol = getmean3( hist_snd_vol ); - } - else - { - adc_raw_vol = ( 255 - getmean3( hist_snd_vol )); - } - break; - - case ( ADC_SEL_BATT_TEMP ): - hist_bt_temp[index] = adc_data; - EI(); - raw_adc_temperature = getmean3( hist_bt_temp ); - if( (( vreg_ctr[ VREG_C_STATUS_1 ] & REG_BIT_MGIC_ERR ) == 0 ) && - (( system_status.pwr_state == ON ) || - ( system_status.pwr_state == SLEEP ) - ) - ) - { - renge_task_immed_add( tski_BT_temp_update ); - } - break; -/* Ă΂܂ - case ( ADC_SEL_BATT_DET ): - break; -*/ - } - -// Ƃ܂Ƃȏ肻 - if( ADS < ADC_SEL_BATT_DET ) - { - ADS += 1; // ̃`l - ADIF = 0; // ȂƁAÕ`l̃f[^̊ŒɊ荞މ”\ - } - else - { - ADCEN = 0; // ~߂Ă܂ - adc_updated = true; - index = ( index == 2 ) ? 0 : ( index + 1 ); // mCY̔zCfbNX - } -} - - - -#endif diff --git a/branches/sim/bsr.hex b/branches/sim/bsr.hex index 7e7eb28..84ecd9b 100644 --- a/branches/sim/bsr.hex +++ b/branches/sim/bsr.hex @@ -1,249 +1,261 @@ -:02000000AE0C44 +:02000000730D7E :02000200FFFFFE -:04001000B649B849EC -:02001C00924B05 -:02002400DF4BB0 -:02002A002E4C5A -:08003400574DF94C524D864E68 -:02004A00BA49B1 -:02005A00F54966 -:020062000A4E44 +:0400100044494649D0 +:02001C003F4B58 +:020024008C4B03 +:02002A00D74BB2 +:08003400FF4CA24CFB4C314EC5 +:02004A00484923 +:02005A008349D8 +:02006200B54D9A :0400C0007EFBFF853F :0A00C4001B339499E033F240BFAA09 :0A00CE00FFFFFFFFFFFFFFFFFFFF32 :1000D800C7C1FBF8FFCEABACC736F00071F4C66100 -:1000E800D8710022F98EA89C018C015C10D1DD0A20 -:1000F8007110CEFB710022F9EF0B8C015C80D1618D -:10010800E8710022F98F22F931030EF6B1BBF661CE -:100118004900DD05618900EFF5FDE001FD3201FDD3 -:100128008A01FD6D02EFAEC0C6D7C7360000674C26 +:1000E800D8710014F98EA89C018C015C10D1DD0A2E +:1000F8007110BCFB710014F9EF0B8C015C80D161AD +:10010800E8710014F98F14F931030EF6B1BBF661EA +:100118004900DD05618900EFF5FDDE01FD3201FDD5 +:100128008A01FD6B02EFAEC0C6D7C7360000674C28 :1001380009DE3F318E04F60FC1317B9EFDC4118963 :100148007267318E04F64F14896142DF03F6EF01BE :10015800E660610667318E124900207267318E04AD :10016800F64F14896142DF03F6EF01E66061068706 -:10017800EFBC40F84F3A61E88666D161E8FDF106C8 -:10018800C6D751105B0C319E609F24F94024F901B9 -:10019800DF06CF0EF905EF04CF0EF9078F22F95CC1 -:1001A800E39F22F951035B04318EE7240000DD1040 -:1001B80023DD0823DF0E712022F9D7713022F9D709 -:1001C800714022F9D7717BFACEA010CEA180E5F359 -:1001D80000CEA408F5AAFFD78F22F9310508CD0073 -:1001E80003CD0307EF03CD0306CE23F88F22F931A1 -:1001F8000308CD0408F690BFB401CF1105F8F52126 -:10020800FFCE22E9CE24F3CE25F2CE26FCCE275F00 -:10021800CE2EFCCF120511CF350002CF370019CFF3 -:10022800530006CBEEFEFFCE3831CE3970CF3805FD -:100238000A308700BF1801BF1A01BF1C01BF1E0189 -:10024800D7C7C1C1FBF8FFCEABAC8C02D1DD1261C0 -:100258006902305C03BBF6614900DDEE618900EF9D -:10026800F51004C6D7FDC52FFD1339FDC904717AF1 -:10027800FAFDC523F520F98F22F93105135003FD46 -:10028800E72B625C01D161E8CF20F902CFD7FB648C -:10029800FDA530FD4145710223712BE7FD1639FD9F -:1002A800B83961EDEFF6D7D7C7F616FDC904717BEB -:1002B800FA31222108712221717AFAEF0B717AFA48 -:1002C800A7F647DFE9E2EF01F2C6D7C7C1C1FBF8DD -:1002D800FF17A1C1E0C18C0A70C18C0270FDFD023C -:1002E8001006D2DF05F545FBEF04CF45FB028C0174 -:1002F800721004C6D7C7C1FBF8FFFDB002D2DD03F8 -:10030800E2EF618B70FD1D04D2DD077123215202DB -:10031800EF528C0870FD3204FD7D048B6C0170FD7A -:100328003204300400BF2401301740BF1C013004E0 -:1003380000BF22018C0A91DF04F6BF2A01710BE28B -:10034800CE44FF3182E202EFFAAC0C148E4499617C -:10035800790C61690A8C0AD1DFDAFDA604710BE217 -:10036800712321F2C0C6D7C7C1FBF8FFFDB002D286 -:10037800DD03E2EF25710AE68B70FD1D04D2DD076F -:100388007123215202EF138C0870FD32048C0A701D -:10039800FD3204FDA604712321F2C0C6D7C7C1FBF4 -:1003A800F8FFFDB002D2DD03E2EF67710AE6710BD8 -:1003B800E28B70FD1D04D2DD077123215202EF523A -:1003C800710BE231122139C7343EFBAC0C165204D2 -:1003D8008B99A5A792DFF9C63184BD02EFFA717A2D -:1003E800BDCEB144CBB43EFB8C0A318EBEB8CEBB79 -:1003F80048714BE1714BE5710ABD8C089E44EF11C1 -:10040800710BE68C089E448C0A9F44FBAC0CBF42DF -:10041800FBF2C0C6D7C716FD550417FD3204D2DD5E -:1004280006FDA604E2EF01F2C6D7C716710AE67107 -:100438000BE2669E443182E202EFFAF6420401DDE5 -:1004480009AF0401BF0C01E2EF01F2C6D7AF2801E2 -:10045800085CFB08BF2801FDAF02AF28015CFBBFA9 -:100468002801300400BF2A01301780BF1C01300466 -:1004780000BF2201D7AF2401086C0408BF2401AFD4 -:1004880028016C0F086C0B08BF2801FDAF02AF2ACA -:1004980001085CFB08BF2A01FDAF02ED55043004DA -:1004A80000BF2401F6BF2A01300B0BBF2801FDAFA6 -:1004B80002300B0FBF2801FDAF02300F0FBF28011C -:1004C800D731342101D7712221710BBD0000717B16 -:1004D800BD713A25713A236A0E03713205713B25C5 -:1004E800713203713B23500AFD49027120F000FD6F -:1004F800AF02F6BF26015024BF1401CB44001430CC -:100508000F0FBF2801711321710BE2710AE6FD5527 -:1005180004CE44FF3182E202EFFAFDA604AF0401E3 -:10052800BF0C01712321713221D731242102EFFA46 -:10053800FD7D04713A25713A235A0EFC7133057119 -:100548003B25713303713B237128F000713321D7A8 -:10055800C7880616FDB002D2DD03E2EF38710AE65D -:1005680050A4FD1D04D2DD077123215202EF261786 -:10057800FD32046770FD3204FD7D0450A4FD320491 -:100588005020FD3204D946FBFD3204A046FBFDA6EF -:1005980004712321F2C6D7C72008FBF8FFFDEF0836 -:1005A8005014C15008FD2108C0CC07048C074C1416 -:1005B800DE0C8C07318EFD9009615907EFEECC07F0 -:1005C800048C074C1461C8ED8D06CC06008C064CD3 -:1005D8000461C8ED6C063026F9BC02F6BBCEABACA4 -:1005E80031B2D109C73641057184C6DEF3F1C73689 -:1005F80041057184C661DC9C05713BD1AC02148F46 -:1006080040059971505005617902617900F0E16106 -:100618004900DD09C73641057184C6DEC3F1C73616 -:1006280041057184C661DC0E059C055040C18C07EC -:10063800318E31AD128C06318E318D03BDD831FF2C -:10064800BDDADADAADD8FD5C0CC0D2DD0C5008C1D9 -:100658005014FD2108C0FD190B8C05D1DF06615926 -:1006680006EDD5058C07318EFD9409D2DD0C5008B6 -:10067800C15014FD2108C0FD190B8C05D1DF06619E -:100688005907EDC90571605005CC0400CC05008CF4 -:10069800054C09DE2B8C05318E04F61FC1317B9E7B -:1006A800FDC41189728C05318E04F64F148961429C -:1006B800DF03F6EF01E6600E049C04615905EFCFF5 -:1006C80041001140F81F3A61E86159048C04D1DFF8 -:1006D80008FD1A0BFD2C0CEF0C5008C15014FD211D -:1006E80008C0FD190B1008C6D7C72004FBF8FF7116 -:1006F8005B21CC0100F6BC02AC02440900DE3EAC32 -:100708000204F60F144100118972AC020C501489CE -:100718006142DF03F6EF01E6600E019C01AC0212B4 -:1007280049005072AC0204F67F14896142DF03F677 -:10073800EF01E6600E019C01617902EFBB40F67F94 -:10074800FF61F86159018C01D161F8EDEF07CC0127 -:1007580000717AFAFDC904711300711B207103033B -:10076800710205E0C15003FDD62BC05013FD4902AC -:10077800500FC1E0FDD62BC0CEABAC6159018C0146 -:1007880091DD068C014C03DF03E6EF01F66061FBA7 -:100798007151018C014C0861F8CC01003132070518 -:1007A800A05EFCEF03F55EFC405EFC11DC0DF55E1F -:1007B800FCF0C15003FDD62BC0EF12E6BC02F66177 -:1007C8004902DDB400000000617902EFF1CE37087C -:1007D800CBE4FFFFCBE6FFF7CED4FFCF370008F519 -:1007E800120561FDF5ABFFFDEF08D25008C15014AA -:1007F800FD2108C0D2FD190B1004C6D73184BD02F3 -:10080800EFFA717BBDCBE4FFFFCBE6FFFFCBD4FF54 -:10081800FF717ABED7717BBED7C7C1200CFBF8FF2A -:100828008C0C318E31ADC1317B9DD4C0BC068DD4CA -:100838009C088C149C0B8C14318E040C00128C0BAD -:10084800318EBDD813FDEB0E61C8EDEA08CEABAC16 -:10085800CC05068C0B318EFD8C09D2DD158C0B3145 -:100868008EFD90096169058C05D1DFE7FD1D08E261 -:10087800EF71CC0A008C0A4C04DE54F6BC02302618 -:10088800F9BBAC06148C089EFD118972AB146299F1 -:10089800AC06A1BC06617900617902F0E161490208 -:1008A800DFE05040C18C0B318E31AD128C0A318E95 -:1008B800318D03BDD831FFBDDADADAADD8FD5C0C75 -:1008C800C0D2DD06FD1D08E2EF1961590AEFA68CBA -:1008D8000B318EFD9409D2DD03E2EF0761590BED70 -:1008E8003E08F2100EC6D7C7717B9D717BFAFD04D6 -:1008F800083026F9FD3F0AFDCA09C6D7FDEF08FDF5 -:10090800190BFD1D08F5ABFFF2D7C73114070671A7 -:1009180010DBFBEF047118DBFB8FDBFB7F16FD762A -:10092800D1DD5F8FDBFB9F16FD4020F903DF2566D5 -:100938005C10D1DD1F7122208FDBFB5C10D1DD0B39 -:100948005080C15011FD0035C0EF095040C1501111 -:10095800FD0035C04020F903DD064020F904DF2200 -:10096800665C02D1DD1C8FDBFB5C02D1DD0B5040E5 -:10097800C15010FD0035C0EF095020C15010FD00D6 -:0409880035C0C6D7D9 -:10098C005208EF065203EF025206FEE600FE1B0071 -:10099C00DC16089F03088F0408089F040862FE24D5 -:1009AC0000089F0408EEBF00EEBA00C1C514410E4A -:1009BC0011D9D0FF118FD1FF312E45C4C0D7F231E0 -:1009CC00A2C401E2D79DE261DD4C09DF12717BFA12 -:1009DC00C18F06089F69FDC0CF060800EE270031C5 -:1009EC00F2FA04CF0608004C00DF05D50008DD162E -:1009FC0061DD717BFAD50608DD0ACDE31F61CD619F -:100A0C00CDEE160061CDFED40061FFFE9A00FCF81D -:100A1C00FF0EFEB20061CDFED5004C09DF0EC18F7A -:100A2C0006086F69FD9F0608C0EE0400CF0608009B -:100A3C00F8E3D75200EF025202FE3700CF68FD00F8 -:100A4C00CF060800BF0408C716629F0008410011BA -:100A5C008F22229B4100118F23229F0108C6510037 -:100A6C00FE62FFEF025205CF060800C1510CFE0AD0 -:100A7C0000C0D7C1511DFE0200C0D761DD717BFAE9 -:100A8C0070CEC0A59EC47CFF9EC4609EC461CDD7B1 -:100A9C0061DD717BFAC18EC45C1BFED6FFCF0608EC -:100AAC0001FED7FFC061CDD731F2FA1AC1AEE4BF57 -:100ABC005AFDAEE6BF5CFDAED4BF5EFD30FFFFBE9F -:100ACC00E4BEE6BED4C0D731F2FA11C1AF5AFDBEB6 -:100ADC00E4AF5CFDBEE6AF5EFDBED4C0D7C1BF6067 -:100AEC00FD13BF62FD15BF64FD17BF66FDC0D7AF18 -:100AFC0060FDDB62FDEB64FDFB66FDD7534B3052B2 -:100B0C005430324E323030475631323000FFC15003 -:100B1C00FEFEAB0061DD717BFACF060800FE0A0019 -:100B2C00FEA4FF61CDF8E3EECF00C7FB0408BF5A6B -:100B3C00FD8FC0009C05C5C337040600BF5CFD35A6 -:100B4C00367E0B300000522BFE6600C2C4C6302C21 -:100B5C000BB800300000B8022004AF5CFDB80030C8 -:100B6C000F00B802AF5AFD61FF520AFE3AFFECF8D3 -:100B7C00FF0E717BFAC1C7FB04088C05C65C80FEB6 -:100B8C000200C0D761DD717BFA70CFC0FFA59FC09A -:100B9C00007CFF9FC000609FC00061CDD7618BFEC1 -:100BAC00E2FF717BBE410011FB000017CEFC00611F -:100BBC00CB089EFDF31161C999A58392DFF7D7FE8F -:100BCC00B1FED568FDDF23C1CF0308035109FEF444 -:100BDC00FDC0D2DF37FE3800A20408CF030807514E -:100BEC0009FEE1FDD2B20408DF22C7FB0408318301 -:100BFC0002C6D7C6510AFECCFD624C1FDF06CF6879 -:100C0C00FD01EF04CF68FD00C0EE5BFEC0EE55FEAB -:100C1C00C7C1FB04088B31196C0161589BC0C6D746 -:100C2C00717BFAFE4DFEAF0408040600C114369029 -:100C3C000B300000522DF3FE77FF8FC000FE2BFE11 -:100C4C0061CF5C807C8073C0041900CEFC0F61CB3B -:100C5C00C55404EF03C55417FE18FEC7360008BB75 -:100C6C00629C0288089C03D1DD334C41DE2F70F16D -:100C7C00312DB161090033081C000851FF612A4174 -:100C8C000E118FD0FF613B118FD1FF6138DC0E8BC1 -:100C9C005C03DF0964C6C4FE2BFDEECAFDC6C4EEC0 -:020CAC00C3FD86 -:100CAE0061CF5100718C7109FECBF800FEFCCD01B5 -:100CBE0000F6BF00F953C0F693935820FEDFF941BA -:100CCE000036964E3424FDEF05118B99A7A51744D7 -:100CDE00CC4EDFF53602F93024FDEF04CC0000A730 -:100CEE0047DFF9410036CC4E345AFDEF05118B9992 -:100CFE00A7A51744CC4EDFF5365AFD305AFDEF044A -:100D0E00CC0000A747DFF9FCD80000EFFE61DD71D3 -:100D1E007BFABEF0ADD8BEF200AEF661CDD7C361A0 -:100D2E00DD717BFABEF0ADD8BEF200DBF6FFADDCB6 -:100D3E00BEF000AEF6BDD8AEF40312ADDABEF200D0 -:100D4E00AEF661CD03BDDAC2D7C3F33174D90883D1 -:100D5E00C1F626D8BDD8C031750683C312F623C29C -:100D6E00FD790D93DF0312F623C2D7440000DD2672 -:100D7E0061DD717BFACFE80080BEF6F6BEF4BEF2FE -:100D8E00ADD8BEF0CFE800818FE8003103FAAEF0A7 -:100D9E00F5E80061CDD7B1D7C3F33174D90883C15B -:100DAE00F626D8BDD8C0317505C312F623C2FDC7CD -:100DBE000D93DF0312F623C2D7440000DD2761DD59 -:100DCE00717BFACFE80080BEF6F6BEF4BEF2ADD867 -:100DDE00BEF0CFE800818FE8003103FAAFE000F5F6 -:100DEE00E80061CDD7ADD8D7C3F33174DB0F83C123 -:100DFE00F626D8BDD861317026DABDDAC031750D50 -:100E0E0083C312F626DCBDDC61317023C2FD2F0ECA -:100E1E0093DF0CF626D8BDD861317026DABDDAC262 -:100E2E00D7C161686BDC6BDDC0DD2F61DD717BFAD4 -:100E3E00CFE80080BEF4ADDCBEF6ADD8BEF0ADDAC4 -:100E4E00BEF2CFE800818FE8003103FAAEF0BDD8D4 -:100E5E00AEF2BDDAF5E80061CDD7F6BDD8BDDAD772 -:100E6E008292DD2B61DD717BFACFE80080BEF0F659 -:100E7E00BEF2BEF46208BEF6CFE800818FE8003104 -:100E8E0003FAAFE0006072AEF0F5E80061CDD76016 -:100E9E0072F6B1D706DABDDAADDC06D8BDD861D8A8 -:100EAE00A6DAD7D1DD17C1C3DAD89DD8ADDA311C99 -:100EBE0061EEB4D8DFF8BDDA13BDD8C2C0D7D1DD2C -:100ECE001BC1C3DADA9DDAADD8311E33311E337150 -:100EDE00F9B4DADFF4BDD813BDDAC2C0D746D8DD17 -:100EEE000771FF7177D971C0D75BDB9DDB605BDA71 -:100EFE009DDAADDC5BD9085BD808BDD8D7C3C7F384 -:100F0E00728EFDC162314C4100368C4E1161A07261 -:070F1E00C09EFD62C6C2D7B0 -:0A0FF60031353A31363A3139000046 -:0A20000031353A31363A313900002B +:10017800EFBC40F84F3A61E88666D161E8FDEB06CE +:10018800C6D751105B0C319E609F16F94016F901D5 +:10019800DF05CD3005EF03CD30078F14F95CE39F01 +:1001A80014F951035B04318EE7240000DD1023DDD0 +:1001B8000823DF0E712014F9D7713014F9D7714074 +:1001C80014F9D7717BFACEA010CEA180E5F300CE4A +:1001D800A408F5AAFFD78F14F9310508CD0003CD7F +:1001E8000307EF03CD0306CE23F88F14F931030874 +:1001F800CD0408F690BFB401CF1105F8F521FFCE64 +:1002080022E9CE24F3CE25F2CE26FCCE275FCE2ED1 +:10021800FCCF120511CF350002CF370019CF53009C +:1002280006CBEEFEFFCE3831CE3970CF38050A3016 +:100238008700BF1801BF1A01BF1C01BF1E01D7C725 +:10024800C1C1FBF8FFCEABAC8C02D1DD12616902F3 +:10025800305C03BBF6614900DDEE618900EFF51003 +:1002680004C6D7FD902FFDAA38FDC304717AFAFDA4 +:10027800AD23F512F98F14F93105135003FD7C2BCA +:10028800625C01D161E8CF12F902CFC5FB64FD7051 +:1002980030FDF74471025F712BE7FDAD38FD4C3935 +:1002A80061EDEFF6D7D7C7F616FDC304717BFA31B7 +:1002B800225D0871225D717AFAEF0B717AFAA7F65E +:1002C80047DFE9E2EF01F2C6D7C7C1C1FBF8FF1764 +:1002D800A1C1E0C18C0A70C18C0270FDF902100640 +:1002E800D2DF04F437EF03CD37028C01721004C655 +:1002F800D7C7C1FBF8FFFDAE02D2DD03E2EF618B89 +:1003080070FD1704D2DD0771235D5202EF528C088D +:1003180070FD2C04FD77048B6C0170FD2C043004F7 +:1003280000BF2401301740BF1C01300400BF220168 +:100338008C0A91DF04F6BF2A01710BE2CE44FF312B +:1003480082E202EFFAAC0C148E449961790C61696F +:100358000A8C0AD1DFDAFDA004710BE271235DF289 +:10036800C0C6D7C7C1FBF8FFFDAE02D2DD03E2EF7E +:1003780025710AE68B70FD1704D2DD0771235D52E3 +:1003880002EF138C0870FD2C048C0A70FD2C04FD00 +:10039800A00471235DF2C0C6D7C7C1FBF8FFFDAE4C +:1003A80002D2DD03E2EF65710AE6710BE28B70FDA4 +:1003B8001704D2DD0771235D5202EF50710BE23151 +:1003C800125D39C73430FBAC0C1652048B99A5A7C3 +:1003D80092DFF9C63184BD02EFFA717ABDCEB1441D +:1003E800CBB430FB8C0A318EBEB8CEBB48714BE122 +:1003F800714BE5710ABD8C089E44EF0F710BE68CBA +:10040800089E448C0A9D36AC0CBD34F2C0C6D7C7D2 +:1004180016FD4F0417FD2C04D2DD06FDA004E2EF03 +:1004280001F2C6D7C716710AE6710BE2669E44311F +:1004380082E202EFFAF6420401DD09AF0401BF0CC3 +:1004480001E2EF01F2C6D7AF2801085CFB08BF281C +:1004580001FDAD02AF28015CFBBF2801300400BFDD +:100468002A01301780BF1C01300400BF2201D7AF1A +:100478002401086C0408BF2401AF28016C0F086C24 +:100488000B08BF2801FDAD02AF2A01085CFB08BFBD +:100498002A01FDAD02ED4F04300400BF2401F6BF70 +:1004A8002A01300B0BBF2801FDAD02300B0FBF280E +:1004B80001FDAD02300F0FBF2801D731345D01D7E0 +:1004C80071225D710BBD0000717BBD713A25713AD7 +:1004D800236A0E03713205713B25713203713B2388 +:1004E800500AFD47027120F000FDAD02F6BF26015B +:1004F8005024BF1401CB440014300F0FBF280171E2 +:10050800135D710BE2710AE6FD4F04CE44FF3182A0 +:10051800E202EFFAFDA004AF0401BF0C0171235DF4 +:1005280071325DD731245D02EFFAFD7704713A2507 +:10053800713A235A0EFC713305713B2571330371EF +:100548003B237128F00071335DD7C7880616FDAECE +:1005580002D2DD03E2EF38710AE650A4FD1704D297 +:10056800DD0771235D5202EF2617FD2C046770FD2D +:100578002C04FD770450A4FD2C045020FD2C04D934 +:1005880034FBFD2C04A034FBFDA00471235DF2C6EE +:10059800D7C72008FBF8FFFDE9085014C15008FD33 +:1005A8001B08C0CC07048C074C14DE0C8C07318E5A +:1005B800FD550A615907EFEECC07048C074C14610E +:1005C800C8ED8706CC06008C064C0461C8ED6606AB +:1005D8003018F9BC02F6BBCEABAC31B2D109C73684 +:1005E80041057184C6DEF3F1C73641057184C661E1 +:1005F800DC9C05713BD1AC02148F400599715050B9 +:1006080005617902617900F0E1614900DD09C736C9 +:1006180041057184C6DEC3F1C73641057184C661E0 +:10062800DC0E059C055040C18C07318E31AD128C13 +:1006380006318E318D03BDD831FFBDDADADAADD897 +:10064800FD210DC0D2DD0C5008C15014FD1B08C09F +:10065800FDDE0B8C05D1DF06615906EDCF058C0751 +:10066800318EFD590AD2DD0C5008C15014FD1B080B +:10067800C0FDDE0B8C05D1DF06615907EDC305719E +:10068800605005CC0400CC05008C054C09DE2B8C91 +:1006980005318E04F61FC1317B9EFDC41189728C11 +:1006A80005318E04F64F14896142DF03F6EF01E647 +:1006B800600E049C04615905EFCF41001140F81FFA +:1006C8003A61E86159048C04D1DF08FDDF0BFDF1C4 +:1006D8000CEF0C5008C15014FD1B08C0FDDE0B10B8 +:1006E80008C6D7C72004FBF8FF715B21CC0100F6D0 +:1006F800BC02AC02440900DE3EAC0204F60F144111 +:1007080000118972AC020C5014896142DF03F6EFC4 +:1007180001E6600E019C01AC021249005072AC0265 +:1007280004F67F14896142DF03F6EF01E6600E01EB +:100738009C01617902EFBB40F67FFF61F8615901C6 +:100748008C01D161F8EDE907CC0100717AFAFDC39B +:1007580004711300711B20710303710205E0C1507D +:1007680003FD6B2BC05013FD4702500FC1E0FD6B1A +:100778002BC0CEABAC6159018C0191DD068C014CCC +:1007880003DF03E6EF01F66061FB7151018C014C58 +:100798000861F8CC010031320705A042FCEF03F5EF +:1007A80042FC4042FC11DC0DF542FCF0C15003FD57 +:1007B8006B2BC0EF12E6BC02F6614902DDB4000003 +:1007C8000000617902EFF1CE3708CBE4FFFFCBE6FA +:1007D800FFF7CED4FFCF370008F5120561FDF5AB62 +:1007E800FFFDE908D25008C15014FD1B08C0D2FD16 +:1007F800DE0B1004C6D73184BD02EFFA717BBDCB86 +:10080800E4FFFFCBE6FFFFCBD4FFFF717ABED771C1 +:100818007BBED7C7C1200CFBF8FF8C0C318E31ADE5 +:10082800C1317B9DD4C0BC068DD49C088C149C0B14 +:100838008C14318E040C00128C0B318EBDD813FD34 +:10084800B00F61C8EDE408CEABACCC05068C0B311B +:100858008EFD510AD2DD158C0B318EFD550A61696A +:10086800058C05D1DFE7FD1708E2EF71CC0A008C93 +:100878000A4C04DE54F6BC023018F9BBAC06148CE2 +:10088800089EFD118972AB146299AC06A1BC066181 +:100898007900617902F0E1614902DFE05040C18CE2 +:1008A8000B318E31AD128C0A318E318D03BDD831AA +:1008B800FFBDDADADAADD8FD210DC0D2DD06FD17AD +:1008C80008E2EF1961590AEFA68C0B318EFD590A1F +:1008D800D2DD03E2EF0761590BED3808F2100EC6BE +:1008E800D7C7717B9D717BFAFDFE073018F9FD04AF +:1008F8000BFD8F0AC6D7FDE908FDDE0BFD1708F5CD +:10090800ABFFF2D7C7316460067110C9FBEF047101 +:1009180018C9FB8FC9FB7FE8FC76D1DD5C8FC9FB6A +:100928009FE8FC4012F903DF22665C10D1DD1C8FC2 +:10093800C9FB5C10D1DD0B5080C15011FDB534C02E +:10094800EF095040C15011FDB534C04012F903DD24 +:10095800064012F904DF22665C02D1DD1C8FC9FB58 +:100968005C02D1DD0B5040C15010FDB534C0EF0919 +:100978005020C15010FDB534C0C6D7C78F0CFC76C7 +:100988008F0DFC77665C80D1DD10675C80D1DF0558 +:10099800711360EF0B711260EF067104077111603B +:1009A800665C40D1DD10675C40D1DF05712360EFE4 +:1009B8000B712260EF06711405712160665C01D12C +:1009C800DD10675C01D1DF05713360EF0B713260B8 +:1009D800EF06713407713160665C02D1DD10675C27 +:1009E80002D1DF05714360EF1D714260EF184015B9 +:1009F800F901DF08710402714160EF0AC73610057A +:100A080071C4C6714160665C04D1DD10675C04D1B5 +:100A1800DF05715360EF0B715260EF067144077187 +:100A28005160665C08D1DD10675C08D1DF05716232 +:100A380060EF0B716360EF06711407716160665CAB +:090A480010D161E8715AD1C6D742 +:100A51005208EF065203EF025206FEE600FE1B00AB +:100A6100DC16089F03088F0408089F040862FE240F +:100A710000089F0408EEBF00EEBA00C1C514410E84 +:100A810011D9D0FF118FD1FF312E45C4C0D7F2311A +:100A9100A2C401E2D79DE261DD4C09DF12717BFA4C +:100AA100C18F06089F33FDC0CF060800EE27003135 +:100AB100F2FA04CF0608004C00DF05D50008DD1668 +:100AC10061DD717BFAD50608DD0ACDE31F61CD61D9 +:100AD100CDEE160061CDFED40061FFFE9A00FCF858 +:100AE100FF0EFEB20061CDFED5004C09DF0EC18FB5 +:100AF10006086F33FD9F0608C0EE0400CF0608000C +:100B0100F8E3D75200EF025202FE3700CF32FD0068 +:100B1100CF060800BF0408C716629F0008410011F4 +:100B21008F22229B4100118F23229F0108C6510071 +:100B3100FE62FFEF025205CF060800C1510CFE0A0A +:100B410000C0D7C1511DFE0200C0D761DD717BFA23 +:100B510070CEC0A59EC47CFF9EC4609EC461CDD7EB +:100B610061DD717BFAC18EC45C1BFED6FFCF060826 +:100B710001FED7FFC061CDD731F2FA1AC1AEE4BF91 +:100B810024FDAEE6BF26FDAED4BF28FD30FFFFBE7B +:100B9100E4BEE6BED4C0D731F2FA11C1AF24FDBE26 +:100BA100E4AF26FDBEE6AF28FDBED4C0D7C1BF2A43 +:100BB100FD13BF2CFD15BF2EFD17BF30FDC0D7AFF4 +:100BC1002AFDDB2CFDEB2EFDFB30FDD7534B3052C4 +:100BD1005430324E323030475631323000FFC1503E +:100BE100FEFEAB0061DD717BFACF060800FE0A0054 +:100BF100FEA4FF61CDF8E3EECF00C7FB0408BF24DC +:100C0100FD8FC0009C05C5C337040600BF26FD3516 +:100C110036430C300000522BFE6600C2C4C630F1D0 +:100C21000BB800300000B8022004AF26FDB8003038 +:100C31000F00B802AF24FD61FF520AFE3AFFECF843 +:100C4100FF0E717BFAC1C7FB04088C05C65C80FEF0 +:100C51000200C0D761DD717BFA70CFC0FFA59FC0D4 +:100C6100007CFF9FC000609FC00061CDD7618BFEFB +:100C7100E2FF717BBE410011FB000017CEFC006159 +:100C8100CB089EFDF31161C999A58392DFF7D7FEC9 +:100C9100B1FED532FDDF23C1CF0308035109FEF4B4 +:100CA100FDC0D2DF37FE3800A20408CF0308075188 +:100CB10009FEE1FDD2B20408DF22C7FB040831833B +:100CC10002C6D7C6510AFECCFD624C1FDF06CF32E9 +:100CD100FD01EF04CF32FD00C0EE5BFEC0EE55FE1C +:100CE100C7C1FB04088B31196C0161589BC0C6D781 +:100CF100717BFAFE4DFEAF0408040600C11436559F +:100D01000C300000522DF3FE77FF8FC000FE2BFE4A +:100D110061CF5C807C8073C0041900CEFC0F61CB75 +:100D2100C55404EF03C55417FE18FEC7360008BBAF +:100D3100629C0288089C03D1DD334C41DE2F70F1A7 +:100D4100312DB161090033081C000851FF612A41AE +:100D51000E118FD0FF613B118FD1FF6138DC0E8BFB +:100D61005C03DF0964C6C4FE2BFDEECAFDC6C4EEFA +:020D7100C3FDC0 +:100D730061CF5100718C7109FECBF800FEFCCB01F1 +:100D830000F6BF00F953C0F693935820FEDFF941F4 +:100D93000036424E34F2FCEF05118B99A7A5174498 +:100DA300744EDFF53602F930F2FCEF04CC0000A7F5 +:100DB30047DFF9410036744E3420FEEF05118B995D +:100DC300A7A517447A4EDFF53626FE305CFEEF0406 +:100DD300CC0000A747DFF9FCD80000EFFE61DD710E +:100DE3007BFABEF0ADD8BEF200AEF661CDD7C361DB +:100DF300DD717BFABEF0ADD8BEF200DBF6FFADDCF1 +:100E0300BEF000AEF6BDD8AEF40312ADDABEF2000A +:100E1300AEF661CD03BDDAC2D7C3F33174D908830B +:100E2300C1F626D8BDD8C031750683C312F623C2D6 +:100E3300FD3E0E93DF0312F623C2D7440000DD26E6 +:100E430061DD717BFACFE80080BEF6F6BEF4BEF238 +:100E5300ADD8BEF0CFE800818FE8003103FAAEF0E1 +:100E6300F5E80061CDD7B1D7C3F33174D90883C195 +:100E7300F626D8BDD8C0317505C312F623C2FD8C42 +:100E83000E93DF0312F623C2D7440000DD2761DD92 +:100E9300717BFACFE80080BEF6F6BEF4BEF2ADD8A1 +:100EA300BEF0CFE800818FE8003103FAAFE000F530 +:100EB300E80061CDD7ADD8D7C3F33174DB0F83C15D +:100EC300F626D8BDD861317026DABDDAC031750D8A +:100ED30083C312F626DCBDDC61317023C2FDF40E40 +:100EE30093DF0CF626D8BDD861317026DABDDAC29D +:100EF300D7C161686BDC6BDDC0DD2F61DD717BFA0F +:100F0300CFE80080BEF4ADDCBEF6ADD8BEF0ADDAFE +:100F1300BEF2CFE800818FE8003103FAAEF0BDD80E +:100F2300AEF2BDDAF5E80061CDD7F6BDD8BDDAD7AC +:100F33008292DD2B61DD717BFACFE80080BEF0F693 +:100F4300BEF2BEF46208BEF6CFE800818FE800313E +:100F530003FAAFE0006072AEF0F5E80061CDD76050 +:100F630072F6B1D706DABDDAADDC06D8BDD861D8E2 +:100F7300A6DAD7D1DD17C1C3DAD89DD8ADDA311CD3 +:100F830061EEB4D8DFF8BDDA13BDD8C2C0D7D1DD66 +:100F93001BC1C3DADA9DDAADD8311E33311E33718A +:100FA300F9B4DADFF4BDD813BDDAC2C0D746D8DD51 +:100FB3000771FF7177D971C0D75BDB9DDB605BDAAB +:100FC3009DDAADDC5BD9085BD808BDD8D7C3C7F3BE +:100FD300728EFDC162314C410036384E1161A072F0 +:070FE300C09EFD62C6C2D7EB +:0A0FF60031353A34363A3534000044 +:0A20000031353A34363A3534000029 :10200A00AEF0B430B740BA30BB50BBB0BC50BD1014 :10201A00BD60BDB0BFE0C2B0C420C7B0CAE0CE1038 :10202A0001F0141014200630639049006E00777096 @@ -285,718 +297,714 @@ :10226A004E011926344453626E777D80807D776EE5 :10227A00625344342619100A08080808080808088E :02228A000A1038 -:10228C00D520F9DD0D8F25FDB025FDD1DF51CF25F2 -:10229C00FD1EFD4E23FDEC223142200D31042009A0 -:1022AC0031020705713304EF03713204FD2723312A -:1022BC00322003E6EF01F66061FB714102D504F9AF -:1022CC00DD06B004F9714202314402067140DBFBB9 -:1022DC00EF047148DBFB4020F90161E8FD4126D792 -:1022EC004002F94BDC144002F9B9DE0E400FF9281C -:1022FC00DE04A00FF9D7714320D74002F93EDC066B -:10230C004002F9BDDC0E4010F928DE04A010F9D70C -:10231C00714220D7F50FF9F510F9D73112050E409F -:10232C0011F902DE04A011F9D7713320D731320430 -:10233C000A40D7FB3CDE04713320D7713220F511F3 -:10234C00F9D7C72004FBF8FF710407E66130609CE5 -:10235C00038F12F94E03DD5D8C039F12F98C03D1B0 -:10236C00DD137130DBFB5002C15011FD0035C0CFC5 -:10237C0004F932EF407138DBFBE0C15011FD003540 -:10238C00C0F504F917A1C15002FDBE2BC0D2DF0F5E -:10239C008C01318E318D080E02081C00BF06F9AF7E -:1023AC0006F944009BDC05D5D7FBDF095020C15052 -:1023BC0011FD0035C01004C6D7C78F24FD76FD096A -:1023CC0024D523F9DD05710320EF30FDF22B664F88 -:1023DC0024FD61F83154201A715320FDC904664C58 -:1023EC0007DD0381DF098F22F9310303FD9924FDF9 -:1023FC00AD24710220308D25FD6E39C6D7C77162B0 -:10240C00017172015005FD49025008FDE837629FC9 -:10241C0002F95009FDE8376276716301711822F9EF -:10242C004002F9F1DC05E523F9EF244002F904DE62 -:10243C001BCF23F9025008C1506CFDD302C092DFB0 -:10244C000ED545FBDF09711022F9EF03F523F94096 -:10245C0023F901DF05710A22EF06710B22710302C9 -:10246C00CF24FD075700674C08DE117309D2216198 -:10247C004EDC06679F24FDEF0387EFEA4024FD073F -:10248C00DF09D523F961F8CF23F903C6D7500AFD2C -:10249C004902304000C15006FDA12BC05096ED49B9 -:1024AC0002C72006FBF8FFD523F961E8ED8925303A -:1024BC004A57C1503EFDA12BC0D2DD077100DAFB9B -:1024CC00ED89257108DAFB17A1C15004C1500CC16C -:1024DC00506CFDFD021006EB0CF9AA48318D12AAC6 -:1024EC0048318E616B08616A08C1500EFDA12BC08A -:1024FC00F690C1500CFDA12BC0CC00008B4C04DE1F -:10250C002731242102EFFA711221EB0CF98B5010B8 -:10251C00D605C15010C18BD6044000C1506CFDA52E -:10252C00031006615900EFD450A5FD4902EB0CF9DC -:10253C00AA48318D12AA48318E616B08616A08C1B4 -:10254C00500EFDA12BC050A5FD49025004C1506C8A -:10255C00FDD302C0629C05EB0CF98A4B4E0561C39E -:10256C00048A4A4E0517A1C15004C1500CC1506CCD -:10257C00FDA5031006F6C1503EFDA12BC01006C6EA -:10258C00D7C78F13F94F02F961F8ED3E264015F9C4 -:10259C0028DE06A015F9ED3E26F515F98F02F99FF8 -:1025AC0013F98F02F95070D6123073512304800046 -:1025BC001231FF318E039F14F99FD6FBF68F14F95D -:1025CC007C804C95DC1D8F14F9318F241400EB0C9E -:1025DC00F9BDD8AA44FD1B0D1231FF318E03318F8A -:1025EC0016EF1B8F14F9318F241400EB0CF9BDD8A6 -:1025FC00AA46FD1B0D1231FF318E03318F16EB0CE9 -:10260C00F98A427217F3031644000171FE61C83651 -:10261C00FF001701DE02F61617BF6CFCC7500CFD4D -:10262C00A12BC0D2DF088F02F99F13F9EF047100C0 -:10263C00DAFBF2C6D7C72006FBF8FF4023F901DF0F -:10264C000BCFD7FB63CFD9FBC8ED97274023F902FB -:10265C00DF3A17040400C15004FDBE2BC0D2DD06C6 -:10266C00CFD7FB63EF0A8C049FD7FB8C059FD8FB5D -:10267C0017040400C15002FDBE2BC0D2DF078C042E -:10268C009FD9FBEF04CFD9FBC8ED972717040400A3 -:10269C00C15004FDBE2BC0D2DD107100DAFB7103FA -:1026AC0020F5D7FB710221ED6C278C04318E318D16 -:1026BC00080E05081C00BF06F9EB0CF98A4072AF36 -:1026CC0006F9FD6E0EBF06F99C04D1DF08CC04019F -:1026DC00CC0500EF058F06F99C0517040200C150CC -:1026EC0002FDBE2BC0D2DF788C029FD9FB8C02314D -:1026FC008E318D080E03081C00BF06F94401A5DCC1 -:10270C0009CC0164F6BF16F9EF56AF06F92216F99B -:10271C004401A0DC09CC011EF6BF16F9EF42AF064E -:10272C00F944819DDC0BCC010A30F401BF16F9EFA2 -:10273C002FAF06F944019BDC0BCC010530F401BF33 -:10274C0016F9EF1CAF06F9440191DC0BCC010030FB -:10275C00F401BF16F9EF0971022130F401BF16F92B -:10276C003132040D31342009CFD7FB64F5D8FBEF9F -:10277C001A8C044E01DE0C8C049FD7FB8C059FD861 -:10278C00FBEF088C019FD7FBF5D8FB8F22F9313575 -:10279C0004CFD7FB64FD282C8F18F94FD7FBDD2B0A -:1027AC0040D7FB0BDE064018F90BDE1640D7FB06B4 -:1027BC00DE064018F906DE0AD5D7FBDF0ED518F970 -:1027CC00DD095020C15011FD0035C08FD7FB9F187B -:1027DC00F9FD652C1006C6D7C7D90EF9C15002FDFC -:1027EC00D62BC04024F90161F8712010055012FD60 -:1027FC0049028F0EF96C0870C15002FDD62BC050E7 -:10280C0003FD49028F0EF96C1870C15002FDD62BD6 -:10281C00C05016FD49025003FDE72B625C01D1DD6F -:10282C00107170DBFB5002C15013FD0035C0F2EF8C -:10283C0001E2C6D7C75004FDE72B625C03D1DD4033 -:10284C005014FDD92834DBFB895C9F998A0C7CFFE2 -:10285C0050FF5C14D1DD228A0C7CFF5C147234DFD7 -:10286C00FB89616A997162075600316207058666B9 -:10287C00D1DFF7716307716B2734EEFB895CEB9941 -:10288C00712810055002FDE72BD2DD374024F901E9 -:10289C00DF05500AFD49028F0EF96C1070C1500211 -:1028AC00FDD62BC0E0FD4902D90EF9C15002FDD670 -:1028BC002BC05033FD4902F0C15002FDD62BC07124 -:1028CC0078DBFBE0C15013FD0035C0C6D7C7C12073 -:1028DC0004FBF8FFCC02005004FDE72B629C038C38 -:1028EC00045C20D1DD0E8C036C019C038C026C20EB -:1028FC009C02EF138C045C10D1DD0C8C035CFE9CF1 -:10290C00038C026C109C028C045C08D1DD0E8C03D1 -:10291C006C029C038C026C089C02EF138C045C040C -:10292C00D1DD0C8C035CFD9C038C026C049C028C32 -:10293C0003D1DD05501AFD49028C0370C15004FD12 -:10294C00D62BC08FDBFB5C9F728C03318E316D14E8 -:10295C008C03318E314D616D08616C5C606162621B -:10296C009FDBFB8FE7FB7CFF50FF5E02D1DD278FE7 -:10297C00E7FB7CFF5E027234DFFB89616A9971624E -:10298C0007CC0100316207086159018C01D1DFF4D9 -:10299C00716307716B27F21006C6D7D9CFFBC150F4 -:1029AC0006FDD62BC0D9D0FBC15007FDD62BC0D706 -:1029BC00FDA729F2D7C7711300711B207103037196 -:1029CC000205E0C15003FDD62BC05013FD4902F0A7 -:1029DC00C15005FDD62BC0500FC1E0FDD62BC05009 -:1029EC000AFD49027103055008FD4902501FC1E060 -:1029FC00FDD62BC05012FD49025003FDE72B625C43 -:102A0C0001D1DF03E2EF26F0FDE72B629F08F936D8 -:102A1C0009F9C75008FDBE2BC05003C1FDD62BC011 -:102A2C00710203711A20FD762BF503F9F2C6D7500B -:102A3C0003FDE72B625C01D1DD155014FDD928FD97 -:102A4C0040285014FD4902E0C15003FDD62BC07143 -:102A5C001300711B207103035014FD4902F0C1E0F7 -:102A6C00FDD62BC0F0C15003FDD62BC0D7C7200418 -:102A7C00FBF8FFCC02008F03F99C035010C150A44B -:102A8C00FDD302C0629F03F9D545FBDD04F2ED5383 -:102A9C002B8C037F03F95C08D1DD108F03F95C08E4 -:102AAC00D1DF05CC0210EF03CC02208C037F03F99D -:102ABC005C04D1DD168F03F95C04D1DF088C026C49 -:102ACC00049C02EF068C026C089C028FDAFB5CF310 -:102ADC00728F03F95C0C6162629FDAFB8FE6FB7C00 -:102AEC00FF50FF5E029C02D1DD1F34DEFB896E02BB -:102AFC0099716207CC0100316207086159018C01A0 -:102B0C00D1DFF4716307716B278F03F95C40D1DD62 -:102B1C00095002C15012FD0035C08F03F95C01D180 -:102B2C00DD08E0C15012FD0035C0717AFA8F03F94F -:102B3C005C41D1DD113403F9895CBE99D903F9C12B -:102B4C005010FD5805C0F21004C6D7FDE427F2D78B -:102B5C00FD4028F2D7C78FEEFB7617FDD928664FBC -:102B6C00EEFBDFF2F5EEFBF2C6D75064FD490240F6 -:102B7C00D7FB0BDE03E6EF01F66061FB711120F170 -:102B8C0071142061DC70C15012FD5805C0FDB436C3 -:102B9C00CF3DFC03D7C7C1C1FBF8FFAC0ABB17C1C3 -:102BAC005002C18C0270C1506CFDA50310061004BC -:102BBC00C6D7C7C1FBF8FFAC08C15002C18B70C1AE -:102BCC00506CFDFD021006C0C6D7C788061667708C -:102BDC00C1C75084FD6F031004C6D7C716C75084F5 -:102BEC00FDD302C0C6D7C74024FD04DE045600EF57 -:102BFC000256014024F901DF048686EF0A4024F9CD -:102C0C0002DF045104610666318F12504CD63351E9 -:102C1C004CD6610A040A20BF0CF9C6D740D7FB5129 -:102C2C00DC05CF2EFC0FD740D7FB33DC05CF2EFCB9 -:102C3C000BD740D7FB0BDC05CF2EFC07D740D7FBBF -:102C4C000661D831320405CF2EFC03D7D5D7FBDD76 -:102C5C0004E52EFCD7F52EFCD7D520F9DF047163E3 -:102C6C0020D740D7FB0BDE03E6EF01F66061FB716A -:102C7C00712071142071772061C831622017716244 -:102C8C0020717420711120F171742061DC70C150BD -:102C9C0012FD5805C0D77100010571785005713AC5 -:102CAC00D5713BD1713ADD713BD98F10055CFC9F1E -:102CBC001005CF54054AE5420571104205710042DA -:102CCC0005714850057130500571205005CF5305E2 -:102CDC0005CF52050A7130510571205105713BD554 -:102CEC00717050058F11055CFC9F1105D7717850E0 -:102CFC000571080105D77140F00071783002713A06 -:102D0C00E6713BE2713BEA713BEE8F10055CFC9F78 -:102D1C001005CF34024AE552FF711A52710A5271F2 -:102D2C004830027130300271203002CF330205CFAF -:102D3C0032020A71303102713BE6717030028F1130 -:102D4C00055CFC9F110571603002D77178300271FF -:102D5C0048F000D7C788061666614FDD0967614EDB -:102D6C00DE0396EF01866672C6D7C7161714AA043F -:102D7C0012A943DD29AA0412A923FDCC4EC3AC022F -:102D8C00FDCC4E13C2BDD813FDEB0EDE0C1714AAEE -:102D9C000212AA0403BA04EF051714A9BA04AC046E -:102DAC001231FF319E03317F087208C6D77100F2D1 -:102DBC0000304400BFB601300188BF900130098457 -:102DCC00BF9E01BF9C01BF9A01BF9801BF9601BF76 -:102DDC009401BF9201F53CFF30FE00BFBE01F6BF6F -:102DEC00BC01BFB80150EEBFBA01A1BFB201C918F6 -:102DFC00FE00F6BE6EBE64BE6A7123047153078F6B -:102E0C0022F9310507F5F5FBCB6CFF0071532171ED -:102E1C004221D730EF00BFB401F6BFBA017108F2FE -:102E2C0000712304715307714321D78FACFBB0ACF5 -:102E3C00FBD1DF7331D4D106715BD1E5AEFBD5AEDE -:102E4C00FBDD347140DAFBD9ADFBF1E73402002332 -:102E5C00DD0625DD0325DF05F6BE66EF06D9F4FB9E -:102E6C00F1BE66A0ADFB40ADFB20DF06F5ADFBB0BF -:102E7C00AEFBCFACFB19D7CFACFB1E7148DAFBD540 -:102E8C00F6FBDF04F6BE66D7D9F4FBF14266FFDD34 -:102E9C0016D9F4FBF112AE6643DE05A266FFEF0312 -:102EAC00B266FFCFACFB03D7C7161714F6B9AA044A -:102EBC0012F6231231FF31AE03316FBA02C6D7C7F7 -:102ECC00C1FBF8FF8C085080D612AB1413B9AB14AD -:102EDC00AA0412A92312D949FBF133BDD813FD570B -:102EEC000DBA02C0C6D731642101D74020F902DFE8 -:102EFC0010F6BE64BE6EBE6ABFB6FBBFBCFBBFC2E3 -:102F0C00FB3154211530B2FBFDB42E30B8FBFDB4AF -:102F1C002E30BEFBFDB42EEDA62F3174210F717334 -:102F2C00217108FAFBF5B0FBF5AFFBEF6DD5AFFBEC -:102F3C00DF658F48FB9FAFFB40B0FB1FDC1A7100B5 -:102F4C00FAFB404AFBFFDD22A0B1FB8F4AFB4FB1DD -:102F5C00FBDE17F5B0FBEF12D9B0FBF1A1605C1FE3 -:102F6C009FB0FB7108FAFBF5B1FBE9B0FB094CFB18 -:102F7C0070C130B2FBFDCB2EC0E9B0FB096CFB700D -:102F8C00C130B8FBFDCB2EC0E9B0FB098CFB70C186 -:102F9C0030BEFBFDCB2EC0B0AFFB30B2FBFD762DAF -:102FAC00F313BE6E30B8FBFD762DF313BE6A30BE44 -:102FBC00FBFD762DF313BE64D7C736F00071F4DC3D -:102FCC00297170F000CE9D08CE9EC0CE9F80F594E6 -:102FDC00FFF593FFF592FFE597FFE596FFE595FF6B -:102FEC00E598FFCE9C7F7100CEFB711BE3712BE348 -:102FFC00711AE7712BE7717A9D710A9E31929E02CC -:10300C00EFFA710B9E710322711322712322C6D722 -:10301C00C73102221E710222710A9E31929E02EF6A -:10302C00FA34FCFB3692FF52078B99A5A792DFF975 -:10303C00710B9EC6D7C78806163112221571122243 -:10304C00C734C4FB3092FF1652078B99A5A792DFA9 -:10305C00F9C666736718C4FBC6D7C771032231144F -:10306C00221E711322710A9E31929E02EFFA349243 -:10307C00FF36C4FB52078B99A5A792DFF9710B9E03 -:10308C0031242213712322717B9E8F04FC9E9A8F14 -:10309C0005FC9E9B717A9EC6D7CFCFFB5CCFD0FB35 -:1030AC005FCFF0FB5DCF24FC36CF25FCC9E523FCBC -:1030BC00D7C7CFCCFB11CFCDFB36CFF4FBFFF5F54B -:1030CC00FBF5F6FBF5F7FBF5F8FB5600664C64DEFA -:1030DC0008723848FB0086EFF3C6D7C78806161768 -:1030EC00F1E73402002361E3ED2B342361F8EDCDDD -:1030FC0031B12361E3EDD43124030061F8EDE33108 -:10310C00B1240D0061D8ED2B34240B0061F8ED04D3 -:10311C00322361F8ED4B322361F8ED18322361F85C -:10312C00EDF13324060061F8EDB432B124030061F3 -:10313C00D8EDD53224000061F8EDE2322361F8EDD0 -:10314C002B34252361E3ED0A332361F8ED1B332384 -:10315C0061F8ED2C332361F8ED1B332361F8ED3D61 -:10316C00332361F8ED4E332361F8ED5D332361F8C1 -:10317C00ED7F332361F8ED8B332361F8ED97332327 -:10318C0061F8EDA033252361E3ED2B342561F8EDD7 -:10319C00A9332361F8EDB63324030061F8EDC23393 -:1031AC00240A0061F8EDCE3324090061F8ED0534F2 -:1031BC0024090061F8EDEB332361F8EDD933ED2EE2 -:1031CC0034679FCEFBED3B3430BC29FD6E39667302 -:1031DC006718CCFBED3B3440D1FB6ADF1440D2FBCB -:1031EC0068DF0E674C6CDF09305242FD6E39713A64 -:1031FC00D5679FD3FBED3B3467D1DD0630F33DFD46 -:10320C006E3934ECFB89616F99ED3B34675C02D10C -:10321C00DD0830572BFD6E39EF0C675C01D1DD06F4 -:10322C00305C2BFD6E39675C3CD1DD1030612BFDC1 -:10323C006E39675C3C7266736218CCFBED3B34678D -:10324C00D1DD625C01D1DD05300800EF01F6609F35 -:10325C002BFC675C02D1DD03E6EF01F6342BFC8915 -:10326C00616899675C04D1DD04E6A1EF01F6342BAB -:10327C00FC89616899675C08D1DD05302000EF019D -:10328C00F6342BFC89616899675C10D1DD05301030 -:10329C0000EF01F6342BFC89616899675C20D161E1 -:1032AC00E871602BFCED3B34D51AF9DF09679FF50B -:1032BC00FBA01AF9EF10401AF905DE0AE91AF967B2 -:1032CC001853FDA01AF9ED3B34675C0F72667362FC -:1032DC0018CCFBED3B34401AF964DE1F401AF9019F -:1032EC00DF0667D161F85701E91AF9671848FBA0A6 -:1032FC001AF9401AF90561C8717221ED3B34675C0B -:10330C007F70C117F1243000FD4130C0ED3B3467B4 -:10331C005C3F70C117F1243000FD4130C0ED3B34EF -:10332C00675C0770C117F1243000FD4130C0ED3BE4 -:10333C0034675C1F70C117F1243000FD4130C0EDC3 -:10334C003B346770C117F1243000FD4130C0ED3BB8 -:10335C0034CEABAC710A9E31929E02EFFAD592FF3D -:10336C00DF05710B9EEFED679E99710B9E9F03FC21 -:10337C00ED3B34712222675C7F9F04FCED3B347182 -:10338C002222675C3F9F05FCED3B34675C3F9F0648 -:10339C00FCED3B34675C1F9F07FCED3B34306C3B12 -:1033AC00FD6E39679F0CFCED3B3430273BFD6E39CD -:1033BC00679F0DFCEF7930493BFD6E39679F10FC20 -:1033CC00EF6D675C01D161E8FD4145EF624026FC81 -:1033DC00C8DE5CE926FC671876FAA026FCEF50677D -:1033EC009F26FCEF4A67318E247200DF06300409F9 -:1033FC00FD6E39679FEFFBEF36675C01D1DD03E6AD -:10340C00EF01F66061FB711102675C02D1DD03E62E -:10341C00EF01F66061FB712102679F23FCEF100046 -:10342C00EF0D664C5ADE07736718CCFBEF0100C634 -:10343C00D7C716664C30DC094C37DE05FD1C30EF67 -:10344C0073664C02DF1F8FCEFB5C03728F2DFC5C0E -:10345C0003318E316D08616A08128F2DFC5C80314E -:10346C002A6162EF5E664C3DDF0AAE90BF28FCF924 -:10347C0028FCEF4F664C3EDF05F929FCEF45664C06 -:10348C004FDF05FD6445EF3B664C61DF09E926FC27 -:10349C000976FA72EF2D664C7FDF05FD633EEF2354 -:1034AC00664C4EDF0F31742305301000EF01F60827 -:1034BC007208EF0F664C5ADC0452FFEF0666730974 -:1034CC00CCFB72C6D7C788061617F124100024054A -:1034DC0000DC07244C00DD17EF18717BFA17F104A0 -:1034EC00CCFB1489617F99717AFA713222EF03A0B7 -:1034FC0026FCC6D7C7C1C1FBF8FF4020F903DD0687 -:10350C004020F904DF2F8C027309D4FB5E0AD1DF53 -:10351C00248C02318E04CCFB14896E0A99716207DB -:10352C00CC0100316207086159018C01D1DFF471C3 -:10353C006307716B271004C6D7CF2DFC03F52BFC4A -:10354C00F52FFCF531FCD7C788061617F1E73402C6 -:10355C000025DD3E23DD1825DD1D23DD0523DD2CB7 -:10356C00EF3C716222679F30FCCF3DFC03EF2F676D -:10357C005C839F2DFCEF27675C039F2FFC675C032C -:10358C004C0261F8711224FD5947EF12679F31FC10 -:10359C00EF0C6791DF08E0C15012FD0035C0C6D7B3 -:1035AC00C71617F1E7240000DD2A23DD1E240300D3 -:1035BC00DD0724FB00DD24EF2531020705308000F8 -:1035CC00EF01F6086F2EFC7208EF198F2BFCF52B10 -:1035DC00FC72EF107152235235EF09F2EF0666734D -:1035EC00092AFC72C6D7C71617F1E7240000DD388C -:1035FC00241000DD1C23DD1C23DD30240E00DD181F -:10360C00241100DD1B240F00DD12243000DD15EF2A -:10361C001EE2EF1D5202EF195204EF155206EF1184 -:10362C005205EF0D5207EF09F2EF065203EF02526B -:10363C00FFC6D7C7314422417143228F3CFC9FD433 -:10364C00FB8F3BFC9FF3FB362EFDC7D93BFCFD19D2 -:10365C0038618A70618AFD5E38C0D940FCF1312F27 -:10366C00609F3FFC8F3AFC4F3FFCDD0D7152228F67 -:10367C003FFC9F3AFCCF3DFC03403DFC05DE0A308D -:10368C00C136FD6E39CF3DFC6BB03DFC7150F00086 -:10369C00CE300BCF170006CE3106FDAF02717A305B -:1036AC00710BE3710BE7C6D78F3FFC9F3AFC8F3F42 -:1036BC00FC9FD5FBD74020F903DF064020F904DF3F -:1036CC0002F2D73154220E7153227173228F3FFCB8 -:1036DC009F41FCEF3931642223716322717222D530 -:1036EC0030FCDF05F542FCEF0B8F30FC5002D6A10D -:1036FC00609F42FC8F42FC9F41FCEF123174220808 -:10370C008F42FC9F41FCEF068F3FFC9F41FC8F4199 -:10371C00FC9FD5FBD941FCFD3637E941FC09DA2188 -:10372C0070C15013FD5805C0F2D7C7C1C1FBF8FFDB -:10373C008C02D1DF05F530FCEF1A8C024C05DE064D -:10374C00CF30FC02EF0E8C02318E1231FE03311F92 -:10375C00609F30FC8F43FC4F30FCDD2ACC011F8F67 -:10376C0030FC9F43FCCC00008B4C08DE148B73099F -:10377C001A224F30FCDC058B9C01EF05615900EFE0 -:10378C00E78C019F3EFC1004C6D7C7168B728C01C8 -:10379C00614ADE248B728C02614ADE188C01728CB9 -:1037AC0002614ADE068C01318EEF048C02318E08E8 -:1037BC007208EF268B72EF228B728C02614ADE0448 -:1037CC008B72EF168C01728C026142DE068C013119 -:1037DC008EEF048C02318E087208C6D7C716710A98 -:1037EC00E7710BE37150F000CE300BCF170006667B -:1037FC009E31FDAF02717A30710BE33182E302EF3F -:10380C00FA8D1F7158F000710BE772C6D7C7C1C192 -:10381C00FBF8FF8F24FC4E02DC03F2EF318C024FDD -:10382C0025FCDC0452FFEF268C022F24FC70613146 -:10383C00318D128F25FC2F24FC70613133BDD813D0 -:10384C00FD790DBB440001DC03F690BB8B721004B8 -:10385C00C6D7C7C1FBF8FFAC0814A91489708B61DB -:10386C0028706131FDCC4E1344030071FEDC23AC97 -:10387C0008148A04819A04AC08148A044C11DC10D4 -:10388C00A9148B99AC0814CA0200AC0814CA031012 -:10389C00EF72AC0814CA0400AC0814A914894DDEEC -:1038AC000AAC08148A02819A02EF12AC0814A9140B -:1038BC00894D61D308AC08148A02919A02AC0814A1 -:1038CC008A03919A03D1DF3CAC08148A024C10DFB6 -:1038DC0010A91489318EA112AC0814A9146299EFA5 -:1038EC0017AC08148A024CF0DF0EA91489318EB182 -:1038FC0012AC0814A9146299AC0814CA0200AC08E2 -:10390C0014CA0310C0C6D7ED5939717BFAC7D54616 -:10391C00FC61F831042330710423712123710323DA -:10392C00D546FCDD06B046FCCEABAC717AFA56003F -:10393C00664C0ADD1272F3311C7934FDCEFC006149 -:10394C00CAFDB83986EFE9717AFAF2C6D7C75600C4 -:10395C00664C0ADE0BF0317E12F67848FC86EFF0EE -:10396C00C6D7C7C1C1FBF8FFCC01008C014C0ADEE5 -:10397C0036717BFA8C01F0317E0448FC14A9616825 -:10398C00DF09AC02B9717AFAF2EF1D8C01F0317ECD -:10399C00127948FC614902DF06717AFAE2EF09718B -:1039AC007AFA615901EFC4E21004C6D7C72004FBB0 -:1039BC00F8FFF64248FC61F8ED9D3A717BFA9C03E6 -:1039CC008C034C0ADE3C8C03F0317E0448FC14A9B9 -:1039DC006168DF05717AFAEF29717AFA8C0372F358 -:1039EC00311C7948FCCEFC0061CA629C02D1DF0A12 -:1039FC008C03F0317E12E67848FC717BFA61590336 -:103A0C00EFBECC0200CC01018C02F0317E0448FCEC -:103A1C0014A96168DD7B8C02F0317E127948FCE7D9 -:103A2C0043DF688C014C0ADE628C01F0317E127926 -:103A3C0048FCE743DD50717BFA8C01F0317E044881 -:103A4C00FC14A96168DF1B616901717BFA8C01F0C0 -:103A5C00317E12F67848FC717AFA8C024E01DCE762 -:103A6C00EF2F8C01F0317E0448FC14A9128C02F06B -:103A7C00317E337848FC8C01F0317E12E67848FCBC -:103A8C00615902717AFA615901EF98615902ED148A -:103A9C003A00F21004C6D7C72006FBF8FF3411FC1D -:103AAC00C55006C150A8C15030FDFD021006D2DD34 -:103ABC001DA05CFC405CFC08DE03E2EF5A340CFCFD -:103ACC00895CFC99FD6C3B7110DAFBF2EF49F55CFB -:103ADC00FC8F0CFC5C01D1DD264020F903DF20506B -:103AEC0010C180FD0035C0C736100571D4C6DE0F7D -:103AFC0017C15006C150A8C15030FDFD0210064040 -:103B0C0020F901DD114020F905DD0B8F0CFC5C0266 -:103B1C00D161E8FD5742F21006C6D7D90DFCC15051 -:103B2C0030FDD302C0629F10FC7130DDFB8FE5FBD2 -:103B3C005C08D1DF06716307716B27F2D7D910FCD3 -:103B4C00C1D90FFCC15030FD6F0310047130DDFB87 -:103B5C008FE5FB5C08D1DF06716307716B27F2D729 -:103B6C00C7200AFBF8FF500FC15030FDD302C040F4 -:103B7C0045FB02DF077110DAFBF2EF5F7118DAFB1D -:103B8C00CC07004023F901DF05CC0802EF03CC0879 -:103B9C0010CC09808F0CFC5C03D1DF08717AD5CC7A -:103BAC000607EF06717BD5CC062F17040600C15013 -:103BBC0004C150A0C15030FDA5031006C736100536 -:103BCC0071D4C6DE154020F903DF0F17C15006C1B2 -:103BDC0050A8C15030FDFD021006F2100AC6D7C71E -:103BEC004020F902DF04F6BF60FCB048FDD548FD6B -:103BFC0061E8ED5F3DCF48FD048F20F9318FE7235D -:103C0C00DD0B24020024030061C8ED5F3D8F22F917 -:103C1C00312346301B004260FCDF0AE0C15010FD2E -:103C2C000035C0EF203077014260FCDF185002C134 -:103C3C005010FD0035C0F64266FCDF098FF0FB50DA -:103C4C0010D6BF66FCF64266FCDD40B266FCE6426E -:103C5C0066FCDF37710221EF32301B004260FCDF63 -:103C6C0016F64268FCDF1BE0C15010FD0035C03079 -:103C7C00E803BF68FCEF0B3077014260FC61F87120 -:103C8C000221F64268FC61E8B268FC313407097124 -:103C9C003323F6BF60FCEF1731342306F6BF60FC0C -:103CAC00EF0DA260FCF64260FCDF04B1BF60FC8F3C -:103CBC0023F9318FE7240000DD0623DD0D23DF120D -:103CCC0036100571C4714123EF0B7104027141234D -:103CDC00EF037142233142231D4062FC0661D8A0E0 -:103CEC0062FC4062FC05DF11A062FC5004C1501064 -:103CFC00FD0035C0EF03F562FC3144231D4064FC2C -:103D0C000661D8A064FC4064FC05DF11A064FC5083 -:103D1C0008C15010FD0035C0EF03F564FCD565FCFF -:103D2C00DD05B065FCEF2C3142071B4063FC0661DE -:103D3C00D8A063FC4063FC05DF0FA063FC5010C1EE -:103D4C00FD0035C0EF03F563FC4063FC0661F8CF62 -:103D5C0065FC25C6D7C736100571D4DE0730A33AEB -:103D6C00FD6E39D24020F903DF1D31220706307970 -:103D7C002AFD6E393154230C7153235080C15012DB -:103D8C00FD0035C0FD983DFDC53DC6D78F2DFC5CB3 -:103D9C0001D1DD24D56BFCDD04B06BFCD7CF6BFC03 -:103DAC00098F3EFC4F6AFCDD0F8F3EFC9F6AFC5076 -:103DBC0040C15012FD0035C0D74020F903DD04F698 -:103DCC00BD1AD7D5F8FBDF08F6461ADD19B61AD797 -:103DDC00D9F4FBF1461ADD0ED9F4FB12AD1A43DE11 -:103DEC0003A61AD7B61AD7C78FECFB76F5ECFB5C9B -:103DFC0010D161E8716223665C0FD1DD57665C01FE -:103E0C00D1DD05F520F9EF4C665C02D1DD11E0C186 -:103E1C005003FDD62BC0711300711B207103036678 -:103E2C005C04D1DD11711300711B20D52DFC61F8E0 -:103E3C00710303FD4535665C08D161E871030350DD -:103E4C0005FD49027102035003C1FDD62BC0711A46 -:103E5C0020FD762BF2C6D7C7200AFBF8FF401AF9D3 -:103E6C000ADC0452FFEF618F22F931150530040092 -:103E7C00EF0F8F22F9314505300500EF04D923F9F6 -:103E8C00F1609B8F08F99C018F24FD9C028F09F92E -:103E9C009C038F0AF99C048F6CFC9C058F02F99C87 -:103EAC0006714420E661301271042061DC31196125 -:103EBC0062629C07CC08018F24F99C09A01AF9D9DD -:103ECC001AF9F1B107148972100AC6D7C78F20F9F5 -:103EDC00318FE724000061F8EDAA4023DD1B23613C -:103EEC00F8EDB23F2361F8ED2E402361F8ED7940F7 -:103EFC002361F8ED4C41EDA740D521F9DF2CF642BA -:103F0C0060FCDD05F54AFDEF03A04AFD404AFD6566 -:103F1C00DC0ACF20F905710223EDCA41AF60FC44E5 -:103F2C000A0061D8EDCA41E521F9713223F54AFD49 -:103F3C00F5EFFBFDC904715320FDC5234023F903A4 -:103F4C00DF09710223F520F9EDCA41FD412640D964 -:103F5C00FB9BDE09710223F520F9EDCA41714A275A -:103F6C007140110571301105713A22715A2271504C -:103F7C001105FDC129D2DD09710223F520F9EDCA25 -:103F8C004171103500CF37001D714012054021F9E9 -:103F9C0001DF05F5F5FBEF04CFF5FB03CF20F902AC -:103FAC00FDA729EDCA41FDA22CFD022D714A9DFDF4 -:103FBC004535FDBD30F537FF712BE0F521F9710268 -:103FCC0023CBE43FEFCBE6F6F0FDC904713BD47193 -:103FDC0012027123028F22F93105285004FDE72BC0 -:103FEC00625C03318E315D34DBFB89616899500270 -:103FFC00FDE72BD2DD067170DBFBEF047178DBFB88 -:10400C00FDC523FDB92D710822F9CF20F9038FCE00 -:10401C00FB5C02D1DD095080C15010FD0035C0EDB4 -:10402C00CA41FDCC4131642331A06EFCD56EFCDD60 -:10403C000831A4E00A31020C06712BE0FD4242313A -:10404C00A4E01731040C13712BE05027C15005FD6F -:10405C00D62BC0CF20F904710223FD37428F22F9F1 -:10406C0031250731040703F520F9EDCA41FDCC4198 -:10407C0031020C14F0C15005FDD62BC05005FD4982 -:10408C0002FD4242CF20F903FD37428F22F9312540 -:10409C000731040703F520F9EDCA41F520F9CFF5F6 -:1040AC00FB03F5F6FBF5F8FB715221F6426CFF6150 -:1040BC00E8EDCA41F6BF66FC710321F50CFCFD6C02 -:1040CC003BFD1F2EFDF92CFD572D714B9D711302DD -:1040DC00712302F5DCFBF5DDFBF5DEFBF5DFFB31D7 -:1040EC00242102EFFACE3708CBE4BFFFCBE6FFF179 -:1040FC00CED4FFCF37000971481205F6BEE0BEE200 -:10410C00BED0716A27FD3B2A714307714B2771485A -:10411C00100571481105713810057138110571338E -:10412C0002713B22715302715B2271581005715858 -:10413C001105FD3205CF20F905713223F6BF60FC65 -:10414C00F521F931020729FDC523AF60FC440A00B3 -:10415C0061C8E520F9D523F961E8FD32058F22F914 -:10416C0031255B502EFD4902E521F9E520F9EF4E92 -:10417C00D504F9DF49FD3205FD4E2371730171320F -:10418C000471430271032071522031949E02EFFAA4 -:10419C00712AE7CEA409F5F3003104070261FDE5AD -:1041AC00F300CEA40831040709713323E520F9F597 -:1041BC004AFD712BE78F22F9312503F520F9C6D77B -:1041CC00D56FFCDF1A310200155003FDE72B625C42 -:1041DC0001D1DF07F520F9710223D7E56FFCD74039 -:1041EC006FFCF0DF0831040041F56FFCD7406FFC29 -:1041FC00C8DF0BF520F9710223CF6FFCF0D7310229 -:10420C00000A406FFCFFDD22A06FFCD7F0C1500408 -:10421C00FDD62BC08FDBFB5C9F9FDBFB7110ECFB97 -:10422C0030F33DFD6E39CF6FFCF0D731042106F52C -:10423C0020F9710223D7716323F56EFC717207FDAF -:10424C00AF02717307D7FD9F05F2D7C7200CFBF89F -:10425C00FF8F12FCF0F911FCF303FDCC4E13BC04E0 -:10426C008F14FCF0F913FCF303FDCC4E13BC028F3E -:10427C0016FCF0F915FCF303FDCC4E13BBAC04BDDE -:10428C00D8F6BDDAAC04311EBDDCF6BDDEFD2C0D5E -:10429C00ADD8BDDCADDABDDEAC02BDD8F6BDDAAC56 -:1042AC0002311EDADCC3DADEC3BDDCF6BDDEFD2C6A -:1042BC000DC0BDDEC0BDDCADDEFDA20EADD8BDDCDB -:1042CC00ADDABDDEABBDD8F6BDDAAB311EDADCC380 -:1042DC00DADEC3BDDCF6BDDEFD2C0DC0BDDEC0BD1F -:1042EC00DCADDEFDA20EDADAADD8FD5746C3C58FC4 -:1042FC000EFD5C3FF0317E048EFC14C2C0B9A00EE2 -:10430C00FDF6BC08BC0A9C078C074C2EDD3E8F0EBC -:10431C00FD0E0770F161DC605C3FF0317E12798E2E -:10432C00FCBDD8F6BDDA8C0773092422318FBDDCB5 -:10433C0070BDDEFD2C0DAC08BDDCAC0AFDA20EADD3 -:10434C00DABC0AADD8BC08615907EFBCAC08BDD8C3 -:10435C00AC0ABDDAC9DC0004F6FDF60DC9DCFFFFC2 -:10436C00F6FDF70EADD8BF88FCAF82FC4288FCDDB1 -:10437C0012AF84FCBF86FCAF82FCBF84FCAF88FC10 -:10438C00BF82FCAF84FC4286FCDC50AF82FC4284D2 -:10439C00FCDE48AF4CFD4282FCDE404050FD16DC9A -:1043AC001F4050FDA0DE168F8AFC4F50FDDE0EAF75 -:1043BC0082FC228CFC44691061C8FD3044F550FD30 -:1043CC00AF82FC445146DC0BAF82FC241027BF4E5D -:1043DC00FDEF1930F82ABF4EFDEF114050FDFFDD07 -:1043EC0003E6EF01F63450FD89610899AF86FC4273 -:1043FC0084FCDC1BAF84FC4282FCDE13AF82FC42EB -:10440C004EFDDE0BF58AFCAF82FCBF8CFCEF11403D -:10441C008AFCFFDD03E6EF01F6348AFC896108991A -:10442C00100CC6D7717BFAC7710A9E31929E02EFAF -:10443C00FA8E949F7AFC8E969F7BFC8E979F7CFCC9 -:10444C008E989F7DFC8E939F7EFC8E929F7FFC713D -:10445C000B9E717AFA8F7DFCFD0B0F76FDD5451303 -:10446C00BF80FCD517FCDF0AD518FCDF05D519FC7D -:10447C00DD2CF6B14280FCDF17665C0391DF03E6AE -:10448C00EF01F6046D01313D120103B1BF80FC96C2 -:10449C0017FDF84613FD0F4531742302EF635206E6 -:1044AC009292697AFC6872FCDFF6AF80FCBF78FCF4 -:1044BC00F970FCF3311C7926F944FEFFDD43D97009 -:1044CC00FCF1010426F914A944FFFFDF04E6B9EF5F -:1044DC000CD970FCF1010426F914A9A1B9A017FCA0 -:1044EC00D517FCDF1CA018FCD518FCDF14A019FC98 -:1044FC00D519FCDF0CCF17FCFFCF18FCFFCF19FC34 -:10450C00FFC6D7C716D970FCF10744A800DC0571AB -:10451C007223EF1FF647DD1BA070FC4070FCA8DC7B -:10452C0005717223EF0DF970FCF3311CF67826F946 -:10453C00B7EFE1C6D7C756A89666F0317E12F6B132 -:10454C007826F966D1DFF1F517FCF518FCF519FCA6 -:10455C00F570FC717323C6D7C72004FBF8FFD51A7E -:10456C00F9DF188F70FC9F0FFD717BFA5206929247 -:10457C006972FC6810FDDFF6717AFA401AF906DEF2 -:10458C0010E91AF90910FD9C03A01AF98C0372EFBB -:10459C0034F90FFDF3311C7926F9BB310224058B5C -:1045AC009C03EF128C019C03D50FFDDF06CF0FFD92 -:1045BC00A7EF03B00FFD718071072461DC61FB7103 -:1045CC0001248C03721004C6D7C72008FBF8FF8F98 -:1045DC007DFCFD0B0F9C078F7CFCFD0B0F9C068F4D -:1045EC007BFCFD0B0F9C058F7AFCFD0B0F9C048F45 -:1045FC007EFC9C038F7FFC9C028C06318E01127911 -:10460C005222BB8C075C03D1DF098C064C0361C8BA -:10461C006179008C05318EB1610900BB313D12010D -:10462C0003BB8B0E04708C011C00BB8F1CFC4E0357 -:10463C00DC0E8C034F1CFCDC0B8C024F1DFCDC04D1 -:10464C00AB12EF03ABB1121008C6D7C7C3C1200819 -:10465C00FBF8FFF661490A61F8614908DF07F73496 -:10466C000000EDF446E6BC04F6BC06AC0ABC02AC99 -:10467C0008BBAC06614902AC0461F8614900DE2854 -:10468C00AC04BDD8AC06BDDAE1FDB10EADDABC06AA -:10469C00ADD8BC04ABBDD8AC02BDDAE1FDCC0EADDF -:1046AC00DABC02ADD8BBEFCAAC06BC02AC04BBACE6 -:1046BC0008BDD8AC0ABDDAAC04BDDCAC06FD2F0ECF -:1046CC00AC04BDDCAC06FDA20EE1FDCC0EADDABC3B -:1046DC0006ADD8BC04AC06614902AC0461F8614972 -:1046EC0000DCC5AC0214AB12100CC6D7C7168F7504 -:1046FC00FCFD0B0F77614EDF22AF78FC4280FCDEB5 -:10470C0009AF80FC2278FC12EF41F64280FCDF08F6 -:10471C004278FCDD03E7EF33F7EF3017F1B11267A6 -:10472C00318E43DF1B665C0391DF03E6EF01F60479 -:10473C006D01313D1201032278FC0280FC12EF0B5B -:10474C0067614EDE0532A900EF01F7C6D7717BFA1F -:10475C003112240CF64218FDDD06B218FDEDF847B7 -:10476C00711324717AFA4020F904DF08715307F5AC -:10477C0052FDEF78D9F7FBF1E7240000DD0F23DDC4 -:10478C001C23DD1123DD6223DD2E23DD4371530752 -:10479C00F552FDEF57715207F552FDEF4FD552FD13 -:1047AC00DF08715207E552FDEF06715307F552FD14 -:1047BC0030FA00BF18FDEF34D552FDDF0E715207F1 -:1047CC00E552FD30FA00BF18FDEF21F5F7FBEF1CA9 -:1047DC00D552FDDF0E715307E552FD30FA00BF18BC -:1047EC00FDEF09CFF7FB02EF03FDF947D7D92FFCFB -:1047FC00F1E7240000DD0923DD2723DD0A23EF2167 -:10480C00715307F552FDD7D552FDDF08715207E5FC -:10481C0052FDEF06715307F552FD302D02BF18FD06 -:10482C00D7715207E552FDD731422101D77163216F -:10483C00D9F5FBF1E7240000DD1223DD1923DD118E -:10484C0023DD2623DD3423DD3923DD3FFDC048EF96 -:10485C003DFDE348EF38D9F4FBC1AE6CFD602DC0D3 -:10486C00F313BE6C712304EF25F0C1AE6CFD602D0B -:10487C00C0F313BE6C712304EF14F6BE6C712204EA -:10488C00EF0CCB6CFF00712304EF03FD604940205B -:10489C00F905DD064020F901DF067123047163215F -:1048AC003164210FF6BE64BE6A3124040390EF011B -:1048BC00F6BE6ED7CF58FD47F51AFDAE6C317DBFF5 -:1048CC0020FDFD3549D2DF0ED9F4FBC1AE6CFD6085 -:1048DC002DC0F313BE6CD7FD3549D2DD0FCF58FD7B -:1048EC0047F51AFDAE6C317DBF20FDD7E91AFD09E5 -:1048FC006C225080D6BF1CFD2220FDBDD830470055 -:10490C00FD570DBF1EFD301CFDFD762DF313BE6C47 -:10491C00B058FDD558FDDF10CF58FD47A01AFD400B -:10492C001AFD1F61C8F51AFDD740D7FB0BDC0571CA -:10493C002304F2D740D7FB0661D831322011F0C1E5 -:10494C00AE6CFD602DC0F313BE6C712204EF03FD41 -:10495C006049E2D7716221F0C1AE6CFD602DC0F3ED -:10496C0013BE6CA022FD4022FD40DC3DF522FDD99A -:10497C0023FDF1313F0454FD14D923FDF1BDD85072 -:10498C0008FDA60D087208E6D2DD040192DFFC8951 -:10499C006158D1DD05712204EF03712304A023FDBE -:0A49AC004023FD2061C8F523FDD76C -:1049B60061FC61FCC1C3C5C7520C929269D4FEC1A9 -:1049C600DFF88EFD708EFCC1717AFA4020F903DFA4 -:1049D6000630792AFD6E39C09EFC609EFD34D4FEF9 -:1049E6005206C0B9A5A592DFF9C6C4C2C061FC6172 -:1049F600DF520C929269D4FEC1DFF88EFD708EFCF8 -:104A0600C1717AFAC736410571A4C6DC51F526FD97 -:104A16007148500571605005313422367162077154 -:104A260033228FDCFB5FE4FBD1DF1B8FDDFB5FE511 -:104A3600FBD1DF128FDEFB5FE6FBD1DF098FDFFBE9 -:104A46005FE7FBD1DD0C31620702EFFA7163077194 -:104A56006B27710324FD6630F51AF9ED7E4BC736D8 -:104A660041057184C6DE0DF526FD71485005FD66CB -:104A760030ED7E4BC73641057194C6DE0FD526FD57 -:104A8600DD0A4026FD0261E8716050058F26FD3182 -:104A96008FE7240000DD0823DD1323DD31EF597194 -:104AA60040500571505005E526FDED7E4B8F4005C3 -:104AB6009F1BF9715050058F1BF99F1EF9D91BF9E1 -:104AC600FD3D34629F1DF9CF26FD02ED7E4BC736B4 -:104AD60041057194C6DE1DC736410571C4C6DE06A2 -:104AE600CF26FD03EF127148500571605005F5267B -:104AF600FDED7E4BCF26FD044026FD03DF138F1D03 -:104B0600F99F4005D91DF9C1D91BF9FDD134C0EF74 -:104B1600218F4005768F1BF901DC05D51BF9DF06D1 -:104B260071605005EF52C7D91BF9FDE730C07150CF -:104B36005005D91EF9F1242900DD2D240400DD28B5 -:104B4600242200DD23241100DD0C240100DD1924BC -:104B56001E00DD14EF0C401BF960DF0CCF1BF96162 -:104B6600EF06F51AF9A01BF94026FD03DF0AD91B4B -:104B7600F9FD3D34629F1DF9C09EFC609EFD34D454 -:104B8600FE5206C0B9A5A592DFF961FCC1C7717ACC -:104B9600FA714AE5717BBD51405F0401D1DD06F62D -:104BA60016A747DFF2300400BF2401F6BF2A013002 -:104BB6000B0BBF28010000000000000000510FBFD2 -:104BC60028010000000000000000500FBF280171FE -:104BD6000AE6712321C6C061FCC1C5717AFAD544C3 -:104BE600FBDD0EEB42FB899E44A242FBB044FBEF89 -:104BF60033710AE6300400BF2401F6BF2A01300BE8 -:104C06000BBF28010000000000000000510FBF2864 -:104C1600010000000000000000500FBF28017113C2 -:104C260021712321C4C061FC61EF520C929269D4B8 -:104C3600FEC1DFF88EFD708EFCC12006FBF8FF7109 -:104C4600503002CEABACCC0100F6BC0231B2E20F62 -:104C5600617902F6614902DFF371603002EF7E8E00 -:104C6600519B713BE28B5C02D1DD1D8B5C08D1DF71 -:104C76000971503002CC0100EFCF8C0570FDAC35C8 -:104C8600629E50CC0102EFC18B5C03D1DF408E5097 -:104C96009C04715030028C01D1DF0E8C0470FDF241 -:104CA60035629C05CC0101EF318C014C02DF0671A7 -:104CB600603002EF28CF34025A716030028C0470E3 -:104CC600C18C0570FD5335C0CF34024AEF0F8B5CA3 -:104CD60001D1DD0671603002EF03ED4F4C1006C0C6 -:104CE6009EFC609EFD34D4FE5206C0B9A5A592DF97 -:104CF600F961FCC1C3C5C7520C929269D4FEC1DFEB -:104D0600F88EFD708EFCC1710A9E31929E02EFFAFA -:104D16008F06FC4F96FFDF198F07FC4F97FFDF11B9 -:104D26008F08FC4F98FFDF095004C15011FD003574 -:104D3600C0710B9EC09EFC609EFD34D4FE5206C020 -:104D4600B9A5A592DFF9C6C4C2C061FCA046FC6144 -:104D5600FCC1C3C5C7520C929269D4FEC1DFF88E5E -:104D6600FD708EFCC1C1FBF8FF8D1F9C018E313199 -:104D76008EE7240600DD0823DD0F23DD25EF4571D0 -:104D86007AFA8C019F3CFCEF3B717AFA4023F901D9 -:104D9600DF078C019F3BFCEF2B51FF2E019F3BFC55 -:104DA600EF22717AFA8C019F02F98FDAFB5C01D14E -:104DB600DF124020F903DD064020F904DF06308DBE -:104DC60025FD6E394031FF09DE05A031FFEF19716F -:104DD60058F0007142224044FC02DF03F6EF05D989 -:104DE60044FCF1A1609F44FC710BE3C0C09EFC60D3 -:104DF6009EFD34D4FE5206C0B9A5A592DFF9C6C4FD -:104E0600C2C061FC61FF520C929269D4FEC1DFF808 -:104E16008EFD708EFCC1717AFA8F0CFC5C03D1DDBD -:104E2600194020F903DD064020F904DF0D36100590 -:104E360071D4DE0630A33AFD6E39C09EFC609EFD3D -:104E460034D4FE5206C0B9A5A592DFF961FC61FC17 -:104E560061FC61FC61FC61FC61FC61FC61FC61FC64 -:104E660061FC61FC61FC61FC61FC61FC61FC61FC54 -:104E760061FC61FC61FC61FC61FC61FC61FC61FC44 -:064E860061FC61FC61FC0F -:0A4E8C0000060C12181E242A30360E -:104E9600FF000000D4FB0000000040FC0000000002 -:104EA600EB3B3F368C223448372EF22E5947613D74 -:104EB6001209D83E01000000983AF82AFF000000C7 -:064EC6005555555547004B -:084ECC00317503F7332312D7FF -:024FF400013684 -:0A4FF60031353A31363A3139000006 +:10228C00D512F9DD0D8FF2FCB0F2FCD1DF4DCFF29F +:10229C00FC1EFD4623FDE82231325C0D31045C0945 +:1022AC0031126005713304EF03713204FD1F2331C9 +:1022BC00225C05714202EF03714302D428DD05B4A0 +:1022CC0028714202314402067140C9FBEF04714887 +:1022DC00C9FB4012F90161E8FD1426D74A264BDCF4 +:1022EC00134A26B9DE0E4004F928DE04A004F9D7FF +:1022FC0071335CD74A263EDC054A26BDDC0E400510 +:10230C00F928DE04A005F9D771325CD7F504F9F58C +:10231C0005F9D73122600E4006F902DE04A006F959 +:10232C00D771235CD73132040A40C5FB3CDE047103 +:10233C00235CD771225CF506F9D7C7C1FBF8FF7196 +:10234C00445C711760DE5771146071415C3114602C +:10235C00127130C9FB5002C15011FDB534C0CD28EB +:10236C0032EF3B7138C9FBE0C15011FDB534C0F4FC +:10237C002817C15002FD532BC0D2DF0D8B318E318B +:10238C008D080E01081C00BD2AAD2A44009BDC05FB +:10239C00D5C5FBDF095020C15011FDB534C0C0C6F6 +:1023AC00D7C78D2076FDEF23D515F9DD0571035CBC +:1023BC00EF2FFD872B664B2061F831545C1A71535B +:1023CC005CFDC304664C07DD0381DF098F14F93112 +:1023DC000303FD7824FD8C2471025C306825FD021A +:1023EC0039C6D7C77162017172015005FD470250A1 +:1023FC0008FD7F37629D265009FD7F376276716339 +:10240C0001711814F94A26F1DC05E515F9EF224A99 +:10241C002604DE1ACF15F9025008C1506CFDD1020A +:10242C00C092DF0DD437DF09711014F9EF03F515E5 +:10243C00F94015F901DF05710A22EF06710B2271C3 +:10244C000302CD20075700674C08DE107309D22118 +:10245C00614EDC05679D20EF0387EFEB4A2007DF19 +:10246C0009D515F961F8CF15F903C6D7500AFD4700 +:10247C0002304000C15006FD362BC05096ED47028D +:10248C00C72006FBF8FFD515F961E8ED6425304A45 +:10249C0057C1503EFD362BC0D2DD077100C8FBED95 +:1024AC0064257108C8FB17A1C15004C1500CC15060 +:1024BC006CFDF9021006EA2EAA48318D12AA483199 +:1024CC008E616B08616A08C1500EFD362BC0F69008 +:1024DC00C1500CFD362BC0CC00008B4C04DE2631D9 +:1024EC00245D02EFFA71125DEA2E8B5010D605C1F5 +:1024FC005010C18BD6044000C1506CFDA1031006D6 +:10250C00615900EFD550A5FD4702EA2EAA48318D3E +:10251C0012AA48318E616B08616A08C1500EFD36F3 +:10252C002BC050A5FD47025004C1506CFDD102C018 +:10253C00629C05EA2E8A4B4E0561C3048A4A4E05FD +:10254C0017A1C15004C1500CC1506CFDA103100661 +:10255C00F6C1503EFD362BC01006C6D7C78F07F903 +:10256C004B2661F8ED11264009F928DE06A009F981 +:10257C00ED1126F509F98D269F07F98D265070D699 +:10258C0012307351230480001231FF318E039F08E7 +:10259C00F99FC4FBF68F08F97C804C95DC1C8F08E6 +:1025AC00F9318F241400EA2EBDD8AA44FDE00D1297 +:1025BC0031FF318E03318F16EF1A8F08F9318F24CA +:1025CC001400EA2EBDD8AA46FDE00D1231FF318E63 +:1025DC0003318F16EA2E8A427217F3031644000158 +:1025EC0071FE61C836FF001701DE02F61617BD4EEC +:1025FC00C7500CFD362BC0D2DF078D269F07F9EF95 +:10260C00047100C8FBF2C6D7C72008FBF8FF4015C1 +:10261C00F901DD064015F902DF3217040600FD2E24 +:10262C002CD2DF0A8C069C058C079C04EF06CC058B +:10263C0063CC040017040600FD4B2CD2DF078C067C +:10264C009FC7FBEF04CFC7FBC8ED43271704060059 +:10265C00FD2E2CD2DD107100C8FB71035CCC050083 +:10266C0071025DED1C278C06318E318D080E07082A +:10267C001C00BD2AEA2E8A4072AD2AFD330FBD2AFA +:10268C008D2B9C06D1DF08CC0601CC0700EF048D06 +:10269C002A9C0717040200FD4B2CD2DF738C029F7F +:1026AC00C7FB8C02318E318D080E03081C00BD2A2D +:1026BC004401A5DC09CC0164F6BF0AF9EF52AD2A3E +:1026CC00220AF94401A0DC09CC011EF6BF0AF9EF7D +:1026DC003FAD2A44819DDC0BCC010A30F401BF0ACA +:1026EC00F9EF2DAD2A44019BDC0BCC010530F40134 +:1026FC00BF0AF9EF1BAD2A440191DC0BCC01003071 +:10270C00F401BF0AF9EF0971025D30F401BF0AF957 +:10271C003132040C31245C08CC0564CC0400EF1776 +:10272C008C064E01DE0A8C069C058C079C04EF0778 +:10273C008C019C05CC04008F14F9313503CC056455 +:10274C008C059FC5FB8C049FC6FBFDBB2B8F0CF926 +:10275C004E05DD2B40C5FB0BDE06400CF90BDE16DF +:10276C0040C5FB06DE06400CF906DE0AD5C5FBDFCC +:10277C000ED50CF9DD095020C15011FDB534C08FB8 +:10278C00C5FB9F0CF9FDF82B1008C6D7C7D830C174 +:10279C005002FD6B2BC04016F90161F87120100539 +:1027AC005012FD47028D306C0870C15002FD6B2B2E +:1027BC00C05003FD47028D306C1870C15002FD6B88 +:1027CC002BC05016FD47025003FD7C2B625C01D1DF +:1027DC00DD107170C9FB5002C15013FDB534C0F24D +:1027EC00EF01E2C6D7C75004FD7C2B625C03D1DD40 +:1027FC00405014FD882834C9FB895C9F998A0C7C55 +:10280C00FF50FF5C14D1DD228A0C7CFF5C14723407 +:10281C00CDFB89616A9971620756003162070586A2 +:10282C0066D1DFF7716307716B2734DCFB895CEBD6 +:10283C0099712810055002FD7C2BD2DD354016F91C +:10284C0001DF05500AFD47028D306C1070C150023B +:10285C00FD6B2BC0E0FD4702D830C15002FD6B2B45 +:10286C00C05033FD4702F0C15002FD6B2BC0717894 +:10287C00C9FBE0C15013FDB534C0C6D7C7C1200495 +:10288C00FBF8FFCC02005004FD7C2B629C038C04F3 +:10289C005C20D1DD0E8C036C019C038C026C209CA3 +:1028AC0002EF138C045C10D1DD0C8C035CFE9C03DA +:1028BC008C026C109C028C045C08D1DD0E8C036CB9 +:1028CC00029C038C026C089C02EF138C045C04D1F8 +:1028DC00DD0C8C035CFD9C038C026C049C028C0351 +:1028EC00D1DD05501AFD47028C0370C15004FD6BFD +:1028FC002BC08FC9FB5C9F728C03318E316D148C95 +:10290C0003318E314D616D08616C5C606162629F58 +:10291C00C9FB8FD5FB7CFF50FF5E02D1DD278FD525 +:10292C00FB7CFF5E027234CDFB89616A9971620790 +:10293C00CC0100316207086159018C01D1DFF471BF +:10294C006307716B27F21006C6D7D9BDFBC15006C1 +:10295C00FD6B2BC0D9BEFBC15007FD6B2BC0D7FD47 +:10296C005629F2D7C7711300711B20710303710232 +:10297C0005E0C15003FD6B2BC05013FD4702F0C1A5 +:10298C005005FD6B2BC0500FC1E0FD6B2BC0500AE6 +:10299C00FD47027103055008FD4702501FC1E0FDC1 +:1029AC006B2BC05012FD47025003FD7C2B625C0167 +:1029BC00D1DF03E2EF24F0FD7C2B629D2C3602F973 +:1029CC00C75008FD532BC05003C1FD6B2BC07102C7 +:1029DC0003711A20FD132BF427F2C6D75003FD7C8C +:1029EC002B625C01D1DD155014FD8828FDF12750B8 +:1029FC0014FD4702E0C15003FD6B2BC07113007135 +:102A0C001B207103035014FD4702F0C1E0FD6B2B3A +:102A1C00C0F0C15003FD6B2BC0D7C72004FBF8FFDF +:102A2C00CC02008D279C035010C150A4FDD102C0D4 +:102A3C00629D27D437DD04F2EDF02A8C037B275CF2 +:102A4C0008D1DD0F8D275C08D1DF05CC0210EF0318 +:102A5C00CC02208C037B275C04D1DD158D275C0414 +:102A6C00D1DF088C026C049C02EF068C026C089C73 +:102A7C00028FC8FB5CF3728D275C0C6162629FC88D +:102A8C00FB8FD4FB7CFF50FF5E029C02D1DD1F3418 +:102A9C00CCFB896E0299716207CC01003162070888 +:102AAC006159018C01D1DFF4716307716B278D279C +:102ABC005C40D1DD095002C15012FDB534C08D27E8 +:102ACC005C01D1DD08E0C15012FDB534C0717AFA59 +:102ADC008D275C41D1DD0C5A27BED827C15010FD83 +:102AEC005205C0F21004C6D7FD9827F2D7FDF12786 +:102AFC00F2D7C78FDCFB7617FD8828664FDCFBDF2F +:102B0C00F2F5DCFBF2C6D75064FD4702FD632C6284 +:102B1C0061FB71115CF171145C61DC70C15012FDD0 +:102B2C005205C0FD5B36CD3D03D7C7C1C1FBF8FFD5 +:102B3C00AC0ABB17C15002C18C0270C1506CFDA114 +:102B4C000310061004C6D7C7C1FBF8FFAC08C15070 +:102B5C0002C18B70C1506CFDF9021006C0C6D7C7FC +:102B6C008806166770C1C75084FD6B031004C6D766 +:102B7C00C716C75084FDD102C0C6D7C74A2004DE91 +:102B8C00045600EF0256014016F901DF048686EF69 +:102B9C000A4016F902DF045104610666318F1250A7 +:102BAC004CD633514CD6610A040A20BD2EC6D740F0 +:102BBC00C5FB51DC05CF1CFC0FD740C5FB33DC0536 +:102BCC00CF1CFC0BD740C5FB0BDC05CF1CFC07D77F +:102BDC0040C5FB0661D831320405CF1CFC03D7D5A8 +:102BEC00C5FBDD04E51CFCD7F51CFCD7D512F9DFC1 +:102BFC000471635CD7FD632C6261FB71715C7114B1 +:102C0C005C71775C61C831625C1771625C71745C79 +:102C1C0071115CF171745C61DC70C15012FD520574 +:102C2C00C0D7C7164010FCFFDD0C8F10FC9B17148F +:102C3C00CA0100F2EF07C75004FD532BC0C6D7C71B +:102C4C00164011FCFFDD078F11FC9BF2EF07C750FC +:102C5C0002FD532BC0C6D740C5FB0BDE02E2D7F2F8 +:102C6C00D77100010571785005713AD5713BD1715E +:102C7C003ADD713BD98F10055CFC9F1005CF5405D4 +:102C8C004AE5420571104205710042057148500534 +:102C9C007130500571205005CF530505CF52050AF0 +:102CAC007130510571205105713BD5717050058FF4 +:102CBC0011055CFC9F1105D7717850057108010551 +:102CCC00D77140F00071783002713AE6713BE271D5 +:102CDC003BEA713BEE8F10055CFC9F1005CF340274 +:102CEC004AE552FF711A52710A5271483002713022 +:102CFC00300271203002CF330205CF32020A71301C +:102D0C003102713BE6717030028F11055CFC9F1132 +:102D1C000571603002D7717830027148F000D7C766 +:102D2C0088061666614FDD0967614EDE0396EF017A +:102D3C00866672C6D7C7161714AA0412A943DD29D2 +:102D4C00AA0412A923FD7A4EC3AC02FD7A4E13C21B +:102D5C00BDD813FDB00FDE0C1714AA0212AA04037F +:102D6C00BA04EF051714A9BA04AC041231FF319E52 +:102D7C0003317F087208C6D77100F200304400BFDF +:102D8C00B601300188BF9001300984BF9E01BF9C01 +:102D9C0001BF9A01BF9801BF9601BF9401BF920178 +:102DAC00F53CFF30FE00BFBE01F6BFBC01BFB80151 +:102DBC0050EEBFBA01A1BFB201C918FE00F6BE6E3B +:102DCC00BE64BE6A7123047153078F14F931050771 +:102DDC00F5E3FBCB6CFF0071535D71425DD730EFB7 +:102DEC0000BFB401F6BFBA017108F200712304717F +:102DFC00530771435DD78F9AFBB09AFBD1DF7331C8 +:102E0C00D4D106715BD1E59CFBD59CFBDD347140C4 +:102E1C00C8FBD99BFBF1E734020023DD0625DD035B +:102E2C0025DF05F6BE66EF06D9E2FBF1BE66A09B78 +:102E3C00FB409BFB20DF06F59BFBB09CFBCF9AFB7A +:102E4C0019D7CF9AFB1E7148C8FBD5E4FBDF04F6FB +:102E5C00BE66D7D9E2FBF14266FFDD16D9E2FBF183 +:102E6C0012AE6643DE05A266FFEF03B266FFCF9A91 +:102E7C00FB03D7C7161714F6B9AA0412F62312319E +:102E8C00FF31AE03316FBA02C6D7C7C1FBF8FF8C56 +:102E9C00085080D612AB1413B9AB14AA0412A92390 +:102EAC0012D937FBF133BDD813FD1C0EBA02C0C6C4 +:102EBC00D731645D01D74012F902DF10F6BE64BE53 +:102ECC006EBE6ABFA4FBBFAAFBBFB0FB31545D153D +:102EDC0030A0FBFD7F2E30A6FBFD7F2E30ACFBFD22 +:102EEC007F2EED712F31745D0F71735D7108E8FBEE +:102EFC00F59EFBF59DFBEF6DD59DFBDF658F36FBDE +:102F0C009F9DFB409EFB1FDC1A7100E8FB4038FBC9 +:102F1C00FFDD22A09FFB8F38FB4F9FFBDE17F59E3A +:102F2C00FBEF12D99EFBF1A1605C1F9F9EFB710809 +:102F3C00E8FBF59FFBE99EFB093AFB70C130A0FB57 +:102F4C00FD962EC0E99EFB095AFB70C130A6FBFD15 +:102F5C00962EC0E99EFB097AFB70C130ACFBFD9646 +:102F6C002EC0B09DFB30A0FBFD412DF313BE6E3087 +:102F7C00A6FBFD412DF313BE6A30ACFBFD412DF3D6 +:102F8C0013BE64D7C736F00071F4DC297170F00001 +:102F9C00CE9D08CE9EC0CE9F80F594FFF593FFF595 +:102FAC0092FFE597FFE596FFE595FFE598FFCE9C30 +:102FBC007F7100BCFB711BE3712BE3711AE7712B62 +:102FCC00E7717A9D710A9E31929E02EFFA710B9E07 +:102FDC0071035E71135E71235EC6D7C731025E1E2C +:102FEC0071025E710A9E31929E02EFFA34EAFB3650 +:102FFC0092FF52078B99A5A792DFF9710B9EC6D74A +:10300C00C788061631125E1571125EC734B2FB30DA +:10301C0092FF1652078B99A5A792DFF9C6667367C4 +:10302C0018B2FBC6D7C771035E31145E1E71135EF6 +:10303C00710A9E31929E02EFFA3492FF36B2FB5225 +:10304C00078B99A5A792DFF9710B9E31245E137142 +:10305C00235E717B9E8FF2FB9E9A8FF3FB9E9B717E +:10306C007A9EC6D7CFBDFB5CCFBEFB5FCFDEFB5DD0 +:10307C00CF12FC36CF13FCC9E5E9FBD7C7CFBAFB9F +:10308C0011CFBBFB37CFE2FBFFF5E3FBF5E4FBF520 +:10309C00E5FBF5E6FB5600664C64DE08723836FB41 +:1030AC000086EFF3C6D7C788061617F1E73403007E +:1030BC002361E3EDE6332361F8ED9431B12361E351 +:1030CC00ED9B312561F8EDAA31B1240D0061D8EDED +:1030DC00E633240B0061F8EDCB312361F8ED1232AD +:1030EC002361F8EDDF312361F8EDAA33240600618A +:1030FC00F8ED7B32B12561D8ED973224000061F8F0 +:10310C00EDA4322361F8EDE6332361F8EDC433B15D +:10311C002361E3EDC7322361F8EDD8322361F8ED7A +:10312C00E9322361F8EDD8322361F8EDFA322361EC +:10313C00F8ED0B332361F8ED1A332361F8ED3C33D2 +:10314C002361F8ED48332361F8ED54332361F8ED36 +:10315C005D332402002361E3EDE63324020061F8C1 +:10316C00ED66332361F8ED73332561F8ED7F33247D +:10317C000A0061F8ED8B3324120061F8EDA53323BE +:10318C0061F8ED9633EDE933679FBCFBEDF6333018 +:10319C006B29FD023966736718BAFBEDF63340BF35 +:1031AC00FB6ADF1440C0FB68DF0E674C6CDF093034 +:1031BC002942FD0239713AD5679FC1FBEDF63367A1 +:1031CC00D1DD0630353DFD023934DAFB89616F996A +:1031DC00EDF633675C02D1DD0830F42AFD0239EFDD +:1031EC000C675C01D1DD0630F92AFD0239675C3CC5 +:1031FC00D1DD1030FE2AFD0239675C3C72667362C9 +:10320C0018BAFBEDF63367D1DD625C01D1DD053018 +:10321C000800EF01F6609F19FC675C02D1DD03E644 +:10322C00EF01F63419FC89616899675C04D1DD04FF +:10323C00E6A1EF01F63419FC89616899675C08D145 +:10324C00DD05302000EF01F63419FC8961689967BF +:10325C005C10D1DD05301000EF01F63419FC8961EA +:10326C006899675C20D161E8716019FCEDF633D484 +:10327C0032DF08679FE3FBA432EF0D4A3205DE080C +:10328C00E83267181FFDA432EDF633675C0F7266E7 +:10329C00736218BAFBEDF6334A3264DE1B4A320114 +:1032AC00DF0667D161F85701E832671836FBA432A4 +:1032BC004A320561C871725DEDF633675C7F70C18F +:1032CC0017F1243000FD0C30C0EDF633675C3F7015 +:1032DC00C117F1243000FD0C30C0EDF633675C07EC +:1032EC0070C117F1243000FD0C30C0EDF633675C73 +:1032FC001F70C117F1243000FD0C30C0EDF63367A0 +:10330C0070C117F1243000FD0C30C0EDF633CEAB9C +:10331C00AC710A9E31929E02EFFAD592FFDF0571D5 +:10332C000B9EEFED679E99710B9E9FF1FBEDF633B3 +:10333C0071225E675C7F9FF2FBEDF63371225E6754 +:10334C005C3F9FF3FBEDF633675C3F9FF4FBEDF6C0 +:10335C0033675C1F9FF5FBEDF63330003BFD023904 +:10336C00679FFAFBEDF63330BB3AFD0239679FFBE2 +:10337C00FBEF7730DD3AFD0239679FFEFBEF6B67A1 +:10338C005C01D161E8FDF744EF604A38C8DE08E81B +:10339C0038671868FAA438EF51679D38EF4C6731DD +:1033AC008E247000DD0D240200DF3F30FE08FD028C +:1033BC0039EF37FDF743EF32675C01D1DD05711250 +:1033CC0002EF03711302675C02D1DD05712202EF7B +:1033DC0003712302679FE9FBEF1000EF0D664C5B56 +:1033EC00DE07736718BAFBEF0100C6D7C716664C29 +:1033FC0030DC094C37DE05FDE72FEF6E664C02DF43 +:10340C001F8FBCFB5C03728F1BFC5C03318E316D18 +:10341C0008616A08128F1BFC5C80312A6162EF59CB +:10342C00664C3DDF0AAE90BF16FCF916FCEF4A66FF +:10343C004C3EDF05F917FCEF40664C4FDF05FD19DC +:10344C0045EF36664C61DF08E8380968FA72EF29F7 +:10345C00664C7FDF05FDA53DEF1F664C4EDF0B3143 +:10346C00645F045210EF12F2EF0F664C5BDC0452F7 +:10347C00FFEF06667309BAFB72C6D7C78806161724 +:10348C00F1241000240500DC07244C00DD17EF1795 +:10349C00717BFA17F104BAFB1489617F99717AFA7E +:1034AC0071325EEF02A438C6D7C7C1C1FBF8FF402A +:1034BC0012F903DD064012F904DF2F8C027309C2E6 +:1034CC00FB5E0AD1DF248C02318E04BAFB14896EA8 +:1034DC000A99716207CC0100316207086159018CAD +:1034EC0001D1DFF4716307716B271004C6D7CF1BB2 +:1034FC00FC03F519FCF51DFCF51FFCD7C788061657 +:10350C0017F1E734020025DD3D23DD1725DD1C23F3 +:10351C00DD0523DD2BEF3B71625E679F1EFCCD3D0D +:10352C0003EF2F675C839F1BFCEF27675C039F1DDA +:10353C00FC675C034C0261F8710260FD0C47EF12F2 +:10354C00679F1FFCEF0C6791DF08E0C15012FDB5BF +:10355C0034C0C6D7C71617F1E7240000DD2A23DDD7 +:10356C001E240300DD0724FB00DD24EF253112604F +:10357C0005308000EF01F6086F1CFC7208EF198F04 +:10358C0019FCF519FC72EF1071425F5235EF09F21C +:10359C00EF0666730918FC72C6D7C71617F1E72435 +:1035AC000000DD38241000DD1C23DD1C23DD30245D +:1035BC000E00DD18241100DD1B240F00DD12243059 +:1035CC0000DD15EF1EE2EF1D5202EF195204EF154C +:1035DC005206EF115205EF0D5207EF09F2EF0652AA +:1035EC0003EF0252FFC6D7C731445E3771435E8D7D +:1035FC003C9FC2FB8D3B9FE1FB36FCFCC7D83BFDDF +:10360C00B037618A70618AFDF537C0D840F1312F2F +:10361C00609D3F8D3A4B3FDD0A71525E8D3F9D3A66 +:10362C00CD3D034A3D05DE09306536FD0239CD3D01 +:10363C006BB43D7150F000CE300BCF170006CE317D +:10364C0006FDAD02717A30710BE3710BE7C6D78DB5 +:10365C003F9D3A8D3F9FC3FBD74012F903DF0640D5 +:10366C0012F904DF02F2D731545E0D71535E71739F +:10367C005E8D3F9F28FCEF3831645E2371635E7171 +:10368C00725ED51EFCDF05F529FCEF0B8F1EFC507E +:10369C0002D6A1609F29FC8F29FC9F28FCEF1131D9 +:1036AC00745E088F29FC9F28FCEF058D3F9F28FC3A +:1036BC008F28FC9FC3FBD928FCFDD836E928FC09D0 +:1036CC00DA2170C15013FD5205C0F2D7C7C1C1FB3E +:1036DC00F8FF8C02D1DF05F51EFCEF1A8C024C05AD +:1036EC00DE06CF1EFC02EF0E8C02318E1231FE0371 +:1036FC00311F609F1EFC8F2AFC4F1EFCDD29CC0164 +:10370C001F8F1EFC9F2AFCCC00008B4C08DE148BF8 +:10371C0073091A224F1EFCDC058B9C01EF056159C5 +:10372C0000EFE78C019D3E1004C6D7C7168B728C38 +:10373C0001614ADE1F8B728C02614ADE138C0172AE +:10374C008C02614ADE058C0172EF268C0272EF212D +:10375C008B72EF1D8B728C02614ADE048B72EF113F +:10376C008C01728C026142DE058C0172EF038C02BB +:10377C0072C6D7C716710AE7710BE37150F000CE11 +:10378C00300BCF170006669E31FDAD02717A307199 +:10379C000BE33182E302EFFA8D1F7158F000710BCD +:1037AC00E772C6D7C7C1C1FBF8FF8F12FC4E02DC13 +:1037BC0003F2EF318C024F13FCDC0452FFEF268C2A +:1037CC00022F12FC706131318D128F13FC2F12FC01 +:1037DC0070613133BDD813FD3E0EBB440001DC03D8 +:1037EC00F690BB8B721004C6D7C7C1FBF8FFAC08B0 +:1037FC0014A91489708B6128706131FD7A4E1344C1 +:10380C00030071FEDC23AC08148A04819A04AC0812 +:10381C00148A044C11DC10A9148B99AC0814CA023C +:10382C0000AC0814CA0310EF72AC0814CA0400AC44 +:10383C000814A914894DDE0AAC08148A02819A0274 +:10384C00EF12AC0814A914894D61D308AC08148A82 +:10385C0002919A02AC08148A03919A03D1DF3CAC12 +:10386C0008148A024C10DF10A91489318EA112ACF5 +:10387C000814A9146299EF17AC08148A024CF0DFF3 +:10388C000EA91489318EB112AC0814A9146299AC2A +:10389C000814CA0200AC0814CA0310C0C6D7EDED58 +:1038AC0038717BFAC7D44261F831045F2E71045F22 +:1038BC0071215F71035FD442DD05B442CEABAC71B4 +:1038CC007AFA5600664C0ADD1272F3311C7902FD4D +:1038DC00CEFC0061CAFD4C3986EFE9717AFAF2C66A +:1038EC00D7C75600664C0ADE0BF0317E12F6782CE8 +:1038FC00FC86EFF0C6D7C7C1C1FBF8FFCC01008C2A +:10390C00014C0ADE36717BFA8C01F0317E042CFC02 +:10391C0014A96168DF09AC02B9717AFAF2EF1D8C57 +:10392C0001F0317E12792CFC614902DF06717AFAC2 +:10393C00E2EF09717AFA615901EFC4E21004C6D7BB +:10394C00C72004FBF8FFF6422CFC61F8ED313A710C +:10395C007BFA9C038C034C0ADE3C8C03F0317E0416 +:10396C002CFC14A96168DF05717AFAEF29717AFAD7 +:10397C008C0372F3311C792CFCCEFC0061CA629C66 +:10398C0002D1DF0A8C03F0317E12E6782CFC717BBD +:10399C00FA615903EFBECC0200CC01018C02F0316C +:1039AC007E042CFC14A96168DD7B8C02F0317E1244 +:1039BC00792CFCE743DF688C014C0ADE628C01F049 +:1039CC00317E12792CFCE743DD50717BFA8C01F0CF +:1039DC00317E042CFC14A96168DF1B616901717BC9 +:1039EC00FA8C01F0317E12F6782CFC717AFA8C028A +:1039FC004E01DCE7EF2F8C01F0317E042CFC14A976 +:103A0C00128C02F0317E33782CFC8C01F0317E125A +:103A1C00E6782CFC615902717AFA615901EF9861D0 +:103A2C005902EDA83900F21004C6D7C72006FBF8DE +:103A3C00FF34FFFBC55006C150A8C15030FDF90240 +:103A4C001006D2DD1DA040FC4040FC08DE03E2EF76 +:103A5C005A34FAFB895CFC99FD003B7110C8FBF2EF +:103A6C00EF49F540FC8FFAFB5C01D1DD264012F9E1 +:103A7C0003DF205010C180FDB534C0C7361005716E +:103A8C00D4C6DE0F17C15006C150A8C15030FDF985 +:103A9C000210064012F901DD114012F905DD0B8F01 +:103AAC00FAFB5C02D161E8FD2E42F21006C6D7D9B2 +:103ABC00FBFBC15030FDD102C0629FFEFB7130CBCD +:103ACC00FB8FD3FB5C08D1DF06716307716B27F2A8 +:103ADC00D7D9FEFBC1D9FDFBC15030FD6B031004DF +:103AEC007130CBFB8FD3FB5C08D1DF0671630771A0 +:103AFC006B27F2D7C7200AFBF8FF500FC15030FDDF +:103B0C00D102C04A3702DF077110C8FBF2EF5F71B8 +:103B1C0018C8FBCC07004015F901DF05CC0802EFF3 +:103B2C0003CC0810CC09808FFAFB5C03D1DF087141 +:103B3C007AD5CC0607EF06717BD5CC062F17040679 +:103B4C0000C15004C150A0C15030FDA1031006C7E4 +:103B5C0036100571D4C6DE154012F903DF0F17C1FC +:103B6C005006C150A8C15030FDF9021006F2100ADF +:103B7C00C6D74012F902DF03F6BD44B016FDD516C8 +:103B8C00FD61E8EDA43CCF16FD048F12F9318FE7EF +:103B9C0023DD0B24020024030061C8EDA43C8F1428 +:103BAC00F931233F301B004644DF0AE0C15010FDC1 +:103BBC00B534C0EF1D3077014644DF165002C150BA +:103BCC0010FDB534C0F6464ADF088FDEFB5010D628 +:103BDC00BD4AF6464ADD37B64AE6464ADF30710240 +:103BEC005DEF2B301B004644DF13F6464CDF18E02C +:103BFC00C15010FDB534C0C94CE803EF0A30770151 +:103C0C00464461F871025DF6464C61E8B64C3134BD +:103C1C00600871335FF6BD44EF1431345F05F6BDB7 +:103C2C0044EF0BA644F6464461F8C944FFFF314209 +:103C3C0060194A4605DE16A4464A4605DF0FA4461F +:103C4C005004C15010FDB534C0EF02F4463144604D +:103C5C00194A4805DE16A4484A4805DF0FA4485007 +:103C6C0008C15010FDB534C0EF02F448D449DD034F +:103C7C00B449D7315260174A4705DE14A4474A4766 +:103C8C0005DF0DA4475010C1FDB534C0EF02F44759 +:103C9C004A470661F8CD4925D7C736100571D4DEE1 +:103CAC000730373AFD0239D24012F903DF1D3122B9 +:103CBC00070630262AFD023931445F0C71435F50F0 +:103CCC0080C15012FDB534C0FDDC3CFD073DC6D7AC +:103CDC008F1BFC5C01D1DD22D545FCDD04B045FC1D +:103CEC00D7CF45FC098D3E4F44FCDD0E8D3E9F44E5 +:103CFC00FC5040C15012FDB534C0D74012F903DD61 +:103D0C0004F6BD1AD7D5E6FBDF08F6461ADD19B660 +:103D1C001AD7D9E2FBF1461ADD0ED9E2FB12AD1A25 +:103D2C0043DE03A61AD7B61AD7C78FDAFB76F5DAB5 +:103D3C00FB5C10D161E871525F665C0FD1DD576698 +:103D4C005C01D1DD05F512F9EF4C665C02D1DD1199 +:103D5C00E0C15003FD6B2BC0711300711B2071036C +:103D6C0003665C04D1DD11711300711B20D51BFCA3 +:103D7C0061F8710303FDFA34665C08D161E87103E4 +:103D8C00035005FD47027102035003C1FD6B2BC0AC +:103D9C00711A20FD132BF2C6D7C72014FBF8FF4A6B +:103DAC003213DC0552FFED903E8F14F931150530BE +:103DBC000400EF0F8F14F9314505300500EF04D9DD +:103DCC0015F9F1609C018D2C9C028D209C038F02B7 +:103DDC00F99C048F03F99C058D4E9C068D269C073F +:103DEC0071345CE661301271045C61DC3119616222 +:103DFC00629C08CC09018F16F99C0AF171240461AC +:103E0C00DC9C0BAE6C609C0CAD1A609C0DAE6E60B5 +:103E1C009C0EAE6A609C0FAE64609C10F1715407EE +:103E2C0061DC9C11AE66609C123124600530400050 +:103E3C00EF01F6C131340405302000EF01F6C26108 +:103E4C006B08616A08C131546005300400EF01F65B +:103E5C00C2616B08616A08C131446004E6A1EF01DC +:103E6C00F6C2616B08616A08C131346003E6EF0188 +:103E7C00F6C2616B08616A9C13A432D832F1B107A7 +:103E8C00A11489721014C6D7C7FD83098F12F9319A +:103E9C008FE724000061F8ED624023DD1B2361F8FD +:103EAC00ED6C3F2361F8EDE83F2361F8ED314023E1 +:103EBC0061F8ED1441ED5F40D513F9DF2AF6464465 +:103ECC00DD05F518FDEF03A018FD4018FD65DC0AB3 +:103EDC00CF12F90571025FEDA241AD44440A0061B5 +:103EEC00D8EDA241E513F971325FF5DDFBFDC3049A +:103EFC0071535CFDAD234015F903DF0971025FF5C9 +:103F0C0012F9EDA241FD142640C7FB9BDE0971029C +:103F1C005FF512F9EDA241714A277140110571301C +:103F2C001105713A22715A2271501105FD7029D276 +:103F3C00DD0971025FF512F9EDA24171103500CF68 +:103F4C0037001D714012054013F901DF05F5E3FB45 +:103F5C00EF04CFE3FB03CF12F902FD5629EDA2418A +:103F6C00FD6D2CFDCD2C714A9DFDFA34FD8830F58C +:103F7C0037FF712BE0F513F971025FCBE43FEFCB08 +:103F8C00E6F6F0FDC304713BD47112027123028F6B +:103F9C0014F93105285004FD7C2B625C03318E3101 +:103FAC005D34C9FB896168995002FD7C2BD2DD061A +:103FBC007170C9FBEF047178C9FBFDAD23FD842D35 +:103FCC00710814F9CF12F9038FBCFB5C02D1DD0927 +:103FDC005080C15010FDB534C0EDA241FDA441315B +:103FEC00545F2FA450D450DD0831A4E00A31020CE8 +:103FFC0006712BE0FD1A4231A4E01731040C137149 +:10400C002BE05027C15005FD6B2BC0CF12F904716A +:10401C00025FFD0F428F14F931250731146003F54F +:10402C0012F9EDA241FDA44131020C14F0C150056E +:10403C00FD6B2BC05005FD4702FD1A42CF12F90350 +:10404C00FD0F428F14F931250731146003F512F975 +:10405C00EDA241F512F9CFE3FB03F5E4FBF5E6FB2A +:10406C0071525DF6426CFF61E8EDA241F6BD4A71FA +:10407C00035DF5FAFBFD003BFDEA2DFDC42CFD2292 +:10408C002D714B9D711302712302F5CAFBF5CBFB0D +:10409C00F5CCFBF5CDFB31245D02EFFACE3708CB26 +:1040AC00E4BFFFCBE6FFF1CED4FFCF370009714858 +:1040BC001205F6BEE0BEE2BED0716A27FDE829719A +:1040CC004307714B27714810057148110571381061 +:1040DC000571381105713302713B22715302715B0A +:1040EC00227158100571581105FD2C05CF12F905D8 +:1040FC0071325FF6BD44F50CFCF50EFCCF14FCFFE1 +:10410C00CF10FCFFCF11FCFFF513F9F518FD3112A0 +:10411C00602EFDAD23AD44440B0061C8E512F9D50A +:10412C0015F961E8FD2C058F14F9312511F50EFCFC +:10413C00F50CFC502EFD4702E513F9E512F9EF568C +:10414C00D428DF52FD2C05FD462371730171320416 +:10415C0071430271035C71525C31949E02EFFA71EF +:10416C002AE7CEA409F5F3003114600ED50CFCDF60 +:10417C00064010FCFF61F80061FDE5F300CEA408D9 +:10418C003114600671335FE512F9712BE78F14F966 +:10419C00312503F512F9C6D7D546FCDF1A310200DA +:1041AC00155003FD7C2B625C01D1DF07F512F97110 +:1041BC00025FD7E546FCD74046FCF0DF083104002F +:1041CC0041F546FCD74046FCC8DF0BF512F97102ED +:1041DC005FCF46FCF0D73102000A4046FCFFDD22DF +:1041EC00A046FCD7F0C15004FD6B2BC08FC9FB5C03 +:1041FC009F9FC9FB7110DAFB30353DFD0239CF466C +:10420C00FCF0D731045D06F512F971025FD77153DA +:10421C005FF450717207FDAD02717307D7FD9905FC +:10422C00F2D7C7200CFBF8FF8F00FCF0F9FFFBF373 +:10423C0003FD7A4E13BC048F02FCF0F901FCF3036E +:10424C00FD7A4E13BC028F04FCF0F903FCF303FD62 +:10425C007A4E13BBAC04BDD8F6BDDAAC04311EBD2E +:10426C00DCF6BDDEFDF10DADD8BDDCADDABDDEACEE +:10427C0002BDD8F6BDDAAC02311EDADCC3DADEC31D +:10428C00BDDCF6BDDEFDF10DC0BDDEC0BDDCADDEBE +:10429C00FD670FADD8BDDCADDABDDEABBDD8F6BD6C +:1042AC00DAAB311EDADCC3DADEC3BDDCF6BDDEFD13 +:1042BC00F10DC0BDDEC0BDDCADDEFD670FDADAADE1 +:1042CC00D8FD0746C3C58FE0FC5C3FF0317E04602F +:1042DC00FC14C2C0B9A0E0FCF6BC08BC0A9C078C5C +:1042EC00074C2EDD3E8FE0FC0E0770F161DC605C4C +:1042FC003FF0317E127960FCBDD8F6BDDA8C0773C5 +:10430C00092422318FBDDC70BDDEFDF10DAC08BD82 +:10431C00DCAC0AFD670FADDABC0AADD8BC0861593C +:10432C0007EFBCAC08BDD8AC0ABDDAC9DC0004F69A +:10433C00FDBB0EC9DCFFFFF6FDBC0FADD8BF5AFCB0 +:10434C00AF54FC425AFCDD12AF56FCBF58FCAF54C4 +:10435C00FCBF56FCAF5AFCBF54FCAF56FC4258FC99 +:10436C00DC50AF54FC4256FCDE48AF1AFD4254FC04 +:10437C00DE40401EFD16DC1F401EFDA0DE168F5CCD +:10438C00FC4F1EFDDE0EAF54FC225EFC4469106136 +:10439C00C8FDF743F51EFDAF54FC445146DC0BAF92 +:1043AC0054FC241027BF1CFDEF1130F82ABF1CFD54 +:1043BC00EF09401EFDFF61E8A01EFDAF58FC425600 +:1043CC00FCDC1BAF56FC4254FCDE13AF54FC421C0D +:1043DC00FDDE0BF55CFCAF54FCBF5EFCEF09405CF2 +:1043EC00FCFF61E8A05CFC100CC6D7717BFAC771AE +:1043FC000A9E31929E02EFFA8E949F4EFC8E969FEF +:10440C004FFC8E979F50FC8E989F51FC8E939F5221 +:10441C00FC8E929F53FC710B9E717AFA8F51FCFDAE +:10442C00D00F76FD854513BD56D505FCDF0AD506A4 +:10443C00FCDF05D507FCDD25F6B14656DF11C95664 +:10444C003722665C0391DF060A56181A5700961736 +:10445C00FDA84613FDC94431645F02EF5E5206921B +:10446C0092694EFC6848FCDFF6AD56BD54F852F329 +:10447C00311C7918F944FEFFDD41D852F1010418C2 +:10448C00F914A944FFFFDF04E6B9EF0BD852F10190 +:10449C000418F914A9A1B9A005FCD505FCDF1CA0D2 +:1044AC0006FCD506FCDF14A007FCD507FCDF0CCFFF +:1044BC0005FCFFCF06FCFFCF07FCFFC6D7C716D8FD +:1044CC0052F10744A800DC0571625FEF1CF647DD72 +:1044DC0018A4524A52A8DC0571625FEF0CF852F333 +:1044EC00311CF67818F9B7EFE4C6D7C756A896660C +:1044FC00F0317E12F6B17818F966D1DFF1F505FCD2 +:10450C00F506FCF507FCF45271635FC6D7C72004AF +:10451C00FBF8FFD432DF178D529FE1FC717BFA520E +:10452C000692926948FC68E2FCDFF6717AFA4A322C +:10453C0006DE0EE83209E2FC9C03A4328C0372EF17 +:10454C0034F9E1FCF3311C7918F9BB31725F058B3E +:10455C009C03EF128C019C03D5E1FCDF06CFE1FC40 +:10456C00A7EF03B0E1FC718071775F61DC61FB71D7 +:10457C00715F8C03721004C6D7C72008FBF8FF8F3D +:10458C0051FCFDD00F9C078F50FCFDD00F9C068F6B +:10459C004FFCFDD00F9C058F4EFCFDD00F9C048F63 +:1045AC0052FC9C038F53FC9C028C06318E011279B9 +:1045BC005222BB8C075C03D1DF098C064C0361C80B +:1045CC006179008C05318EB1610900BB313D12015E +:1045DC0003BB8B0E04708C011C00BB8F0AFC4E03BA +:1045EC00DC0E8C034F0AFCDC0B8C024F0BFCDC0446 +:1045FC00AB12EF03ABB1121008C6D7C7C3C120086A +:10460C00FBF8FFF661490A61F8614908DF07F734E6 +:10461C000000EDA446E6BC04F6BC06AC0ABC02AC39 +:10462C0008BBAC06614902AC0461F8614900DE28A4 +:10463C00AC04BDD8AC06BDDAE1FD760FADDABC0634 +:10464C00ADD8BC04ABBDD8AC02BDDAE1FD910FAD69 +:10465C00DABC02ADD8BBEFCAAC06BC02AC04BBAC36 +:10466C0008BDD8AC0ABDDAAC04BDDCAC06FDF40E5A +:10467C00AC04BDDCAC06FD670FE1FD910FADDABCFF +:10468C0006ADD8BC04AC06614902AC0461F86149C2 +:10469C0000DCC5AC0214AB12100CC6D7C7C1200489 +:1046AC00FBF8FF8F4BFCFDD00F9C034E04DF1CADC1 +:1046BC00544656DE07AD56265412EF40F64656DFEA +:1046CC00074654DD03E7EF34F7EF318C04318EB13C +:1046DC00128C03318E43DF18306D0126540656BB05 +:1046EC008C045C0391DF05AB041800BBAB12EF0C20 +:1046FC008C034E04DE0532A900EF01F71006C6D775 +:10470C00717BFA31026009F64658DD04B658EF7C2D +:10471C00710360717AFA4012F904DF07715307F4E0 +:10472C0022EF69D9E5FBF1E7240000DD0F23DD1A48 +:10473C0023DD1023DD5323DD2723DD38715307F4EC +:10474C0022EF49715207F422EF42D422DF07715253 +:10475C0007E422EF05715307F422C958FA00EF2C35 +:10476C00D422DF0B715207E422C958FA00EF1DF571 +:10477C00E5FBEF18D422DF0B715307E422C958FA7A +:10478C0000EF09CFE5FB02EF03FD9947D7D91DFCDC +:10479C00F1E7240000DD0923DD2123DD0923EF1BD4 +:1047AC00715307F422D7D422DF07715207E422EFAA +:1047BC0005715307F422C9582D01D7715207E42211 +:1047CC00D731425D01D771635DD9E3FBF1E724007A +:1047DC0000DD1223DD1923DD1123DD2623DD342337 +:1047EC00DD3923DD3FFD5948EF3DFD7A48EF38D9DF +:1047FC00E2FBC1AE6CFD2B2DC0F313BE6C71230418 +:10480C00EF25F0C1AE6CFD2B2DC0F313BE6C7123E4 +:10481C0004EF14F6BE6C712204EF0CCB6CFF00712C +:10482C002304EF03FDEE484012F905DD064012F9B2 +:10483C0001DF0671230471635D31645D0FF6BE64A4 +:10484C00BE6A31220402EF02F690BE6ED7CD244729 +:10485C00F45AAE6C317DBFEEFCFDC348D2DF0ED9ED +:10486C00E2FBC1AE6CFD2B2DC0F313BE6CD7FDC3A8 +:10487C0048D2DD0DCD2447F45AAE6C317DBFEEFC31 +:10488C00D7E85A096C225080D6BFEAFC22EEFCBD58 +:10489C00D8304700FD1C0EBFECFC30EAFCFD412D6E +:1048AC00F313BE6CB424D424DF0CCD2447A45A4A91 +:1048BC005A1F61C8F45AD740C5FB0BDC05712304A1 +:1048CC00F2D740C5FB0661D831225C11F0C1AE6C49 +:1048DC00FD2B2DC0F313BE6C712204EF03FDEE48CB +:1048EC00E2D771625DF0C1AE6CFD2B2DC0F313BE2F +:1048FC006CA0F0FC40F0FC40DC3DF5F0FCD9F1FC88 +:10490C00F1313F0420FD14D9F1FCF1BDD85008FD64 +:10491C006B0E087208E6D2DD040192DFFC89615847 +:10492C00D1DD05712204EF03712304A0F1FC40F1E9 +:08493C00FC2061C8F5F1FCD775 +:1049440061FC61FCC1C3C5C7520C929269D4FEC11B +:10495400DFF88EFD708EFCC1717AFA4012F903DF24 +:104964000630262AFD0239C09EFC609EFD34D4FE2A +:104974005206C0B9A5A592DFF9C6C4C2C061FC61E4 +:10498400DF520C929269D4FEC1DFF88EFD708EFC6A +:10499400C1C736410571A4C6DC65F5F4FC71485005 +:1049A400057160500531345E3671620771335E8F74 +:1049B400CAFB5FD2FBD1DF1B8FCBFB5FD3FBD1DF05 +:1049C400128FCCFB5FD4FBD1DF098FCDFB5FD5FB0E +:1049D400D1DD0C31620702EFFA716307716B277145 +:1049E400735FFD3130F432C73641057184C6DC0F84 +:1049F400C73641057194C6DC06717AFAED2B4BC7B4 +:104A04003641057184C6DE19F5F4FC71485005FD84 +:104A14003130C73641057194C6DC06717AFAED2B44 +:104A24004BC73641057194C6DE0FD5F4FCDD0A4050 +:104A3400F4FC0261E871605005717AFA8FF4FC317C +:104A44008FE7240000DD0823DD1323DD31EF5971E6 +:104A540040500571505005E5F4FCED2B4B8F40059B +:104A64009F0EF9715050058F0EF99F10F9D90EF968 +:104A7400FDF833629F0FF9CFF4FC02ED2B4BC736E0 +:104A840041057194C6DE1DC736410571C4C6DE06F4 +:104A9400CFF4FC03EF127148500571605005F5F432 +:104AA400FCED2B4BCFF4FC0440F4FC03DF138F0F1D +:104AB400F99F4005D90FF9C1D90EF9FD8734C0EF2C +:104AC400218F4005768F0EF901DC05D50EF9DF063E +:104AD40071605005EF51C7D90EF9FDB230C0715065 +:104AE4005005D910F9F1242900DD2C240400DD2718 +:104AF400242200DD22241100DD0C240100DD182411 +:104B04001E00DD13EF0C400EF960DF0BCF0EF961D0 +:104B1400EF05F432A00EF940F4FC03DF0AD90EF9D4 +:104B2400FDF833629F0FF9C09EFC609EFD34D4FEF5 +:104B34005206C0B9A5A592DFF961FCC1C7717AFA22 +:104B4400714AE5717BBD51405F0401D1DD06F61663 +:104B5400A747DFF2300400BF2401F6BF2A01300B5F +:104B64000BBF28010000000000000000510FBF2807 +:104B7400010000000000000000500FBF2801710A6E +:104B8400E671235DC6C061FCC1C5717AFAD436DD15 +:104B94000BEA34899E44A634B436EF33710AE63006 +:104BA4000400BF2401F6BF2A01300B0BBF2801000B +:104BB40000000000000000510FBF280100000000A9 +:104BC40000000000500FBF280171135D71235DC404 +:104BD400C061FC61EF520C929269D4FEC1DFF88E81 +:104BE400FD708EFCC12006FBF8FF71503002CEAB85 +:104BF400ACCC0100F6BC0231B2E20F617902F6617D +:104C04004902DFF371603002EF7E8E519B713BE20B +:104C14008B5C02D1DD1D8B5C08D1DF097150300241 +:104C2400CC0100EFCF8C0570FD6035629E50CC0145 +:104C340002EFC18B5C03D1DF408E509C0471503075 +:104C4400028C01D1DF0E8C0470FDA635629C05CC6C +:104C54000101EF318C014C02DF0671603002EF2854 +:104C6400CF34025A716030028C0470C18C0570FD1F +:104C74000835C0CF34024AEF0F8B5C01D1DD0671D9 +:104C8400603002EF03EDF84B1006C09EFC609EFD01 +:104C940034D4FE5206C0B9A5A592DFF961FCC1C3A4 +:104CA400C5C7520C929269D4FEC1DFF88EFD708E96 +:104CB400FCC1710A9E31929E02EFFA8FF4FB4F966B +:104CC400FFDF198FF5FB4F97FFDF118FF6FB4F982E +:104CD400FFDF095004C15011FDB534C0710B9EC0F3 +:104CE4009EFC609EFD34D4FE5206C0B9A5A592DF99 +:104CF400F9C6C4C2C061FCA44261FCC1C3C5C752A9 +:104D04000C929269D4FEC1DFF88EFD708EFCC1C195 +:104D1400FBF8FF8D1F9C018E31318EE7240600DDE8 +:104D24000823DD0E23DD22EF4E717AFA8C019D3CBF +:104D3400EF45717AFA4015F901DF068C019D3BEFCE +:104D44003651FF2E019D3BEF2E717AFA4014FCFF81 +:104D5400DF068C019D26EF058F14FC9D268FC8FB72 +:104D64005C01D1DF124012F903DD064012F904DFC1 +:104D740006306825FD02394031FF09DE05A031FF08 +:104D8400EF137158F00071425EA02BFC402BFC0322 +:104D940061C8F52BFC710BE3C0C09EFC609EFD3422 +:104DA400D4FE5206C0B9A5A592DFF9C6C4C2C0613B +:104DB400FC61FF520C929269D4FEC1DFF88EFD7043 +:104DC4008EFCC1717AFA8FFAFB5C03D1DD194012B3 +:104DD400F903DD064012F904DF0D36100571D4DE47 +:104DE4000630373AFD0239C09EFC609EFD34D4FE85 +:104DF4005206C0B9A5A592DFF961FC61FC61FC61B2 +:104E0400FC61FC61FC61FC61FC61FC61FC61FC61B6 +:104E1400FC61FC61FC61FC61FC61FC61FC61FC61A6 +:104E2400FC61FC61FC61FC61FC61FC61FC61FC6196 +:034E3400FC61FC22 +:0A4E380000060C12181E242A303662 +:104E420000000000C2FB0000000040FE0000000065 +:104E52007E3BF3358C22CD47022EBD2E0C47A53C5E +:104E62000C09943E01000000983AF82AFF005555BB +:024E7200555594 +:064E7400FF0000004700F2 +:084E7A00317503F7332312D751 +:024FF400013783 +:0A4FF60031353A34363A3534000004 :00000001FF  \ No newline at end of file diff --git a/branches/sim/bsr.lmf b/branches/sim/bsr.lmf index 1fee871..329d276 100644 Binary files a/branches/sim/bsr.lmf and b/branches/sim/bsr.lmf differ diff --git a/branches/sim/bsr_k0r.map b/branches/sim/bsr_k0r.map index 5014c67..2041ae9 100644 --- a/branches/sim/bsr_k0r.map +++ b/branches/sim/bsr_k0r.map @@ -1,7 +1,7 @@ -78K0R Linker W1.33 Date: 1 Jul 2011 Page: 1 +78K0R Linker W1.33 Date:14 Jul 2011 Page: 1 Command: -yc:\program files (x86)\nec electronics tools\dev -_msgoff - obsr.lmf ..\..\..\..\Program Files (x86)\NEC Electronics Tool @@ -14,7 +14,8 @@ Command: -yc:\program files (x86)\nec electronics tools\dev -_msgoff - .rel i2c_mcu.rel i2c_twl.rel led.rel rtc.rel vreg_ctr.rel vre g_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 + rel ini_VECT.rel task_status.rel led_cam.rel led_pow.rel hal. + rel Para-file: Out-file: bsr.lmf Map-file: bsr_k0r.map @@ -23,9 +24,9 @@ Direc-file:bsr_mcu.dr *** Link information *** - 68 output segment(s) - 3D6BH byte(s) real data - 5798 symbol(s) defined + 69 output segment(s) + 3DDDH byte(s) real data + 6117 symbol(s) defined *** Memory map *** @@ -57,6 +58,8 @@ Direc-file:bsr_mcu.dr LDR_CNSL 00002H 00000H CSEG PAGE64KP LDR_CNSL task_status 00002H 00000H + LDR_CNSL 00002H 00000H CSEG PAGE64KP + LDR_CNSL hal 00002H 00000H ??NMIROM 00002H 00002H CSEG * gap * 00004H 0000CH @@VECT10 00010H 00004H CSEG AT @@ -98,55 +101,57 @@ Direc-file:bsr_mcu.dr 000C4H 00000H LDR_CODL task_status 000C4H 00000H + LDR_CODL hal 000C4H 00000H ?CSEGSI 000C4H 0000AH CSEG ?OCDSTAD 000CEH 0000AH CSEG - LDR_CODE 000D8H 008B4H CSEG - LDR_CODE loader 000D8H 00195H - LDR_CODE main 0026DH 00042H - LDR_CODE WDT 002AFH 00000H - LDR_CODE i2c_mcu 002AFH 002F0H + LDR_CODE 000D8H 00979H CSEG + LDR_CODE loader 000D8H 00193H + LDR_CODE main 0026BH 00042H + LDR_CODE WDT 002ADH 00000H + LDR_CODE i2c_mcu 002ADH 002ECH LDR_CODE self_flash - 0059FH 00373H + 00599H 00373H LDR_CODE task_debug - 00912H 00000H + 0090CH 00000H LDR_CODE task_status - 00912H 0007AH - FSL_CODE 0098CH 00322H CSEG + 0090CH 00077H + LDR_CODE hal 00983H 000CEH + FSL_CODE 00A51H 00322H CSEG FSL_CODE fsl_block_cmd - 0098CH 0002BH + 00A51H 0002BH FSL_CODE fsl_block_check - 009B7H 00013H + 00A7CH 00013H FSL_CODE fsl_common - 009CAH 0014FH + 00A8FH 0014FH FSL_CODE fsl_reset - 00B19H 00001H + 00BDEH 00001H FSL_CODE fsl_si_ibf - 00B1AH 00064H + 00BDFH 00064H FSL_CODE fsl_phySwap - 00B7EH 0004DH + 00C43H 0004DH FSL_CODE fsl_si_common - 00BCBH 00061H - FSL_CODE fsl_swap 00C2CH 00030H + 00C90H 00061H + FSL_CODE fsl_swap 00CF1H 00030H FSL_CODE fsl_write - 00C5CH 00052H - @@LCODE 00CAEH 00277H CSEG - @@LCODE @cstart 00CAEH 0006DH - @@LCODE @imul 00D1BH 00011H - @@LCODE @lumul 00D2CH 0002BH - @@LCODE @isdiv 00D57H 00022H - @@LCODE @iudiv 00D79H 0002DH - @@LCODE @isrem 00DA6H 00021H - @@LCODE @iurem 00DC7H 0002FH - @@LCODE @lsdiv 00DF6H 00039H - @@LCODE @ludiv 00E2FH 0003FH - @@LCODE @divuw 00E6EH 00034H - @@LCODE @ladd 00EA2H 0000FH - @@LCODE @llsh 00EB1H 0001BH - @@LCODE @lursh 00ECCH 0001FH - @@LCODE @iscmp 00EEBH 0000CH - @@LCODE @lband 00EF7H 00014H - @@LCODE @bcdtob 00F0BH 0001AH -* gap * 00F25H 000D1H + 00D21H 00052H + @@LCODE 00D73H 00277H CSEG + @@LCODE @cstart 00D73H 0006DH + @@LCODE @imul 00DE0H 00011H + @@LCODE @lumul 00DF1H 0002BH + @@LCODE @isdiv 00E1CH 00022H + @@LCODE @iudiv 00E3EH 0002DH + @@LCODE @isrem 00E6BH 00021H + @@LCODE @iurem 00E8CH 0002FH + @@LCODE @lsdiv 00EBBH 00039H + @@LCODE @ludiv 00EF4H 0003FH + @@LCODE @divuw 00F33H 00034H + @@LCODE @ladd 00F67H 0000FH + @@LCODE @llsh 00F76H 0001BH + @@LCODE @lursh 00F91H 0001FH + @@LCODE @iscmp 00FB0H 0000CH + @@LCODE @lband 00FBCH 00014H + @@LCODE @bcdtob 00FD0H 0001AH +* gap * 00FEAH 0000CH MGC_LOAD 00FF6H 0000AH CSEG AT MGC_LOAD magic 00FF6H 0000AH @@ -188,250 +193,257 @@ Direc-file:bsr_mcu.dr 0226CH 00000H @@CNST led_cam 0226CH 00000H @@CNST led_pow 0226CH 00020H - ROM_CODE 0228CH 0272AH CSEG - ROM_CODE pm 0228CH 00A16H - ROM_CODE i2c_ctr 02CA2H 00060H - ROM_CODE i2c_twl 02D02H 0005EH - ROM_CODE led 02D60H 00265H - ROM_CODE rtc 02FC5H 000E0H - ROM_CODE vreg_ctr 030A5H 004A0H - ROM_CODE vreg_twl 03545H 000FAH - ROM_CODE adc 0363FH 002D4H - ROM_CODE renge 03913H 00190H - ROM_CODE accero 03AA3H 00148H - ROM_CODE sw 03BEBH 00176H + @@CNST hal 0228CH 00000H + ROM_CODE 0228CH 026B8H CSEG + ROM_CODE pm 0228CH 009E1H + ROM_CODE i2c_ctr 02C6DH 00060H + ROM_CODE i2c_twl 02CCDH 0005EH + ROM_CODE led 02D2BH 00265H + ROM_CODE rtc 02F90H 000E0H + ROM_CODE vreg_ctr 03070H 0048AH + ROM_CODE vreg_twl 034FAH 000F9H + ROM_CODE adc 035F3H 002B7H + ROM_CODE renge 038AAH 0018DH + ROM_CODE accero 03A37H 00147H + ROM_CODE sw 03B7EH 00127H ROM_CODE task_misc - 03D61H 00177H - ROM_CODE task_sys 03ED8H 0037FH + 03CA5H 001EFH + ROM_CODE task_sys 03E94H 0039AH ROM_CODE pedo_alg_thre_det2 - 04257H 00502H - ROM_CODE led_cam 04759H 000DBH - ROM_CODE led_pow 04834H 00182H - @@BASE 049B6H 004D6H CSEG BASE - @@BASE loader 049B6H 00000H - @@BASE pm 049B6H 0003FH - @@BASE i2c_ctr 049F5H 0019DH - @@BASE main 04B92H 00000H - @@BASE magic 04B92H 00000H - @@BASE WDT 04B92H 00000H - @@BASE i2c_mcu 04B92H 0009CH - @@BASE i2c_twl 04C2EH 000CBH - @@BASE led 04CF9H 00000H - @@BASE rtc 04CF9H 0005EH - @@BASE vreg_ctr 04D57H 00000H - @@BASE vreg_twl 04D57H 00000H - @@BASE adc 04D57H 000B3H - @@BASE renge 04E0AH 00000H - @@BASE accero 04E0AH 0004AH + 0422EH 004DEH + ROM_CODE led_cam 0470CH 000C1H + ROM_CODE led_pow 047CDH 00177H + @@BASE 04944H 004F3H CSEG BASE + @@BASE loader 04944H 00000H + @@BASE pm 04944H 0003FH + @@BASE i2c_ctr 04983H 001BCH + @@BASE main 04B3FH 00000H + @@BASE magic 04B3FH 00000H + @@BASE WDT 04B3FH 00000H + @@BASE i2c_mcu 04B3FH 00098H + @@BASE i2c_twl 04BD7H 000CBH + @@BASE led 04CA2H 00000H + @@BASE rtc 04CA2H 0005DH + @@BASE vreg_ctr 04CFFH 00000H + @@BASE vreg_twl 04CFFH 00000H + @@BASE adc 04CFFH 000B6H + @@BASE renge 04DB5H 00000H + @@BASE accero 04DB5H 0004AH @@BASE self_flash - 04E54H 00000H - @@BASE sw 04E54H 00000H + 04DFFH 00000H + @@BASE sw 04DFFH 00000H @@BASE task_debug - 04E54H 00000H + 04DFFH 00000H @@BASE task_misc - 04E54H 00000H - @@BASE task_sys 04E54H 00000H + 04DFFH 00000H + @@BASE task_sys 04DFFH 00000H @@BASE pedo_alg_thre_det2 - 04E54H 00000H - @@BASE ini_VECT 04E54H 00038H + 04DFFH 00000H + @@BASE ini_VECT 04DFFH 00038H @@BASE task_status - 04E8CH 00000H - @@BASE led_cam 04E8CH 00000H - @@BASE led_pow 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL @cstart 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL pm 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL i2c_ctr 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL i2c_twl 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL led 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL rtc 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL vreg_ctr 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL vreg_twl 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL adc 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL renge 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL accero 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL sw 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP + 04E37H 00000H + @@BASE led_cam 04E37H 00000H + @@BASE led_pow 04E37H 00000H + @@BASE hal 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL @cstart 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL pm 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL i2c_ctr 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL i2c_twl 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL led 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL rtc 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL vreg_ctr 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL vreg_twl 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL adc 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL renge 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL accero 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL sw 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP @@CNSTL task_misc - 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL task_sys 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP + 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL task_sys 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP @@CNSTL pedo_alg_thre_det2 - 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL ini_VECT 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL led_cam 04E8CH 00000H - @@CNSTL 04E8CH 00000H CSEG PAGE64KP - @@CNSTL led_pow 04E8CH 00000H - @@CNSTL 04E8CH 0000AH CSEG PAGE64KP - @@CNSTL @bcdtob 04E8CH 0000AH - @@R_INIT 04E96H 00036H CSEG UNIT64KP - @@R_INIT @cstart 04E96H 00000H - @@R_INIT loader 04E96H 00000H - @@R_INIT pm 04E96H 00002H - @@R_INIT i2c_ctr 04E98H 00002H - @@R_INIT main 04E9AH 00000H - @@R_INIT magic 04E9AH 00000H - @@R_INIT WDT 04E9AH 00000H - @@R_INIT i2c_mcu 04E9AH 00000H - @@R_INIT i2c_twl 04E9AH 00000H - @@R_INIT led 04E9AH 00000H - @@R_INIT rtc 04E9AH 00000H - @@R_INIT vreg_ctr 04E9AH 00000H - @@R_INIT vreg_twl 04E9AH 00000H - @@R_INIT adc 04E9AH 0000CH - @@R_INIT renge 04EA6H 00014H - @@R_INIT accero 04EBAH 00000H - @@R_INIT self_flash - 04EBAH 00000H - @@R_INIT sw 04EBAH 00002H - @@R_INIT task_debug - 04EBCH 00000H - @@R_INIT task_misc - 04EBCH 00000H - @@R_INIT task_sys 04EBCH 00002H - @@R_INIT pedo_alg_thre_det2 - 04EBEH 00006H - @@R_INIT ini_VECT 04EC4H 00000H - @@R_INIT task_status - 04EC4H 00000H - @@R_INIT led_cam 04EC4H 00002H - @@R_INIT led_pow 04EC6H 00006H - @@R_INIT @rom 04ECCH 00000H - @@R_INIS 04ECCH 00000H CSEG UNIT64KP - @@R_INIS @cstart 04ECCH 00000H - @@R_INIS loader 04ECCH 00000H - @@R_INIS pm 04ECCH 00000H - @@R_INIS i2c_ctr 04ECCH 00000H - @@R_INIS main 04ECCH 00000H - @@R_INIS magic 04ECCH 00000H - @@R_INIS WDT 04ECCH 00000H - @@R_INIS i2c_mcu 04ECCH 00000H - @@R_INIS i2c_twl 04ECCH 00000H - @@R_INIS led 04ECCH 00000H - @@R_INIS rtc 04ECCH 00000H - @@R_INIS vreg_ctr 04ECCH 00000H - @@R_INIS vreg_twl 04ECCH 00000H - @@R_INIS adc 04ECCH 00000H - @@R_INIS renge 04ECCH 00000H - @@R_INIS accero 04ECCH 00000H - @@R_INIS self_flash - 04ECCH 00000H - @@R_INIS sw 04ECCH 00000H - @@R_INIS task_debug - 04ECCH 00000H - @@R_INIS task_misc - 04ECCH 00000H - @@R_INIS task_sys 04ECCH 00000H - @@R_INIS pedo_alg_thre_det2 - 04ECCH 00000H - @@R_INIS ini_VECT 04ECCH 00000H - @@R_INIS task_status - 04ECCH 00000H - @@R_INIS led_cam 04ECCH 00000H - @@R_INIS led_pow 04ECCH 00000H - @@R_INIS @rom 04ECCH 00000H - @@CALT 04ECCH 00000H CSEG - @@CALT @cstart 04ECCH 00000H - @@CALT loader 04ECCH 00000H - @@CALT pm 04ECCH 00000H - @@CALT i2c_ctr 04ECCH 00000H - @@CALT main 04ECCH 00000H - @@CALT magic 04ECCH 00000H - @@CALT WDT 04ECCH 00000H - @@CALT i2c_mcu 04ECCH 00000H - @@CALT i2c_twl 04ECCH 00000H - @@CALT led 04ECCH 00000H - @@CALT rtc 04ECCH 00000H - @@CALT vreg_ctr 04ECCH 00000H - @@CALT vreg_twl 04ECCH 00000H - @@CALT adc 04ECCH 00000H - @@CALT renge 04ECCH 00000H - @@CALT accero 04ECCH 00000H + 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL ini_VECT 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL led_cam 04E37H 00000H + @@CNSTL 04E37H 00000H CSEG PAGE64KP + @@CNSTL led_pow 04E37H 00000H + @@CALT 04E37H 00000H CSEG + @@CALT @cstart 04E37H 00000H + @@CALT loader 04E37H 00000H + @@CALT pm 04E37H 00000H + @@CALT i2c_ctr 04E37H 00000H + @@CALT main 04E37H 00000H + @@CALT magic 04E37H 00000H + @@CALT WDT 04E37H 00000H + @@CALT i2c_mcu 04E37H 00000H + @@CALT i2c_twl 04E37H 00000H + @@CALT led 04E37H 00000H + @@CALT rtc 04E37H 00000H + @@CALT vreg_ctr 04E37H 00000H + @@CALT vreg_twl 04E37H 00000H + @@CALT adc 04E37H 00000H + @@CALT renge 04E37H 00000H + @@CALT accero 04E37H 00000H @@CALT self_flash - 04ECCH 00000H - @@CALT sw 04ECCH 00000H + 04E37H 00000H + @@CALT sw 04E37H 00000H @@CALT task_debug - 04ECCH 00000H + 04E37H 00000H @@CALT task_misc - 04ECCH 00000H - @@CALT task_sys 04ECCH 00000H + 04E37H 00000H + @@CALT task_sys 04E37H 00000H @@CALT pedo_alg_thre_det2 - 04ECCH 00000H - @@CALT ini_VECT 04ECCH 00000H + 04E37H 00000H + @@CALT ini_VECT 04E37H 00000H @@CALT task_status - 04ECCH 00000H - @@CALT led_cam 04ECCH 00000H - @@CALT led_pow 04ECCH 00000H - @@RLINIT 04ECCH 00000H CSEG UNIT64KP - @@RLINIT loader 04ECCH 00000H - @@RLINIT pm 04ECCH 00000H - @@RLINIT i2c_ctr 04ECCH 00000H - @@RLINIT main 04ECCH 00000H - @@RLINIT magic 04ECCH 00000H - @@RLINIT WDT 04ECCH 00000H - @@RLINIT i2c_mcu 04ECCH 00000H - @@RLINIT i2c_twl 04ECCH 00000H - @@RLINIT led 04ECCH 00000H - @@RLINIT rtc 04ECCH 00000H - @@RLINIT vreg_ctr 04ECCH 00000H - @@RLINIT vreg_twl 04ECCH 00000H - @@RLINIT adc 04ECCH 00000H - @@RLINIT renge 04ECCH 00000H - @@RLINIT accero 04ECCH 00000H + 04E37H 00000H + @@CALT led_cam 04E37H 00000H + @@CALT led_pow 04E37H 00000H + @@CALT hal 04E37H 00000H + @@RLINIT 04E37H 00000H CSEG UNIT64KP + @@RLINIT loader 04E37H 00000H + @@RLINIT pm 04E37H 00000H + @@RLINIT i2c_ctr 04E37H 00000H + @@RLINIT main 04E37H 00000H + @@RLINIT magic 04E37H 00000H + @@RLINIT WDT 04E37H 00000H + @@RLINIT i2c_mcu 04E37H 00000H + @@RLINIT i2c_twl 04E37H 00000H + @@RLINIT led 04E37H 00000H + @@RLINIT rtc 04E37H 00000H + @@RLINIT vreg_ctr 04E37H 00000H + @@RLINIT vreg_twl 04E37H 00000H + @@RLINIT adc 04E37H 00000H + @@RLINIT renge 04E37H 00000H + @@RLINIT accero 04E37H 00000H @@RLINIT self_flash - 04ECCH 00000H - @@RLINIT sw 04ECCH 00000H + 04E37H 00000H + @@RLINIT sw 04E37H 00000H @@RLINIT task_debug - 04ECCH 00000H + 04E37H 00000H @@RLINIT task_misc - 04ECCH 00000H - @@RLINIT task_sys 04ECCH 00000H + 04E37H 00000H + @@RLINIT task_sys 04E37H 00000H @@RLINIT pedo_alg_thre_det2 - 04ECCH 00000H - @@RLINIT ini_VECT 04ECCH 00000H + 04E37H 00000H + @@RLINIT ini_VECT 04E37H 00000H @@RLINIT task_status - 04ECCH 00000H - @@RLINIT led_cam 04ECCH 00000H - @@RLINIT led_pow 04ECCH 00000H - @@RLINIT @rom 04ECCH 00000H - @@CODEL 04ECCH 00000H CSEG - @@CODEL pm 04ECCH 00000H - @@CODEL i2c_ctr 04ECCH 00000H - @@CODEL magic 04ECCH 00000H - @@CODEL i2c_twl 04ECCH 00000H - @@CODEL led 04ECCH 00000H - @@CODEL rtc 04ECCH 00000H - @@CODEL vreg_ctr 04ECCH 00000H - @@CODEL vreg_twl 04ECCH 00000H - @@CODEL adc 04ECCH 00000H - @@CODEL renge 04ECCH 00000H - @@CODEL accero 04ECCH 00000H - @@CODEL sw 04ECCH 00000H + 04E37H 00000H + @@RLINIT led_cam 04E37H 00000H + @@RLINIT led_pow 04E37H 00000H + @@RLINIT hal 04E37H 00000H + @@RLINIT @rom 04E37H 00000H + @@CODEL 04E37H 00000H CSEG + @@CODEL pm 04E37H 00000H + @@CODEL i2c_ctr 04E37H 00000H + @@CODEL magic 04E37H 00000H + @@CODEL i2c_twl 04E37H 00000H + @@CODEL led 04E37H 00000H + @@CODEL rtc 04E37H 00000H + @@CODEL vreg_ctr 04E37H 00000H + @@CODEL vreg_twl 04E37H 00000H + @@CODEL adc 04E37H 00000H + @@CODEL renge 04E37H 00000H + @@CODEL accero 04E37H 00000H + @@CODEL sw 04E37H 00000H @@CODEL task_misc - 04ECCH 00000H - @@CODEL task_sys 04ECCH 00000H + 04E37H 00000H + @@CODEL task_sys 04E37H 00000H @@CODEL pedo_alg_thre_det2 - 04ECCH 00000H - @@CODEL ini_VECT 04ECCH 00000H - @@CODEL led_cam 04ECCH 00000H - @@CODEL led_pow 04ECCH 00000H - @@LCODEL 04ECCH 00008H CSEG - @@LCODEL abs 04ECCH 00008H -* gap * 04ED4H 00120H + 04E37H 00000H + @@CODEL ini_VECT 04E37H 00000H + @@CODEL led_cam 04E37H 00000H + @@CODEL led_pow 04E37H 00000H +* gap * 04E37H 00001H + @@CNSTL 04E38H 0000AH CSEG PAGE64KP + @@CNSTL @bcdtob 04E38H 0000AH + @@R_INIT 04E42H 00032H CSEG UNIT64KP + @@R_INIT @cstart 04E42H 00000H + @@R_INIT loader 04E42H 00000H + @@R_INIT pm 04E42H 00002H + @@R_INIT i2c_ctr 04E44H 00002H + @@R_INIT main 04E46H 00000H + @@R_INIT magic 04E46H 00000H + @@R_INIT WDT 04E46H 00000H + @@R_INIT i2c_mcu 04E46H 00000H + @@R_INIT i2c_twl 04E46H 00000H + @@R_INIT led 04E46H 00000H + @@R_INIT rtc 04E46H 00000H + @@R_INIT vreg_ctr 04E46H 00000H + @@R_INIT vreg_twl 04E46H 00000H + @@R_INIT adc 04E46H 0000CH + @@R_INIT renge 04E52H 00014H + @@R_INIT accero 04E66H 00000H + @@R_INIT self_flash + 04E66H 00000H + @@R_INIT sw 04E66H 00002H + @@R_INIT task_debug + 04E68H 00000H + @@R_INIT task_misc + 04E68H 00000H + @@R_INIT task_sys 04E68H 00002H + @@R_INIT pedo_alg_thre_det2 + 04E6AH 00006H + @@R_INIT ini_VECT 04E70H 00000H + @@R_INIT task_status + 04E70H 00000H + @@R_INIT led_cam 04E70H 00000H + @@R_INIT led_pow 04E70H 00004H + @@R_INIT hal 04E74H 00000H + @@R_INIT @rom 04E74H 00000H + @@R_INIS 04E74H 00006H CSEG UNIT64KP + @@R_INIS @cstart 04E74H 00000H + @@R_INIS loader 04E74H 00000H + @@R_INIS pm 04E74H 00002H + @@R_INIS i2c_ctr 04E76H 00000H + @@R_INIS main 04E76H 00000H + @@R_INIS magic 04E76H 00000H + @@R_INIS WDT 04E76H 00000H + @@R_INIS i2c_mcu 04E76H 00000H + @@R_INIS i2c_twl 04E76H 00000H + @@R_INIS led 04E76H 00000H + @@R_INIS rtc 04E76H 00000H + @@R_INIS vreg_ctr 04E76H 00000H + @@R_INIS vreg_twl 04E76H 00000H + @@R_INIS adc 04E76H 00000H + @@R_INIS renge 04E76H 00000H + @@R_INIS accero 04E76H 00000H + @@R_INIS self_flash + 04E76H 00000H + @@R_INIS sw 04E76H 00000H + @@R_INIS task_debug + 04E76H 00000H + @@R_INIS task_misc + 04E76H 00000H + @@R_INIS task_sys 04E76H 00000H + @@R_INIS pedo_alg_thre_det2 + 04E76H 00000H + @@R_INIS ini_VECT 04E76H 00000H + @@R_INIS task_status + 04E76H 00000H + @@R_INIS led_cam 04E76H 00002H + @@R_INIS led_pow 04E78H 00002H + @@R_INIS hal 04E7AH 00000H + @@R_INIS @rom 04E7AH 00000H + @@LCODEL 04E7AH 00008H CSEG + @@LCODEL abs 04E7AH 00008H +* gap * 04E82H 00172H MGC_VER 04FF4H 00002H CSEG AT MGC_VER magic 04FF4H 00002H MGC_TAIL 04FF6H 0000AH CSEG AT @@ -441,244 +453,251 @@ Direc-file:bsr_mcu.dr BASE ADDRESS=FF900H SIZE=00500H OUTPUT INPUT INPUT BASE SIZE SEGMENT SEGMENT MODULE ADDRESS - @@DATA FF900H 00424H DSEG BASEP + @@DATA FF900H 003F2H DSEG BASEP @@DATA @cstart FF900H 00002H @@DATA loader FF902H 00000H - @@DATA pm FF902H 00018H - @@DATA i2c_ctr FF91AH 00006H - @@DATA main FF920H 0021EH - @@DATA magic FFB3EH 00000H - @@DATA WDT FFB3EH 00000H - @@DATA i2c_mcu FFB3EH 0000AH - @@DATA i2c_twl FFB48H 00000H - @@DATA led FFB48H 0007CH - @@DATA rtc FFBC4H 00008H - @@DATA vreg_ctr FFBCCH 0005EH - @@DATA vreg_twl FFC2AH 00010H - @@DATA adc FFC3AH 0000CH - @@DATA renge FFC46H 00016H - @@DATA accero FFC5CH 00002H + @@DATA pm FF902H 0000CH + @@DATA i2c_ctr FF90EH 00004H + @@DATA main FF912H 0021EH + @@DATA magic FFB30H 00000H + @@DATA WDT FFB30H 00000H + @@DATA i2c_mcu FFB30H 00006H + @@DATA i2c_twl FFB36H 00000H + @@DATA led FFB36H 0007CH + @@DATA rtc FFBB2H 00008H + @@DATA vreg_ctr FFBBAH 0005EH + @@DATA vreg_twl FFC18H 00010H + @@DATA adc FFC28H 00004H + @@DATA renge FFC2CH 00014H + @@DATA accero FFC40H 00002H @@DATA self_flash - FFC5EH 00002H - @@DATA sw FFC60H 0000AH + FFC42H 00002H + @@DATA sw FFC44H 00000H @@DATA task_debug - FFC6AH 00000H + FFC44H 00000H @@DATA task_misc - FFC6AH 00004H - @@DATA task_sys FFC6EH 00002H + FFC44H 00002H + @@DATA task_sys FFC46H 00002H @@DATA pedo_alg_thre_det2 - FFC70H 000A6H - @@DATA ini_VECT FFD16H 00000H + FFC48H 000A0H + @@DATA ini_VECT FFCE8H 00000H @@DATA task_status - FFD16H 00002H - @@DATA led_cam FFD18H 00002H - @@DATA led_pow FFD1AH 0000AH - @@DATA @rom FFD24H 00000H - @@INIT FFD24H 00036H DSEG BASEP - @@INIT @cstart FFD24H 00000H - @@INIT loader FFD24H 00000H - @@INIT pm FFD24H 00002H - @@INIT i2c_ctr FFD26H 00002H - @@INIT main FFD28H 00000H - @@INIT magic FFD28H 00000H - @@INIT WDT FFD28H 00000H - @@INIT i2c_mcu FFD28H 00000H - @@INIT i2c_twl FFD28H 00000H - @@INIT led FFD28H 00000H - @@INIT rtc FFD28H 00000H - @@INIT vreg_ctr FFD28H 00000H - @@INIT vreg_twl FFD28H 00000H - @@INIT adc FFD28H 0000CH - @@INIT renge FFD34H 00014H - @@INIT accero FFD48H 00000H + FFCE8H 00002H + @@DATA led_cam FFCEAH 00000H + @@DATA led_pow FFCEAH 00008H + @@DATA hal FFCF2H 00000H + @@DATA @rom FFCF2H 00000H + @@INIT FFCF2H 00032H DSEG BASEP + @@INIT @cstart FFCF2H 00000H + @@INIT loader FFCF2H 00000H + @@INIT pm FFCF2H 00002H + @@INIT i2c_ctr FFCF4H 00002H + @@INIT main FFCF6H 00000H + @@INIT magic FFCF6H 00000H + @@INIT WDT FFCF6H 00000H + @@INIT i2c_mcu FFCF6H 00000H + @@INIT i2c_twl FFCF6H 00000H + @@INIT led FFCF6H 00000H + @@INIT rtc FFCF6H 00000H + @@INIT vreg_ctr FFCF6H 00000H + @@INIT vreg_twl FFCF6H 00000H + @@INIT adc FFCF6H 0000CH + @@INIT renge FFD02H 00014H + @@INIT accero FFD16H 00000H @@INIT self_flash - FFD48H 00000H - @@INIT sw FFD48H 00002H + FFD16H 00000H + @@INIT sw FFD16H 00002H @@INIT task_debug - FFD4AH 00000H + FFD18H 00000H @@INIT task_misc - FFD4AH 00000H - @@INIT task_sys FFD4AH 00002H + FFD18H 00000H + @@INIT task_sys FFD18H 00002H @@INIT pedo_alg_thre_det2 - FFD4CH 00006H - @@INIT ini_VECT FFD52H 00000H + FFD1AH 00006H + @@INIT ini_VECT FFD20H 00000H @@INIT task_status - FFD52H 00000H - @@INIT led_cam FFD52H 00002H - @@INIT led_pow FFD54H 00006H - @@INIT @rom FFD5AH 00000H - @@INIS FFD5AH 00000H DSEG UNITP - @@INIS @cstart FFD5AH 00000H - @@INIS loader FFD5AH 00000H - @@INIS pm FFD5AH 00000H - @@INIS i2c_ctr FFD5AH 00000H - @@INIS main FFD5AH 00000H - @@INIS magic FFD5AH 00000H - @@INIS WDT FFD5AH 00000H - @@INIS i2c_mcu FFD5AH 00000H - @@INIS i2c_twl FFD5AH 00000H - @@INIS led FFD5AH 00000H - @@INIS rtc FFD5AH 00000H - @@INIS vreg_ctr FFD5AH 00000H - @@INIS vreg_twl FFD5AH 00000H - @@INIS adc FFD5AH 00000H - @@INIS renge FFD5AH 00000H - @@INIS accero FFD5AH 00000H - @@INIS self_flash - FFD5AH 00000H - @@INIS sw FFD5AH 00000H - @@INIS task_debug - FFD5AH 00000H - @@INIS task_misc - FFD5AH 00000H - @@INIS task_sys FFD5AH 00000H - @@INIS pedo_alg_thre_det2 - FFD5AH 00000H - @@INIS ini_VECT FFD5AH 00000H - @@INIS task_status - FFD5AH 00000H - @@INIS led_cam FFD5AH 00000H - @@INIS led_pow FFD5AH 00000H - @@INIS @rom FFD5AH 00000H - @@DATS FFD5AH 00000H DSEG UNITP - @@DATS @cstart FFD5AH 00000H - @@DATS loader FFD5AH 00000H - @@DATS pm FFD5AH 00000H - @@DATS i2c_ctr FFD5AH 00000H - @@DATS main FFD5AH 00000H - @@DATS magic FFD5AH 00000H - @@DATS WDT FFD5AH 00000H - @@DATS i2c_mcu FFD5AH 00000H - @@DATS i2c_twl FFD5AH 00000H - @@DATS led FFD5AH 00000H - @@DATS rtc FFD5AH 00000H - @@DATS vreg_ctr FFD5AH 00000H - @@DATS vreg_twl FFD5AH 00000H - @@DATS adc FFD5AH 00000H - @@DATS renge FFD5AH 00000H - @@DATS accero FFD5AH 00000H - @@DATS self_flash - FFD5AH 00000H - @@DATS sw FFD5AH 00000H - @@DATS task_debug - FFD5AH 00000H - @@DATS task_misc - FFD5AH 00000H - @@DATS task_sys FFD5AH 00000H - @@DATS pedo_alg_thre_det2 - FFD5AH 00000H - @@DATS ini_VECT FFD5AH 00000H - @@DATS task_status - FFD5AH 00000H - @@DATS led_cam FFD5AH 00000H - @@DATS led_pow FFD5AH 00000H - @@DATS @rom FFD5AH 00000H - FSL_DATA FFD5AH 00010H DSEG UNITP + FFD20H 00000H + @@INIT led_cam FFD20H 00000H + @@INIT led_pow FFD20H 00004H + @@INIT hal FFD24H 00000H + @@INIT @rom FFD24H 00000H + FSL_DATA FFD24H 00010H DSEG UNITP FSL_DATA fsl_common - FFD5AH 00010H - @@INITL FFD6AH 00000H DSEG UNIT64KP - @@INITL loader FFD6AH 00000H - @@INITL pm FFD6AH 00000H - @@INITL i2c_ctr FFD6AH 00000H - @@INITL main FFD6AH 00000H - @@INITL magic FFD6AH 00000H - @@INITL WDT FFD6AH 00000H - @@INITL i2c_mcu FFD6AH 00000H - @@INITL i2c_twl FFD6AH 00000H - @@INITL led FFD6AH 00000H - @@INITL rtc FFD6AH 00000H - @@INITL vreg_ctr FFD6AH 00000H - @@INITL vreg_twl FFD6AH 00000H - @@INITL adc FFD6AH 00000H - @@INITL renge FFD6AH 00000H - @@INITL accero FFD6AH 00000H + FFD24H 00010H + @@INITL FFD34H 00000H DSEG UNIT64KP + @@INITL loader FFD34H 00000H + @@INITL pm FFD34H 00000H + @@INITL i2c_ctr FFD34H 00000H + @@INITL main FFD34H 00000H + @@INITL magic FFD34H 00000H + @@INITL WDT FFD34H 00000H + @@INITL i2c_mcu FFD34H 00000H + @@INITL i2c_twl FFD34H 00000H + @@INITL led FFD34H 00000H + @@INITL rtc FFD34H 00000H + @@INITL vreg_ctr FFD34H 00000H + @@INITL vreg_twl FFD34H 00000H + @@INITL adc FFD34H 00000H + @@INITL renge FFD34H 00000H + @@INITL accero FFD34H 00000H @@INITL self_flash - FFD6AH 00000H - @@INITL sw FFD6AH 00000H + FFD34H 00000H + @@INITL sw FFD34H 00000H @@INITL task_debug - FFD6AH 00000H + FFD34H 00000H @@INITL task_misc - FFD6AH 00000H - @@INITL task_sys FFD6AH 00000H + FFD34H 00000H + @@INITL task_sys FFD34H 00000H @@INITL pedo_alg_thre_det2 - FFD6AH 00000H - @@INITL ini_VECT FFD6AH 00000H + FFD34H 00000H + @@INITL ini_VECT FFD34H 00000H @@INITL task_status - FFD6AH 00000H - @@INITL led_cam FFD6AH 00000H - @@INITL led_pow FFD6AH 00000H - @@INITL @rom FFD6AH 00000H - @@DATAL FFD6AH 00000H DSEG UNIT64KP - @@DATAL loader FFD6AH 00000H - @@DATAL pm FFD6AH 00000H - @@DATAL i2c_ctr FFD6AH 00000H - @@DATAL main FFD6AH 00000H - @@DATAL magic FFD6AH 00000H - @@DATAL WDT FFD6AH 00000H - @@DATAL i2c_mcu FFD6AH 00000H - @@DATAL i2c_twl FFD6AH 00000H - @@DATAL led FFD6AH 00000H - @@DATAL rtc FFD6AH 00000H - @@DATAL vreg_ctr FFD6AH 00000H - @@DATAL vreg_twl FFD6AH 00000H - @@DATAL adc FFD6AH 00000H - @@DATAL renge FFD6AH 00000H - @@DATAL accero FFD6AH 00000H + FFD34H 00000H + @@INITL led_cam FFD34H 00000H + @@INITL led_pow FFD34H 00000H + @@INITL hal FFD34H 00000H + @@INITL @rom FFD34H 00000H + @@DATAL FFD34H 00000H DSEG UNIT64KP + @@DATAL loader FFD34H 00000H + @@DATAL pm FFD34H 00000H + @@DATAL i2c_ctr FFD34H 00000H + @@DATAL main FFD34H 00000H + @@DATAL magic FFD34H 00000H + @@DATAL WDT FFD34H 00000H + @@DATAL i2c_mcu FFD34H 00000H + @@DATAL i2c_twl FFD34H 00000H + @@DATAL led FFD34H 00000H + @@DATAL rtc FFD34H 00000H + @@DATAL vreg_ctr FFD34H 00000H + @@DATAL vreg_twl FFD34H 00000H + @@DATAL adc FFD34H 00000H + @@DATAL renge FFD34H 00000H + @@DATAL accero FFD34H 00000H @@DATAL self_flash - FFD6AH 00000H - @@DATAL sw FFD6AH 00000H + FFD34H 00000H + @@DATAL sw FFD34H 00000H @@DATAL task_debug - FFD6AH 00000H + FFD34H 00000H @@DATAL task_misc - FFD6AH 00000H - @@DATAL task_sys FFD6AH 00000H + FFD34H 00000H + @@DATAL task_sys FFD34H 00000H @@DATAL pedo_alg_thre_det2 - FFD6AH 00000H - @@DATAL ini_VECT FFD6AH 00000H + FFD34H 00000H + @@DATAL ini_VECT FFD34H 00000H @@DATAL task_status - FFD6AH 00000H - @@DATAL led_cam FFD6AH 00000H - @@DATAL led_pow FFD6AH 00000H - @@DATAL @rom FFD6AH 00000H -* gap * FFD6AH 00096H + FFD34H 00000H + @@DATAL led_cam FFD34H 00000H + @@DATAL led_pow FFD34H 00000H + @@DATAL hal FFD34H 00000H + @@DATAL @rom FFD34H 00000H +* gap * FFD34H 000CCH MEMORY=RAM2 BASE ADDRESS=FFE20H SIZE=000C0H OUTPUT INPUT INPUT BASE SIZE SEGMENT SEGMENT MODULE ADDRESS - @@BITS FFE20H 00005H BSEG - @@BITS @cstart FFE20H.0 00000H.0 - @@BITS loader FFE20H.0 00000H.0 - @@BITS pm FFE20H.0 00001H.0 - @@BITS i2c_ctr FFE21H.0 00000H.0 - @@BITS main FFE21H.0 00000H.1 - @@BITS magic FFE21H.1 00000H.0 - @@BITS WDT FFE21H.1 00000H.0 - @@BITS i2c_mcu FFE21H.1 00000H.3 - @@BITS i2c_twl FFE21H.4 00000H.0 - @@BITS led FFE21H.4 00000H.4 - @@BITS rtc FFE22H.0 00000H.3 - @@BITS vreg_ctr FFE22H.3 00000H.1 - @@BITS vreg_twl FFE22H.4 00000H.0 - @@BITS adc FFE22H.4 00000H.4 - @@BITS renge FFE23H.0 00000H.3 - @@BITS accero FFE23H.3 00000H.0 + @@INIS FFE20H 00006H DSEG SADDRP + @@INIS @cstart FFE20H 00000H + @@INIS loader FFE20H 00000H + @@INIS pm FFE20H 00002H + @@INIS i2c_ctr FFE22H 00000H + @@INIS main FFE22H 00000H + @@INIS magic FFE22H 00000H + @@INIS WDT FFE22H 00000H + @@INIS i2c_mcu FFE22H 00000H + @@INIS i2c_twl FFE22H 00000H + @@INIS led FFE22H 00000H + @@INIS rtc FFE22H 00000H + @@INIS vreg_ctr FFE22H 00000H + @@INIS vreg_twl FFE22H 00000H + @@INIS adc FFE22H 00000H + @@INIS renge FFE22H 00000H + @@INIS accero FFE22H 00000H + @@INIS self_flash + FFE22H 00000H + @@INIS sw FFE22H 00000H + @@INIS task_debug + FFE22H 00000H + @@INIS task_misc + FFE22H 00000H + @@INIS task_sys FFE22H 00000H + @@INIS pedo_alg_thre_det2 + FFE22H 00000H + @@INIS ini_VECT FFE22H 00000H + @@INIS task_status + FFE22H 00000H + @@INIS led_cam FFE22H 00002H + @@INIS led_pow FFE24H 00002H + @@INIS hal FFE26H 00000H + @@INIS @rom FFE26H 00000H + @@DATS FFE26H 00036H DSEG SADDRP + @@DATS @cstart FFE26H 00000H + @@DATS loader FFE26H 00000H + @@DATS pm FFE26H 0000CH + @@DATS i2c_ctr FFE32H 00002H + @@DATS main FFE34H 00000H + @@DATS magic FFE34H 00000H + @@DATS WDT FFE34H 00000H + @@DATS i2c_mcu FFE34H 00004H + @@DATS i2c_twl FFE38H 00000H + @@DATS led FFE38H 00000H + @@DATS rtc FFE38H 00000H + @@DATS vreg_ctr FFE38H 00002H + @@DATS vreg_twl FFE3AH 00000H + @@DATS adc FFE3AH 00008H + @@DATS renge FFE42H 00002H + @@DATS accero FFE44H 00000H + @@DATS self_flash + FFE44H 00000H + @@DATS sw FFE44H 0000AH + @@DATS task_debug + FFE4EH 00000H + @@DATS task_misc + FFE4EH 00002H + @@DATS task_sys FFE50H 00002H + @@DATS pedo_alg_thre_det2 + FFE52H 00006H + @@DATS ini_VECT FFE58H 00000H + @@DATS task_status + FFE58H 00000H + @@DATS led_cam FFE58H 00002H + @@DATS led_pow FFE5AH 00002H + @@DATS hal FFE5CH 00000H + @@DATS @rom FFE5CH 00000H + @@BITS FFE5CH 00005H BSEG + @@BITS @cstart FFE5CH.0 00000H.0 + @@BITS loader FFE5CH.0 00000H.0 + @@BITS pm FFE5CH.0 00001H.0 + @@BITS i2c_ctr FFE5DH.0 00000H.0 + @@BITS main FFE5DH.0 00000H.1 + @@BITS magic FFE5DH.1 00000H.0 + @@BITS WDT FFE5DH.1 00000H.0 + @@BITS i2c_mcu FFE5DH.1 00000H.3 + @@BITS i2c_twl FFE5DH.4 00000H.0 + @@BITS led FFE5DH.4 00000H.4 + @@BITS rtc FFE5EH.0 00000H.3 + @@BITS vreg_ctr FFE5EH.3 00000H.1 + @@BITS vreg_twl FFE5EH.4 00000H.0 + @@BITS adc FFE5EH.4 00000H.4 + @@BITS renge FFE5FH.0 00000H.3 + @@BITS accero FFE5FH.3 00000H.0 @@BITS self_flash - FFE23H.3 00000H.0 - @@BITS sw FFE23H.3 00000H.2 + FFE5FH.3 00000H.0 + @@BITS sw FFE5FH.3 00000H.1 @@BITS task_debug - FFE23H.5 00000H.0 + FFE5FH.4 00000H.0 @@BITS task_misc - FFE23H.5 00000H.2 - @@BITS task_sys FFE23H.7 00000H.0 + FFE5FH.4 00000H.2 + @@BITS task_sys FFE5FH.6 00000H.0 @@BITS pedo_alg_thre_det2 - FFE23H.7 00000H.2 - @@BITS ini_VECT FFE24H.1 00000H.0 + FFE5FH.6 00000H.2 + @@BITS ini_VECT FFE60H.0 00000H.0 @@BITS task_status - FFE24H.1 00000H.0 - @@BITS led_cam FFE24H.1 00000H.1 - @@BITS led_pow FFE24H.2 00000H.0 -* gap * FFE25H 000AFH + FFE60H.0 00000H.0 + @@BITS led_cam FFE60H.0 00000H.1 + @@BITS led_pow FFE60H.1 00000H.0 + @@BITS hal FFE60H.1 00000H.6 +* gap * FFE61H 00073H @@SEGREG FFED4H 00004H DSEG AT @@SEGREG @SEGREG FFED4H 00004H @@RTARG0 FFED8H 00008H DSEG AT diff --git a/branches/sim/config.h b/branches/sim/config.h index 8c7c0a0..88e5f7e 100644 --- a/branches/sim/config.h +++ b/branches/sim/config.h @@ -6,8 +6,6 @@ //#define _debug_led_ //#define _ALLOW_NOBATT_ -//#define _DEBUG_BT_FUEL_ -//#define _DEBUG_BT_TEMP_ //#define _DBG_PEDO_AUTO_ENABLE_ //#define _DBG_LED_PRINT_ //#define _DBG_FORCE_FULLCOLOR_ @@ -27,7 +25,7 @@ #define MCU_VER_MAJOR 0x01 -#define MCU_VER_MINOR 0x36 +#define MCU_VER_MINOR 0x37 // ̎́C‚ȂƑ̌̐YłȂˁI #ifdef _TAIKENDAI_SEISAN_SPECIAL_ diff --git a/branches/sim/hal.c b/branches/sim/hal.c new file mode 100644 index 0000000..1b3e2cc --- /dev/null +++ b/branches/sim/hal.c @@ -0,0 +1,160 @@ +#ifndef _WIN32 +#pragma SFR +#endif + +#include "incs_loader.h" + + +#define WIFI_txLatch PIF21 // dgMpX { led.h Œ` + + +// HALłԂ //////////////////////////////////////// +// ȎȂ琳_ɂr...≽łȂ +bit PM_EXTDC_n; +bit BT_IN_CHG_n; +bit SW_POW_n; +bit SW_HOME_n; +bit SW_WIFI_n; +bit SHELL_OPEN; + +/* +#define REG_BIT_HAL0_PM_EXTDC_n ( 1 << 7 ) +#define REG_BIT_HAL0_BT_IN_CHG_n ( 1 << 6 ) +//#define REG_BIT_HAL0_PM_IRQ_n ( 1 << 5 ) // gȂ +#define REG_BIT_HAL0_WL_TX ( 1 << 4 ) +#define REG_BIT_HAL0_SHELL_OPEN ( 1 << 3 ) +#define REG_BIT_HAL0_SW_WIFI_n ( 1 << 2 ) +#define REG_BIT_HAL0_SW_HOME_n ( 1 << 1 ) +#define REG_BIT_HAL0_SW_POW_n ( 1 << 0 ) + +#define REG_BIT_HAL1_DIPSW_1 ( 1 << 3 ) +#define REG_BIT_HAL1_DIPSW_0 ( 1 << 2 ) +#define REG_BIT_HAL1_HW_DET_1 ( 1 << 1 ) +#define REG_BIT_HAL1_HW_DET_0 ( 1 << 0 ) +*/ + + +// ڂւ +// `^OȂ炱ł(ԃJEg͕) +void hal_update() +{ + u8 temp_conf = vreg_ctr[ VREG_C_HAL_OVW_CONT0 ]; + u8 temp_dat = vreg_ctr[ VREG_C_HAL_OVW_DAT0 ]; + + // A_v^L + if( temp_conf & REG_BIT_HAL0_PM_EXTDC_n ) + { + // O͂Ȃ񂾂傫Ȃ肪 + if(( temp_dat & REG_BIT_HAL0_PM_EXTDC_n ) == 0 ) + { + PM_EXTDC_n = 0; + } + else + { + PM_EXTDC_n = 1; + } + } + else + { + PM_EXTDC_n = PM_EXTDC_n_RAW; + } + + // [dH + if( temp_conf & REG_BIT_HAL0_BT_IN_CHG_n ) + { + if(( temp_dat & REG_BIT_HAL0_BT_IN_CHG_n ) == 0 ) + { + BT_IN_CHG_n = 0; + } + else + { + BT_IN_CHG_n = 1; + } + } + else + { + BT_IN_CHG_n = BT_IN_CHG_n_RAW; + } + + // dt + if( temp_conf & REG_BIT_HAL0_SW_POW_n ) + { + if(( temp_dat & REG_BIT_HAL0_SW_POW_n ) == 0 ) + { + SW_POW_n = 0 ; + } + else + { + SW_POW_n = 1; + } + } + else + { + SW_POW_n = SW_POW_n_RAW; + } + + // Ɩt + if( temp_conf & REG_BIT_HAL0_SW_HOME_n ) + { + if(( temp_dat & REG_BIT_HAL0_SW_HOME_n ) == 0 ) + { + SW_HOME_n = 0; + } + else + { + SW_HOME_n = 1; + } + } + else + { + if( system_status.model == MODEL_TS_BOARD )// ڑ̃|[gႤ + { + SW_HOME_n = SW_HOME_n_TSBOARD_RAW; + } + else + { + SW_HOME_n = SW_HOME_n_JIKKI_RAW; + } + } + + // J + if( temp_conf & REG_BIT_HAL0_SW_WIFI_n ) + { + if(( temp_dat & REG_BIT_HAL0_SW_WIFI_n ) == 0 ) + { + SW_WIFI_n = 0; + } + else + { + SW_WIFI_n = 1; + } + } + else + { + SW_WIFI_n = SW_WIFI_n_RAW; + } + + // + if( temp_conf & REG_BIT_HAL0_SHELL_OPEN ) + { + if(( temp_dat & REG_BIT_HAL0_SHELL_OPEN ) == 0 ) + { + SHELL_OPEN = 1; + } + else + { + SHELL_OPEN = 0; + } + } + else + { + SHELL_OPEN = SHELL_OPEN_RAW; + } + + // dg + if( temp_conf & REG_BIT_HAL0_WL_TX ) + { + WIFI_txLatch = 1; + } + +} diff --git a/branches/sim/hal.h b/branches/sim/hal.h new file mode 100644 index 0000000..c6decf3 --- /dev/null +++ b/branches/sim/hal.h @@ -0,0 +1,16 @@ +#ifndef _hal_h_ +#define _hal_h_ + + +extern bit PM_EXTDC_n; +extern bit BT_IN_CHG_n; +extern bit SW_POW_n; +extern bit SW_HOME_n; +extern bit SW_WIFI_n; +extern bit SHELL_OPEN; + + +// ======================================================== +void hal_update(); + +#endif diff --git a/branches/sim/i2c_ctr.c b/branches/sim/i2c_ctr.c index 489c886..d0b8da9 100644 --- a/branches/sim/i2c_ctr.c +++ b/branches/sim/i2c_ctr.c @@ -74,13 +74,10 @@ __interrupt void int_iic_ctr( ) { static enum en_IIC_STATE state = IIC_IDLE; static u8 reg_adrs; - static u8 reg_adrs_internal; static u8 tx_buf; u8 rx_buf; static u8 adrs_access_from; - EI(); - // ǂݏoI if( !ACKD ) // 荞ݗvNAKif[^M̍Ōj { @@ -106,7 +103,11 @@ __interrupt void int_iic_ctr( ) hosu_read_end( ); // vǂݏoI rtc_unlock( ); iic_burst_state = 0; - return; + if( !SPD && !STD ) + { + EI(); + return; + } } if( SPD ) // 荞ݗv̓XgbvRfBV @@ -116,7 +117,11 @@ __interrupt void int_iic_ctr( ) SPIE = 0; // I2CIɉ镨 // rtc_unlock( ); - return; + if( !STD ) + { + EI(); + return; + } } if( STD ) // 荞ݗvFX^[gRfBV @@ -132,6 +137,8 @@ __interrupt void int_iic_ctr( ) } } + EI(); + switch ( state ) { case ( IIC_IDLE ): @@ -215,7 +222,7 @@ __interrupt void int_iic_ctr( ) break; default: iic_burst_state = 0; // ی - reg_adrs += 1; + reg_adrs ++; } if( state == IIC_TX ) diff --git a/branches/sim/i2c_mcu.c b/branches/sim/i2c_mcu.c index 71eae0b..aa2abd9 100644 --- a/branches/sim/i2c_mcu.c +++ b/branches/sim/i2c_mcu.c @@ -79,7 +79,7 @@ extern bit i2c_mcu_time_out_error; // ======================================================== void nop8() { - // nop11 ʂȂ̂ + // ɗ call 3clk, return 6clk } @@ -419,8 +419,8 @@ __interrupt void int_iic10( ) if( iic_send_wo_dma_len != 0 ) { SIO10 = *p_iic_send_wo_dma_dat; - p_iic_send_wo_dma_dat++; - iic_send_wo_dma_len--; + p_iic_send_wo_dma_dat ++; + iic_send_wo_dma_len --; return; } @@ -647,7 +647,7 @@ err iic_mcu_write_a_byte_codec( u8 adrs, u8 dat ) iic_mcu_send_a_byte( 0x20 ); iic_mcu_send_a_byte( count ); - count++; + count ++; iic_mcu_send_sp( ); iic_mcu_busy = false; diff --git a/branches/sim/i2c_twl.c b/branches/sim/i2c_twl.c index 87cdda6..5971b37 100644 --- a/branches/sim/i2c_twl.c +++ b/branches/sim/i2c_twl.c @@ -82,7 +82,7 @@ enum IIC_TWL_STATE{ #define wait_next { \ tot = 0; \ while( IICAIF != 1 ){ \ - tot++; \ + tot ++; \ if( tot == 0 ){ \ LREL = 1; \ return; \ diff --git a/branches/sim/incs.h b/branches/sim/incs.h index 7d1a063..cd33a79 100644 --- a/branches/sim/incs.h +++ b/branches/sim/incs.h @@ -29,6 +29,8 @@ #include "jhl_defs.h" #include "user_define.h" +#include "hal.h" + #include "bsr_system.h" #include "renge\renge.h" #include "loader.h" diff --git a/branches/sim/incs_loader.h b/branches/sim/incs_loader.h index 6683f89..4bb13b5 100644 --- a/branches/sim/incs_loader.h +++ b/branches/sim/incs_loader.h @@ -26,6 +26,8 @@ #include "jhl_defs.h" #include "user_define.h" +#include "hal.h" + #include "bsr_system.h" #include "renge\renge.h" diff --git a/branches/sim/led.c b/branches/sim/led.c index 3607293..65d4bba 100644 --- a/branches/sim/led.c +++ b/branches/sim/led.c @@ -57,11 +57,11 @@ u8 fade_to( u8 now, u8 goal ) { if( now > goal ) { - now -= 1; + now --; } else { - now += 1; + now ++; } } return( now ); @@ -204,11 +204,11 @@ void tsk_led_wifi( ) default: LED_duty_WiFi = vreg_ctr[VREG_C_LED_BRIGHT]; } - state_wifi_tx++; + state_wifi_tx ++; if( state_wifi_tx == 32 ) // _ŌA_ĂԂ̒ { state_wifi_tx = 0; - flag_wifi_TX -= 1; + flag_wifi_TX --; } task_interval = 25; return; @@ -231,11 +231,11 @@ void tsk_led_wifi( ) } else if( LED_duty_WiFi < vreg_ctr[VREG_C_LED_BRIGHT] ) { - LED_duty_WiFi += 1; + LED_duty_WiFi ++; } else { - LED_duty_WiFi -= 1; + LED_duty_WiFi --; } } task_interval = 3; @@ -320,7 +320,7 @@ void tsk_led_notify( ) vreg_ctr[ VREG_C_LED_NOTIFY_FLAG ] |= REG_BIT_IN_LOOP; if( info_LED.info_LED.last_loop != 255 ) // 255:[v { - loops++; + loops ++; if( loops > info_LED.info_LED.last_loop ) { frame = 0; @@ -340,7 +340,7 @@ void tsk_led_notify( ) calc_info_led_next_frame( &LED_dim_status_info_B, info_LED.info_LED.blu[frame] ); } - time_to_next_frame -= 1; + time_to_next_frame --; } } diff --git a/branches/sim/led.h b/branches/sim/led.h index e63093b..e92d209 100644 --- a/branches/sim/led.h +++ b/branches/sim/led.h @@ -31,11 +31,7 @@ #define LED_BRIGHT_MAX 0x00FF // ==================================== -#ifdef _MCU_BSR_ // dgMpX -#define WIFI_txLatch PIF21 -#else -#define WIFI_txLatch PIF7 -#endif +#define WIFI_txLatch PIF21 // dgMpX diff --git a/branches/sim/led_cam.c b/branches/sim/led_cam.c index 9298fdb..5e1c76e 100644 --- a/branches/sim/led_cam.c +++ b/branches/sim/led_cam.c @@ -35,7 +35,7 @@ void tsk_led_cam( ) { if( task_interval != 0 ) { - task_interval -= 1; + task_interval --; return; } } @@ -132,7 +132,7 @@ void cam_led_twl() LED_CAM = 0; state_led_cam = 0; } - task_interval = 600 / SYS_INTERVAL_TICK + 250; + task_interval = (u8)( 600 / SYS_INTERVAL_TICK ) + 250; break; case( TWL_CAMLED_ON ): diff --git a/branches/sim/led_pow.c b/branches/sim/led_pow.c index 8b8b37a..08afc5c 100644 --- a/branches/sim/led_pow.c +++ b/branches/sim/led_pow.c @@ -130,7 +130,7 @@ void tsk_led_pow( ) { LED_duty_notify_blu = 0; LED_duty_notify_grn = 0; - LED_duty_notify_red = LED_pow_red ? 255: 0; + LED_duty_notify_red = ( LED_pow_red == 0 )? 0 : 255; } } @@ -179,12 +179,12 @@ static void led_pow_sleep( ) led_fade_to2( LED_duty_pow_blu, &LED_dim_status_sleep ); // ̃t[ɐi߂H - time_to_next_frame_sleep -= 1; + time_to_next_frame_sleep --; if( time_to_next_frame_sleep == 0 ) { time_to_next_frame_sleep = LED_SLEEP_FRAME_LEN; - frame_sleep += 1; + frame_sleep ++; if( frame_sleep >= LED_SLEEP_FRAME_NUM -1 ) { frame_sleep = 0; @@ -244,7 +244,7 @@ static void led_pow_bt_empty() led_fade_to( LED_duty_pow_blu, 0 ); // Ԃ̓_Ńp^[wł - delay += 1; + delay ++; if( delay < 64 ) // t[̕ێԉ҂ { return; @@ -259,7 +259,7 @@ static void led_pow_bt_empty() { LED_pow_red = 0; } - red_blink_poi += 1; + red_blink_poi ++; if( red_blink_poi >= 32 ) { red_blink_poi = 0; diff --git a/branches/sim/loader.c b/branches/sim/loader.c index 478269a..3c0778a 100644 --- a/branches/sim/loader.c +++ b/branches/sim/loader.c @@ -109,7 +109,7 @@ void main( ) // ʏ̓d // drڑAƑ҂Ă݂(`^O΍) u16 pwup_delay0; - for( pwup_delay0 = 0xFFFF; pwup_delay0 != 0; pwup_delay0-- ){;}; + for( pwup_delay0 = 0xFFFF; pwup_delay0 != 0; pwup_delay0 -- ){;}; } hdwinit2( ); @@ -144,7 +144,7 @@ void chk_firm_broke() if( *( u8 * )( MGC_FOOT +2 ) != ':' ) // ς̂܂ { - comp += 1; + comp ++; } if( comp != 0 ) @@ -376,7 +376,7 @@ void wait_ms( u8 ms ){ ms--; fine = 860; while( fine != 0 ){ - fine -= 1; + fine --; } } } diff --git a/branches/sim/pedo_alg_thre_det2.c b/branches/sim/pedo_alg_thre_det2.c index 2500c83..1454a73 100644 --- a/branches/sim/pedo_alg_thre_det2.c +++ b/branches/sim/pedo_alg_thre_det2.c @@ -39,7 +39,6 @@ typedef struct{ // ======================================================== -static void hosu_increment_if_necessary(); static u16 get_long_hour(); static u16 calc_hours_spend( u8 ); @@ -115,7 +114,7 @@ void pedometer() norm_hist[ hist_indx & TAP-1 ] = normh * 256 + norml; #endif - hist_indx += 1; + hist_indx ++; // qXgɃtB^(fir)|āA̒l߂ // filterd = 0; @@ -130,7 +129,7 @@ void pedometer() /* if( acc_norm[0] < acc_norm_temp ) { - t_rise += 1; + t_rise ++; if( t_rise == 0 ) t_rise == 254; } @@ -175,7 +174,10 @@ void pedometer() } else { - interval_hh += ( interval_hh != 255 ) ? 1: 0; // OaZĊyɏ炢̂ + if( interval_hh != 255 ) // OaZĊyɏ炢̂ + { + interval_hh ++; + } } // (2) ߂̋ɏ̎ @@ -188,12 +190,14 @@ void pedometer() } else { - time_l += ( time_l != 255 ) ? 1: 0; + if( time_l != 255 ) + { + time_l ++; + } } } - /*========================================================= @{P @@ݐςCNg @@ -206,7 +210,7 @@ void pedometer() #define HOSU_NODATA 0xFFFF #define HOSU_MAX 0xFFFE -static void hosu_increment_if_necessary() +void hosu_increment_if_necessary() { u8 year_compd; // hourE␳ς݌ݔNBcomp(ensation -ed) @@ -238,8 +242,12 @@ static void hosu_increment_if_necessary() // ␳vZ@U뎞ōɂȂꍇAA23ɏ㏑ if( now_longhour == (u16)-1 ) // }WbNio[Ƃł͂ȂĎۂɌvZʂ-1 { - now_longhour = ( ( 365 + ( is_firstyear(year_compd) ? 1: 0 )) * 24 ) -1; - year_compd -= 1; + now_longhour = 365 * 24 -1; + if( is_firstyear(year_compd) ) + { + now_longhour += 24; + } + year_compd --; } fill_hosu_hist_hours( calc_hours_spend( year_compd ) ); // ݃|C^̍XVs @@ -269,7 +277,7 @@ static void hosu_increment_if_necessary() else { // ʏpX - pool.vreg_c_ext.pedo_log[ p_record ] += 1; + pool.vreg_c_ext.pedo_log[ p_record ] ++; } // ݐς̍XV // @@ -305,7 +313,7 @@ static void fill_hosu_hist_hours( u16 hours ) while( hours != 0 ) { // Vdl@ςŒ~ - p_record += 1; + p_record ++; #if 1 // debug if( p_record >= PEDOMETER_LOG_SIZE ) { @@ -318,7 +326,7 @@ static void fill_hosu_hist_hours( u16 hours ) { pool.vreg_c_ext.pedo_log[ p_record ] = 0; } - hours -= 1; + hours --; } return; @@ -335,7 +343,7 @@ void clear_hosu_hist() u8 hours = PEDOMETER_LOG_SIZE; do { - hours -= 1; + hours --; pool.vreg_c_ext.pedo_log[ hours ] = 0xFFFF; } while( hours != 0 ); @@ -383,7 +391,7 @@ u8 hosu_read( ) if( iic_burst_state <= 5 ) { rv = *( (u8*)&cal_buff + iic_burst_state ); // - iic_burst_state += 1; + iic_burst_state ++; return( rv ); } else @@ -404,7 +412,7 @@ u8 hosu_read( ) } else { - p_record_buffer -= 1; + p_record_buffer --; } } pedolog_read_msb ^= 1; @@ -450,7 +458,7 @@ static u16 get_long_hour() if( is_leapyear(year) && ( 3 <= month )) { // [NŁA[ - long_hour += 1; + long_hour ++; } long_hour += day - 1; long_hour *= 24; // @@ -531,7 +539,12 @@ static u16 calc_hours_spend( u8 year ) else if( cal_log_latest_year == ( year -1 ) ) { // N܂łƂ - return( ( ( 365 + ( is_firstyear(year) ? 1: 0 )) * 24 ) - last_hour_fny + now_longhour ); + u16 temp = 365 - last_hour_fny + now_longhour; + if( is_firstyear(year) ) + { + temp += 24; + } + return( temp ); } else if( cal_log_latest_year < year ) { diff --git a/branches/sim/pedometer.h b/branches/sim/pedometer.h index 56252a0..d2b1376 100644 --- a/branches/sim/pedometer.h +++ b/branches/sim/pedometer.h @@ -14,6 +14,7 @@ extern bit pedolog_read_msb; #define hosu_read_end() pedolog_read_msb = 0 u8 hosu_read( ); +void hosu_increment_if_necessary(); void fill_hosu_hist_hours( u16 ); void clear_hosu_hist(); void pedometer(); diff --git a/branches/sim/pm.c b/branches/sim/pm.c index 41936e4..5b1d3db 100644 --- a/branches/sim/pm.c +++ b/branches/sim/pm.c @@ -33,7 +33,6 @@ u8 chg_led_override; // static u16 bt_volt16; static bit ntr_pm_bt_low_old; -bit BT_CHG_STAT_Change; bit BT_IN_CHG_delayed_n; bit temp_zone_charge_disable; // xŏ[d~鎞ɃqXeVXt邽 @@ -46,6 +45,11 @@ static bt_param_* p_bt_param; static err send_cmd_mgic_2B( u8 reg, u16 dat ); static err read_mgic_2B( u8 reg, u8* dat ); +static err read_BT_SOC( u8* dest ); +static err read_BT_voltage( u8* dest ); + +static u8 conv_ctr_bt_to_twl_bt(); + u8 pm_reg_bit_vddlcd; @@ -97,7 +101,7 @@ void tsk_batt( ) if( system_status.pwr_state != OFF_TRIG ) { - if( task_interval-- != 0 ) + if( task_interval -- != 0 ) { return; } @@ -123,11 +127,18 @@ void tsk_batt( ) bt_get_charge_status(); // CCIC - LED_CHARGE = ( ! BT_IN_CHG_delayed_n )? 1: 0; // LEDɔf + if( ! BT_IN_CHG_delayed_n ) // LEDɔf + { + LED_CHARGE = 1; + } + else + { + LED_CHARGE = 0; + } // A_v^‚ȂuԁA[dłb킴Ɠ_BdĂ邱Ƃ킩点邽߁B if( chg_led_override != 0 ){ // 猩΂킩邪Au(NbN)鎖BC‚l邩ȁcH - chg_led_override -= 1; + chg_led_override --; LED_CHARGE = 1; } @@ -233,14 +244,12 @@ void bt_get_charge_status() ***********************************************************/ void pm_chk_adapter() { - static u8 pm_extdc_old; - u8 temp_pm_extdc; + static bit pm_extdc_old; - temp_pm_extdc = (u8)!PM_EXTDC_n; // volatilê - if( pm_extdc_old != temp_pm_extdc ) + if( pm_extdc_old != PM_EXTDC_n ) // HAL ʂ߁A PM_EXTDC_n volatile ɂSzȂ { - pm_extdc_old = temp_pm_extdc; - if( temp_pm_extdc ) + pm_extdc_old = PM_EXTDC_n; + if( PM_EXTDC_n ) { // h set_bit( 1, vreg_ctr[VREG_C_STATUS], REG_BIT_POW_SUPPLY ); @@ -376,7 +385,7 @@ void BT_model_detect() else { PM_SW_HOME_n_TSBOARD = 0; - SW_HOME_n_TSBOARD = 0; /// ǂł񂾂 + SW_HOME_n_TSBOARD_RAW = 0; /// @open ǂł񂾂 } // dr[J[̎ // @@ -473,7 +482,7 @@ static void BT_mgic_init() u8 loop; // 16oCgƂɋ؂Ƃ̂Ɓ@imCY΍Ƃ񂾂ǁAӖ񂩁Hj - for( loop = 0; loop < 4; loop++ ) + for( loop = 0; loop < 4; loop ++ ) { iic_mcu_set_wo_dma( ); iic_mcu_write( IIC_SLA_BT_GAUGE, BT_GAUGE_REG_BT_PARAM + loop*16, 16, p_bt_param->mg_param + loop*16 ); @@ -533,7 +542,7 @@ task_status_immed tski_BT_temp_update( ) { if( heikinka < 40 ) { - heikinka++; + heikinka ++; } else { @@ -587,151 +596,140 @@ task_status_immed tski_BT_temp_update( ) @BT_chk()sĂKv܂B **********************************************************/ void BT_get_left(){ - u8 temp_fuel[2]; + u8 temp[2]; static u16 hysteresis; + u8 reg_volatile_temp_bt_remain,reg_volatile_temp_bt_remain_fine; // I2C̔񓯊ǂݍ݂ł̂‚h~ Lbv̏ -#ifdef _DEBUG_BT_FUEL_ - if( vreg_ctr[ VREG_C_COMMAND3 ] == 'd' ) + if( system_status.model == MODEL_TS_BOARD + || system_status.model == MODEL_SHIROBAKO ) { - vreg_ctr[ VREG_C_BT_REMAIN ] = vreg_ctr[ VREG_C_DBG01 ]; - } - else -#endif - { - if( system_status.model == MODEL_TS_BOARD ) + // TS & // + // drc + if( read_BT_SOC( temp ) == ERR_SUCCESS ) { - // TS // - vreg_ctr[ VREG_C_BT_REMAIN ] = 99; - vreg_ctr[ VREG_C_BT_VOLTAGE ] = 200; - } - else if( system_status.model == MODEL_SHIROBAKO ) - { - // // - // drc - if( read_mgic_2B( BT_GAUGE_REG_SOC, temp_fuel ) != ERR_SUCCESS ) - { - // G~[V@\ - vreg_ctr[ VREG_C_BT_REMAIN ] = 99; - } - else - { - vreg_ctr[ VREG_C_BT_REMAIN ] = temp_fuel[0]; - vreg_ctr[ VREG_C_BT_REMAIN_FINE ] = temp_fuel[1]; - } - -//* - // drd - if( read_mgic_2B( BT_GAUGE_REG_VCELL, temp_fuel ) == ERR_SUCCESS ) - { - vreg_ctr[ VREG_C_BT_VOLTAGE ] = temp_fuel[0]; - } - else -//*/ - { - vreg_ctr[ VREG_C_BT_VOLTAGE ] = 200; - } + reg_volatile_temp_bt_remain = temp[0]; + reg_volatile_temp_bt_remain_fine = temp[1]; } else { - // @ // - u8 temp_v[2]; - u8 temp_force_fuel_left; - - // cʃ[h - if( read_mgic_2B( BT_GAUGE_REG_SOC, temp_fuel ) != ERR_SUCCESS ) - { - // cICNACK cobe͂ꂽ - vreg_ctr[ VREG_C_STATUS_1 ] |= REG_BIT_MGIC_ERR; - bt_authorized = false; - vreg_ctr[ VREG_C_BT_REMAIN ] = 0; - force_off = true; - } - else - { - // obep[^̊֌WŃrbgVtgKv - bt_volt16 = temp_fuel[0] * 256 + temp_fuel[1]; - bt_volt16 /= p_bt_param->v_scale; - temp_fuel[0] = (u8)(( bt_volt16 >> 8 ) & 0xFF); - if( temp_fuel[0] == 0 ) - { - // 0%̎1.00%ɏグ - // [dJn΂炭͓drcʂ̂ - // 0%ɓBĂ܂Ƃ̂ - temp_fuel[0] = 1; - temp_fuel[1] = 0; - } - else - { - temp_fuel[1] = (u8)(bt_volt16 & 0xFF); - } - - - // dŃLbv - if( read_mgic_2B( BT_GAUGE_REG_VCELL, temp_v ) == ERR_SUCCESS ) - { - vreg_ctr[ VREG_C_BT_VOLTAGE ] = temp_v[0]; - - bt_volt16 = ( temp_v[0] * 256 + temp_v[1] ); - - if( bt_volt16 > V_TH_30 ) - { - temp_force_fuel_left = 100; - hysteresis = 0; - } - else if( bt_volt16 - hysteresis > V_TH_LO ) - { - temp_force_fuel_left = 30; - hysteresis = 0; - } - else if( bt_volt16 > V_TH_EMPTY ) - { - temp_force_fuel_left = BATT_TH_LO; // - hysteresis = 500; - } - else if( bt_volt16 > V_TH_ZERO ) - { - temp_force_fuel_left = BATT_TH_EMPTY; - hysteresis = 500; - } - else if( bt_volt16 > V_TH_FORCE_OFF ) - { - temp_force_fuel_left = 0; - hysteresis = 500; - } - else - { - force_off = true; - hysteresis = 500; - } - } - } - - // [diA_v^hĂĵɏ[dĂȂ - // AiȂƂjf̓drcʂ60%ȏiCCICoOj - // = [dBdrւĂMGIC100%ԂȂ - if( !BT_CHG_Ena_n && BT_IN_CHG_delayed_n ){ - vreg_ctr[ VREG_C_BT_REMAIN ] = 100; - vreg_ctr[ VREG_C_BT_REMAIN_FINE ] = 0; - } - else - { // ȂɃLbv - if( temp_force_fuel_left > temp_fuel[0] ) - { - vreg_ctr[ VREG_C_BT_REMAIN ] = temp_fuel[0]; - vreg_ctr[ VREG_C_BT_REMAIN_FINE ] = temp_fuel[1]; - } - else - { - vreg_ctr[ VREG_C_BT_REMAIN ] = temp_force_fuel_left; - vreg_ctr[ VREG_C_BT_REMAIN_FINE ] = 0; - } - } + reg_volatile_temp_bt_remain = 99; + reg_volatile_temp_bt_remain_fine = 0; } - if( system_status.taikendai_nbd ) + + // drd + if( read_BT_voltage( temp ) == ERR_SUCCESS ) { - vreg_ctr[ VREG_C_BT_REMAIN ] = 100; + vreg_ctr[ VREG_C_BT_VOLTAGE ] = temp[0]; + } + else + { + vreg_ctr[ VREG_C_BT_VOLTAGE ] = 200; } } + else + { + // @ // + u8 temp_v[2]; + u8 temp_force_fuel_left; + + // cʃ[h + if( read_BT_SOC( temp ) != ERR_SUCCESS ) + { + // cICNACK cobe͂ꂽ + vreg_ctr[ VREG_C_STATUS_1 ] |= REG_BIT_MGIC_ERR; + bt_authorized = false; + reg_volatile_temp_bt_remain = 0; + force_off = true; + } + else + { + // obep[^̊֌WŃrbgVtgKv + bt_volt16 = temp[0] * 256 + temp[1]; + bt_volt16 /= p_bt_param->v_scale; + temp[0] = (u8)(( bt_volt16 >> 8 ) & 0xFF); + if( temp[0] == 0 ) + { + // 0%̎1.00%ɏグ + // [dJn΂炭͓drcʂ̂ + // 0%ɓBĂ܂Ƃ̂ + temp[0] = 1; + temp[1] = 0; + } + else + { + temp[1] = (u8)(bt_volt16 & 0xFF); + } + + + // dŃLbv + if( read_BT_voltage( temp_v ) == ERR_SUCCESS ) + { + vreg_ctr[ VREG_C_BT_VOLTAGE ] = temp_v[0]; + + bt_volt16 = ( temp_v[0] * 256 + temp_v[1] ); + + if( bt_volt16 > V_TH_30 ) + { + temp_force_fuel_left = 100; + hysteresis = 0; + } + else if( bt_volt16 - hysteresis > V_TH_LO ) + { + temp_force_fuel_left = 30; + hysteresis = 0; + } + else if( bt_volt16 > V_TH_EMPTY ) + { + temp_force_fuel_left = BATT_TH_LO; // + hysteresis = 500; + } + else if( bt_volt16 > V_TH_ZERO ) + { + temp_force_fuel_left = BATT_TH_EMPTY; + hysteresis = 500; + } + else if( bt_volt16 > V_TH_FORCE_OFF ) + { + temp_force_fuel_left = 0; + hysteresis = 500; + } + else + { + force_off = true; + hysteresis = 500; + } + } + } + + // [diA_v^hĂĵɏ[dĂȂ + // AiȂƂjf̓drcʂ60%ȏiCCICoOj + // = [dBdrւĂMGIC100%ԂȂ + if( !BT_CHG_Ena_n && BT_IN_CHG_delayed_n ){ + reg_volatile_temp_bt_remain = 100; + reg_volatile_temp_bt_remain_fine = 0; + } + else + { // ȂɃLbv + if( temp_force_fuel_left > temp[0] ) + { + reg_volatile_temp_bt_remain = temp[0]; + reg_volatile_temp_bt_remain_fine = temp[1]; + } + else + { + reg_volatile_temp_bt_remain = temp_force_fuel_left; + reg_volatile_temp_bt_remain_fine = 0; + } + } + } + + if( system_status.taikendai_nbd ) // dr[qɓd‚ȂĂĒlsȂߏ㏑B + { + reg_volatile_temp_bt_remain = 100; + } + + vreg_ctr[ VREG_C_BT_REMAIN ] = reg_volatile_temp_bt_remain; + vreg_ctr[ VREG_C_BT_REMAIN_FINE ] =reg_volatile_temp_bt_remain_fine; // twl̃WX^XV@(CTRɊ荞ݓOɍXVȂƊ荞݂̃^C~O܂Ȃ) bt_batt_update_twl(); @@ -740,7 +738,7 @@ void BT_get_left(){ { static u8 bt_remain_old_ctr; - if( bt_remain_old_ctr != vreg_ctr[ VREG_C_BT_REMAIN ] ) + if( bt_remain_old_ctr != reg_volatile_temp_bt_remain ) // CTRɒʒm { if( (( vreg_ctr[ VREG_C_BT_REMAIN ] <= BATT_TH_LO ) && ( BATT_TH_LO < bt_remain_old_ctr ))|| @@ -1210,7 +1208,8 @@ void codec_reg_init() { wait_ms( 100 ); - ntr_pm_bt_low_old = ( vreg_ctr[ VREG_C_BT_REMAIN ] <= BATT_TH_LO )? NTR_PM_BT_EMPTY: NTR_PM_BT_ENOUGH; // 1œdr؂ + ntr_pm_bt_low_old = conv_ctr_bt_to_twl_bt(); + iic_mcu_write_a_byte_codec( CODEC_REG_BT, (u8)ntr_pm_bt_low_old ); // SoC 珑 vol_reset(); @@ -1322,7 +1321,7 @@ static void bt_batt_update_ntr() else { - flag = (( vreg_ctr[ VREG_C_BT_REMAIN ] <= BATT_TH_LO )? NTR_PM_BT_EMPTY: NTR_PM_BT_ENOUGH ); // 1œdr؂ + flag = conv_ctr_bt_to_twl_bt(); if(( ntr_pm_bt_low_old != flag ) || !initialized ) { @@ -1332,3 +1331,54 @@ static void bt_batt_update_ntr() } } } + + +/* ======================================================== +========================================================= */ +static err read_BT_SOC( u8* dest ) +{ + if( vreg_ctr[ VREG_C_HAL_OVW_BT_FUEL ] != 0xFF ) + { + *dest = vreg_ctr[ VREG_C_HAL_OVW_BT_FUEL ]; + *(dest+1) = 0x00; + return ERR_SUCCESS; + } + else + { + return( read_mgic_2B( BT_GAUGE_REG_SOC, dest ) ); + } +} + + +/* ======================================================== +========================================================= */ +static err read_BT_voltage( u8* dest ) +{ + if( vreg_ctr[ VREG_C_HAL_OVW_BT_VOLTAGE ] != 0xFF ) + { + *dest = vreg_ctr[ VREG_C_HAL_OVW_BT_VOLTAGE ]; +// *(dest+1) = 0x00; // gȂ@ǂQoCg[h֐pӂĂȂ̂ł + return ERR_SUCCESS; + } + else + { + return( read_mgic_2B( BT_GAUGE_REG_VCELL, dest ) ); + } +} + + +/* ======================================================== + drcʂtwlɃtOɂĕԂ +========================================================= */ +static u8 conv_ctr_bt_to_twl_bt() +{ +// ntr_pm_bt_low_old = ( vreg_ctr[ VREG_C_BT_REMAIN ] <= BATT_TH_LO )? NTR_PM_BT_EMPTY: NTR_PM_BT_ENOUGH; // 1œdr؂ + if( vreg_ctr[ VREG_C_BT_REMAIN ] <= BATT_TH_LO ) + { + return NTR_PM_BT_EMPTY; + } + else + { + return NTR_PM_BT_ENOUGH; + } +} diff --git a/branches/sim/renge/renge.c b/branches/sim/renge/renge.c index b261eec..ef015f2 100644 --- a/branches/sim/renge/renge.c +++ b/branches/sim/renge/renge.c @@ -105,11 +105,11 @@ err renge_task_interval_run(){ renge_task_interval_run_force = false; // N^XNA荞ރ^XNŃtO‚Ȃ̂ if( renge_flg_interval != 0 ) { - renge_flg_interval -= 1; + renge_flg_interval --; WDT_Restart( ); } EI(); - for( i = 0; i != TSK_LAST; i += 1 ) + for( i = 0; i != TSK_LAST; i ++ ) { tasks[ i ](); // N^XNԂɋ @@ -157,7 +157,7 @@ err renge_task_immed_add( task_status_immed (*new_task)() ){ // Xg̋󂫂̐擪ɓo^ // 폜΂̃^XŃA폜}[N(TSK_IMM_DELETED_)ƂȂA󂫂Ƃ͖Iɋʂ // do^ - for( i = 0; i < TASK_IMMED_RUN_LIST_MAX; i += 1 ) + for( i = 0; i < TASK_IMMED_RUN_LIST_MAX; i ++ ) { DI(); if( tasks_immed[ i ] == TSK_IMM_EMPTY_ ) @@ -196,7 +196,7 @@ err renge_task_immed_run(){ if( tasks_immed[ 0 ] != TSK_IMM_EMPTY_ ) { DI(); - for( list_id = 0; list_id < TASK_IMMED_RUN_LIST_MAX; list_id += 1 ){ + for( list_id = 0; list_id < TASK_IMMED_RUN_LIST_MAX; list_id ++ ){ if( tasks_immed[ list_id ] == TSK_IMM_EMPTY_ ){ // Xg EI(); @@ -257,7 +257,7 @@ err renge_task_immed_run(){ if( tasks_immed[ j ] == TSK_IMM_EMPTY_ ) { do{ - j -= 1; + j --; DI(); tasks_immed[ j ] = TSK_IMM_EMPTY_; // XgOlߊ @@ -270,7 +270,7 @@ err renge_task_immed_run(){ // Ol߂ׂ^XN‚ tasks_immed[ i ] = tasks_immed[ j ]; tasks_immed[ j ] = TSK_IMM_DELETED_; - i += 1; + i ++; EI(); } } @@ -280,7 +280,7 @@ err renge_task_immed_run(){ { // ̃^XNAؗ } - i += 1; + i ++; } } } diff --git a/branches/sim/rtc.c b/branches/sim/rtc.c index d1b44b9..0bdf7bb 100644 --- a/branches/sim/rtc.c +++ b/branches/sim/rtc.c @@ -168,5 +168,5 @@ void rtc_unlock( ) ======================================================== */ __interrupt void int_rtc_int( ) { - renge_flg_interval += 1; // CNg/fNg߂ĝ DI()sv + renge_flg_interval ++; // CNg/fNg߂ĝ DI()sv } diff --git a/branches/sim/self_flash.c b/branches/sim/self_flash.c index e314276..d1ff4dd 100644 --- a/branches/sim/self_flash.c +++ b/branches/sim/self_flash.c @@ -133,7 +133,7 @@ void firm_update( ) //iVt@[ƂɎcĂAȑÕt@[̃tb^j for( target_block = INACTIVE_BOOTSECT_TOP; target_block < ALTERNATE_FIRMTOP; - target_block += 1 ) + target_block ++ ) { FSL_Erase( target_block ); } @@ -144,7 +144,7 @@ void firm_update( ) // IAX^[gAbv[`ɔ for( target_block = INACTIVE_BOOTSECT_TOP; target_block < ALTERNATE_FIRMTOP; - target_block += 1 ) + target_block ++ ) { u8 my_spd; @@ -155,7 +155,7 @@ void firm_update( ) // for( split_write_count = 0; split_write_count < SELF_UPDATE_SPLIT_WRITE_NUM; - split_write_count += 1 ) + split_write_count ++ ) { u8* p_buffer = &pool.self_update_work[0]; u16 buff_written_size = 0; @@ -171,8 +171,8 @@ void firm_update( ) IICAIF = 0; *p_buffer = IICA; WREL = 1; - p_buffer += 1; - buff_written_size += 1; + p_buffer ++; + buff_written_size ++; } while( ( buff_written_size != SELF_UPDATE_BUFF_SIZE ) && !SPD ); @@ -233,7 +233,7 @@ void firm_update( ) } if( *( __far u8 * )( N_MGC_L +2 ) != ':' ) // ς̂܂ { - comp += 1; + comp ++; } if( comp == 0 ) @@ -282,7 +282,7 @@ void firm_restore( ) } if( *( u8 * )( MGC_FOOT_BKUP ) == 0xFF ) { - comp += 1; + comp ++; } if( comp != 0 ) @@ -318,7 +318,7 @@ void firm_restore( ) // d{^œdoff static u8 sw_hold_count; - if( !SW_POW_n ) + if( !SW_POW_n_RAW ) { sw_hold_count++; } @@ -472,7 +472,7 @@ static err firm_duplicate( u8 block_src, // ݐubN̐JԂ for( target_block = block_dest; target_block < ( block_dest + FIRM_SIZE ); - target_block += 1 ) + target_block ++ ) { led_print(2); WDT_Restart( ); @@ -482,7 +482,7 @@ static err firm_duplicate( u8 block_src, { led_print(3); FSL_Erase( target_block ); - if( --retry_error == 0 ) + if( -- retry_error == 0 ) { // tbVH FSL_Close( ); @@ -494,7 +494,7 @@ static err firm_duplicate( u8 block_src, // ݕJԂ for( split_write_count = 0; split_write_count < SELF_UPDATE_SPLIT_WRITE_NUM; - split_write_count += 1 ) + split_write_count ++ ) { u16 buff_written_size; u8* p_buff; @@ -505,9 +505,9 @@ static err firm_duplicate( u8 block_src, do { *p_buff = *p_src; - p_src += 1; - p_buff += 1; - buff_written_size +=1; + p_src ++; + p_buff ++; + buff_written_size ++; } while( buff_written_size != SELF_UPDATE_BUFF_SIZE ); diff --git a/branches/sim/sim/sfrAlias.h b/branches/sim/sim/sfrAlias.h index 6161064..7317751 100644 --- a/branches/sim/sim/sfrAlias.h +++ b/branches/sim/sim/sfrAlias.h @@ -68,7 +68,7 @@ // INTP6 // PM -#define PM_EXTDC_n mcuRegP[ _P7_0 ] +#define PM_EXTDC_n_RAW mcuRegP[ _P7_0 ] // INTP7 //#define BT_TEMP mcuRegP[ _P15_0 ] // ANI8 @@ -89,25 +89,25 @@ #define BT_CHG_Ena_n ( mcuRegP[ _P4_3 ] ) // [d(in) -#define BT_IN_CHG_n mcuRegP[ _P5_1 ] +#define BT_IN_CHG_n_RAW mcuRegP[ _P5_1 ] #define PU_BT_IN_CHG_n mcuRegPU[ _P5_1 ] -#define SW_WIFI_n mcuRegP[ _P7_4 ] +#define SW_WIFI_n_RAW mcuRegP[ _P7_4 ] #define PM_SW_WIFI_n mcuRegPM[ _P7_4 ] // KR4 -#define SW_POW_n mcuRegP[ _P7_3 ] +#define SW_POW_n_RAW mcuRegP[ _P7_3 ] // KR3 #define SW_SEL_n mcuRegP[ _P2_3 ] #define PM_SW_SEL_n mcuRegPM[ _P2_3 ] //#define VOL mcuRegP[ _P2_7 ] // ANI7 -#define SW_HOME_n_JIKKI mcuRegP[ _P20_4 ] +#define SW_HOME_n_JIKKI_RAW mcuRegP[ _P20_4 ] #define PM_SW_HOME_n_JIKKI mcuRegPM[ _P20_4 ] #define PU_SW_HOME_n_JIKKI mcuRegPU[ _P20_4 ] // INTP22 -#define SW_HOME_n_TSBOARD mcuRegP[ _P2_0 ] +#define SW_HOME_n_TSBOARD_RAW mcuRegP[ _P2_0 ] #define PM_SW_HOME_n_TSBOARD mcuRegPM[ _P2_0 ] // WiFi @@ -158,7 +158,7 @@ #define DIPSW_TAIKENDAI_NBD 1 -#define SHELL_OPEN mcuRegP[ _P7_1 ] // INTP5 ӂJ (‚L) +#define SHELL_OPEN_RAW mcuRegP[ _P7_1 ] // INTP5 ӂJ (‚L) //#define DBG_VR mcuRegP[ _P2_6 ] // ANI6 diff --git a/branches/sim/sw.c b/branches/sim/sw.c index d4ccc7c..70af168 100644 --- a/branches/sim/sw.c +++ b/branches/sim/sw.c @@ -36,8 +36,6 @@ bit SW_pow_mask; u8 SW_home_count, SW_wifi_count, SW_home_count_rel; u8 sw_wifi_mukan_time; -bit SW_HOME_n; - u16 off_timeout_timer; u16 sw_pwsw_mukan_time; @@ -54,7 +52,7 @@ u16 sw_pwsw_mukan_time; if( mask != 0 ){ \ counter = 0; \ }else{ \ - counter += 1; \ + counter ++; \ if( counter == 0 ) counter = -1; \ } \ } \ @@ -64,14 +62,14 @@ u16 sw_pwsw_mukan_time; #define chk_clicked( button, count, irq_bit_name ) \ if( !button ) \ { \ - if( count <= CLICK_THRESHOLD ) \ + if( count < CLICK_THRESHOLD ) \ { \ - count += 1; \ - } \ - if( count == CLICK_THRESHOLD ) \ - { \ - count += 1; \ - set_irq( VREG_C_IRQ0, irq_bit_name ); \ + count ++; \ + if( count == CLICK_THRESHOLD ) \ + { \ + count ++; \ + set_irq( VREG_C_IRQ0, irq_bit_name ); \ + } \ } \ } \ else \ @@ -94,7 +92,7 @@ void tsk_sw( ) SW_pow_count = 0; // JEgNA } - if( --task_interval != 0 ) + if( -- task_interval != 0 ) { return; } @@ -131,7 +129,7 @@ void tsk_sw( ) if( off_timeout_timer != 0 ) // 荞݌A^CAEgŋItB { - off_timeout_timer -= 1; + off_timeout_timer --; if( off_timeout_timer == 1 ) { force_off = true; @@ -163,19 +161,6 @@ void tsk_sw( ) count_sw_n( SW_POW_n, SW_pow_count, SW_pow_mask ); // {^Ԃ̃JEg // HOME XCb` // - switch( system_status.model ) - { - case( MODEL_JIKKI ): - case( MODEL_SHIROBAKO ): - SW_HOME_n = SW_HOME_n_JIKKI; // ڑ̃|[gႤ - break; - case( MODEL_TS_BOARD ): - SW_HOME_n = SW_HOME_n_TSBOARD; - break; - default: - SW_HOME_n = 1; // Ă - } - chk_clicked( SW_HOME_n, SW_home_count, REG_BIT_SW_HOME_CLICK ); chk_clicked( !SW_HOME_n, SW_home_count_rel, REG_BIT_SW_HOME_RELEASE ); diff --git a/branches/sim/task_debug.c b/branches/sim/task_debug.c index e6e0785..4c520d9 100644 --- a/branches/sim/task_debug.c +++ b/branches/sim/task_debug.c @@ -43,7 +43,7 @@ void tsk_debug( ) static u8 count = 0; // fobOLEDi8bitj̏ temp = iic_mcu_read_a_byte( IIC_SLA_8LEDS, IIC_8LEDS_REG_DO ); - count += 1; + count ++; iic_mcu_write_a_byte( IIC_SLA_8LEDS, IIC_8LEDS_REG_DO, count ); iic_mcu_write_a_byte( IIC_SLA_DBG_MONITOR, 3, count ); } diff --git a/branches/sim/task_misc.c b/branches/sim/task_misc.c index 3ad80a2..e88057b 100644 --- a/branches/sim/task_misc.c +++ b/branches/sim/task_misc.c @@ -157,7 +157,7 @@ void update_LED_3D() { if( LED_duty_3d != 0 ) { - LED_duty_3d -= 1; + LED_duty_3d --; } } else @@ -166,12 +166,12 @@ void update_LED_3D() { if( LED_duty_3d < vreg_ctr[VREG_C_LED_BRIGHT] ) { - LED_duty_3d += 1; - } - else - { - LED_duty_3d -= 1; - } + LED_duty_3d ++; + } + else + { + LED_duty_3d --; + } } } } @@ -276,7 +276,7 @@ extern bit bt_authorized; 10) system_status.family ======================================================== */ -#define KOUMOKU 9 +#define KOUMOKU 18 u8 extinfo_read() { u8 infos[ KOUMOKU +1 ]; @@ -299,22 +299,42 @@ u8 extinfo_read() infos[7] = ( !temp_zone_charge_disable | ( bt_authorized << 1 ) ); infos[8] = 1; // system_status.info_fullcolor; infos[9] = system_status.family; + + infos[10] = LED_pow_red; + infos[11] = LED_duty_pow_blu; + infos[12] = LED_duty_3d; + infos[13] = LED_duty_notify_red; + infos[14] = LED_duty_notify_grn; + infos[15] = LED_duty_notify_blu; + infos[16] = LED_CAM; + infos[17] = LED_duty_WiFi; + infos[18] = +// ( PM_EXTDC_n ? REG_BIT_HAL0_PM_EXTDC_n : 0 ) // status0ɂ + 0 + | ( BT_IN_CHG_n ? REG_BIT_HAL0_BT_IN_CHG_n : 0 ) +// | ( SHELL_OPEN ? REG_BIT_HAL0_SHELL_OPEN : 0 ) // status0ɂ + | ( BT_CHG_Ena_n ? REG_BIT_HAL0_RSV_5 : 0 ) // 󂫃rbggp,out pin + | 0 + | ( SW_WIFI_n ? REG_BIT_HAL0_SW_WIFI_n : 0 ) + | ( SW_HOME_n ? REG_BIT_HAL0_SW_HOME_n : 0 ) + | ( SW_POW_n ? REG_BIT_HAL0_SW_POW_n : 0 ); + // ڑƂ͋C‚Ă!! // - iic_burst_state++; + iic_burst_state ++; return( infos[ iic_burst_state -1 ] ); } #ifdef i2c_timeout_test void i2c_mcu_error_monitor() - { - LED_duty_pow_blu = 0xff; - LED_duty_3d = 0xff; - LED_duty_notify_red = 0xff; - LED_duty_notify_grn = 0xff; - LED_duty_notify_blu = 0xff; - LED_pow_red = 1; - LED_CAM = 1; - } +{ + LED_duty_pow_blu = 0xff; + LED_duty_3d = 0xff; + LED_duty_notify_red = 0xff; + LED_duty_notify_grn = 0xff; + LED_duty_notify_blu = 0xff; + LED_pow_red = 1; + LED_CAM = 1; +} #endif diff --git a/branches/sim/task_status.c b/branches/sim/task_status.c index 34665ff..0d07510 100644 --- a/branches/sim/task_status.c +++ b/branches/sim/task_status.c @@ -9,41 +9,29 @@ #include "incs_loader.h" #include "renge\renge.h" +#include "hal.h" + #include "pm.h" #include "accero.h" #include "adc.h" #include "i2c_mcu.h" - +#include "led.h" // ======================================================== #define INTERVAL_TSK_STATUS 4 -extern bit BT_CHG_STAT_Change; - - /* ======================================================== Xe[^XWX^Ȃ ======================================================== */ void tsk_status( ) { -// static u8 interval_task_status = 0; static u8 state_old; // Xe[^Xωo荞 ̈ u8 diff; -/* - if( interval_task_status != 0 ) - { - interval_task_status -= 1; - return; - } - else - { - interval_task_status = (u8)( INTERVAL_TSK_STATUS / SYS_INTERVAL_TICK ); - } -*/ - // WJ`FbN + + // WJ`FbN set_bit( SHELL_OPEN, vreg_ctr[VREG_C_STATUS], REG_BIT_ST_SHELL_OPEN ); // Xe[^XWX^֌W 荞 // @@ -61,8 +49,6 @@ void tsk_status( ) { if( diff & REG_BIT_BATT_CHARGE ) { - BT_CHG_STAT_Change = true; - // [dԂɈȉ if( vreg_ctr[VREG_C_STATUS] & REG_BIT_BATT_CHARGE ) { diff --git a/branches/sim/task_sys.c b/branches/sim/task_sys.c index b1b3420..935b2a8 100644 --- a/branches/sim/task_sys.c +++ b/branches/sim/task_sys.c @@ -33,7 +33,6 @@ static void force_off_check(); static void send_getup_to_soc(); - //========================================================= extern bit info_led_off; extern bit going_to_sleep; @@ -46,6 +45,10 @@ extern u8 chg_led_override; extern bit i2c_mcu_time_out_error; #endif + +//========================================================= +#define PWSW_POWON_TIME (u8)( 20 / SYS_INTERVAL_TICK ) + /* ======================================================== }CRŕKvȂ Eȓd͂ɓ @@ -54,9 +57,11 @@ extern bit i2c_mcu_time_out_error; ======================================================== */ void tsk_sys( ) { - static u8 timeout = 0; + static u8 pwsw_timeout = 0; // d{^`^OB@^CAEg܂łɓdm肵Ȃoffɖ߂ - switch ( system_status.pwr_state ) + hal_update(); + + switch ( system_status.pwr_state ) { case ON_CHECK: //------------------------------------------------------- // XCb`ȂǂŊ荞݂AX[vƂɗ܂B @@ -66,21 +71,21 @@ void tsk_sys( ) // XCb`œdon if( SW_pow_count != 0 ) { - timeout = 0; + pwsw_timeout = 0; } else { - timeout += 1; + pwsw_timeout ++; } - if( timeout > 100 ) + if( pwsw_timeout > 100 ) { system_status.pwr_state = OFF; // XCb`̓mCYBQB renge_task_interval_run_force = true; return; } - if( SW_pow_count < 10 ) + if( SW_pow_count < PWSW_POWON_TIME ) { // XCb`̗lq return; @@ -91,14 +96,9 @@ void tsk_sys( ) SW_pow_mask = true; - timeout = 0; - // for debug #ifdef _DEBUG_BT_FUEL_ vreg_ctr[ VREG_C_DBG01 ] = 99; -#endif -#ifdef _DEBUG_BT_TEMP_ - vreg_ctr[ VREG_C_DBG01 ] = 0x80; #endif vreg_ctr[ VREG_C_COMMAND3 ] = 0; @@ -198,19 +198,14 @@ void tsk_sys( ) iic_mcu_start(); -#ifdef _MCU_BSR_ // MK2 = ~( INT_MSK2_IIC_TWL | INT_MSK2_WIFI_TX_BSR | INT_MSK2_CODEC_PMIRQ ); // PMK21 = 0; // wifi gȂ PMK6 = 0; // pm_irq -#else - MK2L = ~INT_MSK2_WIFI_TX_KE3; -#endif // todo Iɂ͊SɃWX^ RBR_RESET_n = 1; RBR_FLIGHT = 0; - // u[gAXe[^XƂȂXV if( system_status.reboot ) { @@ -245,7 +240,7 @@ void tsk_sys( ) // SLPĎ if( going_to_sleep ) // ΂ SLP_REQ ̑Oɗ\ { - timeout_sleep += 1; + timeout_sleep ++; if( timeout_sleep == 0 || // I[o[t[ҁBsleepČLjuŋNċC‚Ȃ ( PIF0 && !SLP_REQ )) // slp荞݂CANĂ܂ { @@ -348,7 +343,7 @@ void tsk_sys( ) // PU5 ̂܂ PU7 = bits8(0,0,0,0, 1,0,0,1); // PWSWI,PM_EXTTDC,( IRQ0_deactive(), PM_IRQ_deactive ) - PU_SW_HOME_n_JIKKI = 0; // SW_HOME ~ + PU_SW_HOME_n_JIKKI = 0; // SW_HOME ~ IF0 = 0; IF1 = 0; @@ -359,10 +354,10 @@ void tsk_sys( ) PM_sys_pow_off( ); // |[gނ~[hɁBHłALo͂ɂȂႾ߂ȁB - SW_WIFI_n = 0; + SW_WIFI_n_RAW = 0; PM_SW_WIFI_n = 0; - SW_HOME_n_JIKKI = 0; + SW_HOME_n_JIKKI_RAW = 0; PM_SW_HOME_n_JIKKI = 0; WL_TX = 0; @@ -382,21 +377,29 @@ void tsk_sys( ) SW_pow_mask = true; SW_pow_count = 0; + // HALfobOZbg + vreg_ctr[ VREG_C_HAL_OVW_CONT0 ] = 0; + vreg_ctr[ VREG_C_HAL_OVW_CONT1 ] = 0; + vreg_ctr[ VREG_C_HAL_OVW_TEMPERATURE ] = 0xFF; + vreg_ctr[ VREG_C_HAL_OVW_BT_FUEL ] = 0xFF; + vreg_ctr[ VREG_C_HAL_OVW_BT_VOLTAGE ] = 0xFF; /* FALLTHROUGH */ case OFF: system_status.poweron_reason = NONE; - if( !PM_EXTDC_n ) + pwsw_timeout = 0; + + if( !PM_EXTDC_n ) { // A_v^hĂƂ͂̃ubNJԂB BT_chk(); // v|[Oidrꌟô߁j // ̒ŕKvI2C_m_initĂł܂ // A_v^LF[dxĎ - if( SW_pow_count >= 10 ) // dXCb`̂҂ + if( SW_pow_count > PWSW_POWON_TIME ) // dXCb`̂҂ { // d - system_status.pwr_state = ON_CHECK; + system_status.pwr_state = ON_CHECK; // ɉԃ`FbN͍iēdɓ } if( system_status.model != MODEL_JIKKI ) @@ -406,6 +409,7 @@ void tsk_sys( ) if( system_status.taikendai ) { + vreg_ctr[ VREG_C_HAL_OVW_CONT0 ] = vreg_ctr[ VREG_C_HAL_OVW_CONT1 ] = 0; // d wait_ms(46); system_status.poweron_reason = PWSW; @@ -437,7 +441,20 @@ void tsk_sys( ) if( PM_EXTDC_n ) // ǂ^C~Oő}N邱Ƃ { - STOP( ); + /* + vreg_ctr[ VREG_C_HAL_OVW_CONT0 ] = 0; + vreg_ctr[ VREG_C_HAL_OVW_CONT1 ] = 0; + vreg_ctr[ VREG_C_HAL_OVW_TEMPERATURE ] = 0xFF; + vreg_ctr[ VREG_C_HAL_OVW_BT_FUEL ] = 0xFF; + vreg_ctr[ VREG_C_HAL_OVW_BT_VOLTAGE ] = 0xFF; +*/ + if( vreg_ctr[ VREG_C_HAL_OVW_CONT0 ] != 0 || + vreg_ctr[ VREG_C_HAL_OVW_BT_FUEL ] == 0xFF ) + { + NOP(); + } + + STOP( ); } // N // @@ -453,7 +470,6 @@ void tsk_sys( ) // d{^ŋNƂ SW_pow_mask = false; system_status.pwr_state = ON_CHECK; - timeout = 0; } // else{ // A_v^ŋNƂ OFF ̒邮܂ @@ -530,8 +546,8 @@ static void chk_emergencyExit(){ { if( !RESET1_n ) { - if( shirobako_power_control_count != 255 ) - shirobako_power_control_count += 1; + if( shirobako_power_control_count != 255 ) + shirobako_power_control_count ++; } else { diff --git a/branches/sim/user_define.h b/branches/sim/user_define.h index 33477d7..fb4bf2b 100644 --- a/branches/sim/user_define.h +++ b/branches/sim/user_define.h @@ -78,7 +78,7 @@ // INTP6 // PM -#define PM_EXTDC_n P7.0 +#define PM_EXTDC_n_RAW P7.0 // INTP7 //#define BT_TEMP P15.0 // ANI8 @@ -99,26 +99,26 @@ #define BT_CHG_Ena_n ( P4.3 ) // [d(in) -#define BT_IN_CHG_n P5.1 +#define BT_IN_CHG_n_RAW P5.1 #define PM_BT_IN_CHG_n PM5.1 #define PU_BT_IN_CHG_n PU5.1 -#define SW_WIFI_n P7.4 +#define SW_WIFI_n_RAW P7.4 #define PM_SW_WIFI_n PM7.4 // KR4 -#define SW_POW_n P7.3 +#define SW_POW_n_RAW P7.3 // KR3 -#define SW_SEL_n P2.3 +#define SW_SEL_n P2.3 #define PM_SW_SEL_n PM2.3 //#define VOL P2.7 // ANI7 -#define SW_HOME_n_JIKKI P20.4 +#define SW_HOME_n_JIKKI_RAW P20.4 #define PM_SW_HOME_n_JIKKI PM20.4 #define PU_SW_HOME_n_JIKKI PU20.4 // INTP22 -#define SW_HOME_n_TSBOARD P2.0 // TS}U[pull up(P2͓p.u.) +#define SW_HOME_n_TSBOARD_RAW P2.0 // TS}U[pull up(P2͓p.u.) #define PM_SW_HOME_n_TSBOARD PM2.0 // WiFi @@ -166,11 +166,11 @@ #define DIPSW_TAIKENDAI_NBD 0b01 -#define SHELL_OPEN P7.1 // INTP5 ӂJ (‚L) +#define SHELL_OPEN_RAW P7.1 // INTP5 ӂJ (‚L) -#define ACC_VALID P20.5 +#define ACC_VALID P20.5 #define PM_ACC_VALID PM20.5 -#define ACCEL_INT1 P2.5 +#define ACCEL_INT1 P2.5 #define PM_ACCEL_INT1 PM2.5 diff --git a/branches/sim/vreg_ctr.c b/branches/sim/vreg_ctr.c index c8b3cc6..deccd94 100644 --- a/branches/sim/vreg_ctr.c +++ b/branches/sim/vreg_ctr.c @@ -31,8 +31,7 @@ u8 vreg_ctr[VREG_C_ENDMARK_ + 16]; u8 vreg_ctr[VREG_C_ENDMARK_]; #endif -u8 vreg_free_adrs; // AhXł̂ł΂炭͂ - +static u8 vreg_free_adrs; // AhXł̂ł΂炭͂ bit irq_readed; // AAA^̂߁B @@ -156,19 +155,21 @@ void vreg_ctr_write( u8 adrs, u8 data ) case ( VREG_C_COMMAND1 ): if( data != 0 ) { + // u8 temp; ԕϐg΂łȂ... // TWLɊ荞݂ /// ۂɊ荞݂̂SoC - vreg_twl[REG_TWL_INT_ADRS_IRQ] = ( ( data & REG_BIT_SEND_TWL_PWSW_DET ) != 0 ) ? REG_BIT_TWL_IRQ_PWSW_DET : 0x00; //pwsw_det - vreg_twl[REG_TWL_INT_ADRS_IRQ] |= ( ( data & REG_BIT_SEND_TWL_RESET_DET ) != 0 ) ? REG_BIT_TWL_IRQ_RESET : 0x00; //reset_req + /// rbg̕тႤʓ| + vreg_twl[ REG_TWL_INT_ADRS_IRQ ] = ( ( data & REG_BIT_SEND_TWL_PWSW_DET ) != 0 ) ? REG_BIT_TWL_IRQ_PWSW_DET : 0x00; //pwsw_det + vreg_twl[ REG_TWL_INT_ADRS_IRQ ] |= ( ( data & REG_BIT_SEND_TWL_RESET_DET ) != 0 ) ? REG_BIT_TWL_IRQ_RESET : 0x00; //reset_req - vreg_twl[REG_TWL_INT_ADRS_IRQ] |= ( ( data & REG_BIT_SEND_TWL_OFF_DET ) != 0 ) ? REG_BIT_TWL_IRQ_OFF : 0x00; //off_req + vreg_twl[ REG_TWL_INT_ADRS_IRQ ] |= ( ( data & REG_BIT_SEND_TWL_OFF_DET ) != 0 ) ? REG_BIT_TWL_IRQ_OFF : 0x00; //off_req - vreg_twl[REG_TWL_INT_ADRS_IRQ] |= ( ( data & REG_BIT_SEND_TWL_BATT_LOW ) != 0 ) ? REG_BIT_TWL_IRQ_BT_LOW : 0x00; //batt_low - vreg_twl[REG_TWL_INT_ADRS_IRQ] |= ( ( data & REG_BIT_SEND_TWL_BATT_EMPTY ) != 0 ) ? REG_BIT_TWL_IRQ_BT_EMPTY : 0x00; //batt_empty + vreg_twl[ REG_TWL_INT_ADRS_IRQ ] |= ( ( data & REG_BIT_SEND_TWL_BATT_LOW ) != 0 ) ? REG_BIT_TWL_IRQ_BT_LOW : 0x00; //batt_low + vreg_twl[ REG_TWL_INT_ADRS_IRQ ] |= ( ( data & REG_BIT_SEND_TWL_BATT_EMPTY ) != 0 ) ? REG_BIT_TWL_IRQ_BT_EMPTY : 0x00; //batt_empty if(( data & REG_BIT_SEND_TWL_VOL_CLICK ) != 0 ) { - vreg_twl[REG_TWL_INT_ADRS_IRQ] |= REG_BIT_TWL_IRQ_VOL_CHANGE; //vol_changed + vreg_twl[ REG_TWL_INT_ADRS_IRQ ] |= REG_BIT_TWL_IRQ_VOL_CHANGE; //vol_changed } } break; @@ -177,12 +178,12 @@ void vreg_ctr_write( u8 adrs, u8 data ) if( iic_burst_state == 0 ) { vreg_ctr[ VREG_C_LED_POW ] = data; - iic_burst_state += 1; + iic_burst_state ++; } else if( iic_burst_state < 5 ) { led_red_batt_empty.dats[ iic_burst_state -1 ] = data; - iic_burst_state += 1; + iic_burst_state ++; } break; @@ -200,7 +201,7 @@ void vreg_ctr_write( u8 adrs, u8 data ) data = 1; } info_LED.bindata[ iic_burst_state ] = data; - iic_burst_state += 1; + iic_burst_state ++; if( iic_burst_state > 4 ) // p^[1ł { info_led_pattern_updated = true; @@ -294,7 +295,7 @@ void vreg_ctr_write( u8 adrs, u8 data ) if( vreg_free_adrs < VREG_C_FREE_SIZE ) { pool.vreg_c_ext.vreg_c_free[ vreg_free_adrs ] = data; - vreg_free_adrs += 1; + vreg_free_adrs ++; } break; @@ -322,13 +323,31 @@ void vreg_ctr_write( u8 adrs, u8 data ) // mcu_wdt_reset; // ̃R}hgӖȂłI break; #endif + case( 'p' ): + hosu_increment_if_necessary(); // A + break; } - vreg_ctr[ VREG_C_COMMAND3 ] = data; + +// vreg_ctr[ VREG_C_COMMAND3 ] = data; break; case ( VREG_C_RBR_CONTROL ): - RBR_RESET_n = ( data & REG_BIT_RESET_n ) ? 1: 0; - RBR_FLIGHT = ( data & REG_BIT_FLIGHT ) ? 1: 0; + if(( data & REG_BIT_RESET_n ) != 0 ) + { + RBR_RESET_n = 1; + } + else + { + RBR_RESET_n = 0; + } + if(( data & REG_BIT_FLIGHT ) != 0 ) + { + RBR_FLIGHT = 1; + } + else + { + RBR_FLIGHT = 0; + } vreg_ctr[ VREG_C_RBR_CONTROL ] = data; break; @@ -356,7 +375,8 @@ void vreg_ctr_write( u8 adrs, u8 data ) NOP(); break; - default: + // ʂɏ邾 ///////////////////////////////// + default: /* case ( VREG_C_IRQ_MASK0 ): case ( VREG_C_IRQ_MASK1 ): @@ -374,6 +394,10 @@ void vreg_ctr_write( u8 adrs, u8 data ) case ( VREG_C_RTC_ALARM_YEAR ): case ( VREG_C_ACC_W_ADRS ): case ( VREG_C_OFF_DELAY ): + VREG_C_HAL_OVW_CONT0 = 0x52, + VREG_C_HAL_OVW_DAT0, + VREG_C_HAL_OVW_CONT1, + VREG_C_HAL_OVW_DAT1, */ if( adrs < VREG_C_ENDMARK_ ) { @@ -436,7 +460,7 @@ u8 vreg_ctr_read( u8 adrs ) else if( adrs == VREG_CX_FREE_DATA ) { temp = pool.vreg_c_ext.vreg_c_free[ vreg_free_adrs ]; - // vreg_free_adrs += 1; // ʼnZĂ܂ƃCfbNX + // vreg_free_adrs ++; // ʼnZĂ܂ƃCfbNX return( temp ); } else if( adrs == VREG_CX_INFO ) @@ -445,7 +469,14 @@ u8 vreg_ctr_read( u8 adrs ) } else if( adrs == VREG_C_ACC_HOSU_SETTING ) { - return( pedolog_overflow? 0x10: 0 ); + if( pedolog_overflow ) + { + return( 0x10 ); + } + else + { + return( 0 ); + } } if( adrs >= VREG_C_ENDMARK_ ) @@ -478,7 +509,7 @@ void vreg_ctr_after_read( u8 adrs, u8 data ) break; case VREG_CX_FREE_DATA: - vreg_free_adrs += 1; + vreg_free_adrs ++; break; default: diff --git a/branches/sim/vreg_ctr.h b/branches/sim/vreg_ctr.h index dc216c3..55a89df 100644 --- a/branches/sim/vreg_ctr.h +++ b/branches/sim/vreg_ctr.h @@ -27,7 +27,7 @@ // twl bl ̃~[[1: ( 1 << 3 ) // 0]( 1 << 2 ) #define REG_BIT_ACCERO_ERR ( 1 << 1 ) -#define REG_BIT_MGIC_ERR ( 1 << 0 ) +#define REG_BIT_MGIC_ERR ( 1 << 0 ) // VREG_C_IRQ0 #define REG_BIT_IRQ_WDT_RESET ( 1 << 7 ) @@ -113,10 +113,6 @@ #define REG_BIT_TWL_IRQ_BT_EMPTY 0x10 #define REG_BIT_TWL_IRQ_VOL_CHANGE 0x40 -// VOL option (0x26) -//#define REG_BIT_VOL_UPDATE_TO_SLIDER ( 1 << 4 ) -//#define REG_BIT_VOL_BY_SPI ( 1 << 0 ) -// FORCE_REG̕ア // CODECPMIC NTR ̑㗝WX^ #define REG_BIT_TWL_REQ_OFF ( 1 << 6 ) @@ -133,6 +129,24 @@ #define REG_BIT_RESET_n ( 1 << 0 ) +// HAL bitfields 0 +#define REG_BIT_HAL0_PM_EXTDC_n ( 1 << 7 ) +#define REG_BIT_HAL0_BT_IN_CHG_n ( 1 << 6 ) +//#define REG_BIT_HAL0_PM_IRQ_n // gȂ +#define REG_BIT_HAL0_RSV_5 ( 1 << 5 ) +#define REG_BIT_HAL0_WL_TX ( 1 << 4 ) +#define REG_BIT_HAL0_SHELL_OPEN ( 1 << 3 ) // statusɂ܂ +#define REG_BIT_HAL0_SW_WIFI_n ( 1 << 2 ) +#define REG_BIT_HAL0_SW_HOME_n ( 1 << 1 ) +#define REG_BIT_HAL0_SW_POW_n ( 1 << 0 ) + + +// HAL bitfields 1 +#define REG_BIT_HAL1_DIPSW_1 ( 1 << 3 ) +#define REG_BIT_HAL1_DIPSW_0 ( 1 << 2 ) +#define REG_BIT_HAL1_HW_DET_1 ( 1 << 1 ) +#define REG_BIT_HAL1_HW_DET_0 ( 1 << 0 ) + /* ev #define REG_BIT_ ( 1 << 7 ) @@ -204,6 +218,8 @@ enum VREG_C_ADRS VREG_C_LED_NOTIFY_DATA, VREG_C_LED_NOTIFY_FLAG, + VREG_C_RBR_CONTROL = 0x2F, + VREG_C_RTC_SEC = 0x30, VREG_C_RTC_MIN, VREG_C_RTC_HOUR, @@ -245,14 +261,23 @@ enum VREG_C_ADRS VREG_C_ACC_HOSU_HOUR_BOUNDARY = 0x50, VREG_C_ACC_HOSU_HOUR_BOUNDARY_SEC, - VREG_C_RBR_CONTROL = 0x57, + VREG_C_HAL_OVW_CONT0 = 0x52, + VREG_C_HAL_OVW_DAT0, + VREG_C_HAL_OVW_CONT1, + VREG_C_HAL_OVW_DAT1, + + VREG_C_HAL_OVW_BT_FUEL = 0x56, + VREG_C_HAL_OVW_BT_VOLTAGE, VREG_C_VOL_CAL_MIN = 0x58, VREG_C_VOL_CAL_MAX, - VREG_C_ENDMARK_ + VREG_C_HAL_OVW_TEMPERATURE = 0x5A, + + VREG_C_ENDMARK_ }; +// Ԃ͔ɂāAmۂȂ߂ ʂ define Ă #define VREG_CX_INFO 0x7F #define VREG_CX_FREE_ADRS 0x60 #define VREG_CX_FREE_DATA 0x61 diff --git a/branches/sim/yav_mcu_bsr.plg b/branches/sim/yav_mcu_bsr.plg index f05ed28..38e6e5c 100644 --- a/branches/sim/yav_mcu_bsr.plg +++ b/branches/sim/yav_mcu_bsr.plg @@ -1,31 +1,13 @@ 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 -qvjl2w -sainter_asm -zpb -w2 -no i2c_ctr.c -bsr_system.h(55) : CC78K0R warning W0851: Data aligned in 'struct tag' -i2c_ctr.c(77) : CC78K0R warning W0309: Unused 'reg_adrs_internal' -i2c_ctr.c(277) : CC78K0R warning W0851: Data aligned in '@@DATA section' -i2c_ctr.c(277) : CC78K0R warning W0851: Data aligned in '@@INIT section' -Compilation complete, 0 error(s) and 4 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 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 -qvjl2w -sainter_asm -zpb -w2 -no magic.c -magic.c(16) : CC78K0R warning W0871: Data aligned after 'MGC_HEADdN' in 'MGC_MIMI section' -magic.c(24) : CC78K0R warning W0871: Data aligned after 'MGC_TAILd' in 'MGC_TAIL section' -magic.c(12) : CC78K0R warning W0871: Data aligned after 'MGC_LOADd' in 'MGC_LOAD section' -Compilation complete, 0 error(s) and 3 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 magic.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 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 -qvjl2w -sainter_asm -zpb -w2 -no i2c_mcu.c -bsr_system.h(55) : CC78K0R warning W0851: Data aligned in 'struct tag' -i2c_mcu.c(210) : CC78K0R warning W0401: Conversion may lose significant digits -i2c_mcu.c(655) : CC78K0R warning W0851: Data aligned in '@@DATA section' -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 inter_asm\i2c_mcu.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" -go85h,0FC00h,1024 -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 -w0 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 +"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" -go85h,0FC00h,1024 -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 -w0 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 Link complete, 0 error(s) and 0 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 133 !E debug enable!! -Build Total error(s) : 0 Total warning(s) : 10 +Build Total error(s) : 0 Total warning(s) : 0 diff --git a/branches/sim/yav_mcu_bsr.pri b/branches/sim/yav_mcu_bsr.pri index 1d8d57f..fb5dab9 100644 --- a/branches/sim/yav_mcu_bsr.pri +++ b/branches/sim/yav_mcu_bsr.pri @@ -14,7 +14,7 @@ Low-voltage Flash Rewriting=On Fail Safe Break=0x2000 Port=1 NMI=OFF -TRESET=OFF +TRESET=ON IRESET=OFF WAIT=OFF SysClock=None @@ -22,7 +22,7 @@ SubClock=None [Mapping] Count=0 [Main] -Geometry=22, 22, 1200, 858 +Geometry=1, 1, 878, 808 Window=Max MDI_MAX=OFF Button=ON @@ -58,7 +58,7 @@ Symbol Reset1=ON Dir=\\tsclient\C\78k_data\yav-mcu-basara\branches\sim\ Filter=Source [Debugger Option] -Source Path="" +Source Path="\\tsclient\C\78k_data\yav-mcu-basara\branches\sim\renge" Symbol Size=Byte Symbol Format=Hex Register Name=Func @@ -78,10 +78,10 @@ Symbol Type=OFF Language=C Kanji=SJIS [Source] -Geometry=0, 0, 600, 400 +Geometry=31, 32, 748, 852 Window=Normal -DispStart=60 -CaretPos=81,0 +DispStart=75 +CaretPos=116,0 Mode=Normal DispFile= Address1= @@ -139,27 +139,11 @@ SaveRange=Screen SaveStart= SaveEnd= Accumulative=ON -[Source1] -Geometry=717, 97, 600, 750 -Window=Normal -DispStart=158 -CaretPos=209,0 -Mode=Normal -DispFile=\\tsclient\C\78k_data\yav-mcu-basara\branches\sim\i2c_ctr.c -Accumulative=ON -[Source2] -Geometry=0, 0, 600, 889 -Window=Normal -DispStart=344 -CaretPos=397,0 -Mode=Normal -DispFile=\\tsclient\C\78k_data\yav-mcu-basara\branches\sim\vreg_ctr.c -Accumulative=ON [Assemble] -Geometry=50, 50, 600, 400 -Window=Normal -DispStart=684 -CaretPos=684,27 +Geometry=0, 0, 0, 0 +Window=Hide +DispStart=847561728 +CaretPos=0,0 Address1= Address2= Address3= @@ -195,8 +179,8 @@ Data16= Case=ON Scan=OFF Direction=Down -FindStart= -FindEnd= +FindStart=0 +FindEnd=0 SaveRange=Screen SaveStart= SaveEnd= @@ -293,7 +277,7 @@ Address16= Boundary=0, 0 Mode=Hex Attribute=Show -Sort=Address +Sort=Unsort Pickup=OFF SelectSort=Address Last Name= @@ -885,19 +869,19 @@ SaveEnd= Geometry=0, 0, 0, 0 Window=Hide Mode=Hex -Boundary=0 +Boundary=62 Pickup=OFF Name=Functional Register Bank=0 -RP0=3 -RP1=3 -RP2=3 -RP3=3 -PC=3 -SP=3 -PSW=3 -ES=3 -CS=3 +RP0=1 +RP1=1 +RP2=1 +RP3=1 +PC=1 +SP=1 +PSW=1 +ES=1 +CS=1 [Event Manager] Geometry=0, 0, 0, 0 Window=Hide @@ -973,15 +957,18 @@ Detail=OFF Last Name= Count=0 [Variable] -Geometry=0, 0, 0, 0 -Window=Hide -Boundary=0 -Line=0 +Geometry=1143, 3, 440, 1023 +Window=Normal +Boundary=13762700 +0=.system_status,.,N,A,+,1 +1=.vreg_ctr,P,N,A,+,1 +2=.temp,P,N,A,+,1 +Line=3 [Quick Watch] -0= -1= -2= -3= +0=temp,P,A,1 +1=system_status,P,A,1 +2=vreg_ctr[],P,A,1 +3=vreg_ctr,P,A,1 4= 5= 6= @@ -995,22 +982,10 @@ Line=0 14= 15= [Software Break] -Geometry=0, 876, 500, 200 -Window=Normal +Geometry=0, 0, 0, 0 +Window=Hide Width=150 30 200 100 -Name0=Swb00001 -Address0=vreg_ctr.c#_vreg_ctr_write+0x344 -Window0=ASM -Status0=ON -Name1=Swb00002 -Address1=vreg_ctr.c#_vreg_ctr_write+0x353 -Window1=ASM -Status1=ON -Name2=Swb00003 -Address2=i2c_ctr.c#_int_iic_ctr+0x133 -Window2=ASM -Status2=ON -Count=3 +Count=0 [Reset] Debugger=ON Symbol=OFF diff --git a/branches/sim/yav_mcu_bsr.prj b/branches/sim/yav_mcu_bsr.prj index 84cb5cf..defd579 100644 --- a/branches/sim/yav_mcu_bsr.prj +++ b/branches/sim/yav_mcu_bsr.prj @@ -112,32 +112,6 @@ ZF=0 S=1 E=0 CommandFile=0 -[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 [BuildBefore-AfterCmd] Before1=c:\cygwin\bin\touch magic.c After1=ruby nec_s_2_bsrbin2.rb bsr.hex @@ -257,6 +231,64 @@ Tool1=CC78K0R|W2.13 Tool2=RA78K0R|W1.33 Tool3=SK78K0R|V3.10 Tool4=ID78K0R-QB|V3.61 +[Options.LCNV78K0R 0] +Version=100 +LCNV_GO=0 +E=0 +CommandFile=0 +[Options.LCNV78K0R 1] +Version=100 +LCNV_GO=0 +E=0 +CommandFile=0 +[Options.LCNV78K0R 2] +Version=100 +LCNV_GO=0 +O0=inter_asm +E=0 +CommandFile=0 +[Options.LCNV78K0R 3] +Version=100 +LCNV_GO=0 +E=0 +CommandFile=0 +[Options.LCNV78K0R 4] +Version=100 +LCNV_GO=0 +E=0 +CommandFile=0 +[Options.LCNV78K0R 5] +Version=100 +LCNV_GO=0 +E=0 +CommandFile=0 +[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 [IncFile] Include1=incs_loader.h Include2=jhl_defs.h @@ -295,6 +327,269 @@ Include34=..\..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\in Include35=..\..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\math.h Include36=sim\simOnWin.h Include37=sim\sfrAlias.h +Include38=hal.h +[Options.LK78K0R 0] +Version=100 +O0=bsr_k0r.lmf +O1=bsr.lmf +O2=flash.lmf +O3=a.lmf +G=1 +E=0 +E0=flash.elk +E1=a.elk +GO=1 +GOValue=85 +GOStart=FC00 +GOSizeValue=1024 +GI=1 +GIValue=FFFFFFFFFFFFFFFFFFFF +CCZA=0 +MemInfoCheck=1 +P=1 +P0=bsr_k0r.map +P1=bsr.map +P2=flash.map +P3=a.map +MI=0 +GB=1 +GBValue=6EFBFF +KM=1 +KD=0 +KP=1 +KL=0 +LF=0 +LL=0 +B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib +D0=bsr_mcu.dr +D1=user_area.dr +S=1 +W=0 +SELFCheck=1 +SELF=0 +ZB= +Etcetera0= +Etcetera1=boot.lmf +CommandFile=0 +[Options.LK78K0R 1] +Version=100 +O0=a.lmf +G=0 +E=0 +E0=a.elk +GO=0 +GOValue= +GOStart=FC00 +GOSizeValue=1024 +GI=0 +GIValue=FFFFFFFFFFFFFFFFFFFF +CCZA=1 +MemInfoCheck=0 +P=1 +P0=a.map +MI=0 +GB=0 +GBValue= +KM=1 +KD=1 +KP=0 +KL=0 +LF=0 +LL=0 +S=0 +W=1 +SELFCheck=0 +SELF=0 +ZB= +CommandFile=0 +[Options.LK78K0R 2] +Version=100 +O0=bsr.lmf +O1=bsr_k0r.lmf +O2=flash.lmf +O3=a.lmf +G=1 +E=0 +E0=flash.elk +E1=a.elk +GO=1 +GOValue=85 +GOStart=FC00 +GOSizeValue=1024 +GI=1 +GIValue=1B339499E033F240BFAA +CCZA=0 +MemInfoCheck=1 +P=1 +P0=bsr_k0r.map +P1=bsr.map +P2=flash.map +P3=a.map +MI=0 +GB=1 +GBValue=7EFBFF +KM=1 +KD=0 +KP=0 +KL=0 +LF=0 +LL=0 +B0=C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\lib78k0r\fsl.lib +B1=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib +D0=bsr_mcu.dr +D1=user_area.dr +S=1 +W=0 +SELFCheck=0 +SELF=0 +ZB= +Etcetera0= +Etcetera1=boot.lmf +CommandFile=0 +OFILE=C:\78k_data\yav-mcu-basara\branches\sim\bsr.lmf +[Options.LK78K0R 3] +Version=100 +O0=bsr_bsr.lmf +O1=bsr_k0r.lmf +O2=bsr.lmf +O3=flash.lmf +O4=a.lmf +G=1 +E=0 +E0=flash.elk +E1=a.elk +GO=1 +GOValue=85 +GOStart=FC00 +GOSizeValue=1024 +GI=1 +GIValue=FFFFFFFFFFFFFFFFFFFF +CCZA=0 +MemInfoCheck=1 +P=1 +P0=bsr_bsr.map +P1=bsr_k0r.map +P2=bsr.map +P3=flash.map +P4=a.map +MI=0 +GB=1 +GBValue=6EFBFF +KM=1 +KD=0 +KP=1 +KL=0 +LF=0 +LL=0 +B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib +D0=bsr_mcu.dr +D1=user_area.dr +S=1 +W=2 +SELFCheck=0 +SELF=0 +ZB= +Etcetera0= +Etcetera1=boot.lmf +CommandFile=0 +[Options.LK78K0R 4] +Version=100 +O0=bsr_k0r.lmf +O1=bsr.lmf +O2=flash.lmf +O3=a.lmf +G=1 +E=0 +E0=flash.elk +E1=a.elk +GO=1 +GOValue=85 +GOStart=FC00 +GOSizeValue=1024 +GI=1 +GIValue=FFFFFFFFFFFFFFFFFFFF +CCZA=0 +MemInfoCheck=1 +P=1 +P0=bsr_k0r.map +P1=bsr.map +P2=flash.map +P3=a.map +MI=0 +GB=1 +GBValue=6EFBFF +KM=1 +KD=0 +KP=1 +KL=0 +LF=0 +LL=0 +B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib +D0=bsr_mcu.dr +D1=user_area.dr +S=1 +W=0 +SELFCheck=1 +SELF=0 +ZB= +Etcetera0= +Etcetera1=boot.lmf +CommandFile=0 +[Options.LK78K0R 5] +Version=100 +O0=bsr_bsr.lmf +O1=bsr_k0r.lmf +O2=bsr.lmf +O3=flash.lmf +O4=a.lmf +G=1 +E=0 +E0=flash.elk +E1=a.elk +GO=1 +GOValue=85 +GOStart=FC00 +GOSizeValue=1024 +GI=1 +GIValue=FFFFFFFFFFFFFFFFFFFF +CCZA=0 +MemInfoCheck=1 +P=1 +P0=bsr_bsr.map +P1=bsr_k0r.map +P2=bsr.map +P3=flash.map +P4=a.map +MI=0 +GB=1 +GBValue=6EFBFF +KM=1 +KD=0 +KP=1 +KL=0 +LF=0 +LL=0 +B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib +D0=bsr_mcu.dr +D1=user_area.dr +S=1 +W=2 +SELFCheck=0 +SELF=0 +ZB= +Etcetera0= +Etcetera1=boot.lmf +CommandFile=0 +[Options.78K0R] +BuildMode=2 +BuildMode2=K0R_dbg +BuildMode3=BSR_dbg +BuildMode4=BSR_rel +BuildMode5=BSR_WM0 +DefaultMode2=1 +DefaultMode3=1 +DefaultMode4=1 +DefaultMode5=1 [Options.CC78K0R 0] Version=210 Include0=renge,C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\inc78k0r @@ -456,8 +751,8 @@ Flashobj=0 FlashStartadr= FlashBranchStartadr= Mirror=0 -Saddrglobalchk=0 -Saddrglobal=1066 +Saddrglobalchk=1 +Saddrglobal=1063 Saddrstaticchk=0 Saddrstatic=1072 Bitfieldmsb=0 @@ -508,7 +803,7 @@ Intunexpand=1 Kanjicode=1210 Verbose=0 CommandFile=0 -Warninglevel=2 +Warninglevel=1 Startupchk=1 Fixation=0 FarROMization=0 @@ -764,296 +1059,3 @@ VfiFileBoot0= VfiFileBoot1=boot.vfi VF78K0Rchk=0 VF78K0Rvs= -[Options.LK78K0R 0] -Version=100 -O0=bsr_k0r.lmf -O1=bsr.lmf -O2=flash.lmf -O3=a.lmf -G=1 -E=0 -E0=flash.elk -E1=a.elk -GO=1 -GOValue=85 -GOStart=FC00 -GOSizeValue=1024 -GI=1 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=0 -MemInfoCheck=1 -P=1 -P0=bsr_k0r.map -P1=bsr.map -P2=flash.map -P3=a.map -MI=0 -GB=1 -GBValue=6EFBFF -KM=1 -KD=0 -KP=1 -KL=0 -LF=0 -LL=0 -B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib -D0=bsr_mcu.dr -D1=user_area.dr -S=1 -W=0 -SELFCheck=1 -SELF=0 -ZB= -Etcetera0= -Etcetera1=boot.lmf -CommandFile=0 -[Options.LK78K0R 1] -Version=100 -O0=a.lmf -G=0 -E=0 -E0=a.elk -GO=0 -GOValue= -GOStart=FC00 -GOSizeValue=1024 -GI=0 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=1 -MemInfoCheck=0 -P=1 -P0=a.map -MI=0 -GB=0 -GBValue= -KM=1 -KD=1 -KP=0 -KL=0 -LF=0 -LL=0 -S=0 -W=1 -SELFCheck=0 -SELF=0 -ZB= -CommandFile=0 -[Options.LK78K0R 2] -Version=100 -O0=bsr.lmf -O1=bsr_k0r.lmf -O2=flash.lmf -O3=a.lmf -G=1 -E=0 -E0=flash.elk -E1=a.elk -GO=1 -GOValue=85 -GOStart=FC00 -GOSizeValue=1024 -GI=1 -GIValue=1B339499E033F240BFAA -CCZA=0 -MemInfoCheck=1 -P=1 -P0=bsr_k0r.map -P1=bsr.map -P2=flash.map -P3=a.map -MI=0 -GB=1 -GBValue=7EFBFF -KM=1 -KD=0 -KP=0 -KL=0 -LF=0 -LL=0 -B0=C:\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\lib78k0r\fsl.lib -B1=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib -D0=bsr_mcu.dr -D1=user_area.dr -S=1 -W=0 -SELFCheck=0 -SELF=0 -ZB= -Etcetera0= -Etcetera1=boot.lmf -CommandFile=0 -OFILE=C:\78k_data\yav-mcu-basara\branches\sim\bsr.lmf -[Options.LK78K0R 3] -Version=100 -O0=bsr_bsr.lmf -O1=bsr_k0r.lmf -O2=bsr.lmf -O3=flash.lmf -O4=a.lmf -G=1 -E=0 -E0=flash.elk -E1=a.elk -GO=1 -GOValue=85 -GOStart=FC00 -GOSizeValue=1024 -GI=1 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=0 -MemInfoCheck=1 -P=1 -P0=bsr_bsr.map -P1=bsr_k0r.map -P2=bsr.map -P3=flash.map -P4=a.map -MI=0 -GB=1 -GBValue=6EFBFF -KM=1 -KD=0 -KP=1 -KL=0 -LF=0 -LL=0 -B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib -D0=bsr_mcu.dr -D1=user_area.dr -S=1 -W=2 -SELFCheck=0 -SELF=0 -ZB= -Etcetera0= -Etcetera1=boot.lmf -CommandFile=0 -[Options.LK78K0R 4] -Version=100 -O0=bsr_k0r.lmf -O1=bsr.lmf -O2=flash.lmf -O3=a.lmf -G=1 -E=0 -E0=flash.elk -E1=a.elk -GO=1 -GOValue=85 -GOStart=FC00 -GOSizeValue=1024 -GI=1 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=0 -MemInfoCheck=1 -P=1 -P0=bsr_k0r.map -P1=bsr.map -P2=flash.map -P3=a.map -MI=0 -GB=1 -GBValue=6EFBFF -KM=1 -KD=0 -KP=1 -KL=0 -LF=0 -LL=0 -B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib -D0=bsr_mcu.dr -D1=user_area.dr -S=1 -W=0 -SELFCheck=1 -SELF=0 -ZB= -Etcetera0= -Etcetera1=boot.lmf -CommandFile=0 -[Options.LK78K0R 5] -Version=100 -O0=bsr_bsr.lmf -O1=bsr_k0r.lmf -O2=bsr.lmf -O3=flash.lmf -O4=a.lmf -G=1 -E=0 -E0=flash.elk -E1=a.elk -GO=1 -GOValue=85 -GOStart=FC00 -GOSizeValue=1024 -GI=1 -GIValue=FFFFFFFFFFFFFFFFFFFF -CCZA=0 -MemInfoCheck=1 -P=1 -P0=bsr_bsr.map -P1=bsr_k0r.map -P2=bsr.map -P3=flash.map -P4=a.map -MI=0 -GB=1 -GBValue=6EFBFF -KM=1 -KD=0 -KP=1 -KL=0 -LF=0 -LL=0 -B0=C:\Program Files\NEC Electronics Tools\FSL78K0R_Type02ES\V1.20\lib78k0r\fsl.lib -D0=bsr_mcu.dr -D1=user_area.dr -S=1 -W=2 -SELFCheck=0 -SELF=0 -ZB= -Etcetera0= -Etcetera1=boot.lmf -CommandFile=0 -[Options.LCNV78K0R 0] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.LCNV78K0R 1] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.LCNV78K0R 2] -Version=100 -LCNV_GO=0 -O0=inter_asm -E=0 -CommandFile=0 -[Options.LCNV78K0R 3] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.LCNV78K0R 4] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.LCNV78K0R 5] -Version=100 -LCNV_GO=0 -E=0 -CommandFile=0 -[Options.78K0R] -BuildMode=2 -BuildMode2=K0R_dbg -BuildMode3=BSR_dbg -BuildMode4=BSR_rel -BuildMode5=BSR_WM0 -DefaultMode2=1 -DefaultMode3=1 -DefaultMode4=1 -DefaultMode5=1 diff --git a/branches/sim/yav_mcu_bsr.prk b/branches/sim/yav_mcu_bsr.prk index a9901ab..6220a79 100644 --- a/branches/sim/yav_mcu_bsr.prk +++ b/branches/sim/yav_mcu_bsr.prk @@ -1,14 +1,20 @@ [ProjectManager] FrameMax=0 -FrameX=11 -FrameY=26 -FrameCX=1614 -FrameCY=1005 -OpenFile1=ProjectWindow +FrameX=1244 +FrameY=196 +FrameCX=1440 +FrameCY=895 +OpenFile1=i2c_ctr.c,0,150,150,1469,736,0,40,0,0 +OpenFile2=hal.c,0,200,200,1395,681,14,13,13,0 +OpenFile3=sw.c,0,127,86,1322,567,0,138,0,0 +OpenFile4=task_status.c,0,25,25,1220,506,23,30,23,0 +OpenFile5=pm.c,0,225,225,1420,706,15,471,15,0 +OpenFile6=i2c_twl.c,0,50,50,1245,531,38,129,47,0 +OpenFile7=main.c,0,200,200,1370,701,0,1,0,0 +OpenFile8=ProjectWindow PrjPos=0,0,706,0,291 -OpenFile2=i2c_ctr.c,0,150,150,1469,736,0,40,0,0 -OpenFile3=OutputWindow -OutputPos=0,32,734,735,1861 +OpenFile9=OutputWindow +OutputPos=0,16,707,587,1440 ActivePRJ=yav_mcu_bsr.prj [ProjectWindow] ProjectWindowDispType=0 diff --git a/branches/sim/yav_mcu_bsr.sdb b/branches/sim/yav_mcu_bsr.sdb index 28cb653..72a55dd 100644 --- a/branches/sim/yav_mcu_bsr.sdb +++ b/branches/sim/yav_mcu_bsr.sdb @@ -12,7 +12,7 @@ T=4e0a86c1 8=reboot.h 9=magic.h [pm.c] -T=4e0aea23 +T=4e1c1434 1=incs.h 2=adc.h 3=led.h @@ -22,7 +22,7 @@ T=4e0aea23 7=..\..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\fsl.h 8=fsl_user.h [i2c_ctr.c] -T=4e0d6607 +T=4e1d54ae 1=config.h 2=incs.h [main.c] @@ -36,14 +36,14 @@ T=4e0af952 7=adc.h 8=pool.h [magic.c] -T=4e0d6027 +T=4e1d56d9 1=config.h 2=magic.h [WDT.c] T=4dfae637 1=incs_loader.h [i2c_mcu.c] -T=4e0d6618 +T=4e1d47dd 1=incs_loader.h 2=i2c_mcu.h [i2c_twl.c] @@ -60,7 +60,7 @@ T=4dfafb99 T=4dfb0204 1=incs.h [vreg_ctr.c] -T=4e0d6024 +T=4e1a3d56 1=incs.h 2=vreg_ctr.h 3=rtc.h @@ -78,7 +78,7 @@ T=4df868b8 4=vreg_twl.h 5=vreg_ctr.h [adc.c] -T=4e0c1e90 +T=4e1c11e5 1=incs.h 2=adc.h 3=pm.h @@ -101,7 +101,7 @@ T=4dff0001 2=incs.h 3=..\..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\math.h [self_flash.c] -T=4dfef02d +T=4e166b67 1=incs_loader.h 2=..\..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\fsl.h 3=fsl_user.h @@ -110,7 +110,7 @@ T=4dfef02d 6=magic.h 7=pm.h [sw.c] -T=4dfae24c +T=4e166bf3 1=incs.h 2=i2c_twl.h 3=i2c_ctr.h @@ -125,7 +125,7 @@ T=4dfae637 3=pm.h 4=accero.h [task_misc.c] -T=4dff022d +T=4e1c12df 1=incs.h 2=renge\renge.h 3=pm.h @@ -135,7 +135,7 @@ T=4dff022d 7=led.h 8=vreg_twl.h [task_sys.c] -T=4e0af952 +T=4e1a935d 1=incs.h 2=i2c_twl.h 3=i2c_ctr.h @@ -147,7 +147,7 @@ T=4e0af952 9=adc.h 10=self_flash.h [pedo_alg_thre_det2.c] -T=4e097fce +T=4e1a3cda 1=incs.h 2=..\..\..\..\Program Files (x86)\NEC Electronics Tools\CC78K0R\W2.13\inc78k0r\math.h 3=accero.h @@ -158,13 +158,15 @@ T=4e097fce T=4dfaf66c 1=config.h [task_status.c] -T=4e0c2614 +T=4e1abbad 1=incs_loader.h 2=renge\renge.h -3=pm.h -4=accero.h -5=adc.h -6=i2c_mcu.h +3=hal.h +4=pm.h +5=accero.h +6=adc.h +7=i2c_mcu.h +8=led.h [led_cam.c] T=4dfae24c 1=incs.h @@ -173,25 +175,29 @@ T=4dfae24c T=4dfae637 1=incs.h 2=led.h +[hal.c] +T=4e1d5591 +1=incs_loader.h [incs_loader.h] -T=4dfae8e8 +T=4e156766 1=sim\simOnWin.h 2=jhl_defs.h 3=user_define.h -4=bsr_system.h -5=renge\renge.h -6=vreg_ctr.h -7=vreg_twl.h -8=loader.h -9=i2c_mcu.h -10=WDT.h +4=hal.h +5=bsr_system.h +6=renge\renge.h +7=vreg_ctr.h +8=vreg_twl.h +9=loader.h +10=i2c_mcu.h +11=WDT.h [jhl_defs.h] T=4df868b8 1=config.h [config.h] -T=4e0d28fe +T=4e16b88c [user_define.h] -T=4e0af952 +T=4e169edd [bsr_system.h] T=4df868b8 [renge\renge.h] @@ -204,7 +210,7 @@ T=4dfae85a T=4df868b6 1=renge\renge_defs.h [vreg_ctr.h] -T=4e0af952 +T=4e1c100c 1=config.h [vreg_twl.h] T=4df868b8 @@ -227,23 +233,24 @@ T=4df868b8 [magic.h] T=4df868b8 [incs.h] -T=4dfec4bd +T=4e15675d 1=sim\simOnWin.h 2=jhl_defs.h 3=user_define.h -4=bsr_system.h -5=renge\renge.h -6=loader.h -7=vreg_ctr.h -8=vreg_twl.h -9=i2c_mcu.h -10=i2c_twl.h -11=rtc.h -12=accero.h -13=pm.h -14=sw.h -15=adc.h -16=WDT.h +4=hal.h +5=bsr_system.h +6=renge\renge.h +7=loader.h +8=vreg_ctr.h +9=vreg_twl.h +10=i2c_mcu.h +11=i2c_twl.h +12=rtc.h +13=accero.h +14=pm.h +15=sw.h +16=adc.h +17=WDT.h [i2c_twl.h] T=4df868b8 [accero.h] @@ -251,7 +258,7 @@ T=4df868b8 1=jhl_defs.h 2=pedometer.h [pedometer.h] -T=4df868b8 +T=4e1a3cda [sw.h] T=4df868b8 1=config.h @@ -259,7 +266,7 @@ T=4df868b8 T=4df868b8 1=jhl_defs.h [led.h] -T=4dfafdf5 +T=4e169c84 [batt_params.h] T=4df868b9 1=jhl_defs.h @@ -285,5 +292,7 @@ T=45f12258 T=4e0014e7 1=sim\sfrAlias.h [sim\sfrAlias.h] -T=4e0af952 +T=4e169edd 1=config.h +[hal.h] +T=4e16a2b4